:root{--duration-stagger:40ms;--duration-micro:80ms;--duration-quick:.15s;--duration-fast:.25s;--duration-medium:.35s;--duration-slow:.4s;--duration-very-slow:.5s;--ease-smooth-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:ease-in-out;--ease-out:ease-out;--ease-linear:linear;--ease-bounce:cubic-bezier(.34, 1.36, .64, 1);--ease-bounce-strong:cubic-bezier(.34, 3.85, .64, 1);--distance-micro:4px;--distance-small:6px;--distance-base:8px;--distance-medium:12px;--distance-large:30px;--scale-large:.96;--scale-medium:.97;--scale-small:.98;--scale-tiny:.99;--blur-small:2px;--blur-medium:3px;--blur-large:8px;--resize-dur:.3s;--resize-ease:cubic-bezier(.22, 1, .36, 1);--digit-dur:.5s;--digit-distance:8px;--digit-stagger:70ms;--digit-blur:2px;--digit-ease:cubic-bezier(.34, 1.45, .64, 1);--digit-dir-x:0;--digit-dir-y:1;--badge-slide-dur:.26s;--badge-pop-dur:.5s;--badge-pop-close-dur:.18s;--badge-fade-dur:.4s;--badge-fade-close-dur:.18s;--badge-blur:2px;--badge-offset-x:-8.2px;--badge-offset-y:12.4px;--badge-slide-ease:cubic-bezier(.22, 1, .36, 1);--badge-pop-ease:cubic-bezier(.34, 1.36, .64, 1);--badge-close-ease:cubic-bezier(.4, 0, .2, 1);--text-swap-dur:.15s;--text-swap-translate-y:4px;--text-swap-blur:2px;--text-swap-ease:ease-in-out;--dropdown-open-dur:.25s;--dropdown-close-dur:.15s;--dropdown-pre-scale:.97;--dropdown-closing-scale:.99;--dropdown-ease:cubic-bezier(.22, 1, .36, 1);--modal-open-dur:.25s;--modal-close-dur:.15s;--modal-scale:.96;--modal-scale-close:.96;--modal-ease:cubic-bezier(.22, 1, .36, 1);--panel-open-dur:.4s;--panel-close-dur:.35s;--panel-translate-y:100px;--panel-blur:2px;--panel-ease:cubic-bezier(.22, 1, .36, 1);--page-slide-dur:.25s;--page-fade-dur:.25s;--page-slide-distance:8px;--page-blur:3px;--page-stagger:0s;--page-exit-enabled:1;--page-slide-ease:cubic-bezier(.22, 1, .36, 1);--page-fade-ease:cubic-bezier(.22, 1, .36, 1);--icon-swap-dur:.25s;--icon-swap-blur:2px;--icon-swap-start-scale:.25;--icon-swap-ease:ease-in-out;--check-opacity-dur:.5s;--check-rotate-dur:.5s;--check-rotate-from:80deg;--check-bob-dur:.5s;--check-y-amount:40px;--check-blur-dur:.5s;--check-blur-from:10px;--check-path-dur:.5s;--check-path-delay:80ms;--check-ease-out:cubic-bezier(.22, 1, .36, 1);--check-ease-opacity:cubic-bezier(.22, 1, .36, 1);--check-ease-rotate:cubic-bezier(.22, 1, .36, 1);--check-ease-bob:cubic-bezier(.34, 1.35, .64, 1);--check-ease-path:cubic-bezier(.22, 1, .36, 1);--avatar-lift:-4px;--avatar-dur:.32s;--avatar-scale:1.05;--avatar-falloff:.45;--avatar-ease-in:cubic-bezier(.22, 1, .36, 1);--avatar-ease-out:cubic-bezier(.34, 3.85, .64, 1);--shake-distance:6px;--shake-overshoot:4px;--shake-dur-a:80ms;--shake-dur-b:60ms;--shake-ease:cubic-bezier(.22, 1, .36, 1);--revert-hold:3s;--revert-dur:.28s;--clear-dur:1s;--clear-out-dur:.4s;--clear-in-dur:.4s;--clear-out-fly:12px;--clear-in-fly:12px;--clear-out-ease:cubic-bezier(.22, 1, .36, 1);--clear-in-ease:cubic-bezier(.22, 1, .36, 1);--clear-blur:2px;--glow-delay:50ms;--glow-peak-at:.15;--glow-opacity:.42;--glow-spread:1.5;--pulse-dur:1s;--pulse-count:1;--pulse-min:.5;--reveal-dur:.4s;--reveal-blur:2px;--reveal-ease:ease-in-out;--shimmer-dur:2s;--shimmer-base:#7c7c7c;--shimmer-highlight:#0d0d0d;--shimmer-band:400%;--shimmer-ease:linear;--tabs-dur:.25s;--tabs-ease:cubic-bezier(.22, 1, .36, 1);--tabs-text-muted:#0f0f0fcc;--tabs-text-active:#0f0f0f;--tabs-bar-bg:#f1f1f1;--tabs-pill-bg:#fff;--tt-in-dur:.15s;--tt-out-dur:50ms;--tt-scale:.98;--tt-delay:80ms;--tt-in-ease:ease-out;--tt-out-ease:ease-out;--tt-bg:#fff;--tt-fg:#2f2f2f;--stagger-dur:.5s;--stagger-distance:12px;--stagger-stagger:40ms;--stagger-blur:3px;--stagger-ease:cubic-bezier(.22, 1, .36, 1);--tilt-perspective:1000px;--tilt-return:1s;--tilt-return-ease:cubic-bezier(.22, 1, .36, 1);--tilt-follow:.4s;--tilt-follow-ease:cubic-bezier(.22, 1, .36, 1);--tilt-glare-opacity:.32;--tilt-glare-fade:.3s;--tilt-glare-ease:cubic-bezier(.22, 1, .36, 1);--morph-open-dur:.35s;--morph-close-dur:.25s;--morph-ease:cubic-bezier(.34, 1.25, .64, 1);--morph-close-ease:cubic-bezier(.22, 1, .36, 1);--morph-r-closed:40px;--morph-r-open:20px;--morph-fade-dur:.2s;--morph-slide:40px;--morph-rotate:45deg;--morph-scale:.97;--morph-blur:2px;--acc-expand:.25s;--acc-collapse:.25s;--acc-chevron:.25s;--acc-ease:cubic-bezier(.22, 1, .36, 1)}@font-face{font-family:DS-Digital;src:url(/fonts/DS-DIGIT.TTF)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:DS-Digital;src:url(/fonts/DS-DIGIB.TTF)format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:DS-Digital;src:url(/fonts/DS-DIGII.TTF)format("truetype");font-weight:400;font-style:italic;font-display:swap}html{scrollbar-gutter:stable}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--text-dim);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--text)}*{scrollbar-width:thin;scrollbar-color:var(--text-dim) transparent}:root[data-theme=light] ::-webkit-scrollbar-thumb{background:#c8c8cc}:root[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#aeaeb4}:root[data-theme=light] *{scrollbar-color:#c8c8cc transparent}:root{--nav-h:115px;--font-display:"Cabinet Grotesk", sans-serif;--font-body:"Geist Variable", sans-serif;--font-mono:"DM Mono", monospace}:root[data-theme=light]{--bg:#fbfbfb;--bg-rgb:251, 251, 251;--surface:#ffffffe6;--surface-rgb:255, 255, 255;--surface-solid:#fff;--text:#121214;--text-dim:#37373c;--text-muted:#6b6b72;--accent:#121214;--border:#eee;--dot:#0000000a;--shadow-sm:none;--shadow-lg:none;--nav-bg:transparent;--nav-bg-rgb:245, 245, 247;--nav-border:transparent;--nav-glow:transparent;--nav-icon:#0000008c;--nav-icon-active:#121214;--nav-indicator:#121214;--nav-active-bg:#fff;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#0a0a0c;--bg-rgb:10, 10, 12;--surface:#ffffff0a;--surface-rgb:255, 255, 255;--surface-solid:#131316;--text:#f5f5f7;--text-dim:#d1d1d6;--text-muted:#8e8e93;--accent:#f5f5f7;--border:#ffffff0f;--dot:#ffffff0d;--shadow-sm:0 4px 12px #00000080;--shadow-lg:0 12px 32px #000c;--nav-bg:#13131647;--nav-bg-rgb:19, 19, 22;--nav-border:#ffffff1f;--nav-glow:#ffffff14;--nav-icon:#ffffffa6;--nav-icon-active:#f5f5f7;--nav-indicator:#f5f5f7;--nav-active-bg:#ffffff24;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@keyframes pageEnter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes navEntrance{0%{opacity:0;transform:translate(-50%)translateY(24px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes shotEnter{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--duration-fast) var(--ease-smooth-out), color var(--duration-fast) var(--ease-smooth-out);overflow-x:hidden}a:focus-visible,button:focus-visible,[role=button]:focus-visible{outline:2px solid var(--accent);outline-offset:4px}img{max-width:100%;display:block}button{font-family:inherit}a{color:inherit;text-decoration:none}ul{list-style:none}.app-shell{background:var(--bg);flex-direction:column;height:100vh;padding:16px 16px 0;display:flex}[data-theme=dark] .app-shell{background:var(--bg)}.app-card{background:var(--surface-solid);min-height:0;transition:background-color var(--duration-fast) var(--ease-smooth-out);border-radius:14px;flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.backdrop.dot-grid{position:absolute;inset:0}.app-content{scroll-behavior:smooth;flex:1;min-height:0;position:relative;overflow:hidden auto}.nav{z-index:100;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:8px 24px 10px;display:grid;position:relative}.nav-meta{font-family:var(--font-body);letter-spacing:.6px;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:10px;font-weight:600;line-height:10px;display:flex}.nav-meta-right{text-align:right;justify-content:flex-end}.dock,.shots-toolbar{font-family:var(--font-body);background:#242424;border:1px solid #393939;border-top-color:#484848;border-radius:999px;align-items:center;padding:5px;display:flex;box-shadow:inset 0 1px #ffffff08,0 8px 24px #00000020,0 2px 6px #00000014}.nav-docks{align-items:center;gap:8px;max-width:calc(100vw - 32px);display:flex}.dock{flex:0 auto;gap:3px;width:232px;min-width:0}.dock-tools{flex:none;width:auto}.dock-tools .dock-item,.dock-tools .dock-item:hover,.dock-tools .dock-item:focus-visible{flex:none;width:48px}.dock-item{color:#fff;min-width:0;height:38px;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;flex:1;justify-content:center;align-items:center;padding:0 8px;text-decoration:none;transition:background .2s,flex .25s;display:flex;position:relative}.dock-icon{opacity:.9;flex-shrink:0;width:17px;height:17px}.dock-item span{white-space:nowrap;opacity:0;max-width:0;font-size:12px;line-height:18px;transition:max-width .25s,opacity .2s,margin .25s;overflow:hidden}.dock-item[aria-current=page],.dock-item[aria-pressed=true],.dock-item:hover,.dock-item:focus-visible{background:#3b3b3b;border-color:#ffffff0f}.dock-item:hover,.dock-item:focus-visible{flex:4}.dock-item:hover span,.dock-item:focus-visible span{opacity:1;max-width:80px;margin-left:7px}.dock-item:focus-visible{outline-offset:2px;outline:2px solid #aaa}.social-pill{background:var(--surface);border:none;border-radius:999px;align-items:center;height:44px;padding:0 8px;display:flex}.social-link{width:36px;height:36px;color:var(--text-dim);transition:all var(--duration-quick) var(--ease-out);border-radius:50%;justify-content:center;align-items:center;display:flex}.social-link:hover{color:var(--text);transform:scale(1.18)}.social-icon{width:18px;height:18px}.social-divider{background:var(--border);width:1px;height:14px;margin:0 4px}.home{flex-direction:column;gap:80px;padding:80px 0 40px;display:flex;overflow:hidden}.home-column{flex-direction:column;gap:64px;width:min(576px,100% - 56px);margin-inline:auto;display:flex}.hero-status{align-items:center;margin-bottom:16px;display:flex}.cool-badge{--badge-bg:#152829;--badge-line:#194b3a;--badge-glow:#26d97f;--badge-glow-soft:#26d97f66;--badge-ink:#26d97f;background:var(--badge-bg);border-radius:999px;padding:4px 10px;display:inline-flex;position:relative;overflow:hidden}:root[data-theme=light] .cool-badge{--badge-bg:#dcf6e8;--badge-line:#bfe9d2;--badge-glow:#1fb86a;--badge-glow-soft:#1fb86a66;--badge-ink:#0b7a44}.cool-badge-ring{border:1px solid var(--badge-line);border-radius:inherit;pointer-events:none;-webkit-mask-composite:xor;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.cool-badge-glint{background:conic-gradient(from 45deg at 50% 50%, var(--badge-line), var(--badge-glow-soft), var(--badge-line), var(--badge-line), var(--badge-line), var(--badge-glow), var(--badge-line), var(--badge-line), var(--badge-line));animation:4s linear infinite cool-badge-rotate;position:absolute;inset:-1px}@keyframes cool-badge-rotate{to{transform:rotate(1turn)}}.cool-badge-label{font-family:var(--font-body);color:var(--badge-ink);font-size:11px;font-weight:500;line-height:16px;position:relative}@media (prefers-reduced-motion:reduce){.cool-badge-glint{animation:none}}.hero-time{font-family:"DS-Digital", "Geist Mono", var(--font-mono);color:var(--text-muted);font-variant-numeric:tabular-nums;letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:400}.hero-title{z-index:2;font-family:var(--font-body);letter-spacing:-.03em;color:var(--text);font-size:39px;font-weight:500;line-height:1.2;position:relative}.hero-line{text-wrap:balance;display:block}.hero-keep{white-space:nowrap}@media (min-width:769px){.hero-line{white-space:nowrap}}.hero-avatar-btn,.hero-puzzle-btn{vertical-align:middle;margin-block:-8px}.js .hero-status,.js .hero-title,.js .hero-actions{visibility:hidden;animation:0s 3s forwards jsRevealFallback}@keyframes jsRevealFallback{to{visibility:visible}}.hero-word-mask{margin-bottom:-.12em;padding-bottom:.12em}.hero-role{display:inline-block}.hero-role-roll{white-space:nowrap;margin-bottom:-.12em;padding-bottom:.12em;display:inline-grid;overflow:clip}.hero-role-line{grid-area:1/1;justify-self:start}.hero-role-letter{transition:transform .64s cubic-bezier(.22,1,.36,1);transition-delay:calc(var(--at) * 24ms);display:inline-block}.hero-role-roll[data-back] .hero-role-letter{transition-delay:calc((var(--last) - var(--at)) * 24ms)}.hero-role-line:first-child .hero-role-letter:nth-child(odd),.hero-role-line:last-child .hero-role-letter:nth-child(2n){transform:translateY(-125%)}.hero-role-line:first-child .hero-role-letter:nth-child(2n),.hero-role-line:last-child .hero-role-letter:nth-child(odd){transform:translateY(125%)}.hero-role-line[data-on] .hero-role-letter:nth-child(n){transform:none}.hero-pop,.magnetic{display:inline-flex}.hero-avatar-btn{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;position:relative}.hero-avatar-btn .hero-avatar-main{cursor:pointer}.hero-poke-bubble{z-index:11;background:var(--text);color:var(--bg);letter-spacing:0;white-space:nowrap;pointer-events:none;border-radius:999px;padding:4px 10px;font-size:13px;font-weight:600;position:absolute;bottom:100%;left:50%}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.hero-dim{color:var(--text-dim)}.hero-mono{font-family:"Geist Mono Variable", var(--font-mono);letter-spacing:-.04em;font-size:.88em;font-weight:500;line-height:1.2}.hero-avatar-main{object-fit:cover;vertical-align:middle;width:42px;height:42px;transition:transform var(--duration-medium) var(--ease-bounce), box-shadow var(--duration-medium) var(--ease-bounce);cursor:zoom-in;border:none;border-radius:50%;margin:0 4px}.hero-avatar-main:hover{z-index:10;position:relative;transform:scale(2.6)translateY(-4px);box-shadow:0 16px 48px #00000038}.hero-avatar-stack{align-items:center;margin:0 4px;display:inline-flex}.hero-avatar-stack img{object-fit:cover;width:38px;height:38px;transition:transform var(--duration-fast) var(--ease-smooth-out);border:none;border-radius:50%;margin-left:-12px}.hero-avatar-stack img:first-child{margin-left:0}.hero-avatar-stack img:hover{z-index:10;transform:translateY(-4px)}.hero-actions{align-items:center;gap:12px;margin-top:40px;display:flex}.shiny-button{isolation:isolate;-webkit-backdrop-filter:blur(4px);cursor:pointer;background:radial-gradient(31.2% 40.91% at 50% 151.14%,#bad6f714 0,#bad6f700 100%),#bad6f70f;border-radius:999px;align-items:center;height:44px;padding:0 16px;text-decoration:none;display:inline-flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #bad7f71f}:root[data-theme=light] .shiny-button{background-color:#121214}.shiny-button:before{content:"";opacity:0;transition:opacity 1s var(--ease-out);background:#bad6f7;position:absolute;inset:0}.shiny-button:hover:before{opacity:.125}.shiny-button-sparkles,.shiny-button-ring-light{aspect-ratio:1;pointer-events:none;width:100%;position:absolute;top:50%;left:50%}.shiny-button-sparkles{transform:translate(-50%,-50%);-webkit-mask:url("data:image/svg+xml,%3Csvg width='28' height='24' viewBox='0 0 28 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.0534 15.732C13.8444 15.283 14.2848 14.8489 14.7326 15.051C14.8296 15.0959 14.9043 15.1707 14.949 15.268C15.1506 15.717 14.7177 16.1511 14.2698 15.949C14.1728 15.9041 14.0982 15.8293 14.0534 15.732Z' fill='black'/%3E%3Cpath d='M18.8001 13.5093C19.0016 13.0603 18.5687 12.6263 18.1209 12.8283C18.0239 12.8732 17.9492 12.9481 17.9045 13.0453C17.6955 13.4944 18.1358 13.9284 18.5837 13.7264C18.6807 13.6815 18.7553 13.6066 18.8001 13.5093Z' fill='black'/%3E%3Cpath d='M0.949043 2.732C1.15057 2.28297 0.717663 1.84891 0.269836 2.05097C0.172806 2.09587 0.098162 2.17071 0.0533793 2.268C-0.155607 2.71703 0.284759 3.15109 0.732587 2.94903C0.829616 2.90413 0.90426 2.82929 0.949043 2.732Z' fill='black'/%3E%3Cpath d='M26.9489 7.732C27.151 7.28297 26.7169 6.84891 26.2679 7.05097C26.1706 7.09587 26.0958 7.17071 26.0508 7.268C25.8488 7.71703 26.2828 8.15109 26.7319 7.94903C26.8292 7.90413 26.904 7.82929 26.9489 7.732Z' fill='black'/%3E%3Cpath d='M13.0534 5.732C12.8444 5.28297 13.2848 4.84891 13.7326 5.05097C13.8296 5.09587 13.9043 5.17071 13.949 5.268C14.1506 5.71703 13.7177 6.15109 13.2698 5.94903C13.1728 5.90413 13.0982 5.82929 13.0534 5.732Z' fill='black'/%3E%3Cpath d='M10.0534 17.732C9.84439 17.283 10.2848 16.8489 10.7326 17.051C10.8296 17.0959 10.9043 17.1707 10.949 17.268C11.1506 17.717 10.7177 18.1511 10.2698 17.949C10.1728 17.9041 10.0982 17.8293 10.0534 17.732Z' fill='black'/%3E%3Cpath d='M15.0534 21.732C14.8444 21.283 15.2848 20.8489 15.7326 21.051C15.8296 21.0959 15.9043 21.1707 15.949 21.268C16.1506 21.717 15.7177 22.1511 15.2698 21.949C15.1728 21.9041 15.0982 21.8293 15.0534 21.732Z' fill='black'/%3E%3C/svg%3E%0A");mask:url("data:image/svg+xml,%3Csvg width='28' height='24' viewBox='0 0 28 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.0534 15.732C13.8444 15.283 14.2848 14.8489 14.7326 15.051C14.8296 15.0959 14.9043 15.1707 14.949 15.268C15.1506 15.717 14.7177 16.1511 14.2698 15.949C14.1728 15.9041 14.0982 15.8293 14.0534 15.732Z' fill='black'/%3E%3Cpath d='M18.8001 13.5093C19.0016 13.0603 18.5687 12.6263 18.1209 12.8283C18.0239 12.8732 17.9492 12.9481 17.9045 13.0453C17.6955 13.4944 18.1358 13.9284 18.5837 13.7264C18.6807 13.6815 18.7553 13.6066 18.8001 13.5093Z' fill='black'/%3E%3Cpath d='M0.949043 2.732C1.15057 2.28297 0.717663 1.84891 0.269836 2.05097C0.172806 2.09587 0.098162 2.17071 0.0533793 2.268C-0.155607 2.71703 0.284759 3.15109 0.732587 2.94903C0.829616 2.90413 0.90426 2.82929 0.949043 2.732Z' fill='black'/%3E%3Cpath d='M26.9489 7.732C27.151 7.28297 26.7169 6.84891 26.2679 7.05097C26.1706 7.09587 26.0958 7.17071 26.0508 7.268C25.8488 7.71703 26.2828 8.15109 26.7319 7.94903C26.8292 7.90413 26.904 7.82929 26.9489 7.732Z' fill='black'/%3E%3Cpath d='M13.0534 5.732C12.8444 5.28297 13.2848 4.84891 13.7326 5.05097C13.8296 5.09587 13.9043 5.17071 13.949 5.268C14.1506 5.71703 13.7177 6.15109 13.2698 5.94903C13.1728 5.90413 13.0982 5.82929 13.0534 5.732Z' fill='black'/%3E%3Cpath d='M10.0534 17.732C9.84439 17.283 10.2848 16.8489 10.7326 17.051C10.8296 17.0959 10.9043 17.1707 10.949 17.268C11.1506 17.717 10.7177 18.1511 10.2698 17.949C10.1728 17.9041 10.0982 17.8293 10.0534 17.732Z' fill='black'/%3E%3Cpath d='M15.0534 21.732C14.8444 21.283 15.2848 20.8489 15.7326 21.051C15.8296 21.0959 15.9043 21.1707 15.949 21.268C16.1506 21.717 15.7177 22.1511 15.2698 21.949C15.1728 21.9041 15.0982 21.8293 15.0534 21.732Z' fill='black'/%3E%3C/svg%3E%0A")}.shiny-button-sparkles-light{background:conic-gradient(#ffffff80,#fff0 60deg 310deg,#ffffff80 360deg);animation:4s linear infinite shiny-button-turn;position:absolute;inset:0}.shiny-button-ring{border-radius:inherit;pointer-events:none;-webkit-mask-composite:xor;padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.shiny-button-ring-light{background:conic-gradient(from 5deg,#0000 280deg,#ff6a1a 1turn,#0000 361deg);animation:4s linear infinite shiny-button-sweep}@keyframes shiny-button-turn{to{transform:rotate(360deg)}}@keyframes shiny-button-sweep{0%{transform:translate(-50%,-50%)rotate(0)}to{transform:translate(-50%,-50%)rotate(360deg)}}.shiny-button-label{font-family:var(--font-body);color:#fff;font-size:14px;font-weight:400;position:relative}@media (prefers-reduced-motion:reduce){.shiny-button-sparkles-light,.shiny-button-ring-light{animation:none}.shiny-button-ring-light{transform:translate(-50%,-50%)}}.hero-inline-img{object-fit:cover;vertical-align:middle;width:50px;height:50px;transition:transform var(--duration-medium) var(--ease-bounce);border:none;border-radius:7px;margin:0 4px}.hero-inline-img:hover{transform:scale(1.12)rotate(4deg)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hero-name{margin-left:.22em}.hero-puzzle-btn{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:0;position:relative}.hero-puzzle-btn:focus-visible{outline:2px solid var(--text);outline-offset:2px}.hero-puzzle-face{transition:transform var(--duration-medium) var(--ease-bounce);border-radius:7px;margin:0 4px;display:inline-flex;position:relative;overflow:hidden}.hero-puzzle-face .hero-inline-img{margin:0}.hero-puzzle-face .hero-puzzle-next{opacity:0;transition:opacity var(--duration-very-slow) var(--ease-out);position:absolute;inset:0}.hero-puzzle-face .hero-puzzle-next.is-in{opacity:1}.hero-puzzle-tip{color:#f5f5f7;font-family:var(--font-body);letter-spacing:0;white-space:nowrap;pointer-events:none;opacity:0;animation:puzzleHint 4s var(--ease-out) 2.4s both;transition:opacity var(--duration-quick) var(--ease-out);background:#242424;border:1px solid #393939;border-top-color:#484848;border-radius:999px;padding:6px 11px;font-size:12px;font-weight:500;line-height:16px;position:absolute;top:50%;left:calc(100% + 6px);transform:translateY(-50%);box-shadow:0 8px 24px #0000002e,0 2px 6px #0000001a}.hero-puzzle-btn:hover .hero-puzzle-tip,.hero-puzzle-btn:focus-visible .hero-puzzle-tip{opacity:1;animation:none}@keyframes puzzleHint{0%,to{opacity:0}8%,88%{opacity:1}}.hero-puzzle-btn .hero-inline-img:hover{transform:none}.hero-puzzle-face:after{content:"";opacity:0;transition:opacity var(--duration-fast) var(--ease-out);background:linear-gradient(90deg,#0000 calc(33.33% - .5px),#ffffffd9 calc(33.33% - .5px) calc(33.33% + .5px),#0000 calc(33.33% + .5px) calc(66.67% - .5px),#ffffffd9 calc(66.67% - .5px) calc(66.67% + .5px),#0000 calc(66.67% + .5px)),linear-gradient(#0000 calc(33.33% - .5px),#ffffffd9 calc(33.33% - .5px) calc(33.33% + .5px),#0000 calc(33.33% + .5px) calc(66.67% - .5px),#ffffffd9 calc(66.67% - .5px) calc(66.67% + .5px),#0000 calc(66.67% + .5px));position:absolute;inset:0}.hero-puzzle-btn:hover .hero-puzzle-face,.hero-puzzle-btn:focus-visible .hero-puzzle-face{transform:scale(1.12)rotate(4deg)}.hero-puzzle-btn:hover .hero-puzzle-face:after,.hero-puzzle-btn:focus-visible .hero-puzzle-face:after{opacity:1}.puzzle{border:1px solid var(--border);background:var(--surface-solid);width:min(328px,100vw - 32px);max-width:none;color:var(--text);border-radius:20px;margin:auto;padding:0;box-shadow:0 24px 64px #00000047}.puzzle::backdrop{-webkit-backdrop-filter:blur(4px);animation:puzzleBackdrop var(--duration-medium) var(--ease-out);background:#0a0a0c66}@keyframes puzzleBackdrop{0%{opacity:0}}.puzzle-inner{padding:20px}.puzzle-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.puzzle-title{font-family:var(--font-body);letter-spacing:-.01em;font-size:17px;font-weight:600;line-height:24px}.puzzle-hint{color:var(--text-muted);margin-top:2px;font-size:14px;line-height:20px}.puzzle-close{background:color-mix(in srgb, var(--text) 7%, transparent);width:32px;height:32px;color:var(--text);cursor:pointer;transition:background-color var(--duration-quick) var(--ease-out);border:0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.puzzle-close:hover{background:color-mix(in srgb, var(--text) 13%, transparent)}.puzzle-close:focus-visible,.puzzle-shuffle:focus-visible{outline:2px solid var(--text);outline-offset:2px}.puzzle-board{--tile:88px;--gap:0px;width:calc(var(--tile) * 3 + 8px);height:calc(var(--tile) * 3 + 8px);margin:0 auto;position:relative}.puzzle-board.is-playing{--gap:4px}.puzzle-piece{--x:calc(var(--col) * (var(--tile) + var(--gap)) + 4px - var(--gap));--y:calc(var(--row) * (var(--tile) + var(--gap)) + 4px - var(--gap));width:var(--tile);height:var(--tile);background:color-mix(in srgb, var(--text) 7%, transparent);cursor:grab;touch-action:none;transform:translate(calc(var(--x) + var(--dx,0px)), calc(var(--y) + var(--dy,0px))) scale(var(--lift,1));transition:transform .42s var(--ease-smooth-out), border-radius var(--duration-medium) var(--ease-smooth-out), box-shadow var(--duration-fast) var(--ease-out);border:0;border-radius:6px;padding:0;position:absolute;top:0;left:0;overflow:hidden}.puzzle-piece img{left:calc(var(--piece-col) * var(--tile) * -1);top:calc(var(--piece-row) * var(--tile) * -1);width:calc(var(--tile) * 3);height:calc(var(--tile) * 3);object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none;max-width:none;position:absolute}.puzzle-piece:disabled{cursor:default}.puzzle-piece:focus-visible{z-index:1;outline:2px solid var(--text);outline-offset:2px}.puzzle-piece[aria-pressed=true]{--lift:.9;box-shadow:0 0 0 2px var(--surface-solid), 0 0 0 4px var(--text)}.puzzle-piece[data-dragging]{--lift:1.06;z-index:2;cursor:grabbing;transition:none;box-shadow:0 14px 30px #0000004d}.puzzle-piece.is-home:after{content:"";pointer-events:none;animation:puzzleHome .6s var(--ease-out) forwards;background:#ffffff8c;position:absolute;inset:0}@keyframes puzzleHome{to{opacity:0}}.puzzle-board[data-scrambling] .puzzle-piece{transition-duration:.64s;transition-delay:calc(var(--i) * 35ms)}.puzzle-board:not(.is-playing) .puzzle-piece{border-radius:0}.puzzle-board:not(.is-playing) .puzzle-piece[data-spot="0"]{border-top-left-radius:12px}.puzzle-board:not(.is-playing) .puzzle-piece[data-spot="2"]{border-top-right-radius:12px}.puzzle-board:not(.is-playing) .puzzle-piece[data-spot="6"]{border-bottom-left-radius:12px}.puzzle-board:not(.is-playing) .puzzle-piece[data-spot="8"]{border-bottom-right-radius:12px}.puzzle-board.is-solved:after{content:"";pointer-events:none;animation:puzzleShine 1.1s var(--ease-smooth-out) .35s both;background:linear-gradient(105deg,#0000 35%,#fff9 50%,#0000 65%) 0 0/250% 100% no-repeat;border-radius:12px;position:absolute;inset:4px}@keyframes puzzleShine{0%{background-position:130% 0}to{background-position:-30% 0}}.puzzle-foot{justify-content:space-between;align-items:center;gap:12px;min-height:32px;margin-top:18px;display:flex}.puzzle-status{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:14px}.puzzle-shuffle{white-space:nowrap;background:var(--text);height:32px;color:var(--surface-solid);font:inherit;cursor:pointer;transition:transform var(--duration-quick) var(--ease-out);border:0;border-radius:999px;flex:none;padding:0 14px;font-size:14px;font-weight:500}.puzzle-shuffle:active{transform:scale(.96)}@media (prefers-reduced-motion:reduce){.puzzle-piece,.hero-puzzle-face{transition:none}.hero-puzzle-tip{animation:none}.puzzle-piece.is-home:after,.puzzle-board.is-solved:after{display:none}}.note-title{font-family:var(--font-body);letter-spacing:-.01em;color:var(--text);align-items:center;gap:8px;font-size:17px;font-weight:500;line-height:24px;display:flex}.note-dot{background:#ff6a1a;border-radius:50%;flex:none;width:12px;height:12px}.note-text{color:var(--text-muted);margin-top:12px;font-size:15px;line-height:23px}.home-header{position:relative}.deck{z-index:1;align-items:flex-end;gap:14px;display:flex;position:absolute;bottom:2px;right:7px}.deck-label{text-align:right;flex-direction:column;align-items:flex-end;max-width:160px;font-size:12px;line-height:16px;display:flex}.deck-status{color:var(--text-muted)}.deck-title,.deck-artist{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.deck-title{color:var(--text);font-weight:500}.deck-artist{color:var(--text-muted)}.deck-body{zoom:.5625;border-radius:7px;flex:none;width:128px;height:128px;position:relative;transform:perspective(520px)rotateX(30deg)rotate(-9deg);box-shadow:0 2px #c9a06c,0 4px #b98f5b,0 6px #a97f4c,0 8px #98703f,0 10px #7e5b31,0 26px 30px #00000052,0 12px 12px #0003}.deck-body:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 1px #fff5e199,inset 0 0 0 1px #6e482047,inset 0 -3px 5px #643e1938}.deck-wood{border-radius:inherit;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.deck-platter{background:conic-gradient(#8e9095,#e9eaec,#9a9ca1,#f2f3f4,#8a8c91,#e2e3e6,#94969b,#eeeff1,#8e9095);border-radius:50%;width:100px;height:100px;position:absolute;top:16px;left:6px;box-shadow:0 2px 4px #46280c8c,0 0 0 1px #5a3a1866}.deck-record{cursor:pointer;background:0 0;border:0;border-radius:50%;width:96px;height:96px;padding:0;position:absolute;top:18px;left:8px}.deck-record:disabled{cursor:default}.deck-record:focus-visible,.deck-next:focus-visible{outline:2px solid var(--text);outline-offset:2px}.deck-disc{will-change:transform;background:radial-gradient(circle,#0000 0 57%,#ffffff0d 57.5% 58.5%,#0000 59% 79%,#ffffff0d 79.5% 80.5%,#0000 81%),repeating-radial-gradient(circle,#0e0e0f 0 .55px,#1c1c1e .55px 1.1px);border-radius:50%;animation:1.8s linear infinite paused deckSpin;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #000,inset 0 0 0 2px #29292b}.deck-body.is-playing .deck-disc{animation-play-state:running}@keyframes deckSpin{to{transform:rotate(360deg)}}.deck-paper{background:radial-gradient(circle,#f1e7d6 0 18%,#ff6a1a 19% 100%);border-radius:50%;position:absolute;inset:33%;overflow:hidden;box-shadow:0 0 0 1px #0009}.deck-cover{object-fit:cover;width:100%;height:100%}.deck-sheen{pointer-events:none;background:conic-gradient(from 28deg,#0000 0deg,#ffffff0a 14deg,#ffffff4d 28deg,#ffffff0a 44deg,#0000 62deg 180deg,#ffffff08 194deg,#ffffff38 208deg,#ffffff08 224deg,#0000 242deg);border-radius:50%;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#0000 0 34%,#000 35%);mask-image:radial-gradient(circle,#0000 0 34%,#000 35%)}.deck-spindle{background:radial-gradient(circle at 35% 30%,#fff,#8e9095 70%);border-radius:50%;width:4px;height:4px;margin:-2px 0 0 -2px;position:absolute;top:50%;left:50%;box-shadow:0 1px 1px #0009}.deck-arm{filter:drop-shadow(1px 2px 1px #0000008c);pointer-events:none;transform-origin:106px 22px;width:100%;height:100%;transition:transform var(--duration-very-slow) var(--ease-smooth-out);position:absolute;inset:0;overflow:visible}.deck-body.is-playing .deck-arm{transform:rotate(var(--arm-play,10deg))}.deck-pivot{pointer-events:none;background:conic-gradient(#7e8085,#ecedef,#8c8e93,#f4f5f6,#7e8085,#e4e5e8,#7e8085);border-radius:50%;width:16px;height:16px;position:absolute;top:14px;left:98px;box-shadow:0 2px 3px #00000080,inset 0 0 0 3px #28282ad9}.deck-light{width:4px;height:4px;transition:background-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);background:#3a1b10;border-radius:50%;position:absolute;bottom:6px;left:7px;box-shadow:0 0 0 1px #00000080}.deck-body.is-playing .deck-light{background:#ff6a1a;box-shadow:0 0 0 1px #0006,0 0 5px 1px #ff6a1acc}.deck-next{cursor:pointer;width:15px;height:15px;transition:transform var(--duration-quick) var(--ease-out);background:conic-gradient(#85878c,#f0f1f2,#8f9196,#f6f6f7,#808287,#e6e7e9,#85878c);border:0;border-radius:50%;padding:0;position:absolute;bottom:5px;right:6px;box-shadow:0 2px 3px #3c230a8c,0 0 0 1px #5a3a188c}.deck-next:after{content:"";border-radius:50%;position:absolute;inset:-14px}.deck-next:active:not(:disabled){transform:rotate(40deg)scale(.93)}.deck-next:disabled{cursor:default}@media (max-width:768px){.deck-label{display:none}}@media (max-width:640px){.deck{right:6px}.deck-body{zoom:.45}.deck-next:after{inset:-20px}}@media (max-width:480px){.deck{bottom:52px}}@media (prefers-reduced-motion:reduce){.deck-disc{animation:none}.deck-arm{transition:none}}.home-outro{flex-direction:column;align-items:center;padding-top:32px;display:flex}.home-falling{height:170px;font-family:"Geist Mono Variable", var(--font-mono);letter-spacing:-.03em;color:var(--text);font-weight:500}.home-outro-cta{margin-top:4px}.flood-magnet{display:inline-flex}.js .flood-magnet:not([data-shown]){visibility:hidden}.flood-button{--flood:#ff6a1a;--flood-ink:#121214;isolation:isolate;height:72px;color:var(--bg);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:999px;align-items:center;gap:20px;padding:0 8px 0 32px;text-decoration:none;transition:transform .15s ease-out;display:inline-flex;position:relative}.flood-button:active{transform:scale(.97)}.flood-button:focus-visible{outline:2px solid var(--text);outline-offset:4px}.flood-button:before{content:"";z-index:-1;border-radius:inherit;background:var(--flood);filter:blur(24px);opacity:0;transition:opacity .5s;position:absolute;inset:14px 20px -8px}.flood-button-surface{border-radius:inherit;background:var(--text);clip-path:inset(0 round 999px);position:absolute;inset:0}.flood-button-fill{aspect-ratio:1;background:var(--flood);border-radius:50%;width:240%;transition:transform .45s cubic-bezier(.19,1,.22,1);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(0)}.flood-button-label{font-family:var(--font-body);letter-spacing:-.02em;font-size:22px;font-weight:500;line-height:1.2;display:inline-flex;position:relative;overflow:hidden}.flood-button-char{white-space:pre;text-shadow:0 1.3em var(--flood-ink);transition:transform .5s cubic-bezier(.19, 1, .22, 1) calc(var(--i) * 14ms);display:inline-block}.flood-button-disc{clip-path:circle(50%);background:var(--flood);width:56px;height:56px;color:var(--flood-ink);border-radius:50%;place-items:center;transition:background-color .4s 60ms;display:grid;position:relative}.flood-button-arrow{grid-area:1/1;width:22px;height:22px;transition:transform .5s cubic-bezier(.19,1,.22,1)}.flood-button-arrow+.flood-button-arrow{color:#fff;transform:translate(-200%,200%)}.flood-button:is([data-lit],:focus-visible):before{opacity:.5}.flood-button:is([data-lit],:focus-visible) .flood-button-fill{transition-duration:.65s;transform:translate(-50%,-50%)scale(1)}.flood-button:is([data-lit],:focus-visible) .flood-button-char{transform:translateY(-1.3em)}.flood-button:is([data-lit],:focus-visible) .flood-button-disc{background-color:var(--flood-ink)}.flood-button:is([data-lit],:focus-visible) .flood-button-arrow{transition-delay:40ms;transform:translate(200%,-200%)}.flood-button:is([data-lit],:focus-visible) .flood-button-arrow+.flood-button-arrow{transition-delay:.1s;transform:none}@media (max-width:768px){.flood-button{gap:16px;height:64px;padding-left:28px}.flood-button-label{font-size:20px}.flood-button-disc{width:50px;height:50px}}@media (prefers-reduced-motion:reduce){.flood-button-fill{opacity:0;transition:opacity .3s;transform:translate(-50%,-50%)}.flood-button-char{text-shadow:none;transition:color .3s}.flood-button-arrow{transition:color .3s}.flood-button-arrow+.flood-button-arrow{display:none}.flood-button:is([data-lit],:focus-visible) .flood-button-fill{opacity:1;transform:translate(-50%,-50%)}.flood-button:is([data-lit],:focus-visible) .flood-button-char{color:var(--flood-ink);transform:none}.flood-button:is([data-lit],:focus-visible) .flood-button-arrow{color:#fff;transform:none}}.home-body{flex-direction:column;gap:24px;display:flex}.home-body p{text-align:justify;font-kerning:normal;letter-spacing:-.01em;color:var(--text-dim);margin:0;font-size:15.5px;font-weight:450;line-height:1.8}.signature{width:150px;height:auto;color:var(--text);margin-top:4px;display:block;overflow:visible}.signature path{fill:none;stroke:currentColor;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1 2}.js .signature:not([data-signed]) path{stroke-dashoffset:1.02px}.signature[data-signed] path{transition:stroke-dashoffset var(--draw) var(--ease) var(--at)}@media (prefers-reduced-motion:reduce){.js .signature:not([data-signed]) path{stroke-dashoffset:0}}@media (max-width:768px){.signature{margin-bottom:16px}}.home-experience{border-top:1px solid var(--border);flex-direction:column;gap:0;margin-top:-32px;padding-top:24px;display:flex}.exp-item{border-bottom:1px solid var(--border);transition:padding-left var(--duration-fast) var(--ease-smooth-out), border-color var(--duration-fast) var(--ease-out);grid-template-columns:140px 1fr auto;align-items:center;gap:16px;padding:16px 0;display:grid}.exp-item:last-child{border-bottom:none}.exp-item:hover{padding-left:6px}.exp-year{font-family:var(--font-body);color:var(--text-dim);white-space:nowrap;font-size:14.5px}.exp-company{color:var(--text);letter-spacing:-.015em;transition:color var(--duration-fast) var(--ease-out);font-size:14.5px;font-weight:400}.exp-item:hover .exp-company{color:var(--accent)}.exp-role{color:var(--text-dim);text-align:right;font-size:14.5px}@media (max-width:768px){.exp-item{grid-template-columns:1fr auto;gap:4px 12px;padding:16px 0;display:grid}.exp-company{grid-column:1;font-size:15px;font-weight:500}.exp-year{text-align:right;color:var(--text-dim);grid-area:1/2;font-size:13.5px}.exp-role{text-align:left;color:var(--text-muted);grid-area:2/1/auto/span 2;font-size:13.5px}}.home-marquee{--radius:clamp(560px, 69vw, 1200px);--step:calc(360deg / var(--count));--card-w:calc(2 * var(--radius) * tan(var(--step) / 2) * .9);--card-h:calc(var(--card-w) * 1.25);height:var(--card-h);perspective:var(--radius);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:pan-y;position:relative;overflow:clip visible}.home-marquee[data-dragging]{cursor:grabbing}.home-marquee{--edge-blur-width:9%}.home-marquee .edge-blur{inset:-30% 0}@media (max-width:1024px){.home-marquee{--edge-blur-width:6%}.home-marquee .edge-blur{inset:-14% 0}}.home-marquee-axis{transform:translateZ(var(--radius));transform-style:preserve-3d;position:absolute;top:50%;left:50%}.home-marquee-ring{transform-style:preserve-3d}.home-marquee-card{top:calc(var(--card-h) / -2);left:calc(var(--card-w) / -2);width:var(--card-w);height:var(--card-h);background:var(--border);transform:rotateY(calc(var(--i) * var(--step))) translateZ(calc(var(--radius) * -1));border-radius:6px;position:absolute;overflow:hidden}.shots-container{cursor:grab;background-color:var(--bg);background-image:radial-gradient(var(--dot) 1px, transparent 1px);touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;animation:pageEnter var(--duration-slow) var(--ease-smooth-out) both;background-size:24px 24px;position:relative;overflow:hidden}.shots-container.is-plain{background-image:none}.shots-view{animation:shotsViewIn var(--duration-very-slow) var(--ease-out) both;position:absolute;inset:0;overflow:hidden}.shots-view[data-dragging]{cursor:grabbing}@keyframes shotsViewIn{0%{opacity:0}}.shots-canvas{transform-origin:0 0;will-change:transform;position:absolute;top:0;left:0}.shots-card{background:var(--surface-solid);box-shadow:0 0 0 1px var(--border);cursor:pointer;will-change:transform;border:0;padding:0;position:absolute;overflow:hidden}.shots-view[data-dragging] .shots-card{cursor:grabbing}.shots-card img{pointer-events:none;-webkit-user-select:none;user-select:none}.shots-card:focus-visible{outline:2px solid var(--text);outline-offset:3px}.shots-depth-world{transform-style:preserve-3d;position:absolute;top:50%;left:50%}.shots-depth-card{width:var(--card-w,280px);opacity:0;top:0;left:0}.shot-item{border:1px solid var(--border);contain:layout style;content-visibility:auto;transition:box-shadow var(--duration-fast) var(--ease-smooth-out), transform var(--duration-fast) var(--ease-smooth-out), border-color var(--duration-quick) var(--ease-out);background-color:var(--surface-solid);cursor:pointer;border-radius:0;position:absolute;overflow:hidden;box-shadow:0 4px 24px #00000005}.shot-item:hover{z-index:10;transform:translateY(-6px)scale(1.02);box-shadow:0 20px 48px #0000000f}.shot-item img{object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none;border-radius:0;width:100%;height:100%;display:block}.shots-edge-glass{pointer-events:none;z-index:5;background:linear-gradient(to right, var(--bg) 0, transparent 72px, transparent calc(100% - 72px), var(--bg) 100%), linear-gradient(to bottom, var(--bg) 0, transparent 72px, transparent calc(100% - 72px), var(--bg) 100%);position:absolute;inset:0}.shots-zoom{display:none}.shots-hint{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);pointer-events:none;-webkit-user-select:none;user-select:none;font-size:10px;animation:3.5s forwards hintFade;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}@keyframes hintFade{0%{opacity:0;transform:translate(-50%)translateY(6px)}15%{opacity:1;transform:translate(-50%)translateY(0)}75%{opacity:1}to{opacity:0}}.shot-badge{-webkit-backdrop-filter:blur(8px);background:#00000073;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;display:flex;position:absolute;top:12px;right:12px}.shot-badge-icon{color:#fff;width:14px;height:14px}.page-placeholder{height:100%;animation:pageEnter var(--duration-slow) var(--ease-smooth-out) both;flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.page-placeholder h2{font-family:var(--font-display);color:var(--text);font-size:52px;font-weight:300}.page-placeholder p{letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);font-size:10px}.app-content:has(.cases){scroll-behavior:auto;container-type:size}.cases{--cases-gutter:40px;--case-w:min(80cqw, calc((100cqh - 112px) * 1.6));position:relative}.cases-h{height:calc(100cqh + var(--cases-travel,0px));position:relative}.cases-stage{height:100cqh;position:sticky;top:0;overflow:hidden}.cases-intro{top:calc(50% - var(--case-w) / 3.2);left:var(--cases-gutter);z-index:3;width:232px;position:absolute}.cases-ruler{z-index:5;cursor:grab;touch-action:none;height:60px;position:absolute;top:0;left:0;right:0}.cases-ruler.is-dragging{cursor:grabbing}.cases-ruler:focus-visible{outline:2px solid var(--text);outline-offset:-2px}.cases-ruler canvas{width:100%;height:100%;position:absolute;inset:0}.cases-ruler-playhead{top:0;left:var(--playhead,10%);background:linear-gradient(to bottom, var(--text-muted), var(--border));border-radius:1px;width:1.5px;height:34px;margin-left:-.75px;position:absolute}.cases-track{pointer-events:none;perspective:1600px;perspective-origin:50%;transform-style:preserve-3d;position:absolute;inset:0}.case-panel{width:var(--case-w);margin:calc(var(--case-w) / -3.2) 0 0 calc(var(--case-w) / -2);pointer-events:auto;transform-origin:50%;will-change:transform;position:absolute;top:50%;left:50%}.case-media{aspect-ratio:16/10;background:var(--border);border-radius:12px;width:100%;position:relative;overflow:hidden}.case-caption{font-family:var(--font-body);color:var(--text);white-space:nowrap;justify-content:space-between;gap:16px;margin-top:12px;font-size:15px;line-height:22px;display:flex}.case-caption-muted{color:var(--text-muted)}.case-caption-line{display:block;overflow:hidden}.case-caption-line>span{transition:transform var(--duration-quick) var(--ease-out);display:block;transform:translateY(105%)}.case-panel.is-hovered .case-caption-line>span{transition:transform var(--duration-fast) var(--ease-smooth-out);transform:none}.case-panel.is-hovered .case-caption-line+.case-caption-line>span{transition-delay:var(--duration-stagger)}@media (hover:none){.case-caption-line>span{transform:none}}@media (prefers-reduced-motion:reduce) and (hover:hover){.case-caption-line>span,.case-panel.is-hovered .case-caption-line>span{opacity:0;transition:opacity var(--duration-quick) var(--ease-out);transform:none}.case-panel.is-hovered .case-caption-line>span{opacity:1}}.case-media img{will-change:transform;transform:scale(1.1)}.cases-ticks{z-index:5;pointer-events:none;align-items:center;gap:7.5px;height:27px;display:flex;position:absolute;top:14px;left:50%;transform:translate(-50%)}.cases-tick{background:var(--text);opacity:.16;width:2px;height:27px;transition:transform var(--duration-fast) var(--ease-smooth-out), opacity var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out);border-radius:1px;transform:scaleY(.481482)}.cases-tick[data-state=done]{opacity:.9;transform:scaleY(.703704)}.cases-tick[data-state=head]{opacity:1;background:#ff6a1a;transform:none}.cases-stage{--edge-blur-width:calc((100% - var(--case-w)) / 2)}.edge-blur{z-index:4;pointer-events:none;position:absolute;inset:0}.edge-blur-zone{width:var(--edge-blur-width,15%);position:absolute;top:0;bottom:0}.edge-blur-zone--left{left:0}.edge-blur-zone--right{right:0}.edge-blur-layer{position:absolute;top:0;bottom:0}.cases-stage[data-edge-blur=off] .edge-blur{display:none}.others{flex-direction:column;justify-content:center;width:min(576px,100% - 56px);min-height:100cqh;margin:0 auto;padding:112px 0;display:flex}.others-title{font-family:var(--font-body);color:var(--text-muted);margin-bottom:24px;font-size:15px;font-weight:500;line-height:24px}.others-row{border-bottom:1px solid var(--border)}.others-link{grid-template-columns:minmax(0,1fr) auto;gap:2px 24px;padding:16px 0;display:grid}.others-link:focus-visible{outline:2px solid var(--text);outline-offset:2px}.others-row:last-child{border-bottom:none}.others-name{font-family:var(--font-body);letter-spacing:-.01em;color:var(--text);transition:color var(--duration-quick) var(--ease-out);font-size:15px;font-weight:500;line-height:24px}a.others-link .others-name:after{content:"↗";opacity:0;transition:opacity var(--duration-quick) var(--ease-out), transform var(--duration-fast) var(--ease-smooth-out);margin-left:6px;display:inline-block;transform:translate(-3px,3px)}a.others-link:hover .others-name{color:#ff6a1a}a.others-link:hover .others-name:after{opacity:1;transform:none}.others-lock{color:var(--text-muted);vertical-align:-2px;margin-left:6px}.others-year{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:14px;line-height:24px}.others-desc{color:var(--text-muted);grid-column:1/-1;font-size:15px;line-height:24px}.cases-tip{z-index:140;visibility:hidden;opacity:0;pointer-events:none;color:#f5f5f7;font-family:var(--font-body);white-space:nowrap;transform-origin:0 0;background:#242424;border:1px solid #393939;border-top-color:#484848;border-radius:999px;padding:6px 11px;font-size:12px;font-weight:500;line-height:16px;position:absolute;top:0;left:0;box-shadow:0 8px 24px #0000002e,0 2px 6px #0000001a}@media (max-width:700px),(prefers-reduced-motion:reduce){.cases-h{height:auto}.cases-stage{height:auto;position:relative;overflow:visible}.cases-intro{width:auto;max-width:420px;padding:32px var(--cases-gutter) 0;position:static}.cases-ruler,.cases-ticks,.cases-stage .edge-blur{display:none}.cases-track{padding:32px var(--cases-gutter) 0;perspective:none;flex-direction:column;gap:56px;display:flex;position:static}.case-panel{width:100%;margin:0;position:static}.case-media img{will-change:auto;transform:none}.others{min-height:0}}@media (max-width:700px){.cases{--cases-gutter:20px}.others{padding:80px 0 120px}}@media (max-width:768px){.hero-title{font-size:37px}.pg-gather-title{font-size:44px}}.csd-page-wrapper{animation:pageEnter var(--duration-very-slow) var(--ease-smooth-out) both}.csd-container{max-width:1000px;margin:0 auto;padding:40px 24px 80px}.csd-nav{margin-bottom:64px}.csd-back{font-family:var(--font-body);color:var(--text-dim);transition:color var(--duration-quick) var(--ease-out);font-size:14px;font-weight:500;text-decoration:none}.csd-back:hover{color:var(--text)}.csd-hero{aspect-ratio:16/9;background-color:var(--surface);border-radius:10px;margin-bottom:80px;position:relative;overflow:hidden}.csd-hero-image{aspect-ratio:16/9;object-fit:cover;width:100%;height:auto;display:block}.csd-grid-layout{grid-template-columns:280px 1fr;align-items:start;gap:64px;margin-bottom:80px;display:grid}@media (max-width:768px){.csd-grid-layout{grid-template-columns:1fr;gap:48px}}.csd-meta-column{flex-direction:column;gap:32px;display:flex}.csd-meta-item{animation:fadeUp var(--duration-very-slow) var(--ease-smooth-out) both;flex-direction:column;gap:6px;display:flex}.csd-meta-label{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.12em;color:var(--text-dim);opacity:.85;font-size:10px;font-weight:700}.csd-meta-value{font-family:var(--font-body);color:var(--text);font-size:14px;font-weight:480;line-height:1.4}.csd-meta-link{font-family:var(--font-body);color:var(--text);border-bottom:1px solid var(--border);transition:opacity var(--duration-quick) var(--ease-out), border-color var(--duration-quick) var(--ease-out);align-self:flex-start;padding-bottom:1px;font-size:14px;font-weight:400;text-decoration:none}.csd-meta-link:hover{opacity:.6;border-color:var(--text)}.csd-meta-expand-group{flex-direction:column;display:flex}.csd-expandable-meta{opacity:0;max-height:0;transition:max-height var(--duration-slow) var(--ease-smooth-out), opacity var(--duration-fast) var(--ease-smooth-out);flex-direction:column;gap:32px;display:flex;overflow:hidden}.csd-expandable-meta.is-visible{opacity:1;max-height:500px;margin-bottom:32px}.scope-multiline{white-space:pre-line}.csd-content-column{flex-direction:column;display:flex}.csd-title-serif{font-family:var(--font-body);letter-spacing:-.04em;color:var(--text);margin:0 0 40px;font-size:40px;font-weight:500;line-height:1.1}@media (max-width:768px){.csd-title-serif{margin-bottom:28px;font-size:36px}}.csd-story-section{flex-direction:column;gap:32px;display:flex}.csd-content-block{flex-direction:column;gap:12px;display:flex}.csd-challenge-title{font-family:var(--font-body);color:var(--text);letter-spacing:-.01em;margin:0;font-size:15px;font-weight:600}.csd-paragraph-serif{font-family:var(--font-body);color:var(--text);letter-spacing:-.01em;margin:0;font-size:15px;font-weight:480;line-height:1.5}.csd-paragraph-serif em{font-style:italic}.csd-highlight{transition:opacity var(--duration-quick) var(--ease-out);font-weight:500}.csd-highlight.orange{color:#c05621}.csd-highlight.blue{color:#2b6cb0}[data-theme=dark] .csd-highlight.orange{color:#ed8936}[data-theme=dark] .csd-highlight.blue{color:#4299e1}.csd-expand-btn-wrapper{margin-top:8px}.csd-expand-btn{color:#18181b;font-family:var(--font-body);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;transition:background-color var(--duration-quick) var(--ease-out), transform var(--duration-quick) var(--ease-out);background-color:#efefef;border:none;border-radius:8px;align-items:center;gap:8px;padding:8px 16px;font-size:11px;font-weight:600;display:inline-flex}.csd-expand-btn:hover{background-color:#e2e2e2;transform:translateY(-1px)}.csd-expand-btn:active{transform:translateY(0)}[data-theme=dark] .csd-expand-btn{color:#fafafa;background-color:#27272a}[data-theme=dark] .csd-expand-btn:hover{background-color:#3f3f46}.csd-expand-icon{font-size:10px;font-weight:700}.csd-gallery{flex-direction:column;gap:32px;margin:80px 0;display:flex}.csd-gallery-image{background-color:var(--surface);border-radius:10px;width:100%;height:auto;display:block}.csd-banner-block{width:100%;transition:opacity var(--duration-fast) var(--ease-smooth-out);justify-content:flex-start;align-items:center;padding:100px 32px;display:flex;position:relative;overflow:hidden}.csd-banner-link{width:100%;text-decoration:none;display:block}.csd-banner-content{flex-direction:column;gap:12px;width:100%;max-width:1000px;margin:0 auto;display:flex}.csd-banner-subtitle{font-family:var(--font-body);color:#ffffffd1;letter-spacing:-.01em;font-size:15px;font-weight:500}.csd-banner-title{font-family:var(--font-body);letter-spacing:-.03em;color:#fff;transition:transform var(--duration-slow) var(--ease-smooth-out);flex-wrap:wrap;align-items:center;gap:16px;margin:0;font-size:54px;font-weight:600;line-height:1.1;display:flex}@media (max-width:768px){.csd-banner-title{gap:10px;font-size:36px}}.csd-banner-arrow{transition:transform var(--duration-slow) var(--ease-smooth-out);display:inline-block}.csd-banner-link:hover .csd-banner-arrow{transform:translate(12px)}.csd-banner-link:hover .csd-banner-title{opacity:.95}.csd-problem-section{flex-direction:column;gap:48px;margin:96px 0;display:flex}.csd-problem-header{max-width:680px}.csd-problem-label{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px;font-size:11px;font-weight:600;display:block}.csd-problem-title{font-family:var(--font-body);letter-spacing:-.03em;color:var(--text);margin-bottom:16px;font-size:36px;font-weight:500;line-height:1.2}.csd-problem-text{font-family:var(--font-body);color:var(--text-dim);font-size:16px;line-height:1.6}.csd-insights-section{margin:80px 0}.csd-insights-label{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);text-align:center;margin-bottom:24px;font-size:11px;font-weight:600;display:block}.csd-insights-grid{grid-template-columns:repeat(5,1fr);gap:12px;display:grid}@media (max-width:768px){.csd-insights-grid{grid-template-columns:1fr;gap:12px}}.csd-insight-card-wide{grid-column:span 3}.csd-insight-card-narrow{grid-column:span 2}@media (max-width:768px){.csd-insight-card-wide,.csd-insight-card-narrow{grid-column:auto}}.csd-insight-card{transition:transform var(--duration-medium) var(--ease-smooth-out), box-shadow var(--duration-medium) var(--ease-smooth-out), background-color var(--duration-medium) var(--ease-smooth-out);background:#f3f3f5;border:none;border-radius:10px;flex-direction:column;gap:16px;padding:36px;display:flex}[data-theme=dark] .csd-insight-card{background:#131316}.csd-insight-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000005}[data-theme=dark] .csd-insight-card:hover{box-shadow:0 4px 16px #0000001a}.csd-insight-highlight{font-family:var(--font-body);letter-spacing:-.02em;color:var(--text);font-size:20px;font-weight:500;line-height:1.3}.csd-insight-text{font-family:var(--font-body);color:var(--text-dim);font-size:14px;line-height:1.5}.csd-solutions-section{flex-direction:column;gap:48px;margin:96px 0;display:flex}.csd-solution-header{max-width:680px}.csd-solution-label{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px;font-size:11px;font-weight:600;display:block}.csd-solution-title{font-family:var(--font-body);letter-spacing:-.03em;color:var(--text);margin-bottom:16px;font-size:36px;font-weight:500;line-height:1.2}.csd-solution-text{font-family:var(--font-body);color:var(--text-dim);font-size:16px;line-height:1.6}.csd-solution-media-wrapper{border:1px solid var(--border);width:100%;box-shadow:var(--shadow-lg);aspect-ratio:16/9;border-radius:12px;position:relative;overflow:hidden}.csd-solution-media{object-fit:cover;width:100%;height:100%;transition:transform var(--duration-very-slow) var(--ease-smooth-out)}.csd-solution-media-wrapper:hover .csd-solution-media{transform:scale(1.02)}.csd-impact-section{text-align:center;transition:transform var(--duration-fast) var(--ease-smooth-out), box-shadow var(--duration-fast) var(--ease-smooth-out), background-color var(--duration-fast) var(--ease-smooth-out);background:#f3f3f5;border:none;border-radius:12px;margin:80px 0;padding:60px}[data-theme=dark] .csd-impact-section{background:#131316}.csd-impact-section:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000000a}[data-theme=dark] .csd-impact-section:hover{box-shadow:0 8px 24px #0003}@media (max-width:768px){.csd-impact-section{padding:40px 24px}}.csd-impact-label{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:40px;font-size:11px;font-weight:600;display:block}.csd-impact-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:40px;display:grid}.csd-metric-item{flex-direction:column;gap:8px;display:flex}.csd-metric-value{font-family:var(--font-body);letter-spacing:-.04em;color:var(--accent);font-size:56px;font-weight:600;line-height:1}.csd-metric-label{font-family:var(--font-body);color:var(--text-dim);font-size:13px;font-weight:450}.csd-reflection-section{text-align:center;max-width:680px;margin:96px auto 64px;padding:0 24px}.csd-reflection-label{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:20px;font-size:11px;font-weight:600;display:block}.csd-reflection-text{font-family:var(--font-body);color:var(--text-dim);letter-spacing:-.01em;font-size:18px;font-weight:400;line-height:1.6}@keyframes pgRowIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes pgImgIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pgLightboxIn{0%{opacity:0}to{opacity:1}}@keyframes pgLightboxSlide{0%{opacity:0;transform:translateY(20px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.pg-container{animation:pageEnter var(--duration-very-slow) var(--ease-smooth-out) both;padding:48px 96px 120px}@media (max-width:1100px){.pg-container{padding:48px 64px 120px}}@media (max-width:768px){.pg-container{padding:32px 32px 100px}}.pg-header{flex-direction:column;gap:4px;margin-bottom:64px;display:flex}.pg-section{margin-bottom:72px}.pg-section-label{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);opacity:.85;margin-bottom:24px;font-size:10px;font-weight:700;display:block}.pg-list{flex-direction:column;list-style:none;display:flex}.pg-row{border-top:1px solid var(--border);cursor:pointer;transition:opacity var(--duration-quick) var(--ease-out);animation:pgRowIn var(--duration-slow) var(--ease-smooth-out) both;justify-content:space-between;align-items:flex-start;gap:24px;padding:22px 0;text-decoration:none;display:flex;position:relative}.pg-row:last-child{border-bottom:1px solid var(--border)}.pg-row:hover{opacity:.72}.pg-row:hover .pg-row-link{color:var(--text)}.pg-row-left{flex:1;align-items:flex-start;gap:20px;min-width:0;display:flex}.pg-row-num{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.04em;flex-shrink:0;padding-top:3px;font-size:11px}.pg-row-info{flex-direction:column;gap:5px;min-width:0;display:flex}.pg-row-title{font-family:var(--font-body);letter-spacing:-.01em;color:var(--text);font-size:16px;font-weight:500;line-height:1.3}.pg-row-desc{font-family:var(--font-body);color:var(--text-dim);max-width:560px;font-size:13px;font-weight:400;line-height:1.6}.pg-row-right{flex-direction:row;flex-shrink:0;align-items:center;gap:12px;display:flex}.pg-row-tags{flex-wrap:wrap;justify-content:flex-end;gap:5px;display:flex}.pg-row-year{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;font-size:11px}.pg-row-link{color:var(--text-muted);transition:color var(--duration-quick) var(--ease-out);flex-shrink:0;justify-content:center;align-items:center;display:flex}.pg-row-preview{pointer-events:none;z-index:9000;opacity:0;width:240px;height:160px;transition:opacity var(--duration-fast) var(--ease-smooth-out), transform var(--duration-fast) var(--ease-smooth-out);will-change:transform, opacity;border-radius:8px;position:fixed;overflow:hidden;transform:scale(.92)translateY(6px);box-shadow:0 8px 32px #0000002e}.pg-row-preview--visible{opacity:1;transform:scale(1)translateY(0)}.pg-row-preview-img{object-fit:cover;width:100%;height:100%;display:block}.pg-image-grid{grid-template-columns:repeat(3,1fr);align-items:start;gap:8px;display:grid}@media (max-width:900px){.pg-image-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){.pg-image-grid{grid-template-columns:1fr}}.pg-image-item{cursor:pointer;animation:pgImgIn var(--duration-very-slow) var(--ease-smooth-out) both;background:0 0;border:none;border-radius:8px;padding:0;display:block;overflow:hidden}.pg-image-item--landscape{aspect-ratio:16/9}.pg-image-item--portrait{aspect-ratio:3/4}.pg-image-item--square{aspect-ratio:1}.pg-image-img{object-fit:cover;width:100%;height:100%;transition:transform var(--duration-very-slow) var(--ease-smooth-out), opacity var(--duration-fast) var(--ease-smooth-out);border-radius:8px;display:block}.pg-image-item:hover .pg-image-img{opacity:.9;transform:scale(1.03)}@media (max-width:768px){.pg-lightbox-inner{grid-template-rows:auto 1fr auto;grid-template-columns:1fr;max-height:92vh;overflow-y:auto}}@media (max-width:768px){.pg-lightbox-media{grid-area:1/1;min-height:240px}.pg-lightbox-info{border-left:none;border-top:1px solid var(--border);grid-area:2/1;padding:20px}}.pg-lightbox-category{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);opacity:.85;font-size:10px;font-weight:700}@media (max-width:768px){.pg-lightbox-nav{grid-area:3/1}}@keyframes pgCardIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.pg-container{box-sizing:border-box;background-image:url(/field.webp);background-position:50% 25%;background-repeat:no-repeat;background-size:cover;justify-content:center;align-items:center;min-height:100vh;padding:60px 40px;display:flex;position:relative;overflow:hidden}.pg-bg-overlay{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);z-index:1;background:#ffffff26;position:absolute;inset:0}[data-theme=dark] .pg-bg-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a0a0c73}.pg-stickers-container{pointer-events:none;z-index:2;position:absolute;inset:0;overflow:hidden}.sticker{pointer-events:auto;cursor:grab;-webkit-user-select:none;user-select:none;filter:drop-shadow(3px 4px #00000026);transition:transform var(--duration-fast) var(--ease-bounce), filter var(--duration-fast) var(--ease-smooth-out);position:absolute}.sticker:hover{filter:drop-shadow(4px 6px #00000040);transform:scale(1.1)rotate(5deg)}.sticker-badge{color:#fff;font-family:var(--font-body);text-align:center;background:#ef4444;border:3px solid #fff;border-radius:8px;min-width:110px;padding:6px 12px;animation:6s ease-in-out infinite float1;transform:rotate(-10deg);box-shadow:inset 0 0 4px #0000001a}.sticker-badge-hdr{letter-spacing:.05em;margin-bottom:2px;font-size:14px;font-weight:900;line-height:1}.sticker-badge-sub{text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:7px;line-height:1}.sticker-badge-body{color:#ef4444;letter-spacing:.02em;background:#fff;border-radius:3px;padding:2px 4px;font-size:11px;font-weight:800}.sticker-cassette{background:#f472b6;border:3px solid #fff;border-radius:6px;width:100px;padding:8px;animation:5s ease-in-out infinite float2;transform:rotate(8deg)}.cassette-body{color:#333;font-family:var(--font-mono);text-align:center;background:#eaf2f8;border:1px solid #0000001a;border-radius:4px;padding:4px}.cassette-label{color:#fff;background:#2563eb;border-radius:2px;padding:1px 2px;font-size:7px;font-weight:700}.cassette-wheels{justify-content:center;gap:16px;margin:6px 0;display:flex}.wheel{background:#fff;border:2px dashed #4b5563;border-radius:50%;width:14px;height:14px;display:inline-block}.cassette-sub{color:#6b7280;font-size:5px}.sticker-warning{color:#121214;font-family:var(--font-mono);background:#fbbf24;border:3px solid #fff;border-radius:4px;padding:6px 10px;font-size:9px;font-weight:700;animation:7s ease-in-out infinite float3;transform:rotate(-4deg)}.sticker-lightning{animation:4.5s ease-in-out infinite float1;transform:rotate(15deg)}.sticker-lightning svg{filter:drop-shadow(2px 2px #0000001a)}.sticker-star{animation:3.5s ease-in-out infinite float2}.float-star-1{transform:rotate(-5deg)}.float-star-2{transform:rotate(12deg)}@keyframes float1{0%,to{transform:translateY(0)rotate(-10deg)}50%{transform:translateY(-8px)rotate(-8deg)}}@keyframes float2{0%,to{transform:translateY(0)rotate(8deg)}50%{transform:translateY(-6px)rotate(11deg)}}@keyframes float3{0%,to{transform:translateY(0)rotate(-4deg)}50%{transform:translateY(-10px)rotate(-2deg)}}.pg-gather-container{box-sizing:border-box;height:calc(100vh - 96px);transition:background-color var(--duration-fast) var(--ease-smooth-out);animation:pageEnter var(--duration-slow) var(--ease-smooth-out) both;background-color:#fff;flex-direction:column;align-items:center;padding:80px 48px 0;display:flex;overflow:hidden}[data-theme=dark] .pg-gather-container{background-color:#0b0b0d}.pg-gather-header{text-align:center;animation:fadeUp var(--duration-very-slow) var(--ease-smooth-out) both;flex-direction:column;align-items:center;gap:12px;margin-bottom:56px;display:flex}.pg-header-logo{color:#121214;justify-content:center;align-items:center;margin-bottom:4px;animation:10s linear infinite spinStar;display:flex}[data-theme=dark] .pg-header-logo{color:#f5f5f7}@keyframes spinStar{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pg-gather-title{font-family:var(--font-body);letter-spacing:-.03em;color:var(--text);margin:0;font-size:56px;font-weight:600;line-height:1.1}.pg-gather-subtitle{font-family:var(--font-body);letter-spacing:-.01em;color:var(--text-dim);max-width:480px;margin:0;font-size:16px;font-weight:400;line-height:1.55}.pg-cards-overlapping-container{box-sizing:border-box;width:100%;max-width:1400px;animation:fadeUp var(--duration-very-slow) var(--ease-smooth-out) .15s both;flex-direction:row;justify-content:center;align-items:flex-end;margin-top:auto;padding:48px 0 0;display:flex}.gather-card{aspect-ratio:1/1.1;box-sizing:border-box;cursor:pointer;width:30%;transition:transform var(--duration-slow) var(--ease-smooth-out), box-shadow var(--duration-slow) var(--ease-smooth-out), z-index .3s step-end;border-radius:24px;flex-direction:column;padding:0 1.5px 1.5px;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 20px #00000005}.gather-card:first-child{z-index:3;margin-right:-15%;transform:rotate(-4deg)translateY(-24px)}.gather-card:nth-child(2){z-index:2;margin-right:-15%;transform:rotate(2deg)translateY(0)}.gather-card:nth-child(3){z-index:1;transform:rotate(4deg)translateY(24px)}.gather-card:hover{z-index:10!important;transform:scale(1.08)rotate(0)translateY(-32px)!important;box-shadow:0 20px 48px #00000014!important}[data-theme=dark] .gather-card:hover{box-shadow:0 20px 48px #00000059!important}.gather-card-tab{height:38px;font-family:var(--font-body);box-sizing:border-box;border-bottom:none;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:500;display:flex}.gather-tab-icon{width:14px;height:14px;font-family:var(--font-mono);justify-content:center;align-items:center;display:flex}.gather-tab-title{letter-spacing:-.01em}.gather-tab-close{opacity:.4;cursor:pointer;transition:opacity var(--duration-quick) var(--ease-out);margin-left:auto;font-size:10px}.gather-tab-close:hover{opacity:.8}.gather-card-viewport{box-sizing:border-box;border-radius:22px;flex:1;width:100%;min-height:0;padding:12px 16px;position:relative;overflow:hidden}.gather-card-grey{background:#ffe1ce;border:none}.gather-card-grey .gather-card-tab{color:#4a1f04;background:0 0}.gather-card-grey .gather-card-viewport{background:#fff7f2}.gather-card-yellow{background:#b6d9ff;border:none}.gather-card-yellow .gather-card-tab{color:#012144;background:0 0}.gather-card-yellow .gather-card-viewport{background:#eff5ff}.gather-card-lavender{background:#e1e1e1;border:none}.gather-card-lavender .gather-card-tab{color:#2c2c2c;background:0 0}.gather-card-lavender .gather-card-viewport{background:#f6f6f6}[data-theme=dark] .gather-card-grey{background:#27282b;border:none}[data-theme=dark] .gather-card-grey .gather-card-tab{color:#e2e8f0;background:0 0;border-bottom-color:#0000}[data-theme=dark] .gather-card-grey .gather-card-viewport{background:#18191c}[data-theme=dark] .gather-card-yellow{background:#2e291b;border:none}[data-theme=dark] .gather-card-yellow .gather-card-tab{color:#facc15;background:0 0;border-bottom-color:#0000}[data-theme=dark] .gather-card-yellow .gather-card-viewport{background:#1e1c12}[data-theme=dark] .gather-card-lavender{background:#241d36;border:none}[data-theme=dark] .gather-card-lavender .gather-card-tab{color:#a78bfa;background:0 0;border-bottom-color:#0000}[data-theme=dark] .gather-card-lavender .gather-card-viewport{background:#1a1625}.viewport-projects{justify-content:center;align-items:flex-start;display:flex}.mock-projects-stack{width:100%;height:100%;margin-top:4px;position:relative}.mock-project-frame{aspect-ratio:1.6;box-sizing:border-box;width:82%;transition:transform var(--duration-slow) var(--ease-smooth-out), opacity var(--duration-slow) var(--ease-smooth-out);background:#fff;border:1px solid #0000000d;border-radius:8px;flex-direction:column;display:flex;position:absolute;overflow:hidden;box-shadow:0 4px 12px #00000005}[data-theme=dark] .mock-project-frame{background:#232427;border-color:#ffffff0d}.frame-1{z-index:3;top:6px;left:4%;transform:rotate(-4deg)}.frame-2{z-index:2;opacity:.9;top:26px;left:10%;transform:rotate(3deg)}.frame-3{z-index:1;opacity:.7;top:46px;left:3%;transform:rotate(-1.5deg)}.project-frame-bar{box-sizing:border-box;background:#00000003;border-bottom:1px solid #0000000a;align-items:center;gap:3px;height:14px;padding:0 6px;display:flex}[data-theme=dark] .project-frame-bar{background:#ffffff03;border-bottom-color:#ffffff08}.project-frame-bar .dot{background:#e2e8f0;border-radius:50%;width:3.5px;height:3.5px;display:inline-block}[data-theme=dark] .project-frame-bar .dot{background:#3f3f46}.project-frame-bar .dot-r{background:#ef4444}.project-frame-bar .dot-y{background:#fbbf24}.project-frame-bar .dot-g{background:#10b981}.frame-title{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:-.01em;margin-left:4px;font-size:6.5px;font-weight:500}.project-frame-content{background-position:50%;background-size:cover;flex:1}.projects-fade-overlay{pointer-events:none;z-index:5;background:linear-gradient(#0000 0%,#fff 100%);height:60%;position:absolute;bottom:0;left:0;right:0}[data-theme=dark] .projects-fade-overlay{background:linear-gradient(#0000 0%,#18191c 100%)}.gather-card:hover .frame-1{transform:translate(-6px,-12px)rotate(-8deg)scale(1.03)}.gather-card:hover .frame-2{opacity:1;transform:translate(12px,-6px)rotate(6deg)scale(1.02)}.gather-card:hover .frame-3{opacity:.85;transform:translate(-14px,14px)rotate(3deg)}.viewport-images{justify-content:center;align-items:center;display:flex}.pg-thumbnail-container{box-sizing:border-box;justify-content:center;align-items:center;width:100%;height:100%;padding:4%;display:flex;position:relative}.pg-thumbnail-image{object-fit:contain;width:100%;height:100%;transition:transform var(--duration-slow) var(--ease-smooth-out);filter:drop-shadow(0 8px 24px #0000000f)}[data-theme=dark] .pg-thumbnail-image{filter:drop-shadow(0 8px 24px #0000004d)}.gather-card:hover .pg-thumbnail-image{transform:scale(1.06)}.viewport-articles{align-items:flex-start;display:flex;position:relative}.card-articles-serif{color:#8a8f98;transition:transform var(--duration-slow) var(--ease-smooth-out);padding:4px;font-family:Playfair Display,Georgia,serif;font-size:12.5px;font-style:italic;line-height:1.6}[data-theme=dark] .card-articles-serif{color:#64748b}.serif-line{white-space:nowrap;margin-bottom:2px}.articles-fade-overlay{pointer-events:none;z-index:5;background:linear-gradient(#0000 15%,#fefce8 100%);height:60%;position:absolute;bottom:0;left:0;right:0}[data-theme=dark] .articles-fade-overlay{background:linear-gradient(#0000 15%,#1e1c12 100%)}.gather-card:hover .card-articles-serif{transform:translateY(-6px)}@media (max-width:1024px){.pg-cards-overlapping-container{flex-wrap:wrap;justify-content:center;gap:24px;width:100%;padding:24px;display:flex}.gather-card{width:calc(50% - 12px);min-width:290px;margin-right:0!important;transform:none!important}.gather-card:hover{transform:scale(1.04)translateY(-8px)!important}}@media (max-width:640px){.pg-cards-overlapping-container{flex-direction:column;align-items:center;gap:20px}.gather-card{width:100%;max-width:320px;height:320px}.gather-body-query{font-size:12.5px}}.pg-gather-modal{z-index:9999;-webkit-backdrop-filter:blur(30px)saturate(140%);animation:pgLightboxIn var(--duration-fast) var(--ease-smooth-out) both;box-sizing:border-box;background:#0a0a0c33;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}[data-theme=dark] .pg-gather-modal{background:#0006}.pg-modal-dialog{box-sizing:border-box;background:#fff;border:1px solid #e2e8f0;border-radius:28px;flex-direction:column;width:100%;max-width:680px;max-height:85vh;padding:40px;display:flex;position:relative;box-shadow:0 24px 64px #00000014}[data-theme=dark] .pg-modal-dialog{background:#131316;border-color:#ffffff0f;box-shadow:0 24px 64px #0006}.pg-modal-close{background:var(--surface);border:1px solid var(--border);width:28px;height:28px;color:var(--text-muted);cursor:pointer;transition:all var(--duration-quick) var(--ease-out);z-index:10;border-radius:50%;justify-content:center;align-items:center;font-size:11px;display:flex;position:absolute;top:20px;right:20px}.pg-modal-close:hover{background:var(--border);color:var(--text);transform:scale(1.08)}.modal-category-label{font-family:var(--font-body);letter-spacing:.02em;color:var(--text-muted);text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.modal-dialog-title{font-family:var(--font-body);color:var(--text);letter-spacing:-.03em;margin-bottom:24px;font-size:26px;font-weight:700;line-height:1.1}.scrollbar-styled{scrollbar-width:thin;flex:1;padding-right:8px;overflow-y:auto}.modal-thoughts-scroll{flex-direction:column;gap:28px;display:flex}.thought-journal-piece{flex-direction:column;gap:6px;display:flex}.journal-label{font-family:var(--font-mono);letter-spacing:.05em;color:var(--text-muted);font-size:9px}.journal-piece-title{font-family:var(--font-body);color:var(--text);font-size:16px;font-weight:600}.journal-piece-text{font-family:var(--font-body);color:var(--text-dim);font-size:13.5px;line-height:1.6}.links-intro-text,.images-intro-text,.media-intro-text{color:var(--text-dim);margin-bottom:16px;font-size:13.5px}.modal-links-list{flex-direction:column;gap:12px;display:flex}.modal-bookmark-row{background:var(--surface);border:1px solid var(--border);transition:all var(--duration-quick) var(--ease-out);border-radius:12px;justify-content:space-between;align-items:center;padding:10px 14px;text-decoration:none;display:flex}.modal-bookmark-row:hover{background:var(--border);transform:translate(4px)}.modal-bookmark-left{align-items:center;gap:12px;min-width:0;display:flex}.modal-site-icon{background:var(--text);width:32px;height:32px;color:var(--bg);font-family:var(--font-mono);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.modal-site-details{flex-direction:column;gap:2px;min-width:0;display:flex}.modal-site-name{color:var(--text);font-size:13px;font-weight:600}.modal-site-desc{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.modal-site-year{font-family:var(--font-mono);color:var(--text-muted);font-size:10px}.modal-site-arrow{color:var(--text-muted);transition:transform var(--duration-quick) var(--ease-out);font-size:11px}.modal-bookmark-row:hover .modal-site-arrow{color:var(--text);transform:translate(2px,-2px)}.modal-images-gallery{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}@media (max-width:560px){.modal-images-gallery{grid-template-columns:repeat(2,1fr)}}.gallery-photo-card{aspect-ratio:1;transition:transform var(--duration-fast) var(--ease-smooth-out);background-position:50%;background-size:cover;border:1px solid #0000000f;border-radius:12px;align-items:flex-end;padding:8px;display:flex;position:relative;overflow:hidden}.gallery-photo-card:hover{transform:scale(1.02)}.photo-tag{font-family:var(--font-mono);-webkit-backdrop-filter:blur(4px);color:#fff;background:#00000073;border-radius:4px;padding:2px 6px;font-size:8.5px}.modal-media-list{flex-direction:column;gap:12px;display:flex}.media-row-card{background:var(--surface);border:1px solid var(--border);box-sizing:border-box;border-radius:14px;justify-content:space-between;align-items:center;padding:10px;display:flex}.media-row-left{align-items:center;gap:12px;display:flex}.media-row-thumb{cursor:pointer;background-position:50%;background-size:cover;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:44px;display:flex;position:relative}.row-play-btn{color:#121214;background:#ffffffe6;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;padding-left:1px;font-size:8px;display:flex}.media-row-details{flex-direction:column;gap:2px;display:flex}.media-row-name{color:var(--text);font-size:13px;font-weight:600}.media-row-sub{color:var(--text-muted);font-size:11px}.media-row-length{font-family:var(--font-mono);color:var(--text-muted);padding-right:4px;font-size:11px}.pg-layout-card{box-sizing:border-box;height:580px;transition:transform var(--duration-slow) var(--ease-smooth-out), box-shadow var(--duration-slow) var(--ease-smooth-out);-webkit-backdrop-filter:blur(25px);background:#f4f4f6d9;border:1.5px solid #fff;border-radius:32px;flex-direction:column;padding:36px 32px 32px;display:flex;position:relative;overflow:hidden;box-shadow:0 16px 48px #00000009,0 2px 8px #00000003}[data-theme=dark] .pg-layout-card{-webkit-backdrop-filter:blur(25px);background:#121216b8;border:1.5px solid #ffffff12;box-shadow:0 16px 48px #0000004d,0 2px 12px #0003}@media (max-width:768px){.pg-layout-card{height:auto;min-height:480px;padding:28px 24px}}.card-header{text-align:center;flex-shrink:0;width:100%;margin-bottom:28px}.card-header-text{font-family:var(--font-body);color:var(--text-dim);letter-spacing:-.01em;max-width:88%;margin:0 auto;font-size:14.5px;font-weight:400;line-height:1.5}.card-header-text strong{color:var(--text);font-weight:700}.signpost-frame{flex:1;justify-content:center;align-items:flex-end;width:100%;min-height:0;display:flex;position:relative}.signpost{box-sizing:border-box;flex-direction:column;align-items:center;width:220px;height:410px;padding-top:25px;display:flex;position:relative}.card-content-viewport{flex-direction:column;flex:1;width:100%;min-height:0;display:flex}.card-placeholder-state{text-align:center;box-sizing:border-box;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:40px;display:flex}.placeholder-art{justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:24px;display:flex;position:relative}.placeholder-frame-1{background:var(--surface);border:2px solid var(--border);border-radius:8px;width:72px;height:72px;position:absolute;transform:rotate(-8deg);box-shadow:0 4px 12px #00000005}.placeholder-frame-2{background:var(--surface-solid);border:2px solid var(--border);border-radius:8px;width:72px;height:72px;position:absolute;transform:rotate(6deg);box-shadow:0 6px 16px #00000008}.placeholder-icon{z-index:2;font-size:32px;animation:3.5s ease-in-out infinite float2;position:relative}.placeholder-title{font-family:var(--font-body);color:var(--text);margin-bottom:6px;font-size:17px;font-weight:600}.placeholder-desc{color:var(--text-dim);max-width:320px;font-size:13.5px;line-height:1.5}.card-results-layout{flex:1;grid-template-columns:210px 1fr;gap:28px;min-height:0;display:grid;position:relative}@media (max-width:768px){.card-results-layout{grid-template-columns:1fr;gap:24px}}.card-close-btn{z-index:10;background:var(--surface);border:1px solid var(--border);width:24px;height:24px;color:var(--text-muted);cursor:pointer;transition:all var(--duration-quick) var(--ease-out);border-radius:50%;justify-content:center;align-items:center;font-size:10px;display:flex;position:absolute;top:-12px;right:0}.card-close-btn:hover{background:var(--border);color:var(--text);transform:scale(1.08)}.results-polaroid-side{justify-content:center;align-items:center;display:flex}.polaroid-photo{background-image:url(/field.webp);background-position:50% 25%;background-size:cover;border:1px solid #0000000f;width:170px;height:170px;position:relative}.results-diary-side{box-sizing:border-box;scrollbar-width:thin;flex:1;min-height:0;padding-right:6px;overflow-y:auto}.diary-paper{background-image:linear-gradient(var(--border) 1px, transparent 1px);background-size:100% 24px;padding-top:4px;line-height:24px}.diary-projects-grid{flex-direction:column;gap:10px;margin-top:6px;padding-bottom:12px;display:flex}.animate-fade-in{animation:fadeIn var(--duration-slow) var(--ease-smooth-out) forwards}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.signpost-column{justify-content:center;width:100%;display:flex}.signpost{flex-direction:column;align-items:center;width:250px;height:580px;padding-top:60px;display:flex;position:relative}.signpost-cap{z-index:6;background:#27272a;border:3px solid #121214;border-radius:50% 50% 0 0;width:32px;height:18px;margin-bottom:-3px}.signpost-pole{z-index:4;background:linear-gradient(90deg,#3f3f46,#18181b 60%,#3f3f46);border:3px solid #121214;border-radius:3px;width:16px;position:absolute;top:72px;bottom:0}.signpost-base{z-index:6;position:absolute;bottom:-8px;transform:scale(1.45)}.sign-item{z-index:5;color:#121214;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.02em;cursor:pointer;transition:transform var(--duration-fast) var(--ease-bounce), box-shadow var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out);border:3.5px solid #121214;outline:none;align-items:center;gap:10px;margin-bottom:32px;padding:10px 22px;font-size:15px;font-weight:800;display:flex;position:relative;box-shadow:4px 5px #121214}.sign-item:hover{box-shadow:5px 7px #121214;transform:scale(1.05)rotate(0)!important}.sign-item:active{transform:scale(.98)}.sign-active{transform:translate(2px,2px)!important;box-shadow:1px 2px #121214!important}.sign-hobbies{background-color:#38bdf8;border-radius:6px;transform:rotate(-5deg)translate(-18px)}.sign-passions{color:#fff;background-color:#f97316;border-radius:20px;transform:rotate(3deg)translate(14px)}.sign-projects{background-color:#10b981;border-radius:4px;transform:rotate(-3deg)translate(-12px)}.sign-stories{color:#fff;background-color:#a855f7;border-radius:99px;transform:rotate(4deg)translate(18px)}.sign-insights{background-color:#facc15;border-radius:8px;transform:rotate(-4deg)translate(-10px)}.sign-icon{font-size:16px}.jotter-column{perspective:1200px;justify-content:center;width:100%;display:flex}.jotter-wrapper{width:680px;height:480px;transition:transform var(--duration-very-slow) var(--ease-smooth-out), box-shadow var(--duration-very-slow) var(--ease-smooth-out);transform-style:preserve-3d;border-radius:16px;position:relative;box-shadow:0 16px 48px #0000002e}[data-theme=dark] .jotter-wrapper{box-shadow:0 16px 48px #00000073}@media (max-width:768px){.jotter-wrapper{width:100%;height:auto;min-height:520px}}.jotter-wrapper.is-closed{cursor:pointer}.jotter-wrapper.is-closed:hover{transform:rotateY(-3deg)translateY(-2px);box-shadow:0 20px 56px #00000038}.jotter-cover{z-index:10;backface-visibility:hidden;transition:opacity var(--duration-very-slow) var(--ease-smooth-out), transform var(--duration-very-slow) var(--ease-smooth-out);background:linear-gradient(135deg,#1e3a8a 0%,#172554 100%);border:4px solid #1e293b;border-left:12px solid #0f172a;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}[data-theme=dark] .jotter-cover{background:linear-gradient(135deg,#1e1b4b 0%,#0f0f17 100%);border:4px solid #111116;border-left:12px solid #07070a}.jotter-spine{background:#ffffff14;width:1px;position:absolute;top:10%;bottom:10%;left:4px}.jotter-cover-badge{text-align:center;color:#0f172a;background:#f8fafc;border:4px double #94a3b8;border-radius:8px;width:60%;padding:16px 24px;box-shadow:0 4px 12px #0000001a}[data-theme=dark] .jotter-cover-badge{color:#f8fafc;background:#1e293b;border-color:#475569}.jotter-cover-badge h2{font-family:var(--font-body);margin-bottom:2px;font-size:18px;font-weight:700}.jotter-cover-badge p{font-family:var(--font-mono);letter-spacing:.1em;color:#64748b;font-size:8.5px}[data-theme=dark] .jotter-cover-badge p{color:#94a3b8}.cover-sticky-note{color:#713f12;width:160px;font-family:var(--font-body);background:#fef08a;border-radius:2px;padding:12px;font-size:10px;font-weight:500;line-height:1.4;position:absolute;bottom:15%;right:10%;transform:rotate(5deg);box-shadow:2px 4px 8px #0000001f}.sticky-tape{background:#ffffff80;width:50px;height:16px;position:absolute;top:-8px;left:35%;transform:rotate(-3deg)}.is-open .jotter-cover{opacity:0;pointer-events:none;transform:rotateY(-90deg)}.jotter-pages{background:var(--surface-solid);border:1px solid var(--border);z-index:5;opacity:0;pointer-events:none;transition:opacity var(--duration-very-slow) var(--ease-smooth-out), transform var(--duration-very-slow) var(--ease-smooth-out);border-radius:16px;grid-template-columns:1fr 1fr;display:grid;position:absolute;inset:0;overflow:hidden;transform:rotateY(90deg)}.is-open .jotter-pages{opacity:1;pointer-events:auto;transform:rotateY(0)}@media (max-width:768px){.jotter-pages{grid-template-rows:auto auto;grid-template-columns:1fr;overflow-y:auto}}.binder-rings{background:var(--border);z-index:10;flex-direction:column;justify-content:space-around;width:2px;padding:24px 0;display:flex;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}@media (max-width:768px){.binder-rings{display:none}}.ring-clip{background:linear-gradient(#e2e8f0,#94a3b8,#475569);border:1.5px solid #1e293b;border-radius:6px;width:28px;height:12px;transform:translate(-50%);box-shadow:0 2px 4px #0000001a}.jotter-close-btn{z-index:12;background:var(--surface);border:1px solid var(--border);width:28px;height:28px;color:var(--text-dim);cursor:pointer;transition:background var(--duration-quick) var(--ease-out), transform var(--duration-quick) var(--ease-out);border-radius:50%;justify-content:center;align-items:center;font-size:11px;display:flex;position:absolute;top:14px;right:14px}.jotter-close-btn:hover{background:var(--border);transform:scale(1.08)}.jotter-page-left{border-right:1px solid var(--border);background:var(--surface-solid);justify-content:center;align-items:center;padding:24px;display:flex}@media (max-width:768px){.jotter-page-left{border-right:none;border-bottom:1px solid var(--border);padding:40px 24px 20px}}.polaroid-wrapper{filter:drop-shadow(4px 8px 16px #0000001f);transition:transform var(--duration-slow) var(--ease-smooth-out);transform:rotate(-3deg)}.polaroid-wrapper:hover{transform:rotate(-1deg)scale(1.02)}.polaroid-card{background:#fff;border:1px solid #e2e8f0;border-radius:2px;flex-direction:column;align-items:center;gap:12px;padding:12px 12px 28px;display:flex}.polaroid-photo{background-image:url(/field.webp);background-position:50% 25%;background-size:cover;border:1px solid #0000000f;width:200px;height:200px;position:relative;overflow:hidden}.polaroid-sticker{filter:drop-shadow(1px 2px #00000026);font-size:20px;animation:1.5s ease-in-out infinite alternate stickerWiggle;position:absolute;bottom:8px;right:8px}@keyframes stickerWiggle{0%{transform:scale(1)rotate(-6deg)}to{transform:scale(1.1)rotate(6deg)}}.polaroid-caption{font-family:var(--font-mono);color:#475569;font-size:11px;font-style:italic}.jotter-page-right{background:var(--surface-solid);box-sizing:border-box;height:100%;padding:32px 24px;overflow-y:auto}@media (max-width:768px){.jotter-page-right{height:auto;min-height:320px}}.diary-paper{background-image:linear-gradient(var(--border) 1px, transparent 1px);background-size:100% 24px;height:100%;padding-top:8px;line-height:24px}.diary-entry{flex-direction:column;gap:6px;display:flex}.diary-title{font-family:var(--font-body);color:var(--text);font-size:18px;font-weight:700;line-height:24px}.diary-date{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:9px;line-height:24px}.diary-text-block{font-family:var(--font-body);color:var(--text-dim);padding-top:12px;font-size:13.5px;line-height:24px}.diary-text-block p{margin-bottom:12px}.diary-list{margin:0;padding:0;list-style:none}.diary-list li{margin-bottom:8px;padding-left:16px;line-height:24px;position:relative}.diary-list li:before{content:"•";color:var(--accent);font-weight:700;position:absolute;left:4px}.diary-projects-grid{flex-direction:column;gap:12px;margin-top:8px;display:flex}.diary-project-item{background:var(--surface);border:1px solid var(--border);transition:all var(--duration-quick) var(--ease-out);border-radius:6px;justify-content:space-between;align-items:center;gap:16px;padding:6px 10px;line-height:1.4;text-decoration:none;display:flex}.diary-project-item:hover{background:var(--border);border-color:var(--text-muted);transform:translate(3px)}.diary-proj-info{flex-direction:column;gap:2px;min-width:0;display:flex}.diary-proj-title{color:var(--text);font-size:13.5px;font-weight:600}.diary-proj-title .arrow{opacity:0;transition:opacity var(--duration-quick) var(--ease-out), transform var(--duration-quick) var(--ease-out);font-size:10px;display:inline-block}.diary-project-item:hover .diary-proj-title .arrow{opacity:1;transform:translate(2px,-2px)}.diary-proj-desc{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.diary-proj-year{font-family:var(--font-mono);color:var(--text-muted);font-size:10px}.story-title{font-family:var(--font-body);color:var(--text);margin-top:12px;font-size:14px;font-weight:600}.story-snippet{color:var(--text-dim);margin-bottom:12px;font-size:13px;font-style:italic;line-height:24px}.story-separator{background:var(--border);opacity:.5;height:1px;margin:16px 0}.pg-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:48px;display:flex}.pg-header-text{flex-direction:column;gap:4px;display:flex}.pg-title{font-family:var(--font-body);letter-spacing:-.03em;color:var(--text);font-size:56px;font-weight:600;line-height:1.1}.pg-subtitle{color:var(--text-dim);letter-spacing:-.01em;max-width:600px;font-size:16px;font-weight:400;line-height:1.55}.pg-filters{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.pg-filter-btn{color:var(--text-muted);font-family:var(--font-body);cursor:pointer;transition:all var(--duration-quick) var(--ease-out);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:100px;align-items:center;padding:6px 14px;font-size:13px;font-weight:500;display:inline-flex}.pg-filter-btn:hover{color:var(--text);background:#0000000a}[data-theme=dark] .pg-filter-btn:hover{background:#ffffff0f}.pg-filter-btn--active{color:var(--text);background:var(--surface-solid);border-color:var(--border);box-shadow:0 1px 4px #0000000d}[data-theme=dark] .pg-filter-btn--active{box-shadow:none;background:#ffffff1a;border-color:#ffffff1a}.pg-grid{grid-template-columns:repeat(3,1fr);align-items:start;gap:12px;display:grid}@media (max-width:900px){.pg-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){.pg-grid{grid-template-columns:1fr}}.pg-card{background:var(--surface-solid);border:1px solid var(--border);cursor:pointer;text-align:left;transition:transform var(--duration-medium) var(--ease-smooth-out), box-shadow var(--duration-medium) var(--ease-smooth-out), border-color var(--duration-medium) var(--ease-smooth-out);animation:pgCardIn var(--duration-very-slow) var(--ease-smooth-out) both;border-radius:8px;flex-direction:column;gap:0;display:flex;overflow:hidden}.pg-card:hover{border-color:#0000001f;transform:translateY(-2px);box-shadow:0 6px 20px #0000000f}[data-theme=dark] .pg-card:hover{border-color:#ffffff1a;box-shadow:0 6px 20px #0000004d}.pg-card--landscape .pg-card-image-wrapper{aspect-ratio:16/9}.pg-card--portrait .pg-card-image-wrapper{aspect-ratio:3/4}.pg-card--square .pg-card-image-wrapper{aspect-ratio:1}.pg-card-image-wrapper{background:var(--surface);width:100%;position:relative;overflow:hidden}.pg-card-image{object-fit:cover;width:100%;height:100%;transition:transform var(--duration-very-slow) var(--ease-smooth-out);display:block}.pg-card:hover .pg-card-image{transform:scale(1.03)}.pg-card-overlay{pointer-events:none;background:linear-gradient(#0000 50%,#00000040 100%);align-items:flex-start;padding:12px;display:flex;position:absolute;inset:0}.pg-card-category{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:#ffffffbf;-webkit-backdrop-filter:blur(6px);background:#00000047;border:1px solid #ffffff1f;border-radius:100px;padding:3px 8px;font-size:10px;font-weight:400}.pg-card-body{flex-direction:column;gap:10px;padding:16px 18px 18px;display:flex}.pg-card-title{font-family:var(--font-body);letter-spacing:-.01em;color:var(--text);font-size:15px;font-weight:500;line-height:1.3}.pg-card-tags{flex-wrap:wrap;gap:5px;display:flex}.pg-tag{font-family:var(--font-mono);letter-spacing:.04em;color:var(--text-muted);background:#0000000a;border-radius:100px;padding:3px 8px;font-size:10px;font-weight:400}[data-theme=dark] .pg-tag{background:#ffffff0f}.pg-lightbox{z-index:9999;-webkit-backdrop-filter:blur(20px);animation:pgLightboxIn var(--duration-fast) var(--ease-smooth-out) both;background:#0009;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.pg-lightbox-inner{background:var(--surface-solid);border:1px solid var(--border);width:100%;max-width:1000px;max-height:88vh;animation:pgLightboxSlide var(--duration-medium) var(--ease-smooth-out) both;border-radius:14px;grid-template-rows:1fr auto;grid-template-columns:1fr 340px;display:grid;position:relative;overflow:hidden}@media (max-width:768px){.pg-lightbox-inner{grid-template-rows:auto 1fr auto;grid-template-columns:1fr;max-height:92vh;overflow-y:auto}}.pg-lightbox-close{z-index:10;-webkit-backdrop-filter:blur(8px);color:#fff;cursor:pointer;width:32px;height:32px;transition:background var(--duration-quick) var(--ease-out), transform var(--duration-quick) var(--ease-out);background:#00000029;border:1px solid #ffffff1f;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:14px;right:14px}.pg-lightbox-close:hover{background:#00000052;transform:scale(1.05)}.pg-lightbox-media{background:var(--surface);grid-area:1/1/2/2;min-height:320px;overflow:hidden}.pg-lightbox-img{object-fit:cover;width:100%;height:100%;display:block}.pg-lightbox-info{border-left:1px solid var(--border);flex-direction:column;grid-area:1/2/2/3;gap:14px;padding:40px 28px 28px;display:flex;overflow-y:auto}@media (max-width:768px){.pg-lightbox-media{grid-area:1/1/2/2;min-height:240px}.pg-lightbox-info{border-left:none;border-top:1px solid var(--border);grid-area:2/1/3/2;padding:24px 20px}}.pg-lightbox-category{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:10px;font-weight:400}.pg-lightbox-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text);font-size:22px;font-weight:700;line-height:1.2}.pg-lightbox-desc{font-family:var(--font-body);color:var(--text-dim);flex:1;font-size:14px;font-weight:400;line-height:1.65}.pg-lightbox-meta{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-top:auto;display:flex}.pg-lightbox-tags{flex-wrap:wrap;gap:5px;display:flex}.pg-lightbox-year{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.04em;white-space:nowrap;font-size:11px}.pg-lightbox-nav{border-top:1px solid var(--border);grid-area:2/1/3/3;justify-content:center;align-items:center;gap:16px;padding:14px 20px;display:flex}@media (max-width:768px){.pg-lightbox-nav{grid-area:3/1/4/2}}.pg-lightbox-arrow{border:1px solid var(--border);width:34px;height:34px;color:var(--text);cursor:pointer;transition:background var(--duration-quick) var(--ease-out), transform var(--duration-quick) var(--ease-out);background:#0000000d;border-radius:50%;justify-content:center;align-items:center;display:flex}[data-theme=dark] .pg-lightbox-arrow{background:#ffffff0f}.pg-lightbox-arrow:hover{background:#0000001a;transform:scale(1.08)}[data-theme=dark] .pg-lightbox-arrow:hover{background:#ffffff1f}.pg-lightbox-counter{font-family:var(--font-mono);letter-spacing:.06em;color:var(--text-muted);text-align:center;min-width:48px;font-size:11px}.shots-wall-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.shots-toolbar{z-index:60;gap:3px;width:164px;max-width:calc(100% - 16px);position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.shots-toolbar .dock-item:hover,.shots-toolbar .dock-item:focus-visible{flex:1}.shot-modal-overlay{-webkit-backdrop-filter:blur(20px);z-index:2000;animation:fadeIn var(--duration-fast) var(--ease-smooth-out) both;background:#00000080;justify-content:center;align-items:center;padding:40px;display:flex;position:fixed;inset:0}[data-theme=dark] .shot-modal-overlay{background:#000000d9}.shot-modal-content{background:0 0;justify-content:center;align-items:center;max-width:89vw;max-height:85vh;display:flex;position:relative}.shot-modal-img{object-fit:contain;background:var(--surface-solid);border-radius:0;max-width:100%;max-height:85vh;box-shadow:0 24px 64px #0000001f}[data-theme=dark] .shot-modal-img{box-shadow:0 32px 80px #0009}.shot-modal-controls{z-index:10;gap:6px;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.shot-modal-nav{-webkit-backdrop-filter:blur(10px);color:#ffffff80;cursor:pointer;width:36px;height:36px;transition:background var(--duration-quick) var(--ease-out), color var(--duration-quick) var(--ease-out), border-color var(--duration-quick) var(--ease-out);background:#14141440;border:1px solid #ffffff1f;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:20px;line-height:0;display:flex}.shot-modal-nav:hover{color:#fff;background:#141414bf;border-color:#fff3}.shot-modal-nav svg{margin:auto;display:block}.shot-modal-close{color:var(--text);cursor:pointer;opacity:.6;transition:opacity var(--duration-quick) var(--ease-out), transform var(--duration-quick) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;font-size:32px;display:flex;position:absolute;top:-44px;right:0}.shot-modal-close:hover{opacity:1;transform:scale(1.1)}@keyframes modalZoomIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.animate-modal-in{animation:modalZoomIn var(--duration-medium) var(--ease-smooth-out) both}@supports (height:100dvh){.app-shell{height:100dvh}}@media (max-width:768px){.app-shell{padding:8px 8px 0}.app-card{border-radius:10px}}@media (max-width:480px){.app-shell{padding:6px 6px 0}.app-card{border-radius:8px}}@media (max-width:640px){.nav{padding:10px 16px max(12px, env(safe-area-inset-bottom,0px));grid-template-columns:auto auto;grid-template-areas:"dock dock""left right";justify-content:space-between;gap:12px}.nav-docks{grid-area:dock;justify-self:center}.nav-meta-left{grid-area:left}.nav-meta-right{grid-area:right}.nav-meta{letter-spacing:.2px;flex-wrap:nowrap;gap:5px}}@media (max-width:380px){.nav-meta{letter-spacing:0;gap:3px;font-size:9px}}@media (max-width:768px){.home{gap:64px;padding-top:36px}.home-column{gap:46px}.hero-status{margin-bottom:16px}.hero-actions{flex-wrap:wrap;gap:10px;margin-top:32px}}@media (max-width:480px){.home{gap:52px;padding-top:24px}.home-column{gap:37px}.hero-status{margin-bottom:32px}.hero-title{letter-spacing:-.025em;font-size:32px}.hero-avatar-main{width:34px!important;height:34px!important}.hero-inline-img{width:41px!important;height:41px!important}.hero-actions{gap:12px;margin-top:28px}.home-body p{font-size:16px;line-height:1.75}}@media (max-width:768px){.pg-gather-container{height:auto;min-height:60vh;padding:48px 24px 0}.pg-gather-header{margin-bottom:36px}.pg-gather-title{font-size:40px}}@media (max-width:480px){.pg-gather-container{padding:36px 16px 0}.pg-gather-title{font-size:32px}.pg-gather-subtitle{font-size:14px}}@media (max-width:640px){.shot-modal-overlay{padding:12px}.shot-modal-content{max-width:98vw}.shot-modal-close{font-size:26px;top:-40px}.shot-modal-controls{position:fixed;bottom:32px;left:50%;transform:translate(-50%)}}
.dot-grid{width:100%;height:100%;position:relative}.dot-grid__canvas{pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}
