@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-vietnamese-wght-normal-D0rl6rjA.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-ext-wght-normal-D9tNdqV9.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-wght-normal-BhU9QXUp.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAfsABQAAAAAEAwAAAeCAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoP0hWQVJbBmA/U1RBVIFiJyYAdC9qEQgKhGSEAAsgADCGCAE2AiQDOgQgBYlMB4EUDAcbLQ4onoexrSC/2ZyLAa8p8VHB8/x3Vue+V0hVJalMJg2nx/TCrQXxBeqLjQG7FyM1WEa/X1tEXN7cFz9EJEMmMUz3RihWSSKeQCbcIou0izz/C8v+fq3VfajEa9gDD11CImXS7qL/RJFVzC1qiB6KmKeD6TZdQ6IRGv78dL6uSVVCfgni5mzu7kcgQBgAEAQTQRCoL++STTYybkJxNfQxAAIAGu8OdEB9teW2jh4BpgDqFjAeSEByW3zFP0CBBgNMsMCGEDjgggdhiEAUAeIIED7ABTDUEnkIE9Q9ahFgKttcVhApo4ACB4qobHaccgDfEjFO6aaWUhjMLt2SyIvHKoDqoA4CSUwEIYQCEjhAO9R1G6keDeDZGjNo+AhxOjCEGTr1WeIF3kYBiLAOKvkJSMiKX0VdAyQt3SDJClCkxJCHkCzfqyVTriJZLcolS32JZHUekq2TYNkYtCtjYHMQXSxGjXDz2t/yLWXzDzxz+o3zFwDEaN23F+13pyMdQAEaSKAR9vcGq4A4MTSKCElGW+M7UcY7xqkggITb28ZJhlqc9q2twYKTt0NjixBgYvO9BIihEBLYuOFXQzfIQ7dXGUEEEgFDooBfAzqiQbpJrhiWSuKJCRFKYbHCyJKI2G5GiZbNAvgAu5pc3vwx4G+g3aDkhklABiSz0BICXrYghtYhx/cdJ+44rY2oZ0aMNRFz3VZjb6W33F3gzltqtOCV8tTHSpOeXuItfvr5lCdfzFpqtEitvqdcdGGFd28ZqqC0tPbeChGXgrIlnhSWu/eUso4uKWFLugyDzQJhflY4659+WjQ++6x72WUMv9G8mw6QJl7BVxX5fe/kpUsOvnZwee9uQ0cGXYd0o89XB2748sDSnt8d2VphdOTTgceDVvOds0v9P/s7HPq15aGun/6Vllb56f1dl0t1LejqrNkpdRZsG8TOnM5vkBG5oiVyVGnS8LHps5cfNWJs6qKPfaNSxiQNBUm3cKNWROr0GSur7Za31k1vieq7LH11VF+jXdRIasRKflc7jkobm1Z9te1IyZA0pDkhLR98+H37Zf1c/8at+dB7x+7GfVyTfJMPiYztsnl59Y5l4j+0n1RXlpHnF3Tq7HecmNF/CJodEMAikruxiyJaGLvHOdAfoA+oDvpjBm2b91cHGRZMU9n25xEU0A8fgEEAdKI3Q1iDtc034sug5YVMkE2jsE+BIkwSoQ3gxXMqz9tELp48bd0cFKOKS7xYjEuXBnZP5ia7DyiO/X/YI+PQSbt2uSdqAkWL9nQbV1XB94/+uPfdZz8dnXYFBYrcTl2SIR/ybxJNJPz/Gupb0JaZeens2ekC7EKr8t+Ls/P5VJPYJdHKyqfg2nqU6bhlidzcddQV/7MmecTzJ5VPcKXkNKSEogHjYFx6QZ7rQ+FSe8njaiNuOnXS8H2ScQ619c2mC3VTtauL0rRbXd/CkSOP37FY9Zkjz8+GibYUMOEWF+RdrFS8Ecv1SHOpPUPZGEIpjPvFyU5cXKjd6OXqorTqy9GwRd++HVufPGnVsW+aO3vggKZ18jR9sXaTC1PWTEsVUaK0FkNySbTQDqlm2PfDjZcu4aalnSLKjnOoYQ0nUlqqXcGpPu/4VgV/xU2pAqW4BW3qzhQ8/hFKhV2qE3+BKAtDqBXjfgnVdH4y0wg5tbVNRenNdTWOrenWLcupQdmsbq5b+18piTe/xRdp1xbILxNPJGInm2z6hoB21Lal0i+ePTtd7B45+3XhFJ329evskXm7qurUVREotqSluSo/L29d3qDhI4YOQqWhI4YNvBNfsMHeXKemXrxQfKeuPOGRVayA3JtkJKEgbPp+dXUDluddutRYLFoXGXWX6N3WFaGLbQtRSitVYNacTNSdy7AaG/HSaUEANcBoGXNdcZvZsOqQ1icBDv21/gzAoYPHH/WDW0qNR3QTYKEAEHig6o13NXbND06CQPlRtYjGNnSktRc09k1mAMDvAlDKfQjgy6fssInlfzmNAjKkDxoxHOBLdVRAIVt9j4qo+hA1w9T1aNBNTUOTTNUHLbqokE+UAfJXCIGw/IxCSL5GRUJeR40rL/UxTm4Q08H6MbCs70ObuNyIIXrINHQYInF06UUlevTjbQzTh5upiDMzMMogUtEnjPs/Y7jAHCJeB0GBHh04tC6FiB6ZFB1oArUSIoFoqhzCeAN6lHwm0T4C3VVPWvjpSMXReuWesMEcoqrmgtNBGd2noWeV0hNAz9rFeShNJxHGsPa3HXeKTk8b55hahySYHaYKKFFLpCfN8rsoaJn01CR04Gkc+5k7KVTCmClX8Q10HCrUEkVlSX+XO33oQR9609tJ516H497WSobWs5Up6TLaS10/dessIskgJSLiDlWvHVUywpkQ7hdPZqGyiEF0uVQerVcPamT1A3eKXdyI1vG9OoflrSXihZ1qqGE3nhmAgiIbRCQgPLEPtOM3UQwTLYaYYomNlpA44opnjV6jkD6id80OOrzf6BzmMD6eEa1zKyeYG1fzfEf16V6jw9XYOaar1/b2kP/IYX8oR2mcFvv2GtBV3JXgd437AQAA) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #08070c;--ink: #f2f2f6;--ink-dim: rgba(242, 242, 246, .68);--ink-faint: rgba(242, 242, 246, .42);--line: rgba(242, 242, 246, .1);--line-strong: rgba(242, 242, 246, .22);--glass: rgba(255, 255, 255, .04);--glass-strong: rgba(255, 255, 255, .07);--scene-accent: #d78cff;--sans: "Space Grotesk Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--mono: "JetBrains Mono Variable", ui-monospace, "Cascadia Code", Consolas, monospace;--ease-out: cubic-bezier(.22, 1, .36, 1);--radius: 14px;--section-pad: clamp(100px, 16vh, 200px);--gutter: clamp(20px, 5vw, 72px);--gutter-l: max(var(--gutter), env(safe-area-inset-left));--gutter-r: max(var(--gutter), env(safe-area-inset-right));--content-max: 1240px;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}html.lenis{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16.5px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip}html{scrollbar-width:none}html::-webkit-scrollbar{width:0;height:0;display:none}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:99;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}img,canvas,svg,iframe{display:block;max-width:100%}h1,h2,h3,p{margin:0;overflow-wrap:break-word}h1,h2,h3{text-wrap:balance;line-height:1.06;font-weight:700;letter-spacing:-.02em}a{color:inherit}a,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{font:inherit;color:inherit;background:none;border:none;padding:0;cursor:pointer}::selection{background:var(--ink);color:var(--bg)}:focus-visible{outline:2px solid var(--scene-accent);outline-offset:3px;border-radius:2px}.mono{font-family:var(--mono);font-size:.76rem;letter-spacing:.03em}.kicker{font-family:var(--mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.26em;color:var(--scene-accent);display:block;margin-bottom:22px}.section{padding:var(--section-pad) var(--gutter-r) var(--section-pad) var(--gutter-l);scroll-margin-top:64px;position:relative}.section-inner{max-width:var(--content-max);margin:0 auto}.section-title{font-size:clamp(2.2rem,5.5vw,4rem);margin-bottom:clamp(36px,7vh,72px)}.accent{color:var(--scene-accent)}.dim{color:var(--ink-dim)}.panel{background:var(--glass);border:1px solid var(--line);border-radius:var(--radius);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.chip{display:inline-flex;align-items:center;font-family:var(--mono);font-size:.7rem;letter-spacing:.05em;text-transform:uppercase;padding:5px 12px;border:1px solid var(--line-strong);border-radius:999px;color:var(--ink-dim);white-space:nowrap}.chip--accent{border-color:color-mix(in srgb,var(--scene-accent) 60%,transparent);color:var(--scene-accent)}.btn{display:inline-flex;align-items:center;gap:10px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;padding:15px 30px;border-radius:999px;text-decoration:none;transition:transform .25s var(--ease-out),box-shadow .4s ease,background-color .2s ease,border-color .2s ease,color .2s ease;will-change:transform}.btn:active{transform:scale(.97)}.btn--primary{background:#f4f4f6;color:#0b0a10;box-shadow:0 0 32px #f4f4f647}.btn--primary:hover{box-shadow:0 0 12px #f4f4f61f}.btn--ghost{border:1px solid var(--line-strong);color:var(--ink)}.btn--ghost:hover{border-color:var(--ink)}.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease-out),transform .8s var(--ease-out)}.reveal.is-in{opacity:1;transform:none}.placeholder-flag{border-style:dashed;color:var(--ink-faint)}@media(max-width:700px){:root{--section-pad: clamp(64px, 9vh, 100px)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.aurora{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--bg);overflow:hidden}.aurora-layer{position:absolute;top:-6%;right:-6%;bottom:-6%;left:-6%;opacity:0;will-change:opacity}.scrollbar{position:fixed;top:14px;bottom:14px;right:2px;width:18px;z-index:60;opacity:0;pointer-events:none;transition:opacity .3s ease;cursor:pointer;touch-action:none}.scrollbar-thumb{position:absolute;top:0;right:5px;width:6px;border-radius:999px;background:color-mix(in srgb,var(--scene-accent) 55%,transparent);transition:background-color .2s ease,width .15s ease;will-change:transform,height;pointer-events:none}@media(hover:hover){.scrollbar-thumb{background:color-mix(in srgb,var(--scene-accent) 45%,transparent)}.scrollbar:hover .scrollbar-thumb{background:color-mix(in srgb,var(--scene-accent) 80%,transparent);width:8px}}@media(max-width:560px){.scrollbar{display:none}}.nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:max(16px,env(safe-area-inset-top)) var(--gutter-r) 16px var(--gutter-l);background:linear-gradient(to bottom,#08070ceb,#08070c8c 55%,#08070c00);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.nav-logo{font-family:var(--mono);font-size:1rem;font-weight:700;text-decoration:none;letter-spacing:.04em}.nav nav{display:flex;align-items:center;gap:clamp(16px,3vw,34px)}.nav nav a{font-family:var(--mono);font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;text-decoration:none;color:var(--ink-dim);transition:color .2s ease}.nav nav a:hover{color:var(--ink)}.nav-contact{color:var(--ink)!important;border:1px solid var(--line-strong);border-radius:999px;padding:8px 16px;transition:border-color .2s ease!important}.nav-contact:hover{border-color:var(--ink)}@media(max-width:560px){.nav nav a:not(.nav-contact):not([href="#projekte"]){display:none}}.hero{min-height:100dvh;display:grid;place-items:center;padding:80px var(--gutter-r) 40px var(--gutter-l);overflow:clip}.hero-inner{position:relative;width:100%;max-width:var(--content-max);display:grid;place-items:center;text-align:center}.hero-head{display:grid;place-items:center;gap:0;will-change:transform,opacity}.hero-status{color:var(--ink-dim);margin-bottom:clamp(20px,4vh,40px);text-transform:uppercase;letter-spacing:.22em}.hero-name{font-size:clamp(3.2rem,12.5vw,9.5rem);font-weight:700;text-transform:uppercase;letter-spacing:.01em;line-height:.95;display:grid}.hero-mask{display:block;overflow:clip;padding-bottom:.06em;margin-bottom:-.06em}.hero-rise{display:inline-block;will-change:transform}.hero-name-last{color:transparent;-webkit-text-stroke:2px var(--ink)}.hero-role{margin-top:clamp(16px,3vh,28px);color:var(--ink-dim);font-size:clamp(.95rem,1.6vw,1.2rem);letter-spacing:.06em}.hero-ctas{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:clamp(28px,5vh,48px)}.hero-links{display:flex;justify-content:center;gap:26px;margin-top:clamp(24px,4vh,40px);color:var(--ink-dim)}.hero-links a{text-decoration:none;transition:color .2s ease}.hero-links a:hover{color:var(--ink)}.hero-statement{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-wrap:wrap;align-content:center;justify-content:center;column-gap:.3em;pointer-events:none;font-size:clamp(1.8rem,5vw,3.8rem);font-weight:700;line-height:1.15;letter-spacing:-.02em;max-width:20ch;margin:0 auto}.hero-statement-mask{display:inline-block;overflow:clip;padding-bottom:.1em;margin-bottom:-.1em}.hw{display:inline-block;will-change:transform}.hero-cue{position:absolute;bottom:-8vh;left:50%;transform:translate(-50%);color:var(--ink-faint);text-transform:uppercase;letter-spacing:.3em}.hero--static .hero-statement{position:static;pointer-events:auto;margin-top:48px}.hero--static .hero-cue{display:none}@media(max-width:560px){.hero-ctas{width:100%}.hero-ctas .btn{width:100%;justify-content:center}}.sw-mask{display:inline-block;overflow:clip;vertical-align:bottom;padding-bottom:.08em;margin-bottom:-.08em}.sw{display:inline-block;will-change:transform}.manifesto-grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(32px,6vw,96px);align-items:center}.manifesto-intro{display:grid;gap:clamp(24px,4vh,40px)}.manifesto-portrait{position:relative;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line-strong);max-width:420px;background:var(--glass)}.manifesto-portrait img{width:100%;height:auto;aspect-ratio:13 / 16;object-fit:cover;display:block;filter:saturate(.95) contrast(1.02)}.manifesto-portrait:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,transparent 55%,color-mix(in srgb,var(--bg) 70%,transparent))}.manifesto-lead{font-size:clamp(1.9rem,4.4vw,3.2rem);font-weight:700;line-height:1.1;letter-spacing:-.025em;text-wrap:balance}.manifesto-body{display:grid;gap:26px;color:var(--ink-dim);max-width:54ch;font-size:1.08rem}@media(max-width:860px){.manifesto-grid{grid-template-columns:1fr;gap:36px}.manifesto-portrait{max-width:320px}}.marquee{overflow:clip;padding:clamp(28px,5vh,56px) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.marquee-track{display:flex;width:max-content;animation:marquee 30s linear infinite}.marquee-group{display:flex;align-items:center;flex:0 0 auto}.marquee-item{display:inline-flex;align-items:center;font-size:clamp(2.2rem,6vw,4.5rem);font-weight:700;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;color:transparent;-webkit-text-stroke:1px rgba(242,242,246,.35)}.marquee-sep{color:var(--scene-accent);-webkit-text-stroke:0;font-size:.5em;margin:0 .8em}@keyframes marquee{to{transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.marquee-track{animation:none}}.work{position:relative}.work-head{padding-bottom:clamp(20px,5vh,48px)}.work-rail{scroll-snap-type:y proximity}.work-panel{min-height:100svh;display:grid;place-items:center;padding:clamp(56px,9vh,100px) var(--gutter-r) clamp(56px,9vh,100px) var(--gutter-l);scroll-snap-align:center;scroll-margin-top:64px}.work-panel-inner{width:100%;max-width:1720px;display:grid;grid-template-columns:minmax(0,9fr) minmax(0,3.4fr);gap:clamp(24px,3vw,48px);align-items:center}.work-preview{min-width:0}.frame{margin:0;border:1px solid var(--line-strong);border-radius:var(--radius);overflow:hidden;background:#08070c8c;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 50px 110px -50px #000000d9;transition:box-shadow .4s ease,border-color .3s ease}.work-panel.is-focused .frame{border-color:var(--scene-accent);box-shadow:0 0 0 1px var(--scene-accent),0 50px 120px -40px #000000e6}.frame-bar{display:flex;align-items:center;gap:14px;height:48px;padding:0 16px;border-bottom:1px solid var(--line);background:#ffffff08;transition:background-color .3s ease}.frame-open,.frame-release{display:inline-flex;align-items:center;height:30px;box-sizing:border-box}.work-panel.is-focused .frame-bar{background:color-mix(in srgb,var(--scene-accent) 8%,rgba(8,7,12,.6))}.frame-dots{display:flex;gap:6px}.frame-dots i{width:9px;height:9px;border-radius:50%;background:var(--line-strong)}.frame-url{color:var(--ink-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.frame-open{color:var(--ink);text-decoration:none;white-space:nowrap}.frame-open:hover{color:var(--scene-accent)}.frame-body{position:relative;aspect-ratio:16 / 9;display:grid}.frame-body img,.frame-body iframe{width:100%;height:100%;border:0;background:var(--bg)}.frame-body img{object-fit:cover;object-position:top center}.frame-body iframe{position:absolute;top:0;right:0;bottom:0;left:0}@media(hover:none),(pointer:coarse){.frame-body iframe{pointer-events:none}.work-panel.is-focused .frame-body iframe{pointer-events:auto}.frame-focus-overlay{opacity:1}}@media(max-width:700px){.frame-body{aspect-ratio:auto;height:70svh}}.frame-empty{display:grid;place-content:center;gap:10px;text-align:center;padding:32px;color:var(--ink-dim);background:repeating-linear-gradient(-45deg,transparent 0 16px,rgba(242,242,246,.025) 16px 17px)}.frame-empty-type{color:var(--scene-accent);letter-spacing:.2em;text-transform:uppercase}.frame-empty p{max-width:38ch;margin:0 auto}.frame-focus-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;background:linear-gradient(180deg,#08070c26,#08070c73);opacity:0;transition:opacity .25s ease;cursor:pointer}.frame-body:hover .frame-focus-overlay{opacity:1}.frame-focus-hint{padding:12px 20px;border-radius:999px;border:1px solid var(--line-strong);background:#08070cd9;color:var(--ink);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.frame-release{white-space:nowrap;padding:0 14px;border-radius:999px;border:1px solid var(--scene-accent);color:var(--scene-accent);background:color-mix(in srgb,var(--scene-accent) 12%,transparent);transition:background-color .2s ease,transform .2s var(--ease-out)}.frame-release:hover{background:color-mix(in srgb,var(--scene-accent) 22%,transparent)}.frame-release:active{transform:scale(.96)}.work-meta{display:grid;gap:13px;align-content:center;min-width:0}.work-no{color:var(--ink-faint);letter-spacing:.16em}.console-chips{display:flex;flex-wrap:wrap;gap:8px}.work-title{font-size:clamp(1.6rem,3vw,2.5rem)}.work-context{letter-spacing:.04em}.work-desc{color:var(--ink-dim);max-width:46ch}.work-role{color:var(--ink-faint)}.work-highlights{margin:0;padding:0;list-style:none;display:grid;gap:8px;color:var(--ink-dim)}.work-highlights li{padding-left:18px;position:relative}.work-highlights li:before{content:"▸";position:absolute;left:0;color:var(--scene-accent)}.work-links{display:flex;gap:22px;flex-wrap:wrap;margin-top:4px}.work-link{color:var(--ink);text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--line-strong);transition:text-decoration-color .2s ease}.work-link:hover{text-decoration-color:var(--scene-accent)}@media(max-width:1000px){.work-panel{min-height:auto;padding:clamp(44px,7vh,80px) var(--gutter);scroll-snap-align:none}.work-panel-inner{grid-template-columns:1fr;gap:26px}.frame-focus-overlay{opacity:1;align-content:end;justify-content:end;padding:14px;background:none}}.skills-intro{max-width:56ch;margin-top:-28px;margin-bottom:clamp(40px,7vh,72px)}.skills-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,2.4vw,28px)}.skills-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);padding:clamp(24px,3vw,38px);display:grid;gap:22px;align-content:start;transition:border-color .25s ease}.skills-card:hover{border-color:var(--line-strong)}.skills-card-head{display:flex;align-items:baseline;gap:14px}.skills-card-no{color:var(--scene-accent);letter-spacing:.12em}.skills-card-label{font-size:clamp(1.15rem,2vw,1.5rem);font-weight:650;letter-spacing:-.01em}.skills-claim{font-size:clamp(1.02rem,1.5vw,1.18rem);line-height:1.4;color:var(--ink);max-width:40ch}.skills-items{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.skills-items li{border:1px solid var(--line);border-radius:calc(var(--radius) - 6px);padding:12px 14px;display:grid;gap:3px;background:#08070c66}.skills-item-name{color:var(--ink);font-weight:600}.skills-item-note{font-size:.82rem;color:var(--ink-faint);line-height:1.35}.skills-used{color:var(--ink-faint);padding-top:4px;border-top:1px solid var(--line)}.skills-certs{margin-top:clamp(36px,6vh,64px);display:grid;gap:16px}.skills-certs-label{color:var(--scene-accent);text-transform:uppercase;letter-spacing:.22em;font-size:.72rem}.skills-certs-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}.skills-cert{text-decoration:none;transition:border-color .2s ease,color .2s ease}.skills-cert:hover{border-color:var(--scene-accent);color:var(--scene-accent)}.skills-certs-more{color:var(--ink-faint);font-size:.88rem}.skills-certs-more a{color:var(--ink-dim);text-underline-offset:3px}.skills-certs-more a:hover{color:var(--scene-accent)}@media(max-width:860px){.skills-grid{grid-template-columns:1fr}}.buildpath-list{list-style:none;margin:0;padding:0;display:grid}.buildpath-entry{display:grid;grid-template-columns:150px 1fr;gap:clamp(20px,4vw,64px);padding:36px 0;border-top:1px solid var(--line)}.buildpath-list li:last-child .buildpath-entry{border-bottom:1px solid var(--line)}.buildpath-period{color:var(--scene-accent);padding-top:6px;text-transform:uppercase;letter-spacing:.12em}.buildpath-body{display:grid;gap:10px;max-width:62ch}.buildpath-title{font-size:1.3rem;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.buildpath-text{color:var(--ink-dim)}@media(max-width:640px){.buildpath-entry{grid-template-columns:1fr;gap:8px;padding:26px 0}}.how-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(32px,6vw,110px)}.how-item{padding:28px 0;border-top:1px solid var(--line);display:grid;gap:8px}.how-item-title{font-size:1.12rem}.how-item-text{color:var(--ink-dim);max-width:52ch}@media(max-width:720px){.how-grid{grid-template-columns:1fr}}.contact{padding-bottom:0}.contact-headline{font-size:clamp(3rem,10vw,7.5rem);font-weight:700;letter-spacing:-.03em;text-transform:uppercase}.contact-line{margin-top:24px;color:var(--ink-dim);font-size:1.15rem;max-width:44ch}.contact-ctas{display:flex;flex-wrap:wrap;gap:14px;margin-top:clamp(28px,5vh,48px)}.contact-channels{list-style:none;margin:clamp(44px,8vh,80px) 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 clamp(24px,4vw,64px)}.contact-channels li{display:grid;gap:4px;padding:20px 0;border-top:1px solid var(--line)}.contact-channels a{text-decoration:none;font-weight:600;transition:color .2s ease;overflow-wrap:anywhere}.contact-channels a:hover{color:var(--scene-accent)}.footer{margin-top:var(--section-pad);border-top:1px solid var(--line);padding:22px var(--gutter-r) max(22px,env(safe-area-inset-bottom)) var(--gutter-l)}.footer-inner{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;color:var(--ink-faint)}.footer-links{display:flex;gap:20px}.footer a{color:inherit;text-decoration:none}.footer a:hover{color:var(--ink)}@media(max-width:560px){.contact-ctas .btn{width:100%;justify-content:center}}
