@font-face{font-family:Geist;src:url(/fonts/Geist-VariableFont_wght.ttf) format("truetype-variations"),url(/fonts/Geist-VariableFont_wght.ttf) format("truetype");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Syne;src:url(/fonts/Syne-VariableFont_wght.ttf) format("truetype-variations"),url(/fonts/Syne-VariableFont_wght.ttf) format("truetype");font-weight:400 800;font-style:normal;font-display:swap}:root{--bg: #FFFFFF;--bg-elevated: #FFFFFF;--bg-sunken: #F2F3F5;--bg-overlay: rgba(255, 255, 255, .82);--bg-inverse: #08080C;--ink-inverse: #E4E4E8;--ink: #08080A;--ink-60: rgba(8, 8, 10, .6);--ink-25: rgba(8, 8, 10, .25);--ink-12: rgba(8, 8, 10, .12);--ink-06: rgba(8, 8, 10, .06);--accent: #FF5A1F;--accent-ink: #FFFFFF;--accent-12: rgba(255, 90, 31, .12);--accent-25: rgba(255, 90, 31, .25);--accent-06: rgba(255, 90, 31, .06);--pos: #00C853;--warn: #FF9100;--neg: #FF1744;--info: #2979FF;--pos-25: rgba(0, 200, 83, .25);--warn-25: rgba(255, 145, 0, .25);--neg-25: rgba(255, 23, 68, .25);--info-25: rgba(41, 121, 255, .25);--font-display: "Syne", "Geist", -apple-system, BlinkMacSystemFont, sans-serif;--font-body: "Geist", -apple-system, BlinkMacSystemFont, sans-serif;--font-data: "Geist", -apple-system, BlinkMacSystemFont, sans-serif;--size-display: clamp(2.8rem, 5vw, 5.5rem);--size-title: clamp(1.6rem, 2.8vw, 2.8rem);--size-heading: clamp(1.1rem, 1.6vw, 1.5rem);--size-body: clamp(.938rem, .89rem + .22vw, 1.063rem);--size-small: .813rem;--size-micro: .688rem;--ls-tight: .04em;--ls-wide: .08em;--lh-compact: 1.55;--lh-reading: 1.7;--s0: 0px;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--s7: clamp(40px, 4.5vw, 60px);--s8: clamp(52px, 6.5vw, 88px);--s9: clamp(72px, 9vw, 128px);--s10: clamp(96px, 12.5vw, 180px);--fluid: cubic-bezier(.16, .85, .2, 1);--snap: cubic-bezier(.34, 1.56, .64, 1);--drift: cubic-bezier(.4, 0, .2, 1);--t-fast: .18s;--t-med: .4s;--t-slow: .7s;--r-surface: 8px;--r-technical: 4px;--r-panel: 14px;--r-round: 50%;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .04);--shadow-md: 0 6px 20px rgba(0, 0, 0, .08);--shadow-lg: 0 10px 32px rgba(0, 0, 0, .12);--shadow-accent: 0 6px 20px var(--accent-25);--scale-hover: 1.05}[data-theme=dark]{--bg: #08080C;--bg-elevated: #111116;--bg-sunken: #040406;--bg-overlay: rgba(8, 8, 12, .88);--bg-inverse: #FFFFFF;--ink-inverse: #08080A;--ink: #E4E4E8;--ink-60: rgba(228, 228, 232, .6);--ink-25: rgba(228, 228, 232, .22);--ink-12: rgba(228, 228, 232, .1);--ink-06: rgba(228, 228, 232, .05);--accent: #FF8552;--accent-ink: #FFFFFF;--accent-12: rgba(255, 133, 82, .14);--accent-25: rgba(255, 133, 82, .22);--accent-06: rgba(255, 133, 82, .06);--pos-25: rgba(0, 200, 83, .2);--warn-25: rgba(255, 145, 0, .2);--neg-25: rgba(255, 23, 68, .2);--info-25: rgba(41, 121, 255, .2);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .15);--shadow-md: 0 6px 20px rgba(0, 0, 0, .25);--shadow-lg: 0 10px 32px rgba(0, 0, 0, .35)}body{font-family:var(--font-body);font-size:var(--size-body);line-height:var(--lh-reading);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);line-height:1.2}.prox-text,.t-display{font-family:var(--font-display);font-size:var(--size-display);font-weight:700;letter-spacing:-.01em;line-height:1.02}h1,.t-title{font-family:var(--font-display);font-size:var(--size-title);font-weight:700;letter-spacing:-.01em;line-height:1.1}h2,.t-heading{font-family:var(--font-display);font-size:var(--size-heading);font-weight:600;letter-spacing:0;line-height:1.2}p,.t-body{font-family:var(--font-body);font-size:var(--size-body);font-weight:300;line-height:var(--lh-reading);color:var(--ink-60)}.t-small{font-family:var(--font-body);font-size:var(--size-small);line-height:var(--lh-compact)}.t-data,.data-label{font-family:var(--font-data);font-size:var(--size-micro);font-weight:400;letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--ink-25)}.t-mono{font-family:var(--font-data)}code,.t-code{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.85em;background:var(--ink-06);padding:2px 7px;border-radius:var(--r-technical);color:var(--accent)}.section-id{font-family:var(--font-data);font-size:var(--size-micro);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--accent);display:flex;align-items:center;gap:var(--s3)}.section-id:before{content:"";width:20px;height:1px;background:var(--accent)}::selection{background:var(--accent-12);color:var(--accent)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}.field{padding:var(--s9) max(var(--s5),14vw);position:relative}.field+.field{border-top:1px solid var(--ink-06)}.field--tight{padding-top:var(--s7);padding-bottom:var(--s7)}.field--flush{border-top:none!important}@media(max-width:768px){.field{padding-left:var(--s5);padding-right:var(--s5)}}.cluster{display:flex;flex-wrap:wrap;gap:var(--s3)}.mol{padding:var(--s3) var(--s5);background:var(--bg-elevated);border-radius:var(--r-surface);font-family:var(--font-data);font-size:var(--size-small);color:var(--ink);display:inline-flex;align-items:center;gap:var(--s3);border:1px solid var(--ink-06);transition:all var(--t-med) var(--fluid);-webkit-tap-highlight-color:transparent;cursor:pointer}.mol i{font-size:1rem;opacity:.5;transition:opacity var(--t-fast)}.mol:hover,.mol:active,.mol.touched{border-radius:var(--r-technical);background:var(--ink);color:var(--bg);border-color:transparent;transform:scale(var(--scale-hover));box-shadow:var(--shadow-md)}.mol:hover i,.mol:active i,.mol.touched i{opacity:1}.mol-detail{max-width:0;overflow:hidden;white-space:nowrap;opacity:0;transition:all var(--t-med) var(--fluid);color:inherit;font-weight:300}.mol:hover .mol-detail,.mol:active .mol-detail,.mol.touched .mol-detail{max-width:160px;opacity:.55;margin-left:var(--s2)}.mol--accent{border-color:var(--accent-25);color:var(--accent)}.mol--accent:hover,.mol--accent.touched{background:var(--accent);color:var(--accent-ink)}.mol--pos{border-color:var(--pos-25)}.mol--pos:hover,.mol--pos.touched{background:var(--pos);color:var(--accent-ink)}.mol--neg{border-color:var(--neg-25)}.mol--neg:hover,.mol--neg.touched{background:var(--neg);color:var(--accent-ink)}.mol--warn{border-color:var(--warn-25)}.mol--warn:hover,.mol--warn.touched{background:var(--warn);color:var(--accent-ink)}.btn{display:inline-flex;align-items:center;gap:var(--s3);font-family:var(--font-data);font-size:var(--size-small);padding:var(--s3) var(--s5);border-radius:var(--r-surface);border:1px solid transparent;background:transparent;color:var(--block-fg, var(--ink));text-decoration:none;transition:all var(--t-med) var(--fluid);white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent}.btn--fill{background:var(--block-fg, var(--ink));color:var(--block-bg, var(--bg));border-color:var(--block-fg, var(--ink))}.btn--fill:hover,.btn--fill:active,.btn--fill.touched{border-radius:var(--r-technical);background:var(--block-accent, var(--accent));border-color:var(--block-accent, var(--accent));color:var(--block-accent-ink, var(--accent-ink));transform:translateY(-2px);box-shadow:var(--shadow-accent)}.btn--fill:active{transform:translateY(0);box-shadow:none}.btn--ghost{border-color:var(--block-border, var(--ink-12));color:var(--block-muted, var(--ink-60))}.btn--ghost:hover,.btn--ghost:active,.btn--ghost.touched{border-radius:var(--r-technical);border-color:var(--block-fg, var(--ink));color:var(--block-fg, var(--ink));background:var(--block-border-soft, var(--ink-06))}.btn--accent{border-color:var(--block-accent, var(--accent));color:var(--block-accent, var(--accent))}.btn--accent:hover,.btn--accent:active,.btn--accent.touched{border-radius:var(--r-technical);background:var(--block-accent, var(--accent));color:var(--block-accent-ink, var(--accent-ink));box-shadow:var(--shadow-accent)}.btn--text{color:var(--block-muted, var(--ink-60));padding:var(--s2) var(--s3)}.btn--text:hover,.btn--text:active,.btn--text.touched{color:var(--block-accent, var(--accent));background:var(--accent-06);border-radius:var(--r-technical)}.btn--neg{border-color:var(--neg-25);color:var(--neg)}.btn--neg:hover,.btn--neg:active,.btn--neg.touched{border-radius:var(--r-technical);background:var(--neg);color:var(--accent-ink);border-color:var(--neg)}.btn--icon{width:38px;height:38px;padding:0;border-radius:var(--r-round);border:1px solid var(--ink-06);background:var(--bg-elevated);color:var(--ink-25);font-size:1rem;display:inline-flex;align-items:center;justify-content:center;transition:all var(--t-med) var(--fluid);cursor:pointer}.btn--icon:hover,.btn--icon:active,.btn--icon.touched{border-radius:var(--r-technical);background:var(--ink);color:var(--bg);border-color:var(--ink);transform:scale(var(--scale-hover))}.btn--sm{padding:var(--s2) var(--s3);font-size:var(--size-micro)}.btn--lg{padding:var(--s3) var(--s5);font-size:var(--size-body)}@media(max-width:768px){.btn{padding:var(--s2) var(--s4)}.btn--lg{padding:var(--s3) var(--s4)}}.btn-group{display:inline-flex}.btn-group .btn{border-radius:0}.btn-group .btn:first-child{border-radius:var(--r-surface) 0 0 var(--r-surface)}.btn-group .btn:last-child{border-radius:0 var(--r-surface) var(--r-surface) 0}.btn-group .btn+.btn{border-left:none}.btn-group .btn:hover,.btn-group .btn:active,.btn-group .btn.touched{border-radius:inherit}.input-field{margin-bottom:var(--s5)}.input-field label{display:block;font-family:var(--font-data);font-size:var(--size-micro);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--ink-25);margin-bottom:var(--s2);transition:color var(--t-fast)}.input-field:focus-within label{color:var(--accent)}.input{width:100%;font-family:var(--font-body);font-size:var(--size-body);padding:var(--s3) var(--s5);background:var(--bg-elevated);border:1px solid var(--ink-06);border-radius:var(--r-surface);color:var(--ink);outline:none;transition:all var(--t-med) var(--fluid)}.input::placeholder{color:var(--ink-25)}.input:hover{border-color:var(--ink-12)}.input:focus{border-radius:var(--r-technical);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-12)}.input--error{border-color:var(--neg)}.input--error:focus{box-shadow:0 0 0 3px var(--neg-25)}.input-hint{font-family:var(--font-data);font-size:var(--size-micro);color:var(--ink-25);margin-top:var(--s1)}.input-hint--error{color:var(--neg)}textarea.input{min-height:100px;resize:vertical}textarea.input:focus{border-radius:var(--r-technical)}.select-wrap{position:relative}.select-wrap:after{content:"↓";position:absolute;right:var(--s5);top:50%;transform:translateY(-50%);color:var(--ink-25);pointer-events:none;font-family:var(--font-data);font-size:var(--size-small);transition:color var(--t-fast)}.select-wrap:focus-within:after{color:var(--accent)}select.input{appearance:none;padding-right:var(--s8)}.toggle{display:inline-flex;align-items:center;gap:var(--s3);cursor:pointer;-webkit-tap-highlight-color:transparent}.toggle-track{width:44px;height:24px;background:var(--ink-06);border-radius:var(--r-surface);position:relative;transition:all var(--t-med) var(--fluid);border:1px solid var(--ink-06)}.toggle-thumb{width:18px;height:18px;background:var(--ink-25);border-radius:var(--r-round);position:absolute;top:2px;left:2px;transition:all var(--t-med) var(--snap)}.toggle.on .toggle-track{background:var(--accent);border-color:var(--accent);border-radius:var(--r-technical)}.toggle.on .toggle-thumb{left:22px;background:var(--accent-ink);border-radius:var(--r-technical)}.toggle-text{font-family:var(--font-data);font-size:var(--size-small);color:var(--ink-60)}.check{display:inline-flex;align-items:center;gap:var(--s3);cursor:pointer;-webkit-tap-highlight-color:transparent}.check-box{width:20px;height:20px;border:1.5px solid var(--ink-25);border-radius:var(--r-surface);display:flex;align-items:center;justify-content:center;transition:all var(--t-med) var(--fluid);flex-shrink:0}.check-mark{width:var(--s2);height:var(--s2);background:transparent;border-radius:var(--r-round);transition:all var(--t-med) var(--snap)}.check.on .check-box{border-color:var(--accent);background:var(--accent);border-radius:var(--r-technical)}.check.on .check-mark{background:var(--accent-ink);border-radius:var(--r-technical)}.check-text{color:var(--ink-60);font-family:var(--font-data);font-size:var(--size-small)}.card{background:var(--bg-elevated);border:1px solid var(--ink-06);border-radius:var(--r-surface);padding:var(--s6);transition:all var(--t-med) var(--fluid);position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;left:0;width:100%;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform var(--t-med) var(--fluid)}.card:hover,.card.touched{border-radius:var(--r-technical);border-color:var(--accent-25);transform:translateY(-3px);box-shadow:var(--shadow-lg)}.card:hover:before,.card.touched:before{transform:scaleX(1)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--s5)}.card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--s4)}.card-icon{width:36px;height:36px;border-radius:var(--r-round);background:var(--accent-12);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:1rem;transition:all var(--t-med) var(--fluid)}.card:hover .card-icon,.card.touched .card-icon{border-radius:var(--r-technical);background:var(--accent);color:var(--accent-ink)}.card-title{font-size:var(--size-heading);font-weight:500;margin-bottom:var(--s2)}.card-body{color:var(--ink-60);line-height:var(--lh-compact)}.card-foot{margin-top:var(--s4);padding-top:var(--s4);border-top:1px solid var(--ink-06);display:flex;gap:var(--s4)}.badge{display:inline-flex;align-items:center;gap:var(--s2);font-family:var(--font-data);font-size:var(--size-micro);letter-spacing:var(--ls-tight);padding:var(--s1) var(--s3);border-radius:var(--r-surface);border:1px solid var(--ink-06);color:var(--ink-60);transition:border-radius var(--t-med) var(--fluid)}.badge:hover{border-radius:var(--r-technical)}.badge-dot{width:5px;height:5px;border-radius:var(--r-round);background:currentColor}.badge--pos{color:var(--pos);border-color:var(--pos-25)}.badge--warn{color:var(--warn);border-color:var(--warn-25)}.badge--neg{color:var(--neg);border-color:var(--neg-25)}.badge--info{color:var(--info);border-color:var(--info-25)}.badge--accent{color:var(--accent);border-color:var(--accent-25);background:var(--accent-06)}.tabs{display:inline-flex;gap:var(--s1);background:var(--ink-06);border-radius:var(--r-surface);padding:var(--s1)}.tab{font-family:var(--font-data);font-size:var(--size-micro);letter-spacing:var(--ls-tight);text-transform:uppercase;padding:var(--s2) var(--s5);border-radius:var(--r-panel);color:var(--ink-25);background:transparent;border:none;transition:all var(--t-med) var(--fluid);cursor:pointer;-webkit-tap-highlight-color:transparent}.tab:hover{color:var(--ink)}.tab.on{background:var(--bg-elevated);color:var(--ink);border-radius:var(--r-panel);box-shadow:var(--shadow-sm)}.avatar{width:36px;height:36px;border-radius:var(--r-round);background:var(--accent-12);color:var(--accent);display:flex;align-items:center;justify-content:center;font-family:var(--font-data);font-size:var(--size-micro);font-weight:500;flex-shrink:0;transition:all var(--t-med) var(--fluid);border:2px solid transparent;-webkit-tap-highlight-color:transparent}.avatar:hover,.avatar.touched{border-radius:var(--r-technical);border-color:var(--accent)}.avatar--sm{width:26px;height:26px;font-size:.6rem}.avatar--lg{width:var(--s7);height:var(--s7);font-size:var(--size-small)}.table-wrap{border:1px solid var(--block-border-soft, var(--ink-06));border-radius:var(--r-surface);background:var(--block-card-bg, var(--bg-elevated));overflow:hidden;overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:var(--size-small)}.data-table th{font-family:var(--font-data);font-size:var(--size-micro);font-weight:500;letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--block-subtle, var(--ink-25));text-align:left;padding:var(--s4) var(--s5);border-bottom:1px solid var(--block-border-soft, var(--ink-06))}.data-table td{padding:var(--s3) var(--s5);border-bottom:1px solid var(--block-border-soft, var(--ink-06));color:var(--block-muted, var(--ink-60));transition:color var(--t-fast)}.data-table tbody tr{transition:background var(--t-fast)}.data-table tbody tr:hover{background:color-mix(in srgb,var(--block-accent, var(--accent)) 8%,transparent)}.data-table tbody tr:hover td{color:var(--block-fg, var(--ink))}.data-table tbody tr:last-child td{border-bottom:none}.td-mono{font-family:var(--font-data)}.td-strong{font-weight:500;color:var(--block-fg, var(--ink))}.acc-item{border:1px solid var(--ink-06);border-radius:var(--r-surface);overflow:hidden;transition:all var(--t-med) var(--fluid)}.acc-item+.acc-item{margin-top:var(--s3)}.acc-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--s4) var(--s5);background:var(--bg-elevated);border:none;font-family:var(--font-body);font-size:var(--size-body);font-weight:500;color:var(--ink);text-align:left;transition:background var(--t-fast);cursor:pointer}.acc-trigger:hover{background:var(--ink-06)}.acc-arrow{font-family:var(--font-data);font-size:var(--size-small);color:var(--ink-25);transition:all var(--t-med) var(--fluid)}.acc-item.open{border-color:var(--accent-25);border-radius:var(--r-technical)}.acc-item.open .acc-arrow{transform:rotate(90deg);color:var(--accent)}.acc-content{max-height:0;overflow:hidden;transition:max-height var(--t-med) var(--fluid)}.acc-item.open .acc-content{max-height:320px}.acc-body{padding:0 var(--s5) var(--s5);color:var(--ink-60);line-height:var(--lh-compact)}.image-frame{--image-placeholder-color: var(--block-card-muted, var(--bg-sunken));display:block;position:relative;overflow:hidden;aspect-ratio:var(--image-aspect, auto);background-color:var(--image-placeholder-color);background-image:var(--image-placeholder);background-size:cover;background-position:center;isolation:isolate}.image-frame picture{display:block;width:100%;height:100%}.image-frame__img{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:cover;object-position:center}.image-frame:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.34) 45%,transparent 80%),linear-gradient(180deg,var(--ink-06),transparent);transform:translate(-100%);opacity:.78;animation:image-ghost 1.35s ease-in-out infinite;transition:opacity var(--t-med) var(--fluid)}.image-frame.is-loaded:before{opacity:0;animation:none}@keyframes image-ghost{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress{height:3px;background:var(--ink-06);border-radius:var(--r-surface);overflow:hidden}.progress-fill{height:100%;background:var(--accent);border-radius:var(--r-surface);transition:width .8s var(--fluid)}.skel{background:linear-gradient(90deg,var(--ink-06) 25%,var(--bg-sunken) 50%,var(--ink-06) 75%);background-size:200% 100%;animation:skel-shimmer 1.5s ease infinite;border-radius:var(--r-surface)}.skel-line{height:var(--s3);margin-bottom:var(--s3)}.skel-line:last-child{width:55%}.skel-circle{width:36px;height:36px;border-radius:var(--r-round)}@keyframes skel-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.spin{width:20px;height:20px;border:2px solid var(--ink-06);border-top-color:var(--accent);border-radius:var(--r-round);animation:spin .7s linear infinite}.spin--lg{width:var(--s6);height:var(--s6);border-width:2.5px}@keyframes spin{to{transform:rotate(360deg)}}.modal-veil{position:fixed;inset:0;background:#08080a40;backdrop-filter:blur(14px);z-index:8000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity var(--t-med)}.modal-veil.open{opacity:1;pointer-events:all}.modal-box{background:var(--bg-elevated);border:1px solid var(--ink-06);border-radius:var(--r-surface);padding:var(--s7);max-width:480px;width:90%;transform:scale(.88) translateY(24px);transition:all var(--t-med) var(--snap)}.modal-veil.open .modal-box{transform:scale(1) translateY(0);border-radius:var(--r-surface)}.modal-title{font-size:var(--size-heading);font-weight:500;margin-bottom:var(--s3)}.modal-body{color:var(--ink-60);line-height:var(--lh-compact);margin-bottom:var(--s6)}.modal-actions{display:flex;gap:var(--s3);justify-content:flex-end}.toast-tray{position:fixed;bottom:var(--s6);right:var(--s6);z-index:9000;display:flex;flex-direction:column;gap:var(--s3)}.toast{font-family:var(--font-data);font-size:var(--size-small);padding:var(--s4) var(--s5);background:var(--ink);color:var(--bg);border-radius:var(--r-surface);display:flex;align-items:center;gap:var(--s3);box-shadow:var(--shadow-lg);animation:toast-enter .5s var(--snap) forwards;max-width:380px}.toast--pos{background:var(--pos);color:var(--accent-ink)}.toast--warn{background:var(--warn);color:var(--accent-ink)}.toast--neg{background:var(--neg);color:var(--accent-ink)}.toast.out{animation:toast-leave .35s var(--fluid) forwards}@keyframes toast-enter{0%{opacity:0;transform:translate(80px) scale(.85);border-radius:var(--r-surface)}to{opacity:1;transform:translate(0) scale(1);border-radius:var(--r-technical)}}@keyframes toast-leave{to{opacity:0;transform:translate(80px) scale(.9)}}.ambient{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}.ambient .orb{position:absolute;border-radius:var(--r-round);filter:blur(100px)}.ambient .orb:nth-child(1){width:50vmax;height:50vmax;top:-15%;right:-10%;background:var(--accent-06);animation:orbit 30s var(--drift) infinite alternate}.ambient .orb:nth-child(2){width:35vmax;height:35vmax;bottom:-10%;left:5%;background:#00c85308;animation:orbit 40s var(--drift) infinite alternate-reverse}@keyframes orbit{0%{transform:translate(0) rotate(0) scale(1)}50%{transform:translate(-30px,20px) rotate(5deg) scale(1.05)}to{transform:translate(15px,-25px) rotate(-3deg) scale(.97)}}@media(prefers-reduced-motion:reduce){.image-frame:before{animation:none;transform:none}}.stagger>*{opacity:0;transform:translateY(14px);transition:opacity var(--t-med) var(--fluid),transform var(--t-med) var(--fluid)}.stagger.awake>*:nth-child(1){transition-delay:.04s}.stagger.awake>*:nth-child(2){transition-delay:.08s}.stagger.awake>*:nth-child(3){transition-delay:.12s}.stagger.awake>*:nth-child(4){transition-delay:.16s}.stagger.awake>*:nth-child(5){transition-delay:.2s}.stagger.awake>*:nth-child(6){transition-delay:.24s}.stagger.awake>*:nth-child(7){transition-delay:.28s}.stagger.awake>*:nth-child(8){transition-delay:.32s}.stagger.awake>*{opacity:1;transform:translateY(0)}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--ink-12);border-radius:var(--r-surface)}::-webkit-scrollbar-thumb:hover{background:var(--ink-25)}:root{--slant: clamp(34px, 4.4vw, 88px)}html{scroll-behavior:smooth}body{overflow-x:hidden}.wrap{max-width:1320px;margin:0 auto;padding:0 var(--s7)}@media(max-width:768px){.wrap{padding:0 var(--s5)}}header.nav{position:sticky;top:0;z-index:100;background:var(--bg);box-shadow:0 8px 24px -14px #08080a38;transition:box-shadow var(--t-med) var(--fluid),background-color var(--t-med) var(--fluid)}header.nav--reveal{position:fixed;top:0;left:0;right:0;transform:translateY(-100%);visibility:hidden;transition:transform var(--t-med) var(--fluid),visibility 0s var(--t-med)}header.nav--reveal.nav--visible{transform:translateY(0);visibility:visible;transition:transform var(--t-med) var(--fluid),visibility 0s}@media(prefers-reduced-motion:reduce){header.nav--reveal,header.nav--reveal.nav--visible{transition:none}}header.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:68px}.brand{display:flex;align-items:baseline;gap:var(--s3);color:var(--ink);text-decoration:none}.brand b{font-size:1rem;font-weight:500}.brand .sep{color:var(--ink-25);font-weight:300}.brand .org{font-family:var(--font-data);font-size:var(--size-micro);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--accent)}.nav-links{display:flex;align-items:center;gap:var(--s2)}.nav-links a{font-family:var(--font-data);font-size:var(--size-micro);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--ink-60);text-decoration:none;padding:var(--s2) var(--s4);border-radius:var(--r-surface);transition:all var(--t-med) var(--fluid)}.nav-links a:hover{color:var(--ink);background:var(--ink-06);border-radius:var(--r-technical)}.nav-links a.cta{color:var(--accent);border:1px solid var(--accent-25);border-radius:var(--r-technical)}.nav-links a.cta:hover{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.nav-langs{display:inline-flex;align-items:center;gap:2px;margin-left:var(--s2);padding-left:var(--s2);border-left:1px solid var(--ink-12)}.nav-links a.nav-lang{padding:var(--s1) var(--s2);font-size:var(--size-micro);color:var(--ink-25)}.nav-links a.nav-lang.is-active{color:var(--ink);background:var(--ink-06);border-radius:var(--r-technical)}.nav-langs--drawer{margin:var(--s3) 0 0;padding:var(--s3) 0 0;border-left:none;border-top:1px solid var(--ink-12)}.nav-burger{display:none;background:none;border:none;padding:var(--s2);cursor:pointer;color:var(--ink);line-height:1;-webkit-tap-highlight-color:transparent}.nav-burger:focus{outline:none}.nav-burger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nav-burger-bars{position:relative;display:inline-block;width:22px;height:16px}.nav-burger-bars span{position:absolute;left:0;right:0;height:2px;background:currentColor;border-radius:2px;transition:transform var(--t-med) var(--fluid),opacity var(--t-fast) var(--fluid)}.nav-burger-bars span:nth-child(1){top:0}.nav-burger-bars span:nth-child(2){top:7px}.nav-burger-bars span:nth-child(3){top:14px}.nav-burger[aria-expanded=true] .nav-burger-bars span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-burger[aria-expanded=true] .nav-burger-bars span:nth-child(2){opacity:0}.nav-burger[aria-expanded=true] .nav-burger-bars span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-drawer{display:none}@media(max-width:859px){.nav-burger{display:inline-flex;align-items:center;justify-content:center}.nav-links{display:none}.nav-drawer{display:flex;position:fixed;inset:0;flex-direction:column;align-items:center;justify-content:center;gap:var(--s6);padding:var(--s7);max-height:none;overflow-y:auto;background:var(--accent);transform:translateY(-12px);opacity:0;visibility:hidden;pointer-events:none;transition:transform var(--t-med) var(--fluid),opacity var(--t-med) var(--fluid),visibility 0s linear var(--t-med);z-index:90}.nav-drawer.is-open{transform:translateY(0);opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}.nav-drawer a{font-family:var(--font-data);font-size:var(--size-heading);font-weight:500;letter-spacing:var(--ls-wide);text-transform:uppercase;color:#fff;text-decoration:none;padding:var(--s4) var(--s5);border-radius:var(--r-surface);transition:all var(--t-med) var(--fluid)}.nav-drawer a:hover{background:#ffffff24}.nav-drawer a.cta{color:#fff;border:1px solid rgba(255,255,255,.5);border-radius:var(--r-technical)}.nav-drawer a.cta:hover{background:#fff;color:var(--accent);border-color:#fff}.nav-langs--drawer{border-top-color:#ffffff4d}.nav-drawer .nav-lang{color:#fff9}.nav-drawer .nav-lang.is-active{color:#fff;background:#ffffff24}html:has(.nav-drawer.is-open) header.nav{background:transparent;box-shadow:none}html:has(.nav-drawer.is-open) header.nav .brand,html:has(.nav-drawer.is-open) header.nav .nav-burger{color:#fff}html:has(.nav-drawer.is-open) header.nav .brand .sep{color:#ffffff80}html:has(.nav-drawer.is-open) header.nav .brand .org{color:#fff}}.site-block{--block-bg: var(--bg);--block-fg: var(--ink);--block-muted: var(--ink-60);--block-subtle: var(--ink-25);--block-border: var(--ink-12);--block-border-soft: var(--ink-06);--block-card-bg: var(--bg-elevated);--block-card-muted: var(--bg-sunken);--block-accent: var(--accent);--block-accent-ink: var(--accent-ink);--block-spacing: var(--s9);--block-spacing-top: var(--block-spacing);--block-spacing-bottom: var(--block-spacing);--block-slant-pad: 0px;--block-overlap: 0px;position:relative;background:var(--block-bg);color:var(--block-fg)}.site-block>.wrap{position:relative;z-index:1}.site-block--section{padding-top:calc(var(--block-spacing-top) + var(--block-slant-pad));padding-bottom:calc(var(--block-spacing-bottom) + var(--block-slant-pad));margin-bottom:calc(var(--block-overlap) * -1)}.site-block--inline{padding:var(--s5) 0;margin:var(--s5) 0}.site-block--inline:first-child{margin-top:0}.site-block--inline:last-child{margin-bottom:0}.site-block--inline:not(.site-block--card).site-block--theme-inverse,.site-block--inline:not(.site-block--card).site-block--theme-accent,.site-block--inline:not(.site-block--card).site-block--theme-muted{padding-inline:var(--s5);border-radius:var(--r-surface)}.site-block--fold-none,.site-block--inline{clip-path:none;margin-bottom:0}.site-block--fold-down-left,.site-block--fold-down-right{z-index:1}.site-block--fold-down-right{--block-slant-pad: var(--slant);--block-overlap: var(--slant);clip-path:polygon(0 0,100% 0,100% 100%,0 calc(100% - var(--slant)))}.site-block--fold-down-left{--block-slant-pad: var(--slant);--block-overlap: var(--slant);clip-path:polygon(0 0,100% 0,100% calc(100% - var(--slant)),0 100%)}.site-block--flush{padding-top:0;padding-bottom:0}.site-block--theme-default{--block-bg: var(--bg);--block-fg: var(--ink);--block-muted: var(--ink-60);--block-subtle: var(--ink-25);--block-border: var(--ink-12);--block-border-soft: var(--ink-06);--block-card-bg: var(--bg-elevated);--block-card-muted: var(--bg-sunken)}.site-block--theme-default{background:transparent}.site-block--theme-default.site-block--fold-down-left,.site-block--theme-default.site-block--fold-down-right{background:var(--block-bg)}.site-block--theme-muted{--block-bg: var(--bg-sunken);--block-fg: var(--ink);--block-muted: var(--ink-60);--block-subtle: var(--ink-25);--block-border: var(--ink-12);--block-border-soft: var(--ink-06);--block-card-bg: var(--bg-elevated);--block-card-muted: var(--bg)}.site-block--theme-inverse{--block-bg: var(--bg-inverse);--block-fg: var(--ink-inverse);--block-muted: rgba(228, 228, 232, .68);--block-subtle: rgba(228, 228, 232, .34);--block-border: rgba(228, 228, 232, .18);--block-border-soft: rgba(228, 228, 232, .1);--block-card-bg: rgba(255, 255, 255, .07);--block-card-muted: rgba(255, 255, 255, .12)}.site-block--theme-accent{--block-bg: var(--accent);--block-fg: var(--accent-ink);--block-muted: rgba(255, 255, 255, .74);--block-subtle: rgba(255, 255, 255, .42);--block-border: rgba(255, 255, 255, .28);--block-border-soft: rgba(255, 255, 255, .16);--block-card-bg: rgba(255, 255, 255, .12);--block-card-muted: rgba(255, 255, 255, .18);--block-accent: var(--accent-ink);--block-accent-ink: var(--accent)}.site-block--card.site-block--theme-inverse,.site-block--card.site-block--theme-accent{--block-bg: var(--bg);--block-card-muted: var(--bg-sunken)}.site-block--card.site-block--theme-inverse{--block-card-bg: var(--bg-inverse)}.site-block--card.site-block--theme-accent{--block-card-bg: var(--accent)}.site-block--spacing-top-none{--block-spacing-top: var(--s0)}.site-block--spacing-top-compact{--block-spacing-top: var(--s7)}.site-block--spacing-top-normal{--block-spacing-top: var(--s9)}.site-block--spacing-top-spacious{--block-spacing-top: var(--s10)}.site-block--spacing-bottom-none{--block-spacing-bottom: var(--s0)}.site-block--spacing-bottom-compact{--block-spacing-bottom: var(--s7)}.site-block--spacing-bottom-normal{--block-spacing-bottom: var(--s9)}.site-block--spacing-bottom-spacious{--block-spacing-bottom: var(--s10)}.site-block--spacing-compact{--block-spacing: var(--s7)}.site-block--spacing-spacious{--block-spacing: var(--s10)}.site-block--width-wide>.wrap{max-width:1520px}.site-block--width-full>.wrap{max-width:none;padding-left:0;padding-right:0}.site-block--shadow{filter:drop-shadow(0 14px 20px rgba(8,8,10,.1))}.hero{z-index:7}#work{z-index:6}#about{z-index:5}#fields{z-index:4}#contact{z-index:3}.tag{display:inline-flex;align-items:center;font-family:var(--font-data);font-size:var(--size-micro);letter-spacing:var(--ls-tight);padding:var(--s1) var(--s3);border-radius:var(--r-surface);border:1px solid var(--block-border, var(--ink-12));color:var(--block-muted, var(--ink-60));transition:border-radius var(--t-fast)}.figcap{font-family:var(--font-data);font-size:var(--size-micro);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--block-subtle, var(--ink-25));margin-top:var(--s3);display:flex;gap:var(--s3)}.figcap .idx{color:var(--block-accent, var(--accent))}.foot-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--s8);align-items:start}.foot h2{font-size:clamp(1.8rem,3.2vw,2.8rem);font-weight:700;letter-spacing:-.01em;line-height:1.08;margin-bottom:var(--s5);max-width:16ch}.foot-title{margin-top:0}.foot-intro{max-width:48ch;margin-bottom:var(--s6)}.foot .mail{font-family:var(--font-data);font-size:1.15rem;color:var(--accent);text-decoration:none;display:inline-flex;align-items:center;gap:var(--s3)}.foot .mail:hover{text-decoration:underline;text-underline-offset:5px}.contact-list{display:flex;flex-direction:column;gap:var(--s5)}.contact-row{display:flex;justify-content:space-between}.contact-row .k{font-family:var(--font-data);font-size:var(--size-micro);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--block-subtle, var(--ink-25))}.contact-row a,.contact-row span{font-family:var(--font-data);font-size:var(--size-small);color:var(--block-fg, var(--ink));text-decoration:none}.contact-row a:hover{color:var(--block-accent, var(--accent))}.contact-status{color:var(--pos)}@media(hover:hover){.contact-row .k{display:inline-block;transform-origin:left center;transition:transform var(--t-med) var(--snap),color var(--t-med) var(--fluid)}.contact-row a,.contact-row span:not(.k){transition:font-weight var(--t-med) var(--fluid)}.contact-row:hover .k{transform:scale(1.15);color:var(--block-accent, var(--accent))}.contact-row:hover a,.contact-row:hover span:not(.k){font-weight:600}}.foot-base{display:flex;justify-content:space-between;align-items:center;margin-top:var(--s9);flex-wrap:wrap;gap:var(--s4)}.foot-base .legal{display:flex;gap:var(--s5)}.foot-base a,.foot-base span{font-family:var(--font-data);font-size:var(--size-micro);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--block-subtle, var(--ink-25));text-decoration:none}.foot-base a:hover{color:var(--block-fg, var(--ink))}.reveal{opacity:1}@media(prefers-reduced-motion:no-preference){.reveal{transition:transform .7s var(--fluid)}.reveal:not(.awake){transform:translateY(20px)}.reveal.awake{transform:translateY(0)}}@media(max-width:760px){#contact{padding:clamp(80px,12vw,160px) 0 var(--s7)}.foot-grid{grid-template-columns:1fr;gap:var(--s7)}.foot-base{flex-direction:column;align-items:flex-start}}@media(max-width:360px){.brand .org{display:none}}
