@font-face{font-family:Geist Sans;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/geist-sans-latin-300-normal-C3kkMBb6.woff2)format("woff2"),url(/assets/geist-sans-latin-300-normal-plFOEHCX.woff)format("woff")}@font-face{font-family:Geist Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/geist-sans-latin-500-normal-uokXdC-Q.woff2)format("woff2"),url(/assets/geist-sans-latin-500-normal-CN2lyvyL.woff)format("woff")}@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/geist-mono-latin-400-normal-DTRLJnHl.woff2)format("woff2"),url(/assets/geist-mono-latin-400-normal-B2yvC1Cq.woff)format("woff")}@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/geist-mono-latin-500-normal-YINYabwD.woff2)format("woff2"),url(/assets/geist-mono-latin-500-normal-D-GG86Jb.woff)format("woff")}@font-face{font-family:Instrument Serif;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-400-normal-DnYpCC2O.woff2)format("woff2"),url(/assets/instrument-serif-latin-400-normal-BVbkICAY.woff)format("woff")}:root{--bg:#07080a;--fg:#e8eaed;--muted:#8d939c;--line:#e8eaed29;--accent:#ff6b35;--font-display:"Geist Sans", system-ui, sans-serif;--font-mono:"Geist Mono", ui-monospace, monospace;--font-serif:"Instrument Serif", Georgia, "Times New Roman", serif;--ease-main:cubic-bezier(.22, 1, .36, 1);--dur-fast:.16s;--dur-main:.52s;--fs-min:0px}@media (max-width:700px){:root{--fs-min:12px}}html,body{color:#e8eaed;background:#07080a;height:100%;margin:0;overflow:hidden}#core{width:100%;height:100%;display:block;position:fixed;inset:0}#app{position:fixed;inset:0}a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--pad:36px;--bottom:max(32px, env(safe-area-inset-bottom));--lift:0px;--panel-bottom:100px;--op-bottom:calc(var(--bottom) + 58px)}.shell{pointer-events:none;font-family:var(--font-display);position:absolute;inset:0}.shell button,.shell .dock,.shell .corner,.boot{pointer-events:auto}.hud{font:400 max(var(--fs-min), 11px)/1.9 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);white-space:pre;position:absolute}.hud-tl{top:max(32px, env(safe-area-inset-top));left:var(--pad)}.hud-tr{top:max(32px, env(safe-area-inset-top));right:var(--pad);text-align:right}.hud-dot{vertical-align:1px;background:#4ade80;border-radius:50%;width:7px;height:7px;margin-right:9px;animation:2.4s ease-in-out infinite hud-live;display:inline-block}@keyframes hud-live{0%,to{box-shadow:0 0 #4ade8080}50%{box-shadow:0 0 0 5px #4ade8000}}@media (prefers-reduced-motion:reduce){.hud-dot{animation:none}}.hero{left:var(--pad);max-width:min(460px,100vw - 72px);transition:opacity var(--dur-main) var(--ease-main), transform var(--dur-main) var(--ease-main);position:absolute;top:50%;transform:translateY(-50%)}.hero[data-visible=false]{opacity:0;pointer-events:none;transform:translateY(calc(12px - 50%))}.hero-kicker{color:var(--accent);font:400 max(var(--fs-min), 11px)/1.5 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px}.hero h1{font-family:var(--font-serif);letter-spacing:-.015em;margin:0 0 18px;font-size:clamp(50px,7.8vw,86px);font-weight:400;line-height:.98}.hero p{max-width:36ch;color:var(--muted);margin:0;font-size:clamp(17px,1.6vw,20px);line-height:1.6}.hero:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(at 38%,#07080ad1 0%,#07080a66 42%,#07080a00 66%);position:absolute;inset:-120px}.hero .hw{vertical-align:top;padding-bottom:.08em;display:inline-block;overflow:hidden}.hero .hw>span{display:inline-block}.hero.intro .hw>span{animation:hero-rise 1s var(--ease-main) both;animation-delay:calc(.15s + var(--i,0) * 90ms)}.hero.intro p{animation:hero-fade .9s .45s var(--ease-main) both}.hero.intro .hero-actions{animation:hero-fade .9s .6s var(--ease-main) both}.hero.intro .hero-kicker{animation:.4s .15s both hero-fade}@keyframes hero-rise{0%{transform:translateY(105%)}to{transform:none}}@keyframes hero-fade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.hero-btn{font:400 max(var(--fs-min), 11px)/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg);border:1px solid var(--line);cursor:pointer;transition:color var(--dur-fast), border-color var(--dur-fast);background:#0a0b0e80;padding:13px 20px;position:relative;overflow:hidden}.hero-btn:before{content:"";z-index:-1;background:var(--accent);transform-origin:0;transition:transform .42s var(--ease-main);position:absolute;inset:0;transform:scaleX(0)}.hero-btn:hover{color:var(--bg);border-color:var(--accent)}.hero-btn:hover:before{transform:scaleX(1)}.hero-btn.primary{color:var(--bg);background:var(--accent);border-color:var(--accent)}.hero-btn.primary:before{background:var(--fg)}.hero-btn{isolation:isolate}.operator-trigger svg{animation:2.6s ease-in-out infinite op-pulse}@keyframes op-pulse{0%,to{filter:drop-shadow(0 0 #ff6b3500)}50%{filter:drop-shadow(0 0 6px #ff6b35e6)}}.pill:hover{transform:translateY(-2px)}.dock{left:50%;bottom:var(--bottom);border:1px solid var(--line);-webkit-backdrop-filter:blur(16px)saturate(1.2);background:#0a0b0e8c;gap:2px;padding:4px;display:flex;position:absolute;transform:translate(-50%);box-shadow:0 14px 44px #00000080,inset 0 1px #ffffff0d}.dock-indicator{width:var(--w,0);transform:translateX(var(--x,0));background:var(--accent);opacity:0;transition:transform .52s var(--ease-main), width .52s var(--ease-main), opacity .3s;pointer-events:none;position:absolute;top:4px;bottom:4px;left:0;box-shadow:0 0 26px #ff6b3561}.dock.ready .dock-indicator{opacity:1}.dock button{z-index:1;font:400 max(var(--fs-min), 11px)/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);cursor:pointer;transition:color var(--dur-fast);background:0 0;border:0;align-items:center;gap:9px;padding:11px 16px;display:flex;position:relative}.dock button svg{transition:transform var(--dur-fast) var(--ease-main);flex:none}.dock button:hover{color:var(--fg)}.dock button:hover svg{transform:translateY(-1px)scale(1.08)}.dock button[aria-current=true]{color:var(--bg)}.dock:not(.ready) button[aria-current=true]{background:var(--accent)}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.corner{left:var(--pad);bottom:calc(var(--bottom) + var(--lift));gap:10px;display:flex;position:absolute}.pill{font:400 max(var(--fs-min), 11px)/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);cursor:pointer;transition:color var(--dur-fast), border-color var(--dur-fast), background var(--dur-fast);background:#0a0b0e8c;align-items:center;gap:9px;padding:10px 14px;display:inline-flex}.pill svg{color:var(--accent);flex:none}.pill:hover,.pill[aria-expanded=true]{color:var(--fg);background:#0a0b0ecc;border-color:#ff6b358c}.pill[data-hint]:after{content:attr(data-hint);border:1px solid var(--line);font-size:max(var(--fs-min), 10px);letter-spacing:.06em;color:var(--muted);margin-left:4px;padding:3px 6px}.mode-toggle{right:var(--pad);bottom:calc(var(--bottom) + var(--lift));z-index:50;position:fixed}.boot{z-index:100;background:var(--bg);transition:opacity .4s var(--ease-main);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.boot.out{opacity:0;pointer-events:none}.boot pre{min-width:280px;font:400 12px/2 var(--font-mono);letter-spacing:.14em;color:var(--accent);margin:0}@media (pointer:coarse){.pill[data-hint]:after{display:none}}@media (max-width:1280px){:root{--lift:68px;--panel-bottom:calc(var(--bottom) + 68px + 52px);--op-bottom:calc(var(--bottom) + 68px + 58px)}}@media (max-width:900px){.shell:has(.operator) .panel{display:none}}@media (max-width:700px){:root{--pad:16px;--bottom:max(12px, env(safe-area-inset-bottom))}.hero{top:calc(max(32px, env(safe-area-inset-top)) + 64px);max-width:calc(100vw - 32px);transform:none}.hero[data-visible=false]{transform:translateY(12px)}.hero p{font-size:16px}.dock{left:12px;right:12px;transform:none}.dock button{letter-spacing:.06em;flex-direction:column;flex:1;justify-content:center;gap:5px;padding:9px 2px 8px;font-size:9px}.corner{gap:8px}.hud-tr{top:calc(max(32px, env(safe-area-inset-top)) + 1.9em)}.pill{letter-spacing:.08em;gap:7px;padding:9px 10px}}@media (max-width:380px){.pill svg{display:none}.pill{letter-spacing:.05em;padding:9px 8px;font-size:11px}.corner{gap:6px}}@media (min-width:701px){.hero-kicker{white-space:nowrap}}.hero-btn,.pill,.book-btn{translate:var(--mx,0px) var(--my,0px)}.hero-btn{transition:color var(--dur-fast), border-color var(--dur-fast), translate .26s var(--ease-main)}.pill{transition:color var(--dur-fast), border-color var(--dur-fast), background var(--dur-fast), transform var(--dur-main) var(--ease-main), translate .26s var(--ease-main)}.panel{top:96px;right:36px;bottom:var(--panel-bottom);box-sizing:border-box;border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:auto;width:min(420px,100vw - 72px);color:var(--fg);background:#07080ad1;flex-direction:column;padding:24px 28px 0;display:flex;position:absolute}.panel-head{justify-content:space-between;align-items:center;display:flex}.mono{font:400 max(var(--fs-min), 11px)/1.6 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.panel h2{font-family:var(--font-serif);letter-spacing:-.01em;outline:none;margin:8px 0 18px;font-size:40px;font-weight:400;line-height:1.05}.panel-body{scrollbar-width:thin;scrollbar-color:var(--line) transparent;flex:1;min-height:0;padding-bottom:28px;font-size:15px;line-height:1.6}.panel-body p{margin:0 0 14px}.panel .meta{color:var(--muted);font-size:14px}.panel .empty{color:var(--muted)}.panel .profile-link{color:var(--accent);font:400 max(var(--fs-min), 11px)/1.4 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;align-items:center;margin-top:8px;text-decoration:none;display:inline-flex}.panel .profile-link:hover{text-underline-offset:4px;text-decoration:underline}.panel .block{margin-bottom:26px}.panel .item{border-top:1px solid var(--line);padding:16px 0}.panel .item h3{margin:0 0 6px;font-size:17px;font-weight:500}.panel .item p{color:var(--muted);margin:0;font-size:14px}.panel-close,.panel-back{font:400 max(var(--fs-min), 11px)/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:6px 0}.panel-close:hover,.panel-back:hover{color:var(--accent)}.panel-back{margin-bottom:14px}.project-item button{all:unset;cursor:pointer;box-sizing:border-box;width:100%;display:block}.project-item button:hover h3{color:var(--accent)}.project-item button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.chips,.link-list{flex-wrap:wrap;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:flex}.chips li{border:1px solid var(--line);font:400 12px/1 var(--font-mono);letter-spacing:.06em;padding:6px 12px}.link-list{flex-direction:column;gap:0}.link-list li{border-top:1px solid var(--line)}.link-list a{color:var(--fg);padding:14px 0;font-size:17px;text-decoration:none;display:block}.link-list a:hover{color:var(--accent)}.panel .lead{color:var(--fg);font-size:16px}.panel .block-head{justify-content:space-between;align-items:baseline;display:flex}.panel .count{font:400 max(var(--fs-min), 11px)/1 var(--font-mono);color:var(--accent);letter-spacing:.1em}.panel .rv{animation:panel-rise .56s var(--ease-main) both;animation-delay:calc(var(--i,0) * 55ms + 80ms)}@keyframes panel-rise{0%{clip-path:inset(0 0 100%);transform:translateY(.4em)}to{clip-path:inset(0);transform:none}}.stats{background:var(--line);border:1px solid var(--line);grid-template-columns:1fr 1fr;gap:1px;margin:6px 0 28px;display:grid}.stat{background:#07080aeb;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.stat-value{letter-spacing:-.02em;color:var(--fg);font-size:24px;font-weight:300}.stat-value:after{content:"";background:var(--accent);width:18px;height:1px;margin-top:8px;display:block}.stat-label{font:400 max(var(--fs-min), 10px)/1.4 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.tl{border-left:1px solid var(--line);margin:14px 0 0 4px;padding:0;list-style:none}.tl-item{padding:0 0 22px 22px;position:relative}.tl-item:last-child{padding-bottom:0}.tl-item:before{content:"";background:var(--bg);border:1px solid var(--accent);width:7px;height:7px;position:absolute;top:6px;left:-4px}.tl-item:first-child:before{background:var(--accent);box-shadow:0 0 10px #ff6b3599}.tl-period{font:400 max(var(--fs-min), 10px)/1.6 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.tl-item h3{margin:4px 0 2px;font-size:16px;font-weight:500}.tl-org{color:var(--muted);margin-bottom:6px;font-size:13px}.tl-item p{color:var(--muted);margin:0;font-size:14px}.rows{margin:10px 0 0;padding:0;list-style:none}.rows li{border-top:1px solid var(--line);flex-direction:column;gap:2px;padding:12px 0;display:flex}.rows strong{font-size:15px;font-weight:500}.rows .meta{font-size:13px}.rows p{color:var(--muted);margin:4px 0 0;font-size:13px}.project-item{position:relative}.project-item button{padding-left:42px}.proj-index{font:400 12px/1 var(--font-mono);color:var(--accent);letter-spacing:.08em;position:absolute;top:18px;left:0}.proj-meta{font:400 max(var(--fs-min), 10px)/1.6 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:4px;display:block}.project-item h3{transition:color var(--dur-fast)}.project-item button:after{content:"→";color:var(--muted);transition:transform var(--dur-fast) var(--ease-main), color var(--dur-fast);position:absolute;top:16px;right:0}.project-item button:hover:after{color:var(--accent);transform:translate(4px)}.chips.mini{gap:6px;margin-top:10px}.chips.mini li{font-size:max(var(--fs-min), 10px);color:var(--muted);padding:4px 8px}.facts{background:var(--line);border:1px solid var(--line);gap:1px;margin:4px 0 24px;display:grid}.facts>div{background:#07080aeb;grid-template-columns:96px 1fr;padding:10px 14px;display:grid}.facts dt{font:400 max(var(--fs-min), 10px)/1.8 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.facts dd{margin:0;font-size:14px}.panel .chips li{transition:border-color var(--dur-fast), color var(--dur-fast)}.panel .chips li:hover{border-color:var(--accent);color:var(--accent)}.chips.services li{border-color:#ff6b3559}.panel h2.rise{animation:panel-rise .7s 80ms var(--ease-main) both}@media (prefers-reduced-motion:reduce){.panel h2.rise{animation:none}}.panel-grip{display:none}@media (max-width:700px){.panel{width:auto;top:auto;left:12px;right:12px;bottom:var(--panel-bottom);max-height:62dvh;transition:transform .32s var(--ease-main);padding-top:22px}.panel-grip{touch-action:none;cursor:grab;width:96px;height:22px;display:block;position:absolute;top:0;left:50%;transform:translate(-50%)}.panel-grip:after{content:"";background:#e8eaed47;border-radius:2px;width:36px;height:4px;position:absolute;top:9px;left:50%;transform:translate(-50%)}}.palette{z-index:80;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:auto;background:#07080a8c;justify-content:center;align-items:flex-start;padding-top:16vh;display:flex;position:absolute;inset:0}.palette-box{border:1px solid var(--line);background:#07080af0;width:min(560px,100vw - 32px)}.palette input{box-sizing:border-box;width:100%;font:400 15px/1 var(--font-mono);letter-spacing:.04em;color:var(--fg);border:0;border-bottom:1px solid var(--line);background:0 0;outline:none;padding:18px 20px}.palette input::placeholder{color:var(--muted)}.palette ul{max-height:46vh;margin:0;padding:6px;list-style:none;overflow-y:auto}.palette li{font:400 12px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);cursor:pointer;padding:12px 14px}.palette li[aria-selected=true]{color:var(--bg);background:var(--accent)}.palette .palette-empty{cursor:default}.operator{left:var(--pad);bottom:var(--op-bottom);box-sizing:border-box;border:1px solid var(--line);-webkit-backdrop-filter:blur(18px)saturate(1.2);pointer-events:auto;width:min(460px,100vw - 72px);height:min(480px,58dvh);color:var(--fg);transform-origin:0 100%;background:linear-gradient(#101115d1,#08090ceb);flex-direction:column;padding:16px 18px 14px;display:flex;position:absolute;box-shadow:0 24px 70px #0000008c,inset 0 1px #ffffff0d}.operator:before{content:"";background:linear-gradient(90deg, var(--accent), #ff6b3500 70%);height:1px;position:absolute;top:-1px;left:0;right:0}.operator-head{border-bottom:1px solid var(--line);align-items:center;gap:12px;margin-bottom:12px;padding-bottom:14px;display:flex}.operator-title{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.operator-title strong{letter-spacing:-.01em;font-size:15px;font-weight:500}.operator-status{font:400 max(var(--fs-min), 10px)/1.2 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);align-items:center;gap:7px;display:flex}.operator-status:before{content:"";background:var(--accent);width:6px;height:6px;box-shadow:0 0 8px var(--accent);border-radius:50%}.operator-log{scrollbar-width:thin;scrollbar-color:var(--line) transparent;flex-direction:column;flex:1;gap:12px;min-height:0;padding-right:4px;font-size:14px;line-height:1.55;display:flex;overflow-y:auto}.msg{white-space:pre-wrap;overflow-wrap:anywhere;max-width:88%}.msg-bot{border-left:2px solid var(--accent);color:var(--fg);background:#ffffff09;align-self:flex-start;padding:10px 13px}.msg-user{color:var(--fg);font:400 12px/1.5 var(--font-mono);letter-spacing:.03em;background:#ff6b3514;border:1px solid #ff6b354d;align-self:flex-end;padding:8px 12px}.msg.typing{align-items:center;min-height:38px;font-size:0;line-height:0;display:flex}.msg.typing:before{content:"";background:var(--muted);width:5px;height:5px;box-shadow:11px 0 0 var(--muted), 22px 0 0 var(--muted);border-radius:50%;margin-right:22px;animation:1s ease-in-out infinite typing-dots}@keyframes typing-dots{0%,to{opacity:.35}50%{opacity:1}}.operator-chips{flex-wrap:wrap;gap:8px;margin:14px 0 12px;display:flex}.operator-chips button{font:400 max(var(--fs-min), 10px)/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);cursor:pointer;transition:color var(--dur-fast), border-color var(--dur-fast);background:0 0;padding:7px 11px}.operator-chips button:hover{color:var(--accent);border-color:var(--accent)}.operator form{border:1px solid var(--line);transition:border-color var(--dur-fast);background:#ffffff06;align-items:center;gap:8px;padding:4px 4px 4px 12px;display:flex}.operator form:focus-within{border-color:#ff6b3599}.operator input{min-width:0;font:400 13px/1 var(--font-mono);color:var(--fg);background:0 0;border:0;outline:none;flex:1;padding:10px 0}.operator input::placeholder{color:var(--muted)}.operator-send{width:36px;height:36px;color:var(--bg);background:var(--accent);cursor:pointer;transition:filter var(--dur-fast), transform var(--dur-fast);border:0;place-items:center;display:grid}.operator-send:hover{filter:brightness(1.12);transform:translate(1px)}@media (max-width:700px){.operator{width:auto;left:12px;right:12px}}.operator.stage{z-index:2;background:linear-gradient(#0e0f13f5,#08090cfa);width:min(520px,42vw);height:min(420px,58dvh);min-height:0;margin-top:0;animation:none;inset:50% clamp(32px,6vw,120px) auto auto;translate:0 -50%}.operator.stage:after{content:"";pointer-events:none;background:linear-gradient(var(--accent), var(--accent)) left top / 16px 1px no-repeat, linear-gradient(var(--accent), var(--accent)) left top / 1px 16px no-repeat, linear-gradient(var(--accent), var(--accent)) right bottom / 16px 1px no-repeat, linear-gradient(var(--accent), var(--accent)) right bottom / 1px 16px no-repeat;opacity:.8;position:absolute;inset:-6px}.operator-minimize{width:30px;height:30px;color:var(--muted);border:1px solid var(--line);cursor:pointer;transition:color var(--dur-fast), border-color var(--dur-fast);background:0 0;place-items:center;display:grid}.operator-minimize:hover{color:var(--accent);border-color:var(--accent)}.case{left:var(--pad);top:96px;right:calc(60px + min(420px,100vw - 72px));bottom:var(--panel-bottom);box-sizing:border-box;border:1px solid var(--line);-webkit-backdrop-filter:blur(16px)saturate(1.15);pointer-events:auto;color:var(--fg);background:linear-gradient(#0c0d11db,#07080af0);flex-direction:column;padding:20px 24px 22px;display:flex;position:absolute;box-shadow:0 30px 80px #0000008c}.case:before{content:"";background:linear-gradient(90deg, var(--accent), #ff6b3500);width:38%;height:1px;position:absolute;top:-1px;left:-1px}.case-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.case-count{color:var(--accent)}.case-close{width:32px;height:32px;color:var(--muted);border:1px solid var(--line);cursor:pointer;transition:color var(--dur-fast), border-color var(--dur-fast), transform var(--dur-main) var(--ease-main);background:0 0;place-items:center;display:grid}.case-close:hover{color:var(--accent);border-color:var(--accent);transform:rotate(90deg)}.case-grid{scrollbar-width:thin;scrollbar-color:var(--line) transparent;flex:1;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:28px;min-height:0;display:grid;overflow-y:auto}.case-left{flex-direction:column;gap:16px;min-width:0;display:flex}.case-visual{margin:0;position:relative}.case-visual img,.case-visual .pv{width:100%;height:auto;display:block}.case-visual img{border:1px solid var(--line)}.case-caption{font:400 max(var(--fs-min), 9px)/1.4 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-align:right;margin-top:8px}.case-info h2{font-family:var(--font-serif);letter-spacing:-.01em;outline:none;margin:6px 0 12px;font-size:clamp(28px,2.8vw,40px);font-weight:400;line-height:1.08}.case-info .lead{color:var(--fg);margin:0 0 18px;font-size:15px;line-height:1.65}.case-info .proj-meta{font:400 max(var(--fs-min), 10px)/1.6 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);display:block}.case-info .chips{margin-bottom:18px}.case-points{gap:8px;margin:8px 0 20px;padding:0;list-style:none;display:grid}.case-points li{color:#e8eaeddb;padding-left:18px;font-size:14px;line-height:1.55;position:relative}.case-points li:before{content:"";background:var(--accent);width:6px;height:6px;position:absolute;top:.62em;left:2px}.case-info .chips li{animation:case-chip .48s var(--ease-main) both;animation-delay:calc(var(--d,0s) + .26s)}@keyframes case-chip{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.case-links{flex-wrap:wrap;gap:10px;margin-bottom:18px;display:flex}.case-nav{background:var(--line);border:1px solid var(--line);grid-template-columns:1fr 1fr;gap:1px;display:grid}.case-step{text-align:left;color:var(--fg);cursor:pointer;transition:background var(--dur-fast);background:#07080af0;border:0;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.case-step.next{text-align:right}.case-step:hover{background:#ff6b3514}.case-step:hover .case-step-title{color:var(--accent)}.case-step-title{transition:color var(--dur-fast);font-size:13px;line-height:1.35}.project-item.active button h3{color:var(--accent)}.project-item.active .proj-index{text-shadow:0 0 12px #ff6b35b3}.project-item.active:before{content:"";background:var(--accent);width:2px;position:absolute;top:16px;bottom:16px;left:-28px}.pv{color:var(--fg);font-family:var(--font-display);filter:drop-shadow(0 18px 40px #00000080)}.pv-frame{fill:#0a0b0f;stroke:#e8eaed29}.pv-bar-top{fill:#14161c}.pv-win.r{fill:#ff5f57;opacity:.8}.pv-win.y{fill:#febc2e;opacity:.7}.pv-win.g{fill:#28c840;opacity:.6}.pv-url{fill:#e8eaed12}.pv-lock{fill:#e8eaed59}.pv-side{fill:#0d0f13;stroke:#e8eaed12}.pv-nav{fill:#0000}.pv-nav.on{fill:#ff6b351f;stroke:#ff6b3573}.pv-ico{fill:#e8eaed40}.pv-ico.on{fill:var(--accent)}.pv-nav-t{fill:#e8eaed9e;font-size:11px}.pv-nav-t.on{fill:var(--fg)}.pv-card{fill:#101217;stroke:#e8eaed14}.pv-grid{stroke:#e8eaed12}.pv-chip{fill:#e8eaed0d;stroke:#e8eaed1f}.pv-avatar{fill:#ff6b3540;stroke:#ff6b3599}.pv-bell{fill:#e8eaed33}.pv-t,.pv-h,.pv-app,.pv-axis,.pv-kpi,.pv-label,.pv-cell-t,.pv-tip-t,.pv-up,.pv-down,.pv-pill-t{fill:var(--fg)}.pv-app{font-size:14px;font-weight:500}.pv-h{fill:#e8eaedd9;font-size:11px;font-weight:500}.pv-axis{font-family:var(--font-mono);fill:#e8eaed73;font-size:9px}.pv-kpi{letter-spacing:-.02em;font-size:20px;font-weight:300}.pv-up{font-family:var(--font-mono);fill:#4ade80;font-size:9px}.pv-down{font-family:var(--font-mono);fill:#f87171;font-size:9px}.pv-cell-t{fill:#e8eaedcc;font-size:10.5px}.pv-label{font-size:10.5px;font-weight:500}.pv-key.a{fill:var(--accent)}.pv-key.b{fill:#e8eaed8c}.pv-key.k0{fill:var(--accent)}.pv-key.k1{fill:#e8eaedb3}.pv-key.k2{fill:#e8eaed6b}.pv-key.k3{fill:#e8eaed33}.pv-line{fill:none;stroke:var(--accent);stroke-width:2.2px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px;animation:pv-draw 1.5s .25s var(--ease-main) forwards}.pv-line.b{stroke:#e8eaed66;stroke-width:1.5px;stroke-dasharray:1;animation-delay:.45s}.pv-line.thin{stroke-width:1.5px;stroke:var(--accent);opacity:.8}.pv-area{fill:url(#pvg);opacity:0;animation:.9s 1s forwards pv-fade}.pv-end{fill:var(--accent);opacity:0;animation:.3s 1.6s forwards pv-fade}.pv-pulse{fill:var(--accent);opacity:0;transform-box:fill-box;transform-origin:50%;animation:2s ease-out 1.8s infinite pv-ping}.pv-tip rect{fill:#1a1c22;stroke:#ff6b3580}.pv-tip{opacity:0;animation:pv-pop .4s 1.8s var(--ease-main) forwards;transform-box:fill-box;transform-origin:100% 100%}.pv-tip-t{font-family:var(--font-mono);font-size:10px}.pv-bar{fill:#e8eaed73;transform-box:fill-box;transform-origin:bottom;animation:pv-grow .75s var(--ease-main) forwards;animation-delay:calc(var(--d,0s) + .3s);transform:scaleY(0)}.pv-bar.hot{fill:var(--accent)}.pv-gdot{fill:#e8eaed1f}.pv-edge{fill:none;stroke:#e8eaed59;stroke-width:1.4px}.pv-edge.dash{stroke-dasharray:4 4}.pv-edge.idle{stroke:#e8eaed24;stroke-dasharray:2 4}.pv-node.wait{stroke:var(--accent);stroke-dasharray:5 3;fill:#ff6b350d}.pv-btn{fill:var(--accent)}.pv-btn-t{font-family:var(--font-mono);letter-spacing:.08em;fill:var(--bg);font-size:10px}.pv-ok{fill:none;stroke:#4ade80;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.pv-ring{fill:none;stroke:#e8eaed59}.pv-arc{fill:none;stroke-width:13px;stroke-dasharray:1;stroke-dashoffset:1px;animation:pv-draw .9s var(--ease-main) forwards;animation-delay:calc(var(--d,0s) + .4s)}.pv-arc.a0{stroke:var(--accent)}.pv-arc.a1{stroke:#e8eaedb3}.pv-arc.a2{stroke:#e8eaed6b}.pv-arc.a3{stroke:#e8eaed33}.pv-node{fill:#0d0f13;stroke:#e8eaed33}.pv-node.hot{stroke:var(--accent);fill:#ff6b3514}.pv-link{stroke:#e8eaed40;stroke-dasharray:3 3}.pv-dot{fill:var(--accent);filter:drop-shadow(0 0 3px var(--accent))}.pv-cell{fill:var(--accent);animation:.5s both pv-fade-in;animation-delay:var(--d,0s)}.pv-pill.ok{fill:#4ade801f;stroke:#4ade8066}.pv-pill.run{fill:#ff6b351f;stroke:#ff6b3580}.pv-pill.wait{fill:#e8eaed0d;stroke:#e8eaed33}.pv-pill-t{font-family:var(--font-mono);font-size:8.5px}.pv-pill-t.ok{fill:#4ade80}.pv-pill-t.run{fill:var(--accent)}.pv-pill-t.wait{fill:#e8eaed99}@keyframes pv-draw{to{stroke-dashoffset:0}}@keyframes pv-fade{to{opacity:1}}@keyframes pv-grow{to{transform:scaleY(1)}}@keyframes pv-fade-in{0%{opacity:0}}@keyframes pv-pop{0%{opacity:0;transform:translateY(6px)scale(.9)}to{opacity:1;transform:none}}@keyframes pv-ping{0%{opacity:.5;transform:scale(.4)}to{opacity:0;transform:scale(2.2)}}@media (max-width:1280px){.case-grid{grid-template-columns:1fr;gap:20px}}.book-btn{text-align:left;width:100%;color:var(--bg);background:var(--accent);cursor:pointer;transition:filter var(--dur-fast), translate .26s var(--ease-main);border:0;flex-direction:column;gap:4px;margin:4px 0 22px;padding:16px 48px 16px 18px;display:flex;position:relative;overflow:hidden}.book-btn:after{content:"→";transition:transform var(--dur-main) var(--ease-main);font-size:18px;position:absolute;top:50%;right:18px;transform:translateY(-50%)}.book-btn:before{content:"";background:linear-gradient(110deg,#0000 30%,#ffffff59 50%,#0000 70%);animation:3.2s ease-in-out 1s infinite book-sweep;position:absolute;inset:0;transform:translate(-100%)}.book-btn:hover{filter:brightness(1.08)}.book-btn:hover:after{transform:translate(4px,-50%)}.book-title{font-size:17px;font-weight:500}.book-sub{font:400 max(var(--fs-min), 10px)/1.4 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;opacity:.8}@keyframes book-sweep{0%,60%{transform:translate(-100%)}to{transform:translate(100%)}}.booking{flex-direction:column;display:flex}.bk-wrap{flex:1;grid-template-columns:minmax(0,1fr) 250px;gap:28px;min-height:0;display:grid}.bk-main{flex-direction:column;min-width:0;min-height:0;display:flex}.bk-aside{border-left:1px solid var(--line);flex-direction:column;gap:14px;padding-left:24px;display:flex}.bk-who{align-items:center;gap:12px;display:flex}.bk-who img{object-fit:cover;border:1px solid var(--line);width:46px;height:46px}.bk-who strong{font-size:14px;font-weight:500;display:block}.bk-who span{color:var(--muted);font-size:12px;line-height:1.4;display:block}.bk-aside-h{margin:6px 0 0;font-size:18px;font-weight:300}.bk-sum{flex-direction:column;margin:0;display:flex}.bk-sum div{border-top:1px solid var(--line);flex-direction:column;gap:2px;padding:10px 0;display:flex}.bk-sum dt{font:400 max(var(--fs-min), 9px)/1.4 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.bk-sum dd{color:var(--accent);margin:0;font-size:13px;transition:color .3s}.bk-sum div.empty dd{color:#e8eaed4d}.bk-aside-note{color:var(--muted);margin:auto 0 0;font-size:12px;line-height:1.5}.booking .facts>div{padding:8px 14px}.bk-steps{grid-template-columns:repeat(4,1fr);margin:4px 0 22px;padding:0;list-style:none;display:grid;position:relative}.bk-steps:before,.bk-steps:after{content:"";background:var(--line);height:1px;position:absolute;top:12px;left:12px;right:calc(25% - 12px)}.bk-steps:after{width:calc((75% - 24px) * var(--p,0));background:var(--accent);transition:width .5s var(--ease-main);right:auto}.bk-steps li{z-index:1;flex-direction:column;gap:8px;display:flex;position:relative}.bk-step-n{width:24px;height:24px;font:400 max(var(--fs-min), 11px)/1 var(--font-mono);color:var(--muted);background:var(--bg);border:1px solid var(--line);transition:all .3s var(--ease-main);place-items:center;display:grid}.bk-steps li.on .bk-step-n{color:var(--bg);background:var(--accent);border-color:var(--accent);box-shadow:0 0 16px #ff6b3580}.bk-steps li.done .bk-step-n{color:var(--accent);border-color:var(--accent)}.bk-step-l{font:400 max(var(--fs-min), 10px)/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.bk-steps li.on .bk-step-l{color:var(--fg)}.bk-body{scrollbar-width:thin;scrollbar-color:var(--line) transparent;flex:1;min-height:0;overflow-y:auto}.bk-q{font-family:var(--font-serif);letter-spacing:-.01em;margin:0 0 6px;font-size:30px;font-weight:400}.bk-hint{color:var(--muted);margin:0 0 18px;font-size:14px;line-height:1.6}.bk-label{margin:20px 0 10px}.bk-cal{grid-template-columns:repeat(7,1fr);gap:6px;max-width:520px;display:grid}.bk-dow{font:400 max(var(--fs-min), 10px)/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:center;padding-bottom:4px}.bk-day{aspect-ratio:1;max-height:58px;font:400 15px/1 var(--font-display);color:var(--fg);border:1px solid var(--line);cursor:pointer;transition:border-color var(--dur-fast), background var(--dur-fast), transform var(--dur-fast);background:#ffffff05;position:relative}.bk-day:hover:not(:disabled){border-color:var(--accent);background:#ff6b3514;transform:translateY(-1px)}.bk-day.on{color:var(--bg);background:var(--accent);border-color:var(--accent)}.bk-day:disabled{color:#e8eaed33;cursor:default;background:0 0;border-color:#e8eaed0d}.bk-day[data-month]:before{content:attr(data-month);font:400 8px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);position:absolute;top:4px;left:5px}.bk-day.on[data-month]:before{color:var(--bg)}.bk-slots{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px;display:grid}.bk-slot{text-align:left;color:var(--fg);border:1px solid var(--line);cursor:pointer;transition:border-color var(--dur-fast), background var(--dur-fast);background:#ffffff05;flex-direction:column;gap:3px;padding:10px 12px;display:flex}.bk-slot strong{font-size:15px;font-weight:500}.bk-slot span{font:400 max(var(--fs-min), 9px)/1.4 var(--font-mono);letter-spacing:.08em;color:var(--muted)}.bk-slot:hover{border-color:var(--accent)}.bk-slot.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:#ff6b351f}.bk-seg{border:1px solid var(--line);display:inline-flex}.bk-seg button{font:400 max(var(--fs-min), 11px)/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:10px 18px}.bk-seg button.on{color:var(--bg);background:var(--accent)}.bk-form{grid-template-columns:1fr 1fr;gap:14px 16px;max-width:620px;display:grid}.bk-field{flex-direction:column;gap:6px;display:flex}.bk-field:last-child{grid-column:1/-1}.bk-field-l{font:400 max(var(--fs-min), 10px)/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.bk-field input,.bk-field textarea{font:400 14px/1.4 var(--font-display);color:var(--fg);border:1px solid var(--line);resize:vertical;transition:border-color var(--dur-fast), background var(--dur-fast);background:#ffffff08;outline:none;padding:12px 14px}.bk-field input:focus,.bk-field textarea:focus{border-color:var(--accent);background:#ff6b350a}.bk-field.bad input,.bk-field.bad textarea{border-color:#f87171}.bk-err{color:#f87171;font-size:12px}.bk-tel{display:flex}.bk-tel input{flex:1;min-width:0}.bk-dial{font:400 13px/1 var(--font-mono);color:var(--fg);white-space:nowrap;border:1px solid var(--line);transition:border-color var(--dur-fast);background:#ffffff0d;border-right:0;align-items:center;gap:8px;padding:0 12px;display:flex;position:relative}.bk-dial:after{content:"";border:solid var(--muted);border-width:0 1px 1px 0;width:6px;height:6px;margin-top:-3px;transform:rotate(45deg)}.bk-dial select{opacity:0;cursor:pointer;width:100%;font-size:14px;position:absolute;inset:0}.bk-dial:focus-within{border-color:var(--accent)}.bk-dial select option{color:#111}.bk-topic{border-left:2px solid var(--accent);white-space:pre-wrap;background:#ffffff08;margin:14px 0 0;padding:12px 14px;font-size:14px;line-height:1.6}.bk-foot{border-top:1px solid var(--line);justify-content:space-between;gap:12px;margin-top:12px;padding-top:18px;display:flex}.booking .btn{cursor:pointer}.booking .btn:disabled{opacity:.35;cursor:default}.booking .btn.busy{padding-right:40px;position:relative}.booking .btn.busy:after{content:"";border:2px solid;border-right-color:#0000;border-radius:50%;width:12px;height:12px;margin-top:-6px;animation:.7s linear infinite bk-spin;position:absolute;top:50%;right:14px}@keyframes bk-spin{to{transform:rotate(360deg)}}.bk-done{flex-direction:column;align-items:flex-start;display:flex}.bk-check svg{width:64px;height:64px;margin-bottom:14px}.bk-check circle{fill:#4ade8014;stroke:#4ade80;stroke-width:2px;stroke-dasharray:1;stroke-dashoffset:1px;animation:bk-draw .7s var(--ease-main) forwards}.bk-check path{fill:none;stroke:#4ade80;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1px;animation:bk-draw .45s .55s var(--ease-main) forwards}.bk-check{filter:drop-shadow(0 0 18px #4ade8059)}.bk-check.warn circle{fill:#ff6b3514;stroke:var(--accent)}.bk-check.warn path{stroke:var(--accent)}.bk-check.warn{filter:drop-shadow(0 0 18px #ff6b3559)}.bk-done .facts{width:100%;max-width:560px}.bk-done-sum{display:none}@media (max-width:1200px){.bk-done-sum{display:grid}}.bk-actions{flex-wrap:wrap;gap:10px;margin-top:6px;display:flex}@keyframes bk-draw{to{stroke-dashoffset:0}}@media (max-width:1200px){.bk-wrap{grid-template-columns:1fr}.bk-aside{display:none}}@media (max-width:900px){.booking{z-index:6;top:72px;left:12px;right:12px}.bk-form{grid-template-columns:1fr}.bk-q{font-size:26px}}.plain{scroll-behavior:smooth;color:var(--fg);font:300 16px/1.6 var(--font-display);counter-reset:sec;scrollbar-width:thin;scrollbar-color:var(--line) transparent;background:#0a0a0b;position:fixed;inset:0;overflow-y:auto}.plain:focus{outline:none}.is-plain .mode-toggle{display:none}.plain a{color:inherit}.plain a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.plain-bar{z-index:5;-webkit-backdrop-filter:blur(14px)saturate(1.2);border-bottom:1px solid var(--line);background:#07080ab8;align-items:center;gap:28px;padding:14px clamp(16px,4vw,48px);display:flex;position:sticky;top:0}.plain-bar .brand{text-overflow:ellipsis;min-width:0;font:400 12px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;overflow:hidden}.plain-bar .brand:before{content:"";background:var(--accent);width:7px;height:7px;margin-right:12px;display:inline-block}.plain-links{gap:22px;margin-left:auto;display:flex}.plain-links a{font:400 max(var(--fs-min), 11px)/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);transition:color var(--dur-fast), border-color var(--dur-fast);border-bottom:1px solid #0000;padding:6px 0;text-decoration:none}.plain-links a:hover{color:var(--fg);border-bottom-color:var(--accent)}.plain-switch{flex:none}.plain-links:last-child{margin-left:auto}.plain-page{max-width:1120px;margin:0 auto;padding:0 clamp(16px,4vw,48px) 96px}.plain-hero{grid-template-columns:auto 1fr;align-items:center;gap:clamp(24px,5vw,64px);padding:clamp(48px,9vw,104px) 0 clamp(32px,5vw,56px);display:grid}.photo{aspect-ratio:1;width:clamp(130px,18vw,200px);position:relative}.photo img{object-fit:cover;border:1px solid var(--line);filter:grayscale(.15)contrast(1.03);width:100%;height:100%;display:block}.eyebrow{font:400 max(var(--fs-min), 11px)/1.4 var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);align-items:center;gap:16px;margin-bottom:14px;display:flex}.plain-main section .eyebrow:after{content:"";background:var(--line);flex:1;height:1px}.plain-hero h1{font-family:var(--font-serif);letter-spacing:-.015em;margin:0 0 16px;font-size:clamp(44px,7vw,86px);font-weight:400;line-height:1.02}.tagline{max-width:34ch;color:var(--muted);margin:0;font-size:clamp(17px,2vw,21px)}.cta{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.btn{font:400 max(var(--fs-min), 11px)/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg);border:1px solid var(--line);transition:border-color var(--dur-fast), color var(--dur-fast), background var(--dur-fast);background:#0a0b0e80;padding:12px 20px;text-decoration:none;display:inline-block}.btn:hover{border-color:var(--accent);color:var(--accent)}.btn.primary{color:var(--bg);background:var(--accent);border-color:var(--accent)}.btn.primary:hover{color:var(--bg);filter:brightness(1.1)}.plain-main section{margin-top:clamp(56px,8vw,96px);scroll-margin-top:76px}.plain-main h2{font-family:var(--font-serif);letter-spacing:-.01em;margin:0 0 28px;font-size:clamp(32px,4vw,46px);font-weight:400}.plain h3{letter-spacing:-.005em;margin:0 0 8px;font-size:18px;font-weight:500}.meta{color:var(--muted);font-size:14px}.prose{max-width:68ch}.prose p{margin:0 0 1.1em;font-size:17px;line-height:1.75}.cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:16px;display:grid}.card{border:1px solid var(--line);transition:border-color var(--dur-fast), transform var(--dur-main) var(--ease-main), background var(--dur-fast);background:#ffffff05;padding:26px;position:relative}.card:before{content:"";background:var(--accent);width:0;height:2px;transition:width var(--dur-main) var(--ease-main);position:absolute;top:-1px;left:-1px}.card:hover{background:#ffffff09;border-color:#ff6b3573;transform:translateY(-2px)}.card:hover:before{width:56px}.card p{color:var(--muted);margin:0 0 10px;font-size:15px}.card p.meta{font:400 12px/1.5 var(--font-mono);letter-spacing:.04em}.card ul.points{color:var(--muted);margin:4px 0 12px;padding:0 0 0 18px;font-size:14px;line-height:1.55}.card ul.points li{margin:4px 0}.card ul.points li::marker{color:var(--accent)}.card-links{gap:18px;margin-top:14px;display:flex}.card-links a{font:400 max(var(--fs-min), 11px)/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);text-decoration:none}.card-links a:hover{text-underline-offset:4px;text-decoration:underline}.chips{flex-wrap:wrap;gap:8px;margin:12px 0 0;padding:0;list-style:none;display:flex}.chips li{border:1px solid var(--line);font:400 12px/1 var(--font-mono);letter-spacing:.04em;color:var(--fg);padding:6px 12px}.skill-groups{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:32px;display:grid}.skill-group h3{font:400 max(var(--fs-min), 11px)/1.4 var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.timeline{border-left:1px solid var(--line);margin:0 0 0 6px;padding:0;list-style:none}.timeline-item{padding:0 0 34px 30px;position:relative}.timeline-item:last-child{padding-bottom:0}.timeline-item:before{content:"";background:var(--accent);width:9px;height:9px;position:absolute;top:7px;left:-5px}.timeline-item .meta{font:400 12px/1.4 var(--font-mono);letter-spacing:.08em;margin:0 0 8px}.timeline-item p:last-child{color:var(--muted);margin:0}.contact-list{border-bottom:1px solid var(--line);margin:0;padding:0;list-style:none}.contact-list li{border-top:1px solid var(--line)}.contact-list a{letter-spacing:-.015em;transition:color var(--dur-fast), padding var(--dur-main) var(--ease-main);justify-content:space-between;align-items:center;padding:22px 4px;font-size:clamp(20px,3vw,30px);font-weight:300;text-decoration:none;display:flex}.contact-list a:hover{color:var(--accent);padding-left:14px}.contact-list .arrow{font:400 20px/1 var(--font-mono);color:var(--muted)}.contact-list a:hover .arrow{color:var(--accent)}.resume-line{margin:28px 0 0}.plain-foot{border-top:1px solid var(--line);font:400 max(var(--fs-min), 11px)/1.6 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:clamp(56px,8vw,96px);padding-top:24px}.plain-foot strong{color:var(--accent);font-weight:400}@media (max-width:900px){.plain-links{display:none}.plain-bar{justify-content:space-between;gap:12px}}@media (max-width:760px){.plain-hero{grid-template-columns:1fr;gap:28px}.photo{width:120px}.tagline{max-width:none}.plain-switch{margin-left:auto}}@media (prefers-reduced-motion:reduce){.plain{scroll-behavior:auto}.card:hover{transform:none}}.recognition{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:32px;display:grid}.recognition h3{font:400 max(var(--fs-min), 11px)/1.4 var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.plain .rows{margin:0;padding:0;list-style:none}.plain .rows li{border-top:1px solid var(--line);flex-direction:column;gap:2px;padding:14px 0;display:flex}.plain .rows strong{font-weight:500}.plain .rows .meta{font-size:14px}.plain .rows p{color:var(--muted);margin:4px 0 0;font-size:14px}.skill-group.services h3{color:var(--accent)}.plain-page{border-left:1px solid #e8eaed0f;border-right:1px solid #e8eaed0f;min-height:100%;position:relative}.photo{aspect-ratio:4/5;width:clamp(140px,16vw,190px)}.photo img{filter:grayscale()contrast(1.05);transition:filter .6s var(--ease-main)}.photo:hover img{filter:grayscale(0)}.plain-hero{border-bottom:1px solid var(--line)}.plain-hero .eyebrow{color:var(--muted)}.plain-main section{counter-increment:sec;border-bottom:1px solid var(--line);grid-template-columns:200px minmax(0,1fr);column-gap:48px;margin-top:0;padding:clamp(48px,7vw,88px) 0;display:grid}.plain-main section>*{grid-column:2}.plain-main section>.eyebrow{color:var(--muted);grid-area:1/1/span 3;align-self:start;display:block;position:sticky;top:92px}.plain-main section>.eyebrow:before{content:counter(sec, decimal-leading-zero);color:var(--accent);letter-spacing:.06em;margin-bottom:10px;font-size:13px;display:block}.plain-main section>.eyebrow:after{display:none}.plain-main h2{margin-top:-6px}.card{background:0 0}.card:hover{background:#ffffff05;transform:none}@media (max-width:760px){.plain-main section{grid-template-columns:1fr}.plain-main section>*,.plain-main section>.eyebrow{grid-area:auto/1;position:static}.plain-page{border:0}}
