@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:"Sora",system-ui,sans-serif;--font-mono:ui-monospace,"SF Mono","JetBrains Mono","Roboto Mono",monospace;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.flex{display:flex}.grid{display:grid}.hidden{display:none}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--bg:#08080a;--bg-2:#0c0c0e;--surface:#131316;--surface-2:#1a1a1e;--line:#222226;--line-strong:#35353b;--text:#f4f3f0;--muted:#9e9ea9;--faint:#61616b;--gold:#d7a042;--gold-light:#e8c17d;--gold-dark:#a37629;--gold-hair:#c6923966;--r-btn:10px;--r-card:16px;--r-pill:999px;--shadow-md:0 18px 50px -22px #020204d9;--shadow-lg:0 34px 80px -30px #010104e6;--font:"Sora",system-ui,sans-serif;--mono:ui-monospace,"SF Mono","JetBrains Mono","Roboto Mono",monospace;--rail:248px;--gutter:clamp(1.5rem,4vw,4.5rem);--maxw:1480px;--section-y:clamp(6rem,14vh,11rem)}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;overflow-x:hidden}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;line-height:1.6;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}ul{padding:0;list-style:none}:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px}::selection{background:#d7a04247}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:var(--bg-2)}::-webkit-scrollbar-thumb{border:3px solid var(--bg-2);background:#514634;border-radius:999px;transition:background .2s}::-webkit-scrollbar-thumb:hover{background:var(--gold-dark)}::-webkit-scrollbar-corner{background:var(--bg-2)}*{scrollbar-width:thin;scrollbar-color:#514634 var(--bg-2)}.shell{min-height:100svh}.content{margin-left:var(--rail)}.wrap{width:100%;max-width:var(--maxw);padding-inline:var(--gutter);z-index:1;margin-inline:auto;position:relative}.section{padding-block:var(--section-y);position:relative;overflow:hidden}.divider{border-top:1px solid var(--line)}.ghost{letter-spacing:-.05em;color:#0000;-webkit-text-stroke:1px #c692391c;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:0;will-change:transform;font-size:clamp(9rem,27vw,23rem);font-weight:700;line-height:.74;position:absolute;top:clamp(1.5rem,4vw,3.5rem);right:clamp(-.5rem,1vw,2rem)}.kicker{font-family:var(--mono);letter-spacing:.34em;text-transform:uppercase;color:var(--gold);font-size:.7rem;font-weight:500}.shead{grid-template-columns:auto 1fr;align-items:baseline;gap:clamp(1.25rem,3vw,2.5rem);margin-bottom:clamp(3rem,6vw,5rem);display:grid}.shead .idx{font-family:var(--mono);color:var(--gold);letter-spacing:.1em;padding-top:.6rem;font-size:.8rem}.shead .kicker{margin-bottom:1rem;display:block}.shead .htext{min-width:0}.htitle{letter-spacing:-.025em;text-wrap:balance;overflow-wrap:anywhere;font-size:clamp(2.4rem,5vw,4rem);font-weight:600;line-height:1.02}.htitle em{color:var(--gold);font-style:normal}.gold{color:var(--gold)}.btn{--pad-y:.9rem;--pad-x:1.6rem;padding:var(--pad-y)var(--pad-x);border-radius:var(--r-btn);border:1px solid #0000;justify-content:center;align-items:center;gap:.6rem;font-size:.95rem;font-weight:500;transition:background .2s,border-color .2s,color .2s,transform 80ms;display:inline-flex}.btn .arrow{transition:transform .25s}.btn:hover .arrow{transform:translate(3px)}.btn-primary{background:var(--gold);color:#0d0d11;box-shadow:var(--shadow-md);font-weight:600}.btn-primary:hover{background:var(--gold-light)}.btn-primary:active{transform:translateY(1px)}.btn-secondary{border-color:var(--line-strong);color:var(--text)}.btn-secondary:hover{border-color:var(--gold);color:var(--gold)}.btn-secondary:active{transform:translateY(1px)}.btn-lg{--pad-y:1.05rem;--pad-x:2rem;font-size:1rem}.btn-block{width:100%}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.chip{border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--muted);align-items:center;padding:.42rem .9rem;font-size:.82rem;transition:border-color .2s,color .2s;display:inline-flex}.chip:hover{border-color:var(--line-strong);color:var(--text)}.tag{font-family:var(--mono);color:var(--muted);border:1px solid var(--line);background:var(--surface);border-radius:7px;padding:.3rem .62rem;font-size:.72rem}.rail{width:var(--rail);z-index:50;border-right:1px solid var(--line);background:linear-gradient(180deg,var(--bg),var(--bg-2));flex-direction:column;justify-content:space-between;padding:clamp(1.5rem,3vh,2.4rem) clamp(1.4rem,2vw,2rem);display:flex;position:fixed;inset:0 auto 0 0}.rail .brand{letter-spacing:-.01em;font-size:1.05rem;font-weight:600;line-height:1.2}.rail-prog{background:linear-gradient(var(--gold-light),var(--gold-dark));width:2px;height:0;position:absolute;top:0;right:-1px}.rail .brand .dot{color:var(--gold)}.rail .brand small{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--faint);margin-top:.5rem;font-size:.62rem;font-weight:400;display:block}.rail-nav{flex-direction:column;gap:.2rem;display:flex}.rail-nav a{color:var(--muted);grid-template-columns:1.6rem 1fr;align-items:baseline;gap:.6rem;padding:.55rem 0;font-size:1.02rem;font-weight:500;transition:color .2s,padding-left .25s;display:grid;position:relative}.rail-nav a .n{font-family:var(--mono);color:var(--faint);letter-spacing:.06em;font-size:.7rem;transition:color .2s}.rail-nav a:before{content:"";background:var(--gold);border-radius:2px;width:2px;height:0;transition:height .25s;position:absolute;top:50%;left:-.9rem;transform:translateY(-50%)}.rail-nav a:hover{color:var(--text)}.rail-nav a:hover .n{color:var(--gold)}.rail-nav a.active{color:var(--text)}.rail-nav a.active .n{color:var(--gold)}.rail-nav a.active:before{height:18px}.rail-foot{flex-direction:column;gap:1rem;display:flex}.status{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);align-items:center;gap:.55rem;font-size:.68rem;display:inline-flex}.status .pip{background:var(--gold);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #d7a0422e}.rail-foot .lnk{font-family:var(--mono);color:var(--faint);letter-spacing:.08em;font-size:.72rem;transition:color .2s}.rail-foot .lnk:hover{color:var(--gold)}.topbar{z-index:60;padding:1rem var(--gutter);border-bottom:1px solid #0000;justify-content:space-between;align-items:center;transition:background .3s,border-color .3s;display:none;position:fixed;inset:0 0 auto}.topbar.scrolled{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom-color:var(--line);background:#08080ad1}.topbar .brand{font-size:1.02rem;font-weight:600}.topbar .brand .dot{color:var(--gold)}.burger{border:1px solid var(--line);border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.bar-prog{background:var(--gold);width:0;height:2px;position:absolute;bottom:-1px;left:0}.burger svg{width:20px;height:20px}.mobile-menu{z-index:80;background:var(--bg);padding:var(--gutter);flex-direction:column;display:none;position:fixed;inset:0}.mobile-menu.open{display:flex}.mm-top{justify-content:space-between;align-items:center;display:flex}.mm-top .brand{font-size:1.02rem;font-weight:600}.mm-top .brand .dot{color:var(--gold)}.mm-top .close{border:1px solid var(--line);border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.mm-links{flex-direction:column;margin:auto 0;display:flex}.mm-links a{letter-spacing:-.02em;border-bottom:1px solid var(--line);align-items:baseline;gap:1.1rem;padding:.6rem 0;font-size:clamp(2rem,11vw,3rem);font-weight:600;transition:color .2s,padding-left .25s;display:flex}.mm-links a:hover{color:var(--gold);padding-left:.5rem}.mm-links a .num{font-family:var(--mono);color:var(--gold);font-size:.8rem}.mm-foot{color:var(--muted);justify-content:space-between;align-items:center;font-size:.85rem;display:flex}.hero{flex-direction:column;justify-content:center;min-height:100svh;padding-top:7rem;padding-bottom:4rem;display:flex;position:relative;overflow:hidden}.hero:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(55% 50% at 78% 22%,#cc943314,#0000 70%);position:absolute;inset:0}.hero .wrap{z-index:1;width:100%;position:relative}.hero-top{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:clamp(2rem,6vh,4rem);display:flex}.hero-top .yr{font-family:var(--mono);letter-spacing:.2em;color:var(--faint);text-transform:uppercase;font-size:.72rem}.rule-label{font-family:var(--mono);letter-spacing:.3em;text-transform:uppercase;align-items:center;gap:1rem;font-size:.7rem;display:inline-flex}.rule-label span{background:linear-gradient(90deg,var(--gold-light),var(--gold),var(--gold-dark));color:#0000;white-space:nowrap;-webkit-background-clip:text;background-clip:text}.rule-label:before{content:"";background:linear-gradient(90deg,transparent,var(--gold-hair));width:clamp(30px,6vw,64px);height:1px}.hero h1{letter-spacing:-.04em;font-size:clamp(3.2rem,10.5vw,8.5rem);font-weight:600;line-height:.9}.hero h1 .l2{color:var(--text)}.hero-role{letter-spacing:-.01em;margin-top:1rem;font-size:clamp(1.3rem,3.4vw,2.3rem);font-weight:300}.hero-role em{color:var(--gold);font-style:normal;font-weight:400}.hero-grid{grid-template-columns:1.2fr .8fr;align-items:start;gap:clamp(2rem,5vw,5rem);margin-top:clamp(2.5rem,6vh,4rem);display:grid}.hero-lead{color:var(--muted);max-width:52ch;font-size:clamp(1.05rem,1.5vw,1.18rem);line-height:1.75}.hero-lead strong{color:var(--text);font-weight:500}.hero-actions{flex-wrap:wrap;gap:1rem;margin-top:2.2rem;display:flex}.spec{border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface);overflow:hidden}.spec-row{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr;align-items:baseline;gap:1rem;padding:.95rem 1.2rem;display:grid}.spec-row:last-child{border-bottom:none}.spec-row .k{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--faint);font-size:.66rem}.spec-row .v{text-align:right;font-size:.98rem;font-weight:500}.spec-stack{flex-wrap:wrap;justify-content:flex-end;gap:.4rem;display:flex}.spec-stack .tag{font-size:.68rem}.scroll-cue{left:var(--gutter);z-index:1;color:var(--faint);font-family:var(--mono);letter-spacing:.28em;text-transform:uppercase;align-items:center;gap:.7rem;font-size:.62rem;display:flex;position:absolute;bottom:2rem}.scroll-cue .line{background:linear-gradient(90deg,var(--gold-hair),transparent);width:38px;height:1px}.about-lead{letter-spacing:-.01em;max-width:24ch;font-size:clamp(1.5rem,2.8vw,2.3rem);font-weight:300;line-height:1.4}.about-lead strong{color:var(--text);font-weight:600}.about-body{grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4.5rem);margin-top:clamp(2.5rem,5vw,4rem);display:grid}.narrative{flex-direction:column;display:flex}.nblock{border-top:1px solid var(--line);grid-template-columns:auto 1fr;gap:1.2rem;padding:1.6rem 0;display:grid}.nblock:first-child{border-top:none;padding-top:0}.nblock .nn{font-family:var(--mono);color:var(--gold);padding-top:.3rem;font-size:.72rem}.nblock h3{letter-spacing:-.01em;margin-bottom:.55rem;font-size:1.2rem;font-weight:600}.nblock p{color:var(--muted);line-height:1.7}.specbar{background:var(--line);border:1px solid var(--line);border-radius:var(--r-card);grid-template-columns:1fr 1fr;align-self:start;gap:1px;display:grid;overflow:hidden}.specbar .cell{background:var(--surface);min-width:0;padding:1.6rem 1.4rem;transition:background .25s}.specbar .cell:hover{background:var(--surface-2)}.specbar .k{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-size:.66rem}.specbar .v{letter-spacing:-.01em;overflow-wrap:anywhere;margin-top:.7rem;font-size:1.4rem;font-weight:600}.specbar .v small{color:var(--muted);margin-top:.25rem;font-size:.85rem;font-weight:400;display:block}.filterbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;margin-bottom:1rem;display:flex}.pcount{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--faint);white-space:nowrap;font-size:.72rem}.pcount b{color:var(--gold);font-weight:500}.filters{gap:.5rem;display:inline-flex}.filter{border-radius:var(--r-btn);border:1px solid var(--line);color:var(--muted);padding:.55rem 1.1rem;font-size:.88rem;font-weight:500;transition:border-color .2s,color .2s,background .2s}.filter:hover{border-color:var(--line-strong);color:var(--text)}.filter.active{background:var(--gold);border-color:var(--gold);color:#0d0d11;font-weight:600}.index{border-top:1px solid var(--line)}.row{border-bottom:1px solid var(--line);cursor:pointer;text-align:left;grid-template-columns:3rem 1fr auto 2rem;align-items:center;gap:clamp(1rem,3vw,2.5rem);width:100%;padding:clamp(1.4rem,3vw,2.2rem) .5rem;transition:padding-left .3s,background .3s;display:grid;position:relative}.row:after{content:"";opacity:0;pointer-events:none;background:linear-gradient(90deg,#cc94330f,#0000 40%);transition:opacity .3s;position:absolute;inset:0}.row:hover{padding-left:1.4rem}.row:hover:after{opacity:1}.row .rn{font-family:var(--mono);color:var(--faint);font-size:.78rem;transition:color .3s}.row:hover .rn{color:var(--gold)}.rmain{flex-direction:column;min-width:0;display:flex}.row .rtitle{letter-spacing:-.02em;font-size:clamp(1.5rem,3.2vw,2.4rem);font-weight:600;transition:color .3s}.row:hover .rtitle{color:var(--gold-light)}.row .rdesc{color:var(--muted);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;max-width:62ch;margin-top:.5rem;font-size:.95rem;line-height:1.55;display:-webkit-box;overflow:hidden}.row .rmeta{align-items:center;gap:1rem;display:flex}.row .rmeta .cat{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.72rem}.row .rmeta .yr{font-family:var(--mono);color:var(--faint);font-size:.72rem}.row .rarrow{color:var(--faint);justify-self:end;transition:color .3s,transform .3s;display:flex}.row:hover .rarrow{color:var(--gold);transform:translate(3px,-3px)}.row .rtags,.row .rthumb,.row .rtags-m{display:none}.preview{pointer-events:none;z-index:40;opacity:0;will-change:transform,opacity;width:360px;transition:opacity .25s;position:fixed;top:0;left:0}.preview.is-web{width:360px}.preview.is-mobile{width:214px}.preview.show{opacity:1}.frame-web{border:1px solid var(--line-strong);background:var(--surface-2);box-shadow:var(--shadow-lg);border-radius:12px;overflow:hidden}.frame-web .bar{border-bottom:1px solid var(--line);align-items:center;gap:6px;height:30px;padding:0 12px;display:flex}.frame-web .bar i{background:var(--line-strong);border-radius:50%;width:8px;height:8px}.frame-web .bar .url{background:var(--bg-2);border-radius:7px;flex:1;height:13px;margin-left:8px}.frame-web .scr{aspect-ratio:16/10;position:relative}.frame-phone{border:1px solid var(--line-strong);box-shadow:var(--shadow-lg);background:#0e0e10;border-radius:26px;padding:8px}.frame-phone .scr{aspect-ratio:9/17;border-radius:18px;position:relative;overflow:hidden}.frame-phone .notch{z-index:2;background:#303036;border-radius:3px;width:44px;height:5px;position:absolute;top:8px;left:50%;transform:translate(-50%)}.pv-cap{justify-content:space-between;align-items:center;gap:10px;margin-top:11px;display:flex}.pv-cap .t{letter-spacing:-.01em;font-size:.88rem;font-weight:600}.pv-cap .m{font-family:var(--mono);letter-spacing:.08em;color:var(--gold);text-transform:uppercase;font-size:.66rem}.frame-web .scr img,.frame-phone .scr img,.row .rthumb img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.skills{grid-template-columns:repeat(3,1fr);gap:clamp(1.5rem,4vw,3.5rem);display:grid}.skol h3{border-bottom:1px solid var(--gold-hair);align-items:center;gap:.7rem;margin-bottom:.4rem;padding-bottom:1rem;font-size:1.05rem;font-weight:600;display:flex}.skol h3 .i{font-family:var(--mono);color:var(--gold);font-size:.7rem}.skol li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:1rem;padding:.85rem 0;transition:padding-left .25s;display:flex}.skol li:last-child{border-bottom:none}.skol li:hover{padding-left:.4rem}.skol .nm{font-size:1rem;font-weight:500;transition:color .2s}.skol li:hover .nm{color:var(--gold)}.skol .mt{font-family:var(--mono);color:var(--faint);white-space:nowrap;font-size:.72rem}.contact-cta{margin-bottom:clamp(2.5rem,5vw,4rem)}.contact-cta .big{letter-spacing:-.025em;font-size:clamp(2rem,5.5vw,4rem);font-weight:600;line-height:1.05}.contact-cta .big a{color:var(--gold);overflow-wrap:anywhere;transition:color .2s;display:inline-block}.contact-cta .big a:hover{color:var(--gold-light)}.contact-grid{grid-template-columns:.8fr 1.2fr;align-items:start;gap:clamp(2.5rem,6vw,5rem);display:grid}.cinfo{flex-direction:column;display:flex}.citem{border-bottom:1px solid var(--line);align-items:center;gap:1rem;padding:1.05rem 0;display:flex}.citem:first-child{border-top:1px solid var(--line)}.citem .ic{border:1px solid var(--line);width:40px;height:40px;color:var(--gold);border-radius:10px;flex:none;justify-content:center;align-items:center;display:flex}.citem .ic svg{width:18px;height:18px}.citem .lbl{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--faint);font-size:.64rem}.citem .val{overflow-wrap:anywhere;font-size:1rem;font-weight:500;transition:color .2s}a.citem:hover .val{color:var(--gold)}.form{flex-direction:column;gap:1.3rem;display:flex}.field{flex-direction:column;gap:.55rem;display:flex}.field label{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-size:.66rem}.field input,.field textarea{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-btn);resize:vertical;width:100%;padding:.95rem 1.05rem;font-size:1rem;transition:border-color .2s,background .2s}.field input::placeholder,.field textarea::placeholder{color:var(--faint)}.field input:focus,.field textarea:focus{border-color:var(--gold);background:var(--bg-2);outline:none}.field.invalid input,.field.invalid textarea{border-color:#dd513c}.field .err{color:#e97967;opacity:0;height:0;font-size:.8rem;transition:opacity .2s;overflow:hidden}.field.invalid .err{opacity:1;height:auto}.footer{border-top:1px solid var(--gold-hair);padding-block:2.5rem}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.footer .brand{font-size:1rem;font-weight:600}.footer .brand .dot{color:var(--gold)}.footer-links{flex-wrap:wrap;gap:1.6rem;display:flex}.footer-links a{color:var(--muted);font-size:.88rem;transition:color .2s}.footer-links a:hover{color:var(--gold)}.copyright{color:var(--faint);font-size:.82rem}.to-top{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.72rem;transition:color .2s}.to-top:hover{color:var(--gold)}.to-top span{transition:transform .25s;display:inline-block}.to-top:hover span{transform:translateY(-3px)}.scrim{z-index:100;padding:var(--gutter);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#030305bd;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-card);width:min(1000px,100%);max-height:88svh;box-shadow:var(--shadow-lg);grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);display:grid;position:relative;overflow:hidden}.modal-close{z-index:6;border:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#08080acc;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;transition:border-color .2s,color .2s;display:flex;position:absolute;top:1rem;right:1rem}.modal-close:hover{border-color:var(--gold);color:var(--gold)}.carousel{background:var(--bg-2);border-right:1px solid var(--line);min-height:420px;position:relative;overflow:hidden}.car-track{height:100%;transition:transform .4s cubic-bezier(.2,.7,.3,1);display:flex}.slide{flex:0 0 100%;justify-content:center;align-items:center;height:100%;padding:1.75rem;display:flex}.slide img{object-fit:contain;border-radius:8px;width:auto;max-width:100%;height:auto;max-height:min(64svh,540px)}.car-btn{z-index:3;border:1px solid var(--line-strong);border-radius:var(--r-pill);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#08080ac7;justify-content:center;align-items:center;width:42px;height:42px;transition:border-color .2s,color .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.car-btn:hover{border-color:var(--gold);color:var(--gold)}.car-btn.prev{left:.9rem}.car-btn.next{right:.9rem}.dots{z-index:3;gap:.5rem;display:flex;position:absolute;bottom:1rem;left:50%;transform:translate(-50%)}.dots .dot{background:#f4f3f04d;border-radius:50%;width:7px;height:7px;transition:background .2s,width .2s}.dots .dot.active{background:var(--gold);border-radius:4px;width:20px}.modal-body{max-height:88svh;padding:clamp(1.75rem,3vw,2.6rem);overflow-y:auto}.modal-body .meta-row{gap:.6rem;margin-bottom:1.1rem;display:flex}.modal-body h2{letter-spacing:-.02em;margin-bottom:.9rem;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:600}.modal-body p{color:var(--muted);margin-bottom:1.6rem;line-height:1.75}.modal-body .tech-label{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--faint);margin-bottom:.7rem;font-size:.64rem;display:block}.modal-body .rtags{flex-wrap:wrap;gap:.45rem;display:flex}.success{text-align:center;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-card);width:min(440px,100%);box-shadow:var(--shadow-lg);padding:2.5rem 2rem;position:relative}.success .mark{border:1px solid var(--gold-hair);width:56px;height:56px;color:var(--gold);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1.4rem;display:flex}.success .mark svg{width:24px;height:24px}.success h2{margin-bottom:.6rem;font-size:1.5rem;font-weight:600}.success p{color:var(--muted);margin-bottom:1.6rem}@media(max-width:1024px){.rail{display:none}.content{margin-left:0}.topbar{display:flex}.hero{padding-top:6rem}.hero-grid,.about-body,.skills{grid-template-columns:1fr;gap:2.5rem}.contact-grid{grid-template-columns:1fr;gap:3rem}.preview{display:none}.index{border-top:none;grid-template-columns:1fr 1fr;gap:clamp(1rem,2.5vw,1.5rem);display:grid}.row{border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface);flex-direction:column;align-items:stretch;gap:0;padding:0;display:flex;overflow:hidden}.row:hover{padding-left:0}.row:after,.row .rn,.row .rarrow,.row .rmeta{display:none}.row .rthumb{aspect-ratio:16/10;background:var(--bg-2);display:block;position:relative;overflow:hidden}.rbadges{z-index:2;justify-content:space-between;align-items:center;display:flex;position:absolute;top:.75rem;left:.75rem;right:.75rem}.badge-year{font-family:var(--mono);color:var(--text);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--line);background:#08080ab3;border-radius:7px;padding:.3rem .55rem;font-size:.72rem}.badge-cat{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--line);width:32px;height:32px;color:var(--gold);background:#08080ab3;border-radius:9px;justify-content:center;align-items:center;display:flex}.badge-cat svg{width:15px;height:15px}.row .rtitle{padding:1.1rem 1.2rem 0;font-size:clamp(1.3rem,4.5vw,1.7rem);display:block}.row:hover .rtitle{color:var(--text)}.row .rdesc{color:var(--muted);-webkit-line-clamp:unset;line-clamp:unset;max-width:none;margin-top:0;padding:.6rem 1.2rem 0;font-size:.92rem;line-height:1.6;display:block;overflow:visible}.row .rtags-m{flex-wrap:wrap;align-items:center;gap:.45rem;padding:1rem 1.2rem 1.2rem;display:flex}.r-open{font-family:var(--mono);letter-spacing:.04em;color:var(--gold);white-space:nowrap;margin-left:auto;font-size:.7rem}}@media(max-width:640px){.index{grid-template-columns:1fr}.hero-top .rule-label{font-size:.6rem}.hero h1{font-size:clamp(2.4rem,13vw,4.2rem)}.ghost{font-size:clamp(7rem,34vw,12rem)}.footer-inner{gap:1.2rem}.footer-links{flex-wrap:wrap;gap:.9rem 1.2rem}.shead{gap:1rem}.htitle{font-size:clamp(1.9rem,8vw,2.6rem)}.contact-cta .big{overflow-wrap:anywhere}.specbar .cell{padding:1.1rem 1rem}.specbar .v{font-size:1.12rem}.specbar .v small{font-size:.78rem}}@media(max-width:380px){.specbar{grid-template-columns:1fr}}@media(max-width:720px){.modal{grid-template-columns:1fr;max-height:90svh;overflow-y:auto}.carousel{aspect-ratio:4/5;border-right:none;border-bottom:1px solid var(--line);border-radius:var(--r-card)var(--r-card)0 0;min-height:0}.modal-body{max-height:none;overflow-y:visible}}@media(hover:none){*{-webkit-tap-highlight-color:transparent}.row:hover{padding-left:0}.row:hover:after{opacity:0}.row:hover .rtitle{color:var(--text)}.row:hover .rn{color:var(--faint)}.row:hover .rarrow{color:var(--faint);transform:none}.skol li:hover{padding-left:0}.skol li:hover .nm,a.citem:hover .val{color:var(--text)}.specbar .cell:hover{background:var(--surface)}.row:active{background:linear-gradient(90deg,#cc94331a,#0000 45%)}.row:active .rtitle{color:var(--gold-light)}.row:active .rn{color:var(--gold)}.skol li:active{padding-left:.4rem}.skol li:active .nm{color:var(--gold)}.chip:active,.tag:active{border-color:var(--gold)}.btn-primary:active{background:var(--gold-light)}.btn-secondary:active{border-color:var(--gold);color:var(--gold)}a.citem:active .val{color:var(--gold)}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
