@layer components{.hp{--bg:#f1f0ed;--surface:#e8e7e3;--raised:#f8f8f6;--ink:#141310;--muted:#4b4842;--faint:#67635b;--line:#1413101a;--line-strong:#1413102e;--accent:#3b2bff;--accent-ink:#2e20d4;--accent-soft:#3b2bff1a;--on-accent:#fff;--shadow:0 1px 2px #1413100f, 0 12px 32px -12px #1413102e;--g:clamp(1rem, 4vw, 3rem);--r-panel:24px;--r-media:16px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);background:var(--bg);color:var(--ink);font-family:var(--font-geist), ui-sans-serif, system-ui, sans-serif;min-height:100dvh;overflow-x:clip}.dark .hp{--bg:#0d0c0a;--surface:#161512;--raised:#1d1c18;--ink:#f3f0e9;--muted:#aaa59b;--faint:#8c877d;--line:#f3f0e917;--line-strong:#f3f0e92b;--accent:#3b2bff;--accent-ink:#a59dff;--accent-soft:#5b4dff29;--shadow:0 1px 2px #00000080, 0 18px 40px -16px #000000b3}.hp ::selection{background:var(--accent);color:var(--on-accent)}.hp :focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px}.hp-shell{width:100%;max-width:1360px;padding-inline:var(--g);margin-inline:auto}.hp-section{padding-block:clamp(5.5rem,11vw,10rem);scroll-margin-top:4rem}.hp-display,.hp-h2,.hp-h3{font-family:var(--font-archivo), "Helvetica Neue", Arial, sans-serif;text-wrap:balance;font-weight:600}.hp-display{letter-spacing:-.04em;font-size:clamp(2.65rem,6.2vw,5.75rem);line-height:.96}.hp-h2{letter-spacing:-.035em;max-width:24ch;font-size:clamp(2rem,4.3vw,3.6rem);line-height:1.02}.hp-h2 .dim,.hp-display .dim{color:var(--muted)}.hp-h2 .dim{display:block}.hp-h3{letter-spacing:-.02em;font-size:clamp(1.25rem,1.8vw,1.5rem);line-height:1.15}.hp-lead{color:var(--muted);max-width:58ch;font-size:clamp(1.02rem,1.25vw,1.15rem);line-height:1.65}.hp-small{color:var(--muted);font-size:.875rem;line-height:1.55}.hp-mono{font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:0;font-size:.8125rem}.hp-btn{--btn-bg:transparent;--btn-fg:var(--ink);white-space:nowrap;background:var(--btn-bg);height:3rem;color:var(--btn-fg);border:1px solid var(--line-strong);transition:background-color .2s var(--ease-out), border-color .2s var(--ease-out), color .2s var(--ease-out), transform .16s var(--ease-out);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:999px;justify-content:center;align-items:center;gap:.6rem;padding-inline:1.4rem;font-size:.9375rem;font-weight:500;display:inline-flex}.hp-btn:active{transform:scale(.97)}@media (max-width:420px){.hp-btn{gap:.45rem;padding-inline:1.1rem}}.hp-btn svg{transition:transform .26s var(--ease-out)}.hp-btn:hover svg.nudge{transform:translate(3px)}.hp-btn:hover svg.nudge-down{transform:translateY(2px)}.hp-btn:hover svg.nudge-up{transform:translate(2px,-2px)}.hp-btn-primary{--btn-bg:var(--accent);--btn-fg:var(--on-accent);border-color:#0000;box-shadow:inset 0 1px #ffffff38,0 1px 2px #140a784d,0 10px 24px -10px #3b2bff8c}.hp-btn-primary:hover{--btn-bg:#4d3fff}.hp-btn-ghost:hover{border-color:var(--ink)}.hp{--android:#18924f;--windows:#0078d4}.dark .hp{--android:#3ddc84}.dl-android{color:var(--android)}.dl-windows{color:var(--windows)}.hp-btn-glass{--btn-bg:#ffffff14;--btn-fg:#f3f0e9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-color:#ffffff2e}.hp-btn-glass:hover{--btn-bg:#ffffff24;border-color:#ffffff52}.hp-icon-btn{border:1px solid var(--line-strong);width:2.75rem;height:2.75rem;color:var(--ink);transition:border-color .2s var(--ease-out), background-color .2s var(--ease-out), transform .16s var(--ease-out);cursor:pointer;background:0 0;border-radius:999px;place-items:center;display:inline-grid}.hp-icon-btn:hover{border-color:var(--ink)}.hp-icon-btn:active{transform:scale(.94)}.hp-icon-btn:disabled{opacity:.35;pointer-events:none}.hp-link,.hp-foot-link{transition:background-size .32s var(--ease-out);background-image:linear-gradient(currentColor,currentColor);background-position:100% 100%;background-repeat:no-repeat;background-size:0% 1px}.hp-link:hover,.hp-foot-link:hover{background-position:0 100%;background-size:100% 1px}.hp-header{z-index:50;height:4.25rem;transition:background-color .3s var(--ease-out), border-color .3s var(--ease-out);border-bottom:1px solid #0000;position:fixed;inset:0 0 auto}.hp-header[data-scrolled=true]{background:color-mix(in oklab, var(--bg) 84%, transparent);border-bottom-color:var(--line);-webkit-backdrop-filter:blur(16px)saturate(1.4);backdrop-filter:blur(16px)saturate(1.4)}.hp-nav a{color:var(--muted);transition:color .2s var(--ease-out);padding-block:.5rem;font-size:.9375rem;position:relative}.hp-nav a:hover,.hp-nav a[aria-current=true]{color:var(--ink)}.hp-nav a:after{content:"";transform-origin:0;height:1px;transition:transform .36s var(--ease-out);background:currentColor;position:absolute;bottom:.15rem;left:0;right:0;transform:scaleX(0)}.hp-nav a[aria-current=true]:after{transform:scaleX(1)}.hp-hero{padding:4.25rem .75rem .75rem}.hp-hero-panel{isolation:isolate;border-radius:calc(var(--r-panel) + 4px);color:#f3f0e9;background:#0c0a05;min-height:calc(100dvh - 5rem);display:flex;position:relative;overflow:hidden}.hp-hero-media{z-index:-2;position:absolute;inset:0}.hp-hero-media img,.hp-hero-media canvas{object-fit:cover;object-position:50% 28%;width:100%;height:100%;position:absolute;inset:0}.hp-hero-scrim{z-index:-1;background:linear-gradient(#0c0a058c 0%,#0c0a0500 22%),linear-gradient(#0c0a0500 38%,#0c0a05b3 64%,#0c0a05f5 92%);position:absolute;inset:0}@media (min-width:900px){.hp-hero-media{left:36%}.hp-hero-scrim{background:linear-gradient(90deg,#0c0a05 34%,#0c0a05d1 44%,#0c0a0500 62%),linear-gradient(#0c0a0500 70%,#0c0a0599 100%)}}.hp-stream{z-index:0;width:max(100%,175svh - 8.75rem);position:absolute;top:0;bottom:0;left:50%;translate:-50%}@media (orientation:portrait){.hp-stream{width:300%}}.hp-stream-card{outline-offset:-1px;background:#15130f;outline:1px solid #ffffff17}.hp-stream-scrim{z-index:1;pointer-events:none;background:radial-gradient(52% 42% at 50% 6%,#0c0a05e6,#0c0a0500 72%),radial-gradient(58% 36% at 50% 98%,#0c0a05eb,#0c0a0500 72%);position:absolute;inset:0}.hp-stream-toggle{z-index:11;color:#f3f0e9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;width:2.5rem;height:2.5rem;transition:background-color .2s var(--ease-out), transform .16s var(--ease-out);background:#ffffff14;border:1px solid #ffffff29;border-radius:999px;place-items:center;display:grid;position:absolute;bottom:clamp(.9rem,2vw,1.5rem);right:clamp(.9rem,2vw,1.5rem)}.hp-stream-toggle:hover{background:#ffffff29}.hp-stream-toggle:active{transform:scale(.94)}.hp-news{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#f3f0e9db;width:fit-content;max-width:100%;height:2.5rem;transition:background-color .25s var(--ease-out), border-color .25s var(--ease-out);background:#ffffff12;border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:.6rem;padding:0 .95rem 0 .4rem;font-size:.875rem;display:inline-flex}.hp-news:hover{background:#ffffff1f;border-color:#ffffff42}.hp-news .badge{background:var(--accent);color:#fff;border-radius:999px;padding:.15rem .5rem;font-size:.72rem;font-weight:600}.hp-news .text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.hp-news .arrow{transition:transform .26s var(--ease-out);flex:none}.hp-news:hover .arrow{transform:translate(2px,-2px)}.hp-line{margin-bottom:-.1em;padding-bottom:.1em;display:block;overflow:hidden}.hp-hero .hp-display .dim{color:#f3f0e98c}.hp-hero .hp-lead{color:#f3f0e9c7;max-width:34rem}.hp-carousel{-webkit-user-select:none;user-select:none;outline:none;height:clamp(300px,34vw + 120px,640px);position:relative}.hp-carousel canvas{touch-action:pan-y;width:100%;height:100%;display:block}.hp-carousel:focus-visible{outline:2px solid var(--accent-ink);outline-offset:6px;border-radius:var(--r-panel)}.hp-view-pill{z-index:3;pointer-events:none;background:var(--accent);color:var(--on-accent);opacity:0;transition:opacity .22s var(--ease-out), scale .32s var(--ease-out);will-change:transform;border-radius:999px;padding:.55rem 1rem;font-size:.8125rem;font-weight:500;position:absolute;top:0;left:0;scale:.4;box-shadow:0 8px 24px -8px #3b2bffb3}.hp-view-pill[data-on=true]{opacity:1;scale:1}.hp-carousel-controls{z-index:2;transition:opacity .26s var(--ease-out);justify-content:space-between;padding-inline:4%;display:flex;position:absolute;inset:auto 0 .25rem}.hp-carousel[data-focus=true] .hp-carousel-controls{opacity:0;pointer-events:none}.hp-carousel-controls .hp-icon-btn{background:color-mix(in oklab, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hp-focus-bar{z-index:2;opacity:0;pointer-events:none;transition:opacity .32s var(--ease-out), translate .42s var(--ease-out);justify-content:space-between;align-items:center;gap:1rem;display:flex;position:absolute;inset:auto 4% 4%;translate:0 12px}.hp-carousel[data-focus=true] .hp-focus-bar{opacity:1;pointer-events:auto;transition-delay:.26s;translate:0}.hp-carousel-fallback{scroll-snap-type:x mandatory;height:100%;padding-inline:var(--g);align-items:center;gap:1rem;display:flex;overflow-x:auto}.hp-carousel-fallback img{aspect-ratio:16/10;object-fit:cover;object-position:top;border-radius:var(--r-media);scroll-snap-align:center;flex:none;width:min(78vw,720px)}.hp-detail{border-top:1px solid var(--line);gap:1.75rem;padding-top:2rem;display:grid}@media (min-width:1024px){.hp-detail{grid-template-columns:minmax(0,4fr) minmax(0,5fr) minmax(0,3fr);gap:3rem}}.hp-rail{scrollbar-width:none;justify-content:safe center;gap:.6rem;margin-bottom:-1.75rem;padding:.5rem 0 2.25rem;display:flex;overflow-x:auto}.hp-rail::-webkit-scrollbar{display:none}.hp-rail-item{border:1px solid var(--line);background:var(--surface);cursor:pointer;opacity:.55;width:3.25rem;height:3.25rem;transition:opacity .25s var(--ease-out), border-color .25s var(--ease-out), transform .3s var(--ease-out), box-shadow .3s var(--ease-out);border-radius:15px;flex:none;position:relative}.hp-rail-item:hover{opacity:.9;transform:translateY(-2px)}.hp-rail-item[aria-pressed=true]{opacity:1;border-color:var(--accent-ink);box-shadow:0 0 0 3px var(--accent-soft)}.hp-rail-item .tip{white-space:nowrap;color:var(--muted);opacity:0;pointer-events:none;transition:opacity .2s var(--ease-out), translate .3s var(--ease-out);font-size:.75rem;position:absolute;top:calc(100% + .45rem);left:50%;translate:-50% 4px}.hp-rail-item:hover .tip,.hp-rail-item:focus-visible .tip{opacity:1;translate:-50%}.hp-detail-name{font-family:var(--font-archivo), sans-serif;letter-spacing:-.04em;font-size:clamp(1.9rem,3vw,2.6rem);font-weight:600;line-height:1}.hp-chip{border:1px solid var(--line-strong);height:1.875rem;color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;padding-inline:.8rem;font-size:.8125rem;display:inline-flex}.hp-stack{gap:1rem;display:grid;position:relative}.hp-stack-tail{display:none}.hp-store{--tint-text:color-mix(in oklab, var(--tint) 72%, black);isolation:isolate;border:1px solid var(--line);background:radial-gradient(90% 70% at 0% 0%, color-mix(in oklab, var(--tint) 20%, transparent), transparent 70%), radial-gradient(60% 80% at 100% 100%, color-mix(in oklab, var(--tint) 14%, transparent), transparent 70%), var(--surface);box-shadow:var(--shadow);transform-origin:50% 0;will-change:transform;border-radius:28px;gap:2rem;padding:clamp(1.25rem,3vw,2.5rem);display:grid;position:relative;overflow:hidden}.dark .hp-store{--tint-text:color-mix(in oklab, var(--tint) 55%, white)}.hp-store-dim{z-index:5;opacity:0;pointer-events:none;border-radius:inherit;background:#000;position:absolute;inset:0}.hp-store-info{flex-direction:column;min-width:0;display:flex}.hp-store-tag{height:1.9rem;color:var(--tint-text);background:color-mix(in oklab, var(--tint) 14%, transparent);border:1px solid color-mix(in oklab, var(--tint) 30%, transparent);border-radius:999px;align-items:center;padding-inline:.85rem;font-size:.82rem;font-weight:500;display:inline-flex}.hp-store-name{font-family:var(--font-archivo), sans-serif;letter-spacing:-.04em;font-size:clamp(2rem,3.4vw,3.1rem);font-weight:600;line-height:1}.hp-store-check{width:1.25rem;height:1.25rem;color:var(--tint-text);background:color-mix(in oklab, var(--tint) 18%, transparent);border-radius:999px;flex:none;place-items:center;margin-top:.05rem;display:grid}.hp-store-media{justify-content:flex-end;align-items:flex-start;min-width:0;display:flex;position:relative}.hp-browser{border:1px solid var(--line-strong);background:#0b0b0a;border-radius:16px;width:100%;display:block;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0a,0 30px 60px -30px #0000008c,0 12px 24px -12px #00000059}.hp-browser .bar{background:#161513;border-bottom:1px solid #ffffff0f;align-items:center;height:2.4rem;padding-inline:.9rem;display:flex;position:relative}.hp-browser .dots{gap:.4rem;display:flex}.hp-browser .dots i{background:#ffffff24;border-radius:999px;width:.62rem;height:.62rem}.hp-browser .url{color:#f3f0e9b8;height:1.55rem;font-family:var(--font-geist-mono), monospace;white-space:nowrap;background:#ffffff0f;border-radius:999px;align-items:center;gap:.4rem;padding-inline:.85rem;font-size:.72rem;display:inline-flex;position:absolute;left:50%;translate:-50%}.hp-browser .view{aspect-ratio:1440/900;background:#0b0b0a;display:block;position:relative;overflow:hidden}.hp-phone{z-index:2;background:linear-gradient(160deg,#3a3833,#121110 40%,#0a0a09);border-radius:2.35rem;width:clamp(9rem,24%,13.5rem);padding:.42rem;position:absolute;bottom:-5.5rem;left:-1.5rem;box-shadow:inset 0 0 0 1px #ffffff14,0 40px 60px -20px #0009,0 14px 24px -10px #00000073}.hp-phone .screen{aspect-ratio:390/844;background:#000;border-radius:1.95rem;display:block;position:relative;overflow:hidden}.hp-phone .island{z-index:2;background:#000;border-radius:999px;width:32%;height:.95rem;position:absolute;top:.55rem;left:50%;translate:-50%}@media (min-width:640px){.hp-store{gap:2.5rem}}@media (min-width:1024px){.hp-stack{display:block}.hp-slot{height:100svh;padding-top:calc(5.5rem + var(--i) * .85rem);position:sticky;top:0}.hp-stack-tail{height:50svh;display:block}.hp-store{--card-h:min(44rem, calc(100svh - 7.5rem - 5 * .85rem));height:var(--card-h);grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:3rem}.hp-store-media{--bw:min(100%, calc((var(--card-h) - 7.5rem) * 1.6));--pw:clamp(9rem, 24%, 13rem);align-items:center}.hp-browser{max-width:var(--bw)}.hp-phone{width:var(--pw);left:auto;right:calc(var(--bw) - var(--pw) + 1.75rem);bottom:-7rem}}@media (max-width:639px){.hp-phone{width:7.5rem;bottom:-4.5rem;left:auto;right:.75rem}.hp-store-media{padding-bottom:2.5rem}}.hp-figures{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.hp-figure{padding:1.5rem 1.25rem 0 0}.hp-figure+.hp-figure{border-left:1px solid var(--line);padding-left:1.25rem}.hp-figure:nth-child(3){border-left:0;padding-left:0}@media (max-width:1023px){.hp-figure:nth-child(n+3){border-top:1px solid var(--line);margin-top:1.5rem}}@media (min-width:1024px){.hp-figures{grid-template-columns:repeat(4,minmax(0,1fr))}.hp-figure:nth-child(3){border-left:1px solid var(--line);padding-left:1.25rem}}.hp-figure-n{font-family:var(--font-archivo), sans-serif;letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-size:clamp(2.75rem,5.5vw,4.5rem);font-weight:600;line-height:1}.hp-stage{border-top:1px solid var(--line);min-width:0;padding-block:clamp(2rem,4vw,3rem)}@media (min-width:1024px){.hp-stage[data-tall=true]{flex-direction:column;justify-content:center;min-height:78svh;display:flex}}.hp-stage .key{font-family:var(--font-archivo), sans-serif;letter-spacing:-.05em;color:var(--line-strong);transition:color .6s var(--ease-out);font-size:clamp(3rem,6.5vw,5.75rem);font-weight:600;line-height:.9}.hp-stage[data-active=true] .key{color:var(--ink)}.hp-stage .key .acc{color:#0000;transition:color .6s var(--ease-out)}.hp-stage[data-active=true] .key .acc{color:var(--accent-ink)}.hp-stage-view{flex-direction:column;justify-content:center;gap:1.5rem;height:calc(100svh - 8rem);max-height:46rem;display:flex;position:sticky;top:6rem}.hp-stage-dots{color:var(--faint);gap:1.25rem;font-size:.82rem;display:flex}.hp-stage-dots span{transition:color .3s var(--ease-out);padding-top:.75rem;position:relative}.hp-stage-dots span:before{content:"";background:var(--line-strong);border-radius:2px;width:100%;height:2px;position:absolute;top:0;left:0}.hp-stage-dots span:after{content:"";background:var(--accent-ink);transform-origin:0;width:100%;height:2px;transition:transform .5s var(--ease-out);border-radius:2px;position:absolute;top:0;left:0;transform:scaleX(0)}.hp-stage-dots span[data-on=true]{color:var(--ink)}.hp-stage-dots span[data-on=true]:after{transform:scaleX(1)}.hp-art{border-radius:var(--r-panel);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow)}.hp-art-pad{padding:clamp(1.1rem,2.4vw,1.75rem)}.hp-art-title{color:var(--muted);font-size:.875rem}.hp-swatch{border-radius:var(--r-media);border:1px solid color-mix(in oklab, var(--tint) 28%, var(--line));background:radial-gradient(120% 90% at 100% 0%, color-mix(in oklab, var(--tint) 30%, transparent), transparent 70%), var(--bg);flex-direction:column;min-height:9.5rem;padding:.9rem;display:flex;position:relative}.hp-swatch .chip{background:var(--tint);border-radius:3px;width:.7rem;height:.7rem}.hp-code{border-radius:var(--r-panel);border:1px solid var(--line-strong);color:#e8e4da;min-width:0;box-shadow:var(--shadow);background:#0f0e0c;overflow:hidden}.hp-code-bar{height:2.75rem;font-family:var(--font-geist-mono), monospace;background:#151411;border-bottom:1px solid #ffffff12;align-items:center;gap:.75rem;padding-inline:1rem;font-size:.75rem;display:flex}.hp-code-bar .tab{color:#f3f0e9;background:#ffffff12;border-radius:8px;padding:.3rem .7rem}.hp-code-bar .path{color:#f3f0e973}.hp-code-body{font-family:var(--font-geist-mono), monospace;margin:0;padding:1.1rem 0;font-size:clamp(.72rem,.95vw,.8125rem);line-height:1.75;overflow-x:auto}.hp-code-body .ln{padding-right:1.25rem;display:flex}.hp-code-body .no{text-align:right;color:#f3f0e947;-webkit-user-select:none;user-select:none;flex:none;width:3.25rem;padding-right:1rem}.hp-code-body code{white-space:pre}.hp-code-body .kw{color:#b3a9ff}.hp-code-body .str{color:#9fd8a8}.hp-code-body .fn{color:#f2c27b}.hp-code-body .id{color:#e8e4da}.hp-code-note{color:#f3f0e99e;border-top:1px solid #ffffff12;padding:.9rem 1.1rem;font-size:.85rem}.hp-release-row{border:1px solid var(--line);background:color-mix(in oklab, var(--bg) 55%, transparent);border-radius:14px;align-items:center;gap:.85rem;padding:.75rem;display:flex}.hp-route{width:100%;position:relative}.hp-route .wire{fill:none;stroke:var(--line-strong);stroke-width:1.25px}.hp-route .pulse{fill:var(--accent-ink)}.hp-route-chip{border:1px solid var(--line);background:var(--bg);height:2.1rem;color:var(--ink);border-radius:999px;align-items:center;gap:.5rem;padding:0 .7rem 0 .35rem;font-size:.78rem;display:flex;position:absolute;left:0;translate:0 -50%}.hp-route-node{flex-direction:column;align-items:center;width:9rem;display:flex;position:absolute;translate:-50% -50%}.hp-rows{gap:.75rem;display:grid;-webkit-mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.hp-row{width:max-content;animation:hp-drift var(--dur,60s) linear infinite;gap:.75rem;display:flex}.hp-row[data-reverse=true]{animation-direction:reverse}.hp-rows:hover .hp-row{animation-play-state:paused}@keyframes hp-drift{to{transform:translate(calc(-50% - .375rem))}}.hp-pill{background:var(--surface);border:1px solid var(--line);height:3.5rem;color:var(--muted);white-space:nowrap;transition:background-color .3s var(--ease-out), color .3s var(--ease-out);border-radius:999px;align-items:center;gap:.55rem;padding-inline:1.5rem;font-size:1.02rem;font-weight:500;display:inline-flex}.hp-pill:hover{color:var(--ink);background:var(--raised)}.hp-pill .mark{color:var(--faint);transition:color .3s var(--ease-out), transform .4s var(--ease-out);flex:none}.hp-pill:hover .mark{color:var(--brand);transform:scale(1.12)}.hp-pill.lead{background:var(--accent);color:var(--on-accent);border-color:#0000}.hp-contact{border:1px solid var(--line);background:radial-gradient(70% 60% at 0% 0%, var(--accent-soft), transparent 70%), var(--surface);box-shadow:var(--shadow);border-radius:28px;display:grid;overflow:hidden}@media (min-width:1024px){.hp-contact{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}.hp-contact-side{flex-direction:column;padding:clamp(1.4rem,3.5vw,3rem);display:flex}.hp-contact-form{background:var(--raised);border-top:1px solid var(--line);padding:clamp(1.4rem,3.5vw,3rem)}.dark .hp-contact-form{background:color-mix(in oklab, var(--bg) 70%, var(--surface))}@media (min-width:1024px){.hp-contact-form{border-top:0;border-left:1px solid var(--line)}}.hp-channel{border:1px solid var(--line);background:color-mix(in oklab, var(--bg) 60%, transparent);border-radius:16px;align-items:center;gap:.85rem;min-height:3.5rem;padding:.5rem .6rem;display:flex}.hp-channel .icon{background:var(--accent-soft);width:2.4rem;height:2.4rem;color:var(--accent-ink);border-radius:12px;flex:none;place-items:center;display:grid}.hp-label,.hp-field label{color:var(--ink);font-size:.875rem;font-weight:500;display:block}.hp-field label{margin-bottom:.5rem}.hp-intent{isolation:isolate;border:1px solid var(--line-strong);height:2.6rem;color:var(--muted);cursor:pointer;transition:color .25s var(--ease-out), border-color .25s var(--ease-out);border-radius:999px;align-items:center;padding-inline:1rem;font-size:.9rem;display:inline-flex;position:relative}.hp-intent:hover{color:var(--ink);border-color:var(--faint)}.hp-intent[data-on=true]{color:var(--on-accent);border-color:#0000}.hp-intent .bg{z-index:-1;border-radius:inherit;background:var(--accent);position:absolute;inset:-1px}.hp-intent:has(input:focus-visible){outline:2px solid var(--accent-ink);outline-offset:3px}.hp-input{background:var(--bg);border:1px solid var(--line-strong);width:100%;min-height:3.1rem;color:var(--ink);transition:border-color .2s var(--ease-out), box-shadow .2s var(--ease-out);border-radius:14px;padding:.8rem 1rem;font-size:1rem}.hp-input::placeholder{color:var(--faint)}.hp-input:hover{border-color:var(--faint)}.hp-input:focus{border-color:var(--accent-ink);box-shadow:0 0 0 4px var(--accent-soft);outline:none}.hp-input[aria-invalid=true]{border-color:#e5484d}select.hp-input{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);background-position:calc(100% - 1.3rem) 52%,calc(100% - .95rem) 52%;background-repeat:no-repeat;background-size:.35rem .35rem;padding-right:2.5rem}textarea.hp-input{resize:vertical;min-height:9rem}.hp-err{color:#d93a3f;opacity:0;max-height:0;transition:max-height .25s var(--ease-out), opacity .2s var(--ease-out), margin .25s var(--ease-out);font-size:.85rem;overflow:hidden}.dark .hp-err{color:#ff8589}.hp-err[data-on=true]{opacity:1;max-height:3rem;margin-top:.45rem}.hp-footer{border-top:1px solid var(--line);background:var(--surface);margin-top:clamp(2rem,5vw,4rem);padding-top:clamp(3rem,6vw,5rem)}.hp-foot-label{color:var(--faint);font-size:.82rem}.hp-foot-link{color:var(--muted);transition:color .2s var(--ease-out), background-size .36s var(--ease-out);font-size:.95rem}.hp-foot-link:hover{color:var(--ink)}.hp-portrait{aspect-ratio:4/5;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:28px;position:relative;overflow:hidden}.hp-doc{border-radius:var(--r-panel);border:1px solid var(--line);background:var(--surface);transition:border-color .25s var(--ease-out), transform .3s var(--ease-out);align-items:center;gap:1rem;padding:1rem 1rem 1rem 1.1rem;display:flex}.hp-doc:hover{border-color:var(--line-strong);transform:translateY(-2px)}.hp-doc .icon{background:var(--accent-soft);width:3.25rem;height:3.25rem;color:var(--accent-ink);border-radius:14px;flex:none;place-items:center;display:grid}.hp-timeline{gap:0;display:grid;position:relative}.hp-timeline>li{grid-template-columns:1.75rem minmax(0,1fr);grid-template-areas:"dot year""dot body";column-gap:1rem;padding-bottom:2.25rem;display:grid;position:relative}.hp-timeline>li:before{content:"";background:var(--line-strong);width:1px;position:absolute;top:1.9rem;bottom:.3rem;left:calc(.875rem - .5px)}.hp-timeline>li:last-child:before{display:none}.hp-timeline .year{font-family:var(--font-geist-mono), monospace;color:var(--faint);grid-area:year;padding-top:.35rem;font-size:.85rem}.hp-timeline .dot{background:var(--accent-soft);width:1.75rem;height:1.75rem;color:var(--accent-ink);border-radius:999px;grid-area:dot;place-items:center;display:grid}.hp-timeline .body{grid-area:body;margin-top:.4rem}@media (min-width:768px){.hp-timeline>li{grid-template-columns:6rem 1.75rem minmax(0,1fr);grid-template-areas:"year dot body"}.hp-timeline>li:before{left:calc(7.875rem - .5px)}.hp-timeline .year{text-align:right}.hp-timeline .body{margin-top:0}}.hp-cert{border-radius:var(--r-panel);border:1px solid var(--line);background:var(--surface);height:100%;overflow:hidden}.hp-cert .frame{aspect-ratio:4/3;background:var(--bg);border-bottom:1px solid var(--line);display:block;position:relative;overflow:hidden}.hp-cert .frame img{transition:transform .5s var(--ease-out);padding:.75rem}.hp-cert .frame:hover img{transform:scale(1.03)}.hp-cert .placeholder{color:var(--faint);place-items:center;display:grid;position:absolute;inset:0}.hp-work-card{border-radius:var(--r-panel);border:1px solid var(--line);background:radial-gradient(90% 60% at 100% 100%, color-mix(in oklab, var(--tint) 14%, transparent), transparent 70%), var(--surface);height:100%;transition:border-color .3s var(--ease-out), transform .4s var(--ease-out);flex-direction:column;display:flex;position:relative;overflow:hidden}.hp-work-card:hover{border-color:color-mix(in oklab, var(--tint) 45%, var(--line-strong));transform:translateY(-3px)}.hp-work-card .shot{aspect-ratio:16/10;border-bottom:1px solid var(--line);background:var(--bg);display:block;position:relative;overflow:hidden}.hp-work-card .shot img{transition:transform .7s var(--ease-out)}.hp-work-card:hover .shot img{transform:scale(1.025)}.hp-work-card .go{border:1px solid var(--line-strong);width:2.5rem;height:2.5rem;transition:transform .36s var(--ease-out), background-color .3s var(--ease-out), color .3s;border-radius:999px;flex:none;place-items:center;display:grid}.hp-work-card:hover .go{background:var(--ink);color:var(--bg);transform:rotate(-45deg)}.hp-pager{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:1rem;padding-top:2rem;display:grid}.hp-pager-link{transition:opacity .2s var(--ease-out);padding:1rem 0}.hp-pager-link:hover{opacity:.75}@media (prefers-reduced-motion:reduce){.hp-row{flex-wrap:wrap;width:auto;animation:none}.hp-row [aria-hidden=true]{display:none}.hp-rows{-webkit-mask-image:none;mask-image:none}.hp-route .pulse{display:none}}}html:has(.hp){background:var(--hp-root,#f1f0ed)}html:has(.hp) body{background:var(--hp-root,#f1f0ed)}html.dark:has(.hp){--hp-root:#0d0c0a}html.dark:has(.hp) body{--hp-root:#0d0c0a}:is(html:has(.hp) .grain,html:has(.hp) [data-back-to-top]){display:none}
