@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Inter:wght@300;400;500;600&family=JetBrains+Mono:wght@400;500&display=swap";@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;--tw-border-style:solid;--tw-outline-style:solid;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--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{.collapse{visibility:collapse}.visible{visibility:visible}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.flex-shrink{flex-shrink:1}.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}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.underline{text-decoration-line:underline}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.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))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scrollbar-width:thin}body{min-height:100vh}a{color:inherit;text-decoration:none}ul{list-style:none}img{max-width:100%}@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}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}.cm-overlay{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center}.cm-overlay.open{display:flex}.cm-backdrop{position:absolute;inset:0;background:#0009;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}:root[data-mode=light] .cm-backdrop{background:#ffffff80}.cm-panel{position:relative;width:90%;max-width:440px;max-height:85vh;overflow-y:auto;border-radius:16px;background:#0f0f14f7;border:1px solid rgba(255,255,255,.1);box-shadow:0 24px 60px #00000080;padding:24px;font-family:Inter,system-ui,sans-serif;font-size:13px;color:#ddd;animation:cm-in .2s ease-out}@keyframes cm-in{0%{opacity:0;transform:scale(.96) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}:root[data-mode=light] .cm-panel{background:#fffffffa;border-color:#00000014;box-shadow:0 24px 60px #00000026;color:#333}.cm-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.08)}:root[data-mode=light] .cm-header{border-bottom-color:#0000000f}.cm-title{font-weight:700;font-size:14px;letter-spacing:.03em}.cm-close{all:unset;cursor:pointer;font-size:22px;line-height:1;color:#888;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .15s,color .15s}.cm-close:hover{background:#ffffff1a;color:#fff}:root[data-mode=light] .cm-close:hover{background:#0000000f;color:#000}.cm-block{margin-bottom:20px}.cm-label{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#888;margin-bottom:10px}.cm-themes{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.cm-theme-btn{all:unset;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 4px;border-radius:10px;border:1px solid rgba(255,255,255,.06);transition:all .15s;text-align:center}.cm-theme-btn:hover{background:#ffffff14;border-color:#ffffff26}.cm-theme-btn.active{background:#6366f133;border-color:#6366f180;color:#a5b4fc}:root[data-mode=light] .cm-theme-btn{border-color:#0000000f;color:#666}:root[data-mode=light] .cm-theme-btn:hover{background:#0000000a;border-color:#0000001f}:root[data-mode=light] .cm-theme-btn.active{background:#4f46e51a;border-color:#4f46e566;color:#4f46e5}.cm-theme-icon{font-size:16px}.cm-theme-name{font-size:10px;letter-spacing:.03em}.cm-row{display:flex;gap:6px}.cm-mode-btn{all:unset;cursor:pointer;flex:1;text-align:center;padding:8px;border-radius:8px;border:1px solid rgba(255,255,255,.08);font-size:12px;font-weight:500;letter-spacing:.04em;color:#aaa;transition:all .15s}.cm-mode-btn:hover{background:#ffffff0f;color:#fff}.cm-mode-btn.active{background:#6366f133;border-color:#6366f180;color:#a5b4fc}:root[data-mode=light] .cm-mode-btn{border-color:#00000014;color:#666}:root[data-mode=light] .cm-mode-btn:hover{background:#0000000a;color:#111}:root[data-mode=light] .cm-mode-btn.active{background:#4f46e51a;border-color:#4f46e566;color:#4f46e5}.cm-a11y-group{display:flex;flex-direction:column;gap:12px}.cm-a11y-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.cm-a11y-label{font-size:12px;color:#ccc}:root[data-mode=light] .cm-a11y-label{color:#444}.cm-a11y-btns{display:flex;gap:4px}.cm-font-btn{all:unset;cursor:pointer;width:30px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid rgba(255,255,255,.1);color:#999;transition:all .15s}.cm-font-btn:focus-visible{outline:2px solid #6366f1;outline-offset:1px}.cm-font-btn[data-font=sm]{font-size:11px}.cm-font-btn[data-font=md]{font-size:14px}.cm-font-btn[data-font=lg]{font-size:17px}.cm-font-btn[aria-checked=true]{background:#6366f140;border-color:#6366f180;color:#a5b4fc}.cm-font-btn:hover{border-color:#ffffff40;color:#fff}:root[data-mode=light] .cm-font-btn{border-color:#0000001a;color:#666}:root[data-mode=light] .cm-font-btn[aria-checked=true]{background:#4f46e51f;border-color:#4f46e566;color:#4f46e5}:root[data-mode=light] .cm-font-btn:hover{border-color:#0003;color:#111}.cm-switch{all:unset;cursor:pointer;flex-shrink:0}.cm-switch:focus-visible .cm-switch-track{outline:2px solid #6366f1;outline-offset:2px}.cm-switch-track{display:block;width:36px;height:20px;border-radius:999px;background:#ffffff1f;position:relative;transition:background .2s}:root[data-mode=light] .cm-switch-track{background:#0000001a}.cm-switch[aria-checked=true] .cm-switch-track{background:#6366f199}.cm-switch-thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 3px #0000004d}.cm-switch[aria-checked=true] .cm-switch-thumb{transform:translate(16px)}.cm-block-shuffle{margin-bottom:0}.cm-shuffle-btn{all:unset;cursor:pointer;display:block;width:100%;text-align:center;padding:10px;border-radius:10px;border:1px solid rgba(255,255,255,.08);font-size:12px;font-weight:500;color:#aaa;transition:all .15s;letter-spacing:.03em}.cm-shuffle-btn:hover{background:#ffffff0f;color:#fff;border-color:#ffffff26}:root[data-mode=light] .cm-shuffle-btn{border-color:#00000014;color:#666}:root[data-mode=light] .cm-shuffle-btn:hover{background:#0000000a;color:#111}.cm-fab{position:fixed;bottom:20px;right:20px;z-index:9999;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.1);background:#1e1e1ed9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#999;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,color .2s,transform .2s}.cm-fab:hover{color:#fff;transform:scale(1.08)}:root[data-mode=light] .cm-fab{background:#ffffffd9;border-color:#0000001a;color:#666}:root[data-mode=light] .cm-fab:hover{color:#000}@media(min-width:769px){.cm-fab{display:none}}.cm-hint{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:9998;padding:8px 20px;border-radius:999px;background:#1e1e1ee6;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-family:JetBrains Mono,monospace;font-size:11px;color:#999;opacity:0;transition:opacity .4s;pointer-events:none}.cm-hint.show{opacity:1}:root[data-mode=light] .cm-hint{background:#ffffffe6;border-color:#00000014;color:#666}@media(max-width:768px){.cm-hint{display:none}}:focus-visible{outline:2px solid #6366f1;outline-offset:2px}.skip-link{position:fixed;top:-100%;left:16px;z-index:99999;padding:12px 24px;background:#6366f1;color:#fff;font-weight:600;font-size:14px;border-radius:0 0 8px 8px;text-decoration:none;transition:top .2s}.skip-link:focus{top:0;outline:2px solid #fff;outline-offset:2px}html[data-font=sm]{font-size:14px}html[data-font=md]{font-size:16px}html[data-font=lg]{font-size:18px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}html[data-motion=reduce] *,html[data-motion=reduce] *:before,html[data-motion=reduce] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}html[data-contrast=high]{--contrast-boost: 1}html[data-contrast=high][data-mode=dark] body{background:#000!important}html[data-contrast=high][data-mode=light] body{background:#fff!important}html[data-contrast=high] *{border-color:currentColor!important}html[data-links=underline] a:not(.cm-close):not(.cm-theme-btn):not(.cm-mode-btn):not(.cm-font-btn):not(.cm-switch):not(.cm-shuffle-btn):not(.cm-fab):not(.skip-link){text-decoration:underline!important;text-underline-offset:3px!important}@media(max-width:480px){.cm-fab{bottom:14px;right:14px}.cm-themes{grid-template-columns:repeat(4,1fr)}}.th-classic{font-family:Inter,system-ui,sans-serif;background:var(--cl-bg);color:var(--cl-fg);transition:background .4s,color .4s}:root[data-mode=dark] .th-classic{--cl-bg: #030712;--cl-fg: #d1d5db;--cl-fgh: #fff;--cl-fg2: #6b7280;--cl-fg3: #374151;--cl-cbg: rgba(17,24,39,.5);--cl-cbgh: rgba(17,24,39,.8);--cl-border: #1f2937;--cl-acc: #6366f1;--cl-acc-soft: rgba(99,102,241,.1);--cl-acc-border: rgba(99,102,241,.3)}:root[data-mode=light] .th-classic{--cl-bg: #fafafa;--cl-fg: #4b5563;--cl-fgh: #111827;--cl-fg2: #9ca3af;--cl-fg3: #d1d5db;--cl-cbg: rgba(255,255,255,.7);--cl-cbgh: rgba(255,255,255,1);--cl-border: #e5e7eb;--cl-acc: #4f46e5;--cl-acc-soft: rgba(79,70,229,.08);--cl-acc-border: rgba(79,70,229,.3)}.th-classic .cl-rv{opacity:0;transform:translateY(24px);transition:opacity .6s ease-out,transform .6s ease-out}.th-classic .cl-rv.vis{opacity:1;transform:translateY(0)}.cl-nav{position:fixed;top:0;z-index:50;width:100%}.cl-nav-in{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;max-width:72rem;margin:0 auto}.cl-logo{font-family:JetBrains Mono,monospace;font-size:14px;font-weight:700;color:var(--cl-fg2);letter-spacing:-.02em}.cl-logo span{color:var(--cl-acc)}.cl-links{display:flex;align-items:center;gap:2px}.cl-link{padding:8px 14px;border-radius:14px;font-size:12px;font-weight:500;color:var(--cl-fg2);transition:background .2s,color .2s}.cl-link:hover{background:var(--cl-acc-soft);color:var(--cl-fgh)}.cl-cta{margin-left:6px;border:1px solid var(--cl-border);background:var(--cl-acc-soft);color:var(--cl-acc)}.cl-hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:100px 24px 60px;position:relative;overflow:hidden}.cl-badge{display:inline-flex;align-items:center;gap:8px;border-radius:14px;border:1px solid var(--cl-border);background:var(--cl-cbg);padding:8px 16px;font-size:12px;font-weight:500;color:var(--cl-fg2);margin-bottom:32px;backdrop-filter:blur(8px)}.cl-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;animation:cl-pulse 2s infinite}@keyframes cl-pulse{0%,to{opacity:1}50%{opacity:.4}}.cl-h1{font-size:clamp(3rem,8vw,6rem);font-weight:900;line-height:1.05;letter-spacing:-.03em;margin-bottom:24px}.cl-h1a{background:linear-gradient(to bottom,var(--cl-fgh),var(--cl-fg2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.cl-h1b{background:linear-gradient(135deg,var(--cl-acc),var(--cl-fgh));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.cl-sub{font-size:clamp(1rem,2.5vw,1.25rem);font-weight:500;color:var(--cl-fg);margin-bottom:8px}.cl-desc{font-size:14px;color:var(--cl-fg2);line-height:1.7;max-width:36rem;margin:0 auto}.cl-hero-links{margin-top:36px;display:flex;flex-wrap:wrap;justify-content:center;gap:12px;font-size:14px}.cl-hero-links span{color:var(--cl-fg3)}.cl-hero-links a{color:var(--cl-fg2);text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--cl-fg3);transition:color .3s}.cl-hero-links a:hover{color:var(--cl-acc);text-decoration-color:var(--cl-acc)}.cl-scroll{position:absolute;bottom:40px;display:flex;flex-direction:column;align-items:center;gap:6px}.cl-scroll span{font-size:9px;text-transform:uppercase;letter-spacing:.3em;color:var(--cl-fg3)}.cl-scroll-bar{width:1px;height:28px;background:linear-gradient(to bottom,var(--cl-acc),transparent);animation:cl-pulse 2s infinite}.cl-marquee-wrap{overflow:hidden;border-top:1px solid var(--cl-border);border-bottom:1px solid var(--cl-border);padding:12px 0}.cl-marquee{display:flex;white-space:nowrap;animation:cl-marq 35s linear infinite}@keyframes cl-marq{0%{transform:translate(0)}to{transform:translate(-50%)}}.cl-marquee span{margin:0 20px;font-family:JetBrains Mono,monospace;font-size:13px;color:var(--cl-fg3)}.cl-wrap{max-width:56rem;margin:0 auto;padding-left:24px;padding-right:24px}.cl-sec{padding:120px 0}.cl-num{font-family:JetBrains Mono,monospace;font-size:11px;text-transform:uppercase;letter-spacing:.3em;color:var(--cl-acc);display:block;margin-bottom:4px}.cl-sec-title{font-size:clamp(2rem,5vw,3rem);font-weight:800;letter-spacing:-.02em;color:var(--cl-fgh);line-height:1.15}.cl-sec-head{margin-bottom:56px}.cl-hr{height:1px;border:none;background:linear-gradient(to right,transparent,var(--cl-border),transparent)}.cl-card{border-radius:14px;border:1px solid var(--cl-border);background:var(--cl-cbg);padding:24px;transition:background .3s,border-color .3s,box-shadow .3s,transform .3s}.cl-card:hover{background:var(--cl-cbgh);border-color:var(--cl-acc-border)}.cl-tag{display:inline-block;padding:2px 8px;border-radius:14px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500;color:var(--cl-fg2);background:var(--cl-acc-soft);border:1px solid var(--cl-border)}.cl-tags{display:flex;flex-wrap:wrap;gap:6px}.cl-btn-p{display:inline-flex;align-items:center;gap:8px;padding:12px 28px;border-radius:14px;background:var(--cl-acc);color:var(--cl-bg);font-size:14px;font-weight:600;transition:opacity .3s,transform .2s}.cl-btn-p:hover{opacity:.85;transform:translateY(-1px)}.cl-btn-s{display:inline-flex;align-items:center;gap:8px;padding:12px 28px;border-radius:14px;border:1px solid var(--cl-border);font-size:14px;font-weight:600;transition:border-color .3s,background .3s}.cl-btn-s:hover{border-color:var(--cl-acc);background:var(--cl-acc-soft)}.cl-tl{position:relative}.cl-tl-line{position:absolute;left:0;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,var(--cl-acc),var(--cl-border),transparent)}.cl-tl-item{position:relative;padding-left:28px;padding-bottom:40px}.cl-tl-dot{position:absolute;left:-4px;top:4px;width:9px;height:9px;border-radius:50%;border:2px solid var(--cl-acc);background:var(--cl-bg);transition:background .3s}.cl-tl-item:hover .cl-tl-dot{background:var(--cl-acc)}.cl-tl-period{display:block;font-family:JetBrains Mono,monospace;font-size:11px;color:var(--cl-fg3);margin-bottom:8px}@media(min-width:640px){.cl-tl-line{left:140px}.cl-tl-item{padding-left:180px}.cl-tl-dot{left:136px}.cl-tl-period{position:absolute;left:0;top:0;width:120px;text-align:right}}.cl-role{font-size:18px;font-weight:700;color:var(--cl-fgh)}.cl-company{font-size:13px;color:var(--cl-acc);margin-bottom:12px}.cl-exp-desc{font-size:14px;color:var(--cl-fg2);line-height:1.7;margin-bottom:16px}.cl-hl{margin-bottom:16px}.cl-hl li{display:flex;gap:10px;font-size:13px;color:var(--cl-fg2);margin-bottom:6px;line-height:1.6}.cl-hl-dot{margin-top:8px;width:4px;height:4px;min-width:4px;border-radius:50%;background:var(--cl-acc);opacity:.5}.cl-sk-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.cl-sk-head{display:flex;align-items:center;gap:10px;margin-bottom:14px}.cl-sk-icon{font-size:18px;color:var(--cl-acc);opacity:.6}.cl-sk-cat{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--cl-fgh)}.cl-sk-list li{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--cl-fg2);margin-bottom:5px;line-height:1.5}.cl-sk-dash{margin-top:9px;width:12px;height:1px;min-width:12px;background:var(--cl-fg3)}.cl-proj-list{display:flex;flex-direction:column;gap:20px}.cl-pcard{padding:28px;display:block}.cl-ptop{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.cl-pname{font-size:22px;font-weight:700;color:var(--cl-fgh);transition:color .3s}.cl-pyear{font-family:JetBrains Mono,monospace;font-size:12px;color:var(--cl-fg3)}.cl-pdesc{font-size:14px;color:var(--cl-fg2);line-height:1.7;margin:12px 0 16px;max-width:36rem}.cl-arrow{width:16px;height:16px;color:var(--cl-fg2);transition:transform .3s,color .3s}.cl-pcard:hover .cl-arrow{transform:translate(3px,-3px);color:var(--cl-acc)}.cl-pcard:hover .cl-pname{color:var(--cl-acc)}.cl-form-item{display:flex;gap:28px}.cl-form-year{font-family:JetBrains Mono,monospace;font-size:14px;font-weight:700;color:var(--cl-acc);white-space:nowrap}.cl-form-line{margin-top:8px;flex:1;width:1px;background:var(--cl-border)}.cl-form-title{font-size:17px;font-weight:700;color:var(--cl-fgh)}.cl-form-level{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--cl-acc);opacity:.6;margin-bottom:2px}.cl-form-details{font-size:13px;color:var(--cl-fg2);line-height:1.6}.cl-lang-bg{height:4px;border-radius:14px;background:var(--cl-border);overflow:hidden}.cl-lang-bar{height:100%;border-radius:inherit;background:var(--cl-acc)}.cl-interest{border-radius:14px;border:1px solid var(--cl-border);background:var(--cl-cbg);padding:6px 14px;font-size:12px;color:var(--cl-fg2)}.cl-contact{position:relative;overflow:hidden;text-align:center}.cl-contact-glow{position:absolute;inset:0;background:linear-gradient(to top,var(--cl-acc-soft),transparent);pointer-events:none}.cl-foot{border-top:1px solid var(--cl-border);padding:28px 24px}.cl-foot-in{display:flex;align-items:center;justify-content:space-between;font-family:JetBrains Mono,monospace;font-size:11px;color:var(--cl-fg3)}@media(max-width:640px){.cl-links{gap:0}.cl-link{padding:6px 8px;font-size:11px}.cl-sec{padding:80px 0}}:root[data-mode=dark] .th-parallax{--px-bg: #0a0a1a;--px-fg: #c4c4d4;--px-fg-h: #fff;--px-fg-2: #6e6e8a;--px-fg-3: #3a3a5c;--px-c-bg: rgba(30,30,60,.4);--px-c-bg-h: rgba(30,30,60,.6);--px-border: rgba(100,100,200,.15);--px-acc: #7c5cff;--px-acc-soft: rgba(124,92,255,.1);--px-acc-border: rgba(124,92,255,.3);--px-shadow: 0 8px 32px rgba(0,0,0,.3);--px-glass: rgba(15,15,35,.6);--px-glass-border: rgba(100,100,200,.12)}:root[data-mode=light] .th-parallax{--px-bg: #f8f7ff;--px-fg: #4a4a6a;--px-fg-h: #1a1a3a;--px-fg-2: #8a8aaa;--px-fg-3: #d4d4e4;--px-c-bg: rgba(255,255,255,.7);--px-c-bg-h: rgba(255,255,255,1);--px-border: rgba(124,92,255,.15);--px-acc: #5a3ed4;--px-acc-soft: rgba(90,62,212,.08);--px-acc-border: rgba(90,62,212,.25);--px-shadow: 0 8px 32px rgba(90,62,212,.08);--px-glass: rgba(255,255,255,.7);--px-glass-border: rgba(124,92,255,.1)}.th-parallax{--px-bg: #0a0a1a;--px-fg: #c4c4d4;--px-fg-h: #fff;--px-fg-2: #6e6e8a;--px-fg-3: #3a3a5c;--px-c-bg: rgba(30,30,60,.4);--px-c-bg-h: rgba(30,30,60,.6);--px-border: rgba(100,100,200,.15);--px-acc: #7c5cff;--px-acc-soft: rgba(124,92,255,.1);--px-acc-border: rgba(124,92,255,.3);--px-shadow: 0 8px 32px rgba(0,0,0,.3);--px-glass: rgba(15,15,35,.6);--px-glass-border: rgba(100,100,200,.12);--px-radius: 16px;--px-font-heading: "Space Grotesk", sans-serif;--px-font-body: "Inter", sans-serif;--px-font-mono: "JetBrains Mono", monospace}.th-parallax{background:var(--px-bg);color:var(--px-fg);font-family:var(--px-font-body);line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.th-parallax *,.th-parallax *:before,.th-parallax *:after{box-sizing:border-box;margin:0;padding:0}.th-parallax h1,.th-parallax h2,.th-parallax h3,.th-parallax h4{font-family:var(--px-font-heading);color:var(--px-fg-h);line-height:1.2}.th-parallax a{color:var(--px-acc);text-decoration:none;transition:color .25s ease}.th-parallax a:hover{color:var(--px-fg-h)}.th-parallax .px-rv{opacity:0;transform:translateY(40px);transition:opacity .7s cubic-bezier(.23,1,.32,1),transform .7s cubic-bezier(.23,1,.32,1)}.th-parallax .px-rv.vis{opacity:1;transform:translateY(0) translate(0)}.th-parallax .px-rv-left{opacity:0;transform:translate(-60px);transition:opacity .7s cubic-bezier(.23,1,.32,1),transform .7s cubic-bezier(.23,1,.32,1)}.th-parallax .px-rv-right{opacity:0;transform:translate(60px);transition:opacity .7s cubic-bezier(.23,1,.32,1),transform .7s cubic-bezier(.23,1,.32,1)}.th-parallax .px-rv-left.vis,.th-parallax .px-rv-right.vis{opacity:1;transform:translate(0)}.th-parallax .px-nav{position:fixed;top:20px;left:50%;transform:translate(-50%);z-index:1000;transition:opacity .4s ease,transform .4s ease}.th-parallax .px-nav.px-nav-hidden{opacity:0;pointer-events:none;transform:translate(-50%) translateY(-20px)}.th-parallax .px-nav-pill{display:flex;gap:4px;padding:6px 8px;background:var(--px-glass);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--px-glass-border);border-radius:50px;box-shadow:var(--px-shadow)}.th-parallax .px-nav-link{padding:8px 16px;font-size:.8rem;font-weight:500;color:var(--px-fg-2);border-radius:40px;transition:all .25s ease;white-space:nowrap;letter-spacing:.02em}.th-parallax .px-nav-link:hover{color:var(--px-fg-h);background:var(--px-acc-soft)}.th-parallax .px-nav-link.active{color:var(--px-fg-h);background:var(--px-acc);box-shadow:0 2px 12px #7c5cff4d}.th-parallax .px-dot-nav{position:fixed;right:28px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:14px;z-index:1000;opacity:0;pointer-events:none;transition:opacity .4s ease}.th-parallax .px-dot-nav.px-dot-visible{opacity:1;pointer-events:auto}.th-parallax .px-dot{width:10px;height:10px;border-radius:50%;background:var(--px-fg-3);transition:all .3s ease;position:relative}.th-parallax .px-dot:before{content:attr(title);position:absolute;right:22px;top:50%;transform:translateY(-50%);background:var(--px-glass);backdrop-filter:blur(12px);border:1px solid var(--px-glass-border);padding:4px 10px;border-radius:6px;font-size:.72rem;white-space:nowrap;color:var(--px-fg-h);opacity:0;pointer-events:none;transition:opacity .2s ease}.th-parallax .px-dot:hover:before{opacity:1}.th-parallax .px-dot:hover{background:var(--px-acc);transform:scale(1.3)}.th-parallax .px-dot.active{background:var(--px-acc);box-shadow:0 0 8px #7c5cff80;transform:scale(1.3)}.th-parallax .px-hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:2rem}.th-parallax .px-hero-shapes{position:absolute;inset:0;overflow:hidden;pointer-events:none}.th-parallax .px-shape{position:absolute;opacity:.12;transition:transform .1s linear;will-change:transform}.th-parallax .px-shape-circle{border-radius:50%;border:2px solid var(--px-acc)}.th-parallax .px-shape-triangle{width:0;height:0;border-left:30px solid transparent;border-right:30px solid transparent;border-bottom:52px solid var(--px-acc);background:none;border-radius:0;opacity:.1}.th-parallax .px-shape-square{border:2px solid var(--px-acc);transform:rotate(45deg)}.th-parallax .px-shape-1{width:120px;height:120px;top:10%;left:8%}.th-parallax .px-shape-2{top:20%;right:12%;border-left-width:40px;border-right-width:40px;border-bottom-width:70px}.th-parallax .px-shape-3{width:80px;height:80px;bottom:25%;left:15%}.th-parallax .px-shape-4{width:60px;height:60px;top:60%;right:20%}.th-parallax .px-shape-5{top:75%;left:60%;border-left-width:25px;border-right-width:25px;border-bottom-width:43px}.th-parallax .px-shape-6{width:100px;height:100px;top:40%;left:75%}.th-parallax .px-shape-7{width:40px;height:40px;top:15%;left:45%}.th-parallax .px-shape-8{top:50%;left:30%;border-left-width:20px;border-right-width:20px;border-bottom-width:35px}.th-parallax .px-hero-content{position:relative;z-index:2;text-align:center;max-width:900px}.th-parallax .px-hero-badge{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:2rem}.th-parallax .px-badge-available{display:inline-flex;align-items:center;gap:8px;padding:6px 16px;background:#34d3991a;border:1px solid rgba(52,211,153,.3);border-radius:40px;font-size:.82rem;font-weight:500;color:#34d399}.th-parallax .px-badge-dot{width:8px;height:8px;border-radius:50%;background:#34d399;animation:px-pulse 2s ease-in-out infinite}@keyframes px-pulse{0%,to{box-shadow:0 0 #34d39966}50%{box-shadow:0 0 0 8px #34d39900}}.th-parallax .px-badge-location{font-size:.82rem;color:var(--px-fg-2);font-weight:500}.th-parallax .px-hero-name{font-size:clamp(4rem,12vw,8rem);font-weight:700;letter-spacing:-.03em;line-height:1;margin-bottom:1.5rem}.th-parallax .px-hero-first{display:block;color:var(--px-fg-h)}.th-parallax .px-hero-last{display:block;background:linear-gradient(135deg,var(--px-acc) 0%,#a78bfa 50%,#c084fc 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.th-parallax .px-hero-title{font-size:clamp(1rem,2.5vw,1.4rem);color:var(--px-fg);font-weight:400;margin-bottom:.75rem}.th-parallax .px-hero-tagline{font-size:clamp(.85rem,1.5vw,1rem);color:var(--px-fg-2);max-width:600px;margin:0 auto 2.5rem;line-height:1.8}.th-parallax .px-hero-cta{display:flex;gap:16px;justify-content:center;margin-bottom:4rem}.th-parallax .px-btn-primary{display:inline-flex;align-items:center;gap:8px;padding:14px 32px;background:var(--px-acc);color:#fff;font-weight:600;font-size:.9rem;border-radius:50px;transition:all .3s ease;box-shadow:0 4px 20px #7c5cff4d}.th-parallax .px-btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px #7c5cff66;color:#fff}.th-parallax .px-btn-secondary{display:inline-flex;align-items:center;gap:8px;padding:14px 32px;background:transparent;color:var(--px-fg-h);font-weight:600;font-size:.9rem;border:1px solid var(--px-border);border-radius:50px;transition:all .3s ease}.th-parallax .px-btn-secondary:hover{border-color:var(--px-acc-border);background:var(--px-acc-soft);transform:translateY(-2px)}.th-parallax .px-scroll-indicator{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--px-fg-3);font-size:.72rem;letter-spacing:.15em;text-transform:uppercase}.th-parallax .px-scroll-mouse{width:24px;height:38px;border:2px solid var(--px-fg-3);border-radius:14px;position:relative}.th-parallax .px-scroll-wheel{width:3px;height:8px;background:var(--px-fg-3);border-radius:3px;position:absolute;top:6px;left:50%;transform:translate(-50%);animation:px-scroll-anim 2s ease-in-out infinite}@keyframes px-scroll-anim{0%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(14px)}}.th-parallax .px-section{padding:8rem 2rem;max-width:1200px;margin:0 auto;position:relative}.th-parallax .px-section-header{text-align:center;margin-bottom:5rem}.th-parallax .px-section-label{display:inline-block;font-family:var(--px-font-mono);font-size:.75rem;font-weight:500;color:var(--px-acc);text-transform:uppercase;letter-spacing:.2em;margin-bottom:.75rem;padding:4px 14px;background:var(--px-acc-soft);border:1px solid var(--px-acc-border);border-radius:40px}.th-parallax .px-section-title{font-size:clamp(2rem,5vw,3.2rem);font-weight:700;letter-spacing:-.02em}.th-parallax .px-timeline{display:flex;flex-direction:column;gap:2.5rem}.th-parallax .px-exp-card{background:var(--px-c-bg);border:1px solid var(--px-border);border-radius:var(--px-radius);padding:2rem 2.5rem;transition:background .3s ease,border-color .3s ease,opacity .7s cubic-bezier(.23,1,.32,1),transform .7s cubic-bezier(.23,1,.32,1);position:relative}.th-parallax .px-exp-card:hover{background:var(--px-c-bg-h);border-color:var(--px-acc-border)}.th-parallax .px-exp-card:before{content:"";position:absolute;top:2rem;width:12px;height:12px;border-radius:50%;background:var(--px-acc);box-shadow:0 0 0 4px var(--px-acc-soft)}.th-parallax .px-rv-left.px-exp-card:before{left:-6px}.th-parallax .px-rv-right.px-exp-card:before{right:-6px}.th-parallax .px-exp-period{font-family:var(--px-font-mono);font-size:.8rem;color:var(--px-acc);font-weight:500;margin-bottom:.75rem;letter-spacing:.03em}.th-parallax .px-exp-header{margin-bottom:1rem}.th-parallax .px-exp-role{font-size:1.3rem;font-weight:600;margin-bottom:.25rem}.th-parallax .px-exp-company{font-size:.9rem;color:var(--px-fg-2)}.th-parallax .px-exp-desc{font-size:.92rem;color:var(--px-fg);margin-bottom:1rem;line-height:1.7}.th-parallax .px-exp-highlights{list-style:none;margin-bottom:1.25rem;display:flex;flex-direction:column;gap:.5rem}.th-parallax .px-exp-highlights li{position:relative;padding-left:1.25rem;font-size:.88rem;color:var(--px-fg);line-height:1.6}.th-parallax .px-exp-highlights li:before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--px-acc);opacity:.6}.th-parallax .px-exp-tags{display:flex;flex-wrap:wrap;gap:6px}.th-parallax .px-tag{display:inline-block;font-family:var(--px-font-mono);font-size:.72rem;padding:4px 10px;background:var(--px-acc-soft);border:1px solid var(--px-acc-border);border-radius:6px;color:var(--px-acc);font-weight:500;letter-spacing:.02em}@media(min-width:768px){.th-parallax .px-timeline{padding-left:3rem}.th-parallax .px-rv-left.px-exp-card{margin-right:20%}.th-parallax .px-rv-right.px-exp-card{margin-left:20%}}.th-parallax .px-masonry{column-count:3;column-gap:1.5rem}@media(max-width:1024px){.th-parallax .px-masonry{column-count:2}}@media(max-width:640px){.th-parallax .px-masonry{column-count:1}}.th-parallax .px-skill-card{break-inside:avoid;background:var(--px-c-bg);border:1px solid var(--px-border);border-radius:var(--px-radius);padding:1.75rem;margin-bottom:1.5rem;transition:background .3s ease,border-color .3s ease,transform .3s ease}.th-parallax .px-skill-card:hover{background:var(--px-c-bg-h);border-color:var(--px-acc-border);transform:translateY(-4px)}.th-parallax .px-skill-icon{font-size:1.5rem;margin-bottom:.75rem;color:var(--px-acc);opacity:.7}.th-parallax .px-skill-category{font-size:1.1rem;font-weight:600;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--px-border)}.th-parallax .px-skill-items{list-style:none;display:flex;flex-direction:column;gap:.4rem}.th-parallax .px-skill-items li{font-size:.85rem;color:var(--px-fg);padding:4px 0;position:relative;padding-left:1rem}.th-parallax .px-skill-items li:before{content:">";position:absolute;left:0;color:var(--px-acc);font-family:var(--px-font-mono);font-size:.75rem;opacity:.5}.th-parallax .px-projects-section{max-width:100%;padding-left:0;padding-right:0}.th-parallax .px-projects-section>.px-section-header{padding:0 2rem;max-width:1200px;margin:0 auto 5rem}.th-parallax .px-projects-list{display:flex;flex-direction:column;gap:0}.th-parallax .px-project-full{position:relative;min-height:80vh;display:flex;align-items:center;justify-content:center;padding:6rem 2rem;overflow:hidden}.th-parallax .px-project-bg{position:absolute;inset:0;opacity:.08;z-index:0}.th-parallax .px-project-full[data-project-index="0"] .px-project-bg{background:radial-gradient(ellipse at 30% 50%,#7c5cff 0%,transparent 70%)}.th-parallax .px-project-full[data-project-index="1"] .px-project-bg{background:radial-gradient(ellipse at 70% 50%,#5caaff 0%,transparent 70%)}.th-parallax .px-project-full[data-project-index="2"] .px-project-bg{background:radial-gradient(ellipse at 50% 30%,#ff5c8a 0%,transparent 70%)}.th-parallax .px-project-content{position:relative;z-index:1;text-align:center;max-width:800px}.th-parallax .px-project-year{font-family:var(--px-font-mono);font-size:.8rem;color:var(--px-acc);letter-spacing:.15em;text-transform:uppercase;display:block;margin-bottom:1rem}.th-parallax .px-project-name{font-size:clamp(3rem,8vw,6rem);font-weight:700;letter-spacing:-.03em;margin-bottom:1.5rem;line-height:1;background:linear-gradient(135deg,var(--px-fg-h) 0%,var(--px-fg) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.th-parallax .px-project-desc{font-size:1.1rem;color:var(--px-fg);max-width:560px;margin:0 auto 2rem;line-height:1.8}.th-parallax .px-project-tags{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:2rem}.th-parallax .px-project-link{display:inline-flex;align-items:center;gap:8px;padding:12px 28px;border:1px solid var(--px-acc-border);border-radius:50px;color:var(--px-acc);font-weight:500;font-size:.9rem;transition:all .3s ease}.th-parallax .px-project-link:hover{background:var(--px-acc);color:#fff;border-color:var(--px-acc);transform:translateY(-2px);box-shadow:0 4px 20px #7c5cff4d}.th-parallax .px-project-link svg{transition:transform .3s ease}.th-parallax .px-project-link:hover svg{transform:translate(2px,-2px)}.th-parallax .px-formation-timeline{display:flex;align-items:flex-start;gap:0;position:relative;overflow-x:auto;padding:2rem 0 3rem;-ms-overflow-style:none;scrollbar-width:none}.th-parallax .px-formation-timeline::-webkit-scrollbar{display:none}.th-parallax .px-formation-line{position:absolute;top:2rem;left:0;right:0;height:2px;background:var(--px-border);z-index:0}.th-parallax .px-formation-node{flex:1;min-width:280px;position:relative;text-align:center;padding:0 1.5rem}.th-parallax .px-formation-dot{width:16px;height:16px;border-radius:50%;background:var(--px-acc);border:3px solid var(--px-bg);box-shadow:0 0 0 2px var(--px-acc);margin:0 auto 1.5rem;position:relative;z-index:1}.th-parallax .px-formation-card{background:var(--px-c-bg);border:1px solid var(--px-border);border-radius:var(--px-radius);padding:1.5rem;text-align:left;transition:background .3s ease,border-color .3s ease}.th-parallax .px-formation-card:hover{background:var(--px-c-bg-h);border-color:var(--px-acc-border)}.th-parallax .px-formation-year{font-family:var(--px-font-mono);font-size:.85rem;color:var(--px-acc);font-weight:600;display:block;margin-bottom:.5rem}.th-parallax .px-formation-title{font-size:1rem;font-weight:600;margin-bottom:.35rem}.th-parallax .px-formation-level{font-size:.8rem;color:var(--px-fg-2);display:block;margin-bottom:.75rem;font-family:var(--px-font-mono)}.th-parallax .px-formation-details{font-size:.84rem;color:var(--px-fg);line-height:1.6}@media(max-width:768px){.th-parallax .px-formation-timeline{flex-direction:column;gap:2rem}.th-parallax .px-formation-line{top:0;bottom:0;left:2rem;right:auto;width:2px;height:auto}.th-parallax .px-formation-node{min-width:auto;padding-left:4rem;text-align:left}.th-parallax .px-formation-dot{position:absolute;left:calc(2rem - 8px);top:0;margin:0}}.th-parallax .px-lang-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem}@media(max-width:768px){.th-parallax .px-lang-grid{grid-template-columns:1fr}}.th-parallax .px-lang-block,.th-parallax .px-interests-block{background:var(--px-c-bg);border:1px solid var(--px-border);border-radius:var(--px-radius);padding:2rem}.th-parallax .px-lang-subtitle{font-size:1.2rem;font-weight:600;margin-bottom:1.5rem}.th-parallax .px-lang-list{display:flex;flex-direction:column;gap:1.25rem}.th-parallax .px-lang-info{display:flex;justify-content:space-between;margin-bottom:.5rem}.th-parallax .px-lang-name{font-weight:500;color:var(--px-fg-h);font-size:.95rem}.th-parallax .px-lang-level{font-size:.82rem;color:var(--px-fg-2)}.th-parallax .px-progress-bar{width:100%;height:6px;background:var(--px-fg-3);border-radius:3px;overflow:hidden}.th-parallax .px-progress-fill{height:100%;background:linear-gradient(90deg,var(--px-acc),#a78bfa);border-radius:3px;transition:width 1s cubic-bezier(.23,1,.32,1)}.th-parallax .px-interests-cloud{display:flex;flex-wrap:wrap;gap:10px}.th-parallax .px-interest-tag{display:inline-block;padding:8px 18px;background:var(--px-acc-soft);border:1px solid var(--px-acc-border);border-radius:40px;font-size:.85rem;color:var(--px-fg-h);font-weight:500;transition:all .3s ease}.th-parallax .px-interest-tag:hover{background:var(--px-acc);color:#fff;border-color:var(--px-acc);transform:translateY(-2px)}.th-parallax .px-contact-section{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;position:relative;overflow:hidden}.th-parallax .px-contact-glow{position:absolute;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(124,92,255,.15) 0%,transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;animation:px-glow-pulse 4s ease-in-out infinite}@keyframes px-glow-pulse{0%,to{opacity:.6;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.15)}}.th-parallax .px-contact-content{position:relative;z-index:1}.th-parallax .px-contact-title{font-size:clamp(2.5rem,6vw,4rem);font-weight:700;margin:1rem 0 1.5rem;letter-spacing:-.02em}.th-parallax .px-contact-text{font-size:1.1rem;color:var(--px-fg);max-width:500px;margin:0 auto 2.5rem;line-height:1.7}.th-parallax .px-contact-links{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.th-parallax .px-contact-btn{display:inline-flex;align-items:center;gap:10px;padding:14px 32px;border-radius:50px;font-weight:600;font-size:.92rem;transition:all .3s ease;border:1px solid transparent}.th-parallax .px-btn-linkedin{background:#0077b5;color:#fff}.th-parallax .px-btn-linkedin:hover{background:#005e93;color:#fff;transform:translateY(-2px);box-shadow:0 8px 24px #0077b54d}.th-parallax .px-btn-github{background:var(--px-c-bg);color:var(--px-fg-h);border-color:var(--px-border)}.th-parallax .px-btn-github:hover{background:var(--px-c-bg-h);border-color:var(--px-fg-3);transform:translateY(-2px);box-shadow:var(--px-shadow)}.th-parallax .px-footer{border-top:1px solid var(--px-border);padding:2rem;text-align:center}.th-parallax .px-footer-inner{display:flex;align-items:center;justify-content:center;gap:8px;font-size:.82rem;color:var(--px-fg-2);flex-wrap:wrap}.th-parallax .px-footer-sep{color:var(--px-fg-3)}@media(max-width:768px){.th-parallax .px-nav-pill{gap:2px;padding:4px 6px}.th-parallax .px-nav-link{padding:6px 10px;font-size:.72rem}.th-parallax .px-section{padding:5rem 1.25rem}.th-parallax .px-exp-card{padding:1.5rem}.th-parallax .px-exp-card:before{display:none}.th-parallax .px-rv-left.px-exp-card,.th-parallax .px-rv-right.px-exp-card{margin-left:0;margin-right:0}.th-parallax .px-project-full{min-height:60vh;padding:4rem 1.5rem}.th-parallax .px-hero-cta{flex-direction:column;align-items:center}.th-parallax .px-dot-nav{right:14px}.th-parallax .px-dot:before{display:none}}@media(max-width:640px){.th-parallax .px-nav-pill{display:none}.th-parallax .px-dot-nav{right:8px}.th-parallax .px-dot{width:8px;height:8px}.th-parallax .px-section{padding:5rem 1rem}.th-parallax .px-exp-card{padding:1.25rem}.th-parallax .px-hero-shapes{display:none}.th-parallax .px-project-name{font-size:clamp(2rem,10vw,3rem)}.th-parallax .px-project-full{min-height:50vh;padding:3rem 1.25rem}}@media(max-width:480px){.th-parallax .px-section{padding:4rem 1rem}}.th-parallax{scroll-behavior:smooth}:root[data-mode=dark] .th-terminal{--tm-bg: #0a0a0a;--tm-fg: #22c55e;--tm-fg-h: #4ade80;--tm-fg-2: #166534;--tm-fg-3: #14532d;--tm-acc: #22c55e;--tm-titlebar-bg: #111111;--tm-titlebar-border: #1a1a1a;--tm-selection-bg: rgba(34, 197, 94, .2);--tm-scrollbar-thumb: #166534;--tm-scrollbar-track: #0a0a0a;--tm-link: #4ade80;--tm-scanline-opacity: .04}:root[data-mode=light] .th-terminal{--tm-bg: #f0fdf4;--tm-fg: #14532d;--tm-fg-h: #052e16;--tm-fg-2: #15803d;--tm-fg-3: #86efac;--tm-acc: #16a34a;--tm-titlebar-bg: #dcfce7;--tm-titlebar-border: #bbf7d0;--tm-selection-bg: rgba(22, 163, 74, .15);--tm-scrollbar-thumb: #86efac;--tm-scrollbar-track: #f0fdf4;--tm-link: #15803d;--tm-scanline-opacity: .025}.th-terminal{position:relative;width:100%;height:100vh;overflow:hidden;font-family:IBM Plex Mono,monospace;font-size:14px;line-height:1.6;background:var(--tm-bg);color:var(--tm-fg)}.th-terminal *,.th-terminal *:before,.th-terminal *:after{box-sizing:border-box}.th-terminal ::selection{background:var(--tm-selection-bg);color:var(--tm-fg-h)}.th-terminal .tm-window{display:flex;flex-direction:column;height:100vh;width:100%;position:relative;z-index:1}.th-terminal .tm-titlebar{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:var(--tm-titlebar-bg);border-bottom:1px solid var(--tm-titlebar-border);flex-shrink:0;user-select:none}.th-terminal .tm-dots{display:flex;gap:8px}.th-terminal .tm-dot{width:12px;height:12px;border-radius:50%;background:var(--tm-fg-3)}.th-terminal .tm-dot--red{background:#ef4444}.th-terminal .tm-dot--yellow{background:#eab308}.th-terminal .tm-dot--green{background:#22c55e}.th-terminal .tm-titlebar-text{font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--tm-fg-2);letter-spacing:.03em}.th-terminal .tm-output{flex:1;overflow-y:auto;overflow-x:hidden;padding:16px 20px 8px;font-family:IBM Plex Mono,monospace;font-size:14px;line-height:1.6;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:anywhere;word-break:break-word;color:var(--tm-fg);scrollbar-width:thin;scrollbar-color:var(--tm-scrollbar-thumb) var(--tm-scrollbar-track)}.th-terminal .tm-output::-webkit-scrollbar{width:6px}.th-terminal .tm-output::-webkit-scrollbar-track{background:var(--tm-scrollbar-track)}.th-terminal .tm-output::-webkit-scrollbar-thumb{background:var(--tm-scrollbar-thumb);border-radius:0}.th-terminal .tm-line{margin:0;padding:0;font-family:IBM Plex Mono,monospace;overflow-wrap:anywhere;word-break:break-word}.th-terminal .tm-line--cmd{color:var(--tm-fg-h);margin-top:8px}.th-terminal .tm-line--ok{color:var(--tm-acc)}.th-terminal .tm-line--heading{color:var(--tm-fg-h);font-weight:700}.th-terminal .tm-line--muted{color:var(--tm-fg-2)}.th-terminal .tm-line--error{color:#ef4444}.th-terminal .tm-line--accent{color:var(--tm-acc)}.th-terminal .tm-line a{color:var(--tm-link);text-decoration:underline;text-underline-offset:3px;text-decoration-style:dashed;transition:color .2s;word-break:break-all}.th-terminal .tm-line a:hover{color:var(--tm-fg-h)}.th-terminal .tm-block{margin:6px 0 12px}.th-terminal .tm-input-line{display:flex;align-items:center;padding:10px 20px 16px;background:var(--tm-bg);flex-shrink:0;border-top:1px solid var(--tm-titlebar-border)}.th-terminal .tm-prompt{font-family:IBM Plex Mono,monospace;font-size:14px;color:var(--tm-fg-h);white-space:nowrap;user-select:none;flex-shrink:0}.th-terminal .tm-prompt .tm-prompt-short{display:none}.th-terminal .tm-prompt .tm-prompt-full{display:inline}.th-terminal .tm-input-wrap{position:relative;flex:1;display:flex;align-items:center}.th-terminal .tm-input{font-family:IBM Plex Mono,monospace;font-size:14px;color:var(--tm-fg-h);background:transparent;border:none;outline:none;width:100%;padding:0;margin:0;caret-color:transparent;line-height:1.6}.th-terminal .tm-input::placeholder{color:transparent}.th-terminal .tm-cursor{display:inline-block;width:8px;height:18px;background:var(--tm-acc);animation:tm-blink 1s step-end infinite;vertical-align:middle;flex-shrink:0;margin-left:-1px;pointer-events:none}@keyframes tm-blink{0%,to{opacity:1}50%{opacity:0}}.th-terminal .tm-scanlines{position:fixed;inset:0;z-index:2;pointer-events:none;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,var(--tm-scanline-opacity)) 2px,rgba(0,0,0,var(--tm-scanline-opacity)) 4px)}.th-terminal .tm-suggestions{color:var(--tm-fg-2);padding:4px 0}@media(max-width:768px){.th-terminal .tm-titlebar{padding:8px 12px}.th-terminal .tm-output{padding:14px 16px 6px}.th-terminal .tm-input-line{padding:8px 16px 12px}}@media(max-width:640px){.th-terminal .tm-output{font-size:12px;padding:10px 10px 4px}.th-terminal .tm-input-line{padding:6px 10px 10px;min-height:44px}.th-terminal .tm-prompt{font-size:12px}.th-terminal .tm-prompt .tm-prompt-full{display:none}.th-terminal .tm-prompt .tm-prompt-short{display:inline}.th-terminal .tm-input{font-size:16px;min-height:44px}.th-terminal .tm-input-wrap{min-height:44px}.th-terminal .tm-cursor{height:14px;width:7px}.th-terminal .tm-titlebar-text{font-size:11px}.th-terminal .tm-dot{width:10px;height:10px}}@media(max-width:480px){.th-terminal .tm-dots{display:none}.th-terminal .tm-titlebar{justify-content:center;padding:6px 10px}.th-terminal .tm-titlebar-text{font-size:10px}.th-terminal .tm-output{padding:8px 8px 4px}.th-terminal .tm-input-line{padding:6px 8px 8px}}:root[data-mode=dark] .th-bento{--bn-bg: #0f0f0f;--bn-fg: #d4d4d4;--bn-fg-h: #fff;--bn-fg-2: #737373;--bn-fg-3: #404040;--bn-cbg: rgba(26,26,26,.8);--bn-cbg-h: rgba(38,38,38,.9);--bn-border: rgba(255,255,255,.08);--bn-acc: #f59e0b;--bn-acc-soft: rgba(245,158,11,.1);--bn-acc-border: rgba(245,158,11,.25)}:root[data-mode=light] .th-bento{--bn-bg: #fffbeb;--bn-fg: #525252;--bn-fg-h: #171717;--bn-fg-2: #a3a3a3;--bn-fg-3: #e5e5e5;--bn-cbg: rgba(255,255,255,.8);--bn-cbg-h: rgba(255,255,255,1);--bn-border: rgba(245,158,11,.15);--bn-acc: #d97706;--bn-acc-soft: rgba(217,119,6,.08);--bn-acc-border: rgba(217,119,6,.2)}.th-bento{--bn-bg: #0f0f0f;--bn-fg: #d4d4d4;--bn-fg-h: #fff;--bn-fg-2: #737373;--bn-fg-3: #404040;--bn-cbg: rgba(26,26,26,.8);--bn-cbg-h: rgba(38,38,38,.9);--bn-border: rgba(255,255,255,.08);--bn-acc: #f59e0b;--bn-acc-soft: rgba(245,158,11,.1);--bn-acc-border: rgba(245,158,11,.25);--bn-radius: 20px;--bn-font: "Inter", sans-serif;--bn-mono: "JetBrains Mono", monospace}.th-bento{background:var(--bn-bg);color:var(--bn-fg);font-family:var(--bn-font);min-height:100vh;padding:24px;position:relative}.th-bento__grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:auto;gap:16px;max-width:1400px;margin:0 auto}.th-bento__cell{background:var(--bn-cbg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--bn-border);border-radius:var(--bn-radius);padding:24px;overflow:hidden;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),background .2s;cursor:pointer;will-change:transform;opacity:0;transform:scale(.95)}.th-bento__cell.th-bento__cell--visible{opacity:1;transform:scale(1);transition:opacity .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),background .2s}.th-bento__cell:hover{background:var(--bn-cbg-h);box-shadow:0 8px 32px #0000004d,0 0 0 1px var(--bn-acc-border)}.th-bento__cell-inner{position:relative;height:100%;display:flex;flex-direction:column}.th-bento__cell--hero{grid-column:span 2;grid-row:span 2}.th-bento__cell--exp-main,.th-bento__cell--formation,.th-bento__cell--contact{grid-column:span 2}.th-bento__cell--footer{grid-column:1 / -1;cursor:default;padding:16px 24px}.th-bento__cell--footer:hover{background:var(--bn-cbg);box-shadow:none;transform:none!important}.th-bento__hero-greeting{font-size:.875rem;color:var(--bn-acc);font-family:var(--bn-mono);text-transform:uppercase;letter-spacing:.15em;margin-bottom:12px;display:block}.th-bento__hero-name{font-size:2.75rem;font-weight:800;color:var(--bn-fg-h);line-height:1.1;margin:0 0 8px}.th-bento__hero-name--accent{color:var(--bn-acc)}.th-bento__hero-title{font-size:1.125rem;color:var(--bn-fg);margin:0 0 12px;font-weight:500}.th-bento__hero-tagline{font-size:.875rem;color:var(--bn-fg-2);line-height:1.6;margin:0 0 20px}.th-bento__badge{display:inline-flex;align-items:center;gap:8px;background:var(--bn-acc-soft);border:1px solid var(--bn-acc-border);color:var(--bn-acc);padding:6px 14px;border-radius:999px;font-size:.8125rem;font-weight:600;width:fit-content}.th-bento__badge--small{font-size:.75rem;padding:4px 10px;margin-top:12px}.th-bento__badge-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;animation:th-bento-pulse 2s ease-in-out infinite}@keyframes th-bento-pulse{0%,to{opacity:1}50%{opacity:.4}}.th-bento__cell-title{font-size:.8125rem;font-weight:700;color:var(--bn-fg-h);text-transform:uppercase;letter-spacing:.1em;margin:0 0 16px}.th-bento__links-list{display:flex;flex-direction:column;gap:10px;flex:1}.th-bento__link-btn{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:12px;background:var(--bn-acc-soft);border:1px solid var(--bn-acc-border);color:var(--bn-fg-h);text-decoration:none;font-size:.875rem;font-weight:500;transition:background .2s,transform .2s}.th-bento__link-btn:hover{background:var(--bn-acc-border);transform:translateY(-1px)}.th-bento__link-icon{color:var(--bn-acc);flex-shrink:0}.th-bento__link-arrow{margin-left:auto;color:var(--bn-fg-2);flex-shrink:0}.th-bento__location-info{display:flex;align-items:center;gap:10px}.th-bento__location-pin{color:var(--bn-acc);flex-shrink:0}.th-bento__location-name{font-size:1.25rem;font-weight:600;color:var(--bn-fg-h)}.th-bento__exp-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;flex-wrap:wrap;gap:4px}.th-bento__exp-period{font-size:.75rem;font-family:var(--bn-mono);color:var(--bn-acc);font-weight:600}.th-bento__exp-location{font-size:.75rem;color:var(--bn-fg-2)}.th-bento__exp-role{font-size:1rem;font-weight:700;color:var(--bn-fg-h);margin:0 0 4px}.th-bento__exp-company{font-size:.875rem;color:var(--bn-fg-2);margin:0 0 8px;font-weight:500}.th-bento__exp-desc{font-size:.8125rem;color:var(--bn-fg);line-height:1.5;margin:0 0 10px}.th-bento__exp-highlights{list-style:none;padding:0;margin:0 0 12px;display:flex;flex-direction:column;gap:4px}.th-bento__exp-highlight{font-size:.75rem;color:var(--bn-fg);line-height:1.4;padding-left:14px;position:relative}.th-bento__exp-highlight:before{content:"";position:absolute;left:0;top:6px;width:5px;height:5px;border-radius:50%;background:var(--bn-acc)}.th-bento__tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}.th-bento__tag{font-size:.6875rem;font-family:var(--bn-mono);background:var(--bn-acc-soft);color:var(--bn-acc);border:1px solid var(--bn-acc-border);padding:2px 8px;border-radius:6px;white-space:nowrap}.th-bento__skill-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.th-bento__skill-icon{font-size:1.125rem;color:var(--bn-acc)}.th-bento__skill-header .th-bento__cell-title{margin-bottom:0}.th-bento__skill-items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:5px}.th-bento__skill-item{font-size:.8125rem;color:var(--bn-fg);padding-left:12px;position:relative;line-height:1.4}.th-bento__skill-item:before{content:"";position:absolute;left:0;top:7px;width:4px;height:4px;border-radius:1px;background:var(--bn-fg-3)}.th-bento__project-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.th-bento__project-name{font-size:1.125rem;font-weight:700;color:var(--bn-fg-h);margin:0}.th-bento__project-year{font-size:.75rem;font-family:var(--bn-mono);color:var(--bn-acc);font-weight:600}.th-bento__project-desc{font-size:.8125rem;color:var(--bn-fg);line-height:1.5;margin:0 0 12px;flex:1}.th-bento__project-link{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-size:.8125rem;font-weight:600;color:var(--bn-acc);text-decoration:none;transition:gap .2s}.th-bento__project-link:hover{gap:10px}.th-bento__formation-list{display:flex;flex-direction:column;gap:16px}.th-bento__formation-item--bordered{padding-bottom:16px;border-bottom:1px solid var(--bn-border)}.th-bento__formation-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.th-bento__formation-year{font-size:.8125rem;font-family:var(--bn-mono);color:var(--bn-acc);font-weight:700}.th-bento__formation-level{font-size:.6875rem;font-family:var(--bn-mono);color:var(--bn-fg-2);background:var(--bn-acc-soft);padding:2px 8px;border-radius:6px}.th-bento__formation-title{font-size:.9375rem;font-weight:600;color:var(--bn-fg-h);margin:0 0 4px}.th-bento__formation-details{font-size:.75rem;color:var(--bn-fg-2);line-height:1.5;margin:0}.th-bento__lang-list{display:flex;flex-direction:column;gap:16px}.th-bento__lang-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.th-bento__lang-name{font-size:.875rem;font-weight:600;color:var(--bn-fg-h)}.th-bento__lang-level{font-size:.75rem;color:var(--bn-fg-2)}.th-bento__lang-bar{width:100%;height:6px;background:var(--bn-fg-3);border-radius:3px;overflow:hidden}.th-bento__lang-bar-fill{height:100%;background:linear-gradient(90deg,var(--bn-acc),var(--bn-acc));border-radius:3px;transition:width 1s cubic-bezier(.4,0,.2,1)}.th-bento__interests-cloud{display:flex;flex-wrap:wrap;gap:8px}.th-bento__interest-tag{font-size:.8125rem;padding:6px 14px;border-radius:999px;background:var(--bn-acc-soft);border:1px solid var(--bn-acc-border);color:var(--bn-fg-h);font-weight:500;transition:background .2s,transform .2s}.th-bento__interest-tag:hover{background:var(--bn-acc-border);transform:scale(1.05)}.th-bento__cell--contact{background:linear-gradient(135deg,var(--bn-acc-soft),var(--bn-cbg));border-color:var(--bn-acc-border)}.th-bento__contact-content{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.th-bento__contact-heading{font-size:1.5rem;font-weight:800;color:var(--bn-fg-h);margin:0}.th-bento__contact-text{font-size:.875rem;color:var(--bn-fg);margin:0;line-height:1.5}.th-bento__contact-actions{margin-top:6px}.th-bento__contact-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 22px;background:var(--bn-acc);color:#000;font-weight:700;font-size:.875rem;border-radius:12px;text-decoration:none;transition:transform .2s,box-shadow .2s}.th-bento__contact-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f59e0b66}.th-bento__cell--footer .th-bento__cell-inner{flex-direction:row;justify-content:center;align-items:center;gap:8px}.th-bento__footer-copy{font-size:.75rem;color:var(--bn-fg-2)}.th-bento__footer-sep{color:var(--bn-fg-3)}.th-bento__footer-location{font-size:.75rem;color:var(--bn-fg-2)}.th-bento__overlay{position:fixed;inset:0;z-index:100;background:var(--bn-bg);opacity:0;visibility:hidden;transition:opacity .35s cubic-bezier(.4,0,.2,1),visibility .35s;overflow-y:auto;padding:48px;display:flex;align-items:flex-start;justify-content:center}.th-bento__overlay.th-bento__overlay--active{opacity:1;visibility:visible}.th-bento__overlay-close{position:fixed;top:20px;right:20px;z-index:101;width:44px;height:44px;border-radius:50%;border:1px solid var(--bn-border);background:var(--bn-cbg);backdrop-filter:blur(12px);color:var(--bn-fg-h);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .2s}.th-bento__overlay-close:hover{background:var(--bn-cbg-h);transform:scale(1.1)}.th-bento__overlay-content{max-width:800px;width:100%;color:var(--bn-fg);font-size:.9375rem;line-height:1.7}.th-bento__overlay-content h2{color:var(--bn-fg-h);font-size:1.75rem;font-weight:800;margin:0 0 16px}.th-bento__overlay-content h3{color:var(--bn-acc);font-size:1.125rem;font-weight:700;margin:24px 0 8px}.th-bento__overlay-content ul{padding-left:20px;margin:8px 0}.th-bento__overlay-content li{margin-bottom:4px}.th-bento__overlay-content .th-bento__tags{margin-top:16px}@media(max-width:1024px){.th-bento__grid{grid-template-columns:repeat(2,1fr)}.th-bento__cell--footer{grid-column:1 / -1}.th-bento__hero-name{font-size:2.25rem}}@media(max-width:639px){.th-bento{padding:12px}.th-bento__grid{grid-template-columns:1fr;gap:12px}.th-bento__cell--hero,.th-bento__cell--exp-main,.th-bento__cell--formation,.th-bento__cell--contact,.th-bento__cell--footer{grid-column:span 1}.th-bento__cell--hero{grid-row:span 1}.th-bento__cell{padding:16px}.th-bento__hero-name{font-size:clamp(1.25rem,6vw,1.75rem);word-break:break-word}.th-bento__overlay{padding:16px}.th-bento__tags,.th-bento__interests-cloud{flex-wrap:wrap;overflow:hidden}}@media(max-width:359px){.th-bento__cell,.th-bento__cell-inner,.th-bento__overlay-content{min-width:0;overflow:hidden;word-break:break-word}.th-bento__hero-name{font-size:clamp(1rem,5.5vw,1.25rem)}.th-bento__contact-heading{font-size:1.125rem;word-break:break-word}.th-bento__tag{white-space:normal;word-break:break-word}.th-bento__exp-header{flex-direction:column;align-items:flex-start}.th-bento__project-header{flex-direction:column;align-items:flex-start;gap:4px}}.th-magazine{--mg-ff-heading: "Playfair Display", Georgia, serif;--mg-ff-body: "Inter", system-ui, sans-serif;--mg-ff-mono: "JetBrains Mono", monospace;--mg-radius: 2px}:root[data-mode=dark] .th-magazine{--mg-bg: #0c0a09;--mg-fg: #d6d3d1;--mg-fg-h: #fafaf9;--mg-fg-2: #78716c;--mg-fg-3: #44403c;--mg-c-bg: rgba(41, 37, 36, .3);--mg-border: #292524;--mg-acc: #d6d3d1;--mg-rule-color: #292524;--mg-pullquote-border: #44403c;--mg-progress-bg: transparent}:root[data-mode=light] .th-magazine{--mg-bg: #faf8f5;--mg-fg: #44403c;--mg-fg-h: #1c1917;--mg-fg-2: #a8a29e;--mg-fg-3: #d6d3d1;--mg-c-bg: rgba(255, 255, 255, .6);--mg-border: #e7e5e4;--mg-acc: #1c1917;--mg-rule-color: #e7e5e4;--mg-pullquote-border: #d6d3d1;--mg-progress-bg: transparent}.th-magazine{background:var(--mg-bg);color:var(--mg-fg);font-family:var(--mg-ff-body);font-size:16px;line-height:1.8;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.th-magazine *,.th-magazine *:before,.th-magazine *:after{box-sizing:border-box}.th-magazine a{color:var(--mg-fg-h);text-decoration:none;transition:color .2s ease}.th-magazine a:hover{color:var(--mg-acc)}.th-magazine .mg-progress{position:fixed;top:0;left:0;height:3px;width:0%;background:var(--mg-acc);z-index:1000;transition:width .1s linear;pointer-events:none}.th-magazine .mg-topbar{height:40px;display:flex;align-items:center;padding:0 32px}.th-magazine .mg-topbar-inner{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1200px;margin:0 auto}.th-magazine .mg-topbar-logo{font-family:var(--mg-ff-heading);font-variant:small-caps;font-size:14px;letter-spacing:.15em;color:var(--mg-fg-2)}.th-magazine .mg-topbar-date{font-family:var(--mg-ff-body);font-size:12px;color:var(--mg-fg-2);letter-spacing:.05em}.th-magazine .mg-topbar-nav{display:flex;gap:24px}.th-magazine .mg-topbar-nav a{font-family:var(--mg-ff-body);font-size:12px;color:var(--mg-fg-2);letter-spacing:.05em;text-transform:uppercase;transition:color .2s ease}.th-magazine .mg-topbar-nav a:hover{color:var(--mg-fg-h)}.th-magazine .mg-rule{border:none;height:1px;background:var(--mg-rule-color);margin:0}.th-magazine .mg-rule--full{margin:0 32px}.th-magazine .mg-rule--thin{margin:32px 0;opacity:.5}.th-magazine .mg-hero{padding:80px 32px 60px;text-align:center;max-width:900px;margin:0 auto}.th-magazine .mg-hero-inner{position:relative}.th-magazine .mg-available{display:inline-flex;align-items:center;gap:8px;font-family:var(--mg-ff-mono);font-size:11px;text-transform:uppercase;letter-spacing:.15em;color:var(--mg-fg-2);margin-bottom:32px}.th-magazine .mg-available-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;animation:mg-pulse 2s ease-in-out infinite}@keyframes mg-pulse{0%,to{opacity:1}50%{opacity:.4}}.th-magazine .mg-hero-name{font-family:var(--mg-ff-heading);font-size:clamp(3rem,10vw,7rem);font-weight:400;font-style:italic;line-height:1.05;color:var(--mg-fg-h);margin:0;padding:0;letter-spacing:-.01em}.th-magazine .mg-hero-firstname,.th-magazine .mg-hero-lastname{display:block}.th-magazine .mg-hero-byline{font-family:var(--mg-ff-heading);font-style:italic;font-size:clamp(1rem,2.5vw,1.25rem);color:var(--mg-fg-2);margin:24px 0 28px;letter-spacing:.02em}.th-magazine .mg-hero .mg-rule{max-width:120px;margin:0 auto 28px}.th-magazine .mg-hero-tagline{font-family:var(--mg-ff-body);font-size:15px;color:var(--mg-fg);line-height:1.8;max-width:600px;margin:0 auto 24px;letter-spacing:.01em}.th-magazine .mg-hero-meta{display:flex;justify-content:center;align-items:center;gap:12px;font-size:13px;color:var(--mg-fg-2);margin-bottom:48px}.th-magazine .mg-hero-meta a{color:var(--mg-fg-2);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--mg-fg-3)}.th-magazine .mg-hero-meta a:hover{color:var(--mg-fg-h);text-decoration-color:var(--mg-fg-h)}.th-magazine .mg-meta-sep{color:var(--mg-fg-3);font-size:10px}.th-magazine .mg-hero-lede{max-width:700px;margin:0 auto;text-align:justify}.th-magazine .mg-hero-lede p:first-letter{float:left;font-family:var(--mg-ff-heading);font-size:4em;line-height:.8;padding-right:12px;padding-top:6px;color:var(--mg-fg-h);font-weight:700}.th-magazine .mg-hero-lede p{font-size:16px;line-height:1.8;color:var(--mg-fg)}.th-magazine .mg-section{padding:60px 32px;max-width:1200px;margin:0 auto}.th-magazine .mg-section-header{text-align:center;margin-bottom:48px}.th-magazine .mg-section-header .mg-rule{max-width:200px;margin:0 auto}.th-magazine .mg-section-label{display:inline-block;font-family:var(--mg-ff-heading);font-variant:small-caps;font-size:18px;letter-spacing:.2em;color:var(--mg-fg-h);padding:12px 24px}.th-magazine .mg-exp-main{margin-bottom:40px}.th-magazine .mg-exp-headline{text-align:center;margin-bottom:32px}.th-magazine .mg-exp-role{font-family:var(--mg-ff-heading);font-size:clamp(1.5rem,4vw,2.25rem);font-weight:700;color:var(--mg-fg-h);margin:0 0 8px;line-height:1.2}.th-magazine .mg-exp-company{font-family:var(--mg-ff-body);font-size:14px;color:var(--mg-fg-2);margin:0 0 4px}.th-magazine .mg-exp-period{font-family:var(--mg-ff-mono);font-size:11px;text-transform:uppercase;letter-spacing:.15em;color:var(--mg-fg-3)}.th-magazine .mg-exp-columns{columns:2;column-gap:40px;column-rule:1px solid var(--mg-rule-color);text-align:justify}.th-magazine .mg-exp-desc{font-size:15px;line-height:1.8;color:var(--mg-fg);margin:0 0 16px}.th-magazine .mg-exp-highlights{list-style:none;padding:0;margin:0}.th-magazine .mg-exp-highlights li{font-size:14px;line-height:1.7;color:var(--mg-fg);padding:4px 0 4px 16px;position:relative}.th-magazine .mg-exp-highlights li:before{content:"—";position:absolute;left:0;color:var(--mg-fg-3)}.th-magazine .mg-pullquote{font-family:var(--mg-ff-heading);font-size:1.35em;font-style:italic;line-height:1.5;color:var(--mg-fg-h);text-align:center;padding:28px 40px;margin:40px auto;max-width:700px;border-top:2px solid var(--mg-pullquote-border);border-bottom:2px solid var(--mg-pullquote-border);position:relative;transition:border-color .3s ease}.th-magazine .mg-pullquote:hover{border-left:3px solid var(--mg-acc);padding-left:37px}.th-magazine .mg-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}.th-magazine .mg-tags--sm{margin-top:12px}.th-magazine .mg-tag{display:inline-block;font-family:var(--mg-ff-mono);font-size:10px;padding:3px 10px;border:1px solid var(--mg-border);border-radius:var(--mg-radius);color:var(--mg-fg-2);letter-spacing:.03em}.th-magazine .mg-exp-list{display:flex;flex-direction:column;gap:0}.th-magazine .mg-exp-item{display:flex;gap:32px;padding:24px 0;border-bottom:1px solid var(--mg-rule-color)}.th-magazine .mg-exp-item:last-child{border-bottom:none}.th-magazine .mg-exp-item-left{flex-shrink:0;width:120px;padding-top:4px}.th-magazine .mg-exp-item-right{flex:1}.th-magazine .mg-exp-item-role{font-family:var(--mg-ff-heading);font-size:18px;font-weight:700;color:var(--mg-fg-h);margin:0 0 4px;line-height:1.3}.th-magazine .mg-exp-item-company{font-size:13px;color:var(--mg-fg-2);margin:0 0 8px}.th-magazine .mg-exp-item-desc{font-size:14px;line-height:1.7;color:var(--mg-fg);text-align:justify;margin:0}.th-magazine .mg-exp-item-hl{list-style:none;padding:0;margin:10px 0 0}.th-magazine .mg-exp-item-hl li{font-size:13px;line-height:1.6;color:var(--mg-fg);padding:2px 0 2px 16px;position:relative}.th-magazine .mg-exp-item-hl li:before{content:"—";position:absolute;left:0;color:var(--mg-fg-3)}.th-magazine .mg-skills-grid{columns:3;column-gap:40px;column-rule:1px solid var(--mg-rule-color)}.th-magazine .mg-skill-group{break-inside:avoid;margin-bottom:28px}.th-magazine .mg-skill-cat{font-family:var(--mg-ff-body);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--mg-fg-h);margin:0 0 10px;padding-bottom:6px;border-bottom:1px solid var(--mg-rule-color)}.th-magazine .mg-skill-list{list-style:none;padding:0;margin:0}.th-magazine .mg-skill-list li{font-size:13px;line-height:1.6;color:var(--mg-fg);padding:3px 0}.th-magazine .mg-projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--mg-rule-color)}.th-magazine .mg-project-card{display:flex;flex-direction:column;background:var(--mg-bg);padding:28px;text-decoration:none;transition:background .3s ease}.th-magazine .mg-project-card:hover{background:var(--mg-c-bg)}.th-magazine .mg-project-card--main{grid-column:span 2}.th-magazine .mg-project-card--main .mg-project-name{font-size:clamp(1.5rem,3vw,2rem)}.th-magazine .mg-project-card--main .mg-project-desc{font-size:15px}.th-magazine .mg-project-cat{display:flex;gap:8px;margin-bottom:12px}.th-magazine .mg-project-tag{font-family:var(--mg-ff-mono);font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--mg-fg-2);padding:2px 8px;border:1px solid var(--mg-border);border-radius:var(--mg-radius)}.th-magazine .mg-project-name{font-family:var(--mg-ff-heading);font-size:22px;font-weight:700;color:var(--mg-fg-h);margin:0 0 6px;line-height:1.2;transition:color .2s ease}.th-magazine .mg-project-card:hover .mg-project-name{color:var(--mg-acc)}.th-magazine .mg-project-dateline{font-family:var(--mg-ff-mono);font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--mg-fg-3);margin-bottom:12px}.th-magazine .mg-project-desc{font-size:14px;line-height:1.7;color:var(--mg-fg);text-align:justify;margin:0;flex:1}.th-magazine .mg-formation-list{display:flex;flex-direction:column;gap:0;max-width:800px;margin:0 auto}.th-magazine .mg-formation-item{display:flex;gap:32px;padding:20px 0;border-bottom:1px solid var(--mg-rule-color)}.th-magazine .mg-formation-item:last-child{border-bottom:none}.th-magazine .mg-formation-year{font-family:var(--mg-ff-heading);font-size:28px;font-weight:700;color:var(--mg-fg-h);flex-shrink:0;width:80px;line-height:1.2}.th-magazine .mg-formation-content{flex:1}.th-magazine .mg-formation-title{font-family:var(--mg-ff-heading);font-size:18px;font-weight:700;color:var(--mg-fg-h);margin:0 0 4px;line-height:1.3}.th-magazine .mg-formation-level{font-family:var(--mg-ff-mono);font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--mg-fg-2);display:block;margin-bottom:6px}.th-magazine .mg-formation-details{font-size:14px;line-height:1.7;color:var(--mg-fg);margin:0}.th-magazine .mg-sidebar-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--mg-rule-color);max-width:800px;margin:0 auto}.th-magazine .mg-sidebar-box{background:var(--mg-bg);padding:32px}.th-magazine .mg-sidebar-title{font-family:var(--mg-ff-heading);font-variant:small-caps;font-size:16px;letter-spacing:.15em;color:var(--mg-fg-h);margin:0 0 20px;padding-bottom:8px;border-bottom:1px solid var(--mg-rule-color)}.th-magazine .mg-lang-list{display:flex;flex-direction:column;gap:16px}.th-magazine .mg-lang-header{display:flex;justify-content:space-between;margin-bottom:6px}.th-magazine .mg-lang-name{font-size:14px;color:var(--mg-fg-h)}.th-magazine .mg-lang-level{font-size:12px;color:var(--mg-fg-2)}.th-magazine .mg-lang-bar-bg{height:3px;background:var(--mg-border);border-radius:var(--mg-radius);overflow:hidden}.th-magazine .mg-lang-bar{height:100%;background:var(--mg-acc);border-radius:var(--mg-radius);transition:width .6s ease}.th-magazine .mg-interests-list{display:flex;flex-wrap:wrap;gap:8px}.th-magazine .mg-interest{font-size:12px;color:var(--mg-fg-2);padding:5px 14px;border:1px solid var(--mg-border);border-radius:var(--mg-radius)}.th-magazine .mg-contact{text-align:center;max-width:500px;margin:0 auto;padding:40px 32px;border:1px solid var(--mg-border);border-radius:var(--mg-radius)}.th-magazine .mg-contact-title{font-family:var(--mg-ff-heading);font-size:clamp(1.5rem,3vw,2rem);font-weight:400;font-style:italic;color:var(--mg-fg-h);margin:0 0 8px}.th-magazine .mg-contact-sub{font-size:14px;color:var(--mg-fg-2);margin:0 0 28px}.th-magazine .mg-contact-links{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.th-magazine .mg-contact-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 28px;font-family:var(--mg-ff-body);font-size:14px;font-weight:500;border-radius:var(--mg-radius);transition:all .2s ease;text-decoration:none}.th-magazine .mg-contact-btn--primary{background:var(--mg-acc);color:var(--mg-bg);border:1px solid var(--mg-acc)}.th-magazine .mg-contact-btn--primary:hover{opacity:.85}.th-magazine .mg-contact-btn--secondary{background:transparent;color:var(--mg-fg-h);border:1px solid var(--mg-border)}.th-magazine .mg-contact-btn--secondary:hover{border-color:var(--mg-acc);color:var(--mg-acc)}.th-magazine .mg-footer{padding:0 0 32px}.th-magazine .mg-footer-text{text-align:center;font-family:var(--mg-ff-mono);font-size:11px;color:var(--mg-fg-3);padding:24px 32px;letter-spacing:.05em}.th-magazine .mg-fade{opacity:0;transition:opacity .8s ease}.th-magazine .mg-fade.mg-visible{opacity:1}@media(max-width:1024px){.th-magazine .mg-skills-grid{columns:2}.th-magazine .mg-projects-grid{grid-template-columns:1fr 1fr}.th-magazine .mg-project-card--main{grid-column:span 2}}@media(max-width:768px){.th-magazine .mg-topbar{padding:0 16px}.th-magazine .mg-topbar-date{display:none}.th-magazine .mg-topbar-nav{gap:16px}.th-magazine .mg-hero{padding:60px 16px 40px}.th-magazine .mg-section{padding:40px 16px}.th-magazine .mg-rule--full{margin:0 16px}.th-magazine .mg-exp-columns,.th-magazine .mg-skills-grid{columns:1}.th-magazine .mg-projects-grid{grid-template-columns:1fr}.th-magazine .mg-project-card--main{grid-column:span 1}.th-magazine .mg-exp-item{flex-direction:column;gap:8px}.th-magazine .mg-exp-item-left{width:auto}.th-magazine .mg-formation-item{flex-direction:column;gap:8px}.th-magazine .mg-formation-year{width:auto}.th-magazine .mg-sidebar-grid{grid-template-columns:1fr}.th-magazine .mg-pullquote{padding:20px 16px;font-size:1.15em}.th-magazine .mg-contact{padding:28px 20px}}@media(max-width:640px){.th-magazine .mg-hero-name{font-size:clamp(2.5rem,12vw,4rem)}.th-magazine .mg-section{padding:48px 16px}.th-magazine .mg-pullquote{padding:16px 12px;font-size:1.05em}.th-magazine .mg-rule--full{margin:0 12px}.th-magazine .mg-rule--thin{margin:24px 0}.th-magazine .mg-topbar{padding:0 12px}.th-magazine .mg-topbar-nav{display:none}.th-magazine .mg-projects-grid{grid-template-columns:1fr}.th-magazine .mg-project-card--main{grid-column:span 1}.th-magazine .mg-hero-lede,.th-magazine .mg-exp-columns,.th-magazine .mg-exp-item-desc,.th-magazine .mg-project-desc{text-align:left}.th-magazine .mg-hero-lede p:first-letter{font-size:2.5em;padding-right:8px;padding-top:4px}}@media(max-width:480px){.th-magazine .mg-hero-name{font-size:clamp(2rem,12vw,3rem)}}:root[data-mode=dark] .th-dashboard{--db-bg: #0b1120;--db-fg: #cbd5e1;--db-fg-h: #f1f5f9;--db-fg-2: #64748b;--db-fg-3: #334155;--db-c-bg: rgba(15,23,42,.6);--db-c-bg-h: rgba(15,23,42,.8);--db-border: rgba(51,65,85,.5);--db-acc: #3b82f6;--db-acc-soft: rgba(59,130,246,.1);--db-acc-border: rgba(59,130,246,.3);--db-success: #22c55e;--db-success-soft: rgba(34,197,94,.15);--db-sidebar-bg: rgba(10,15,30,.95);--db-bar-track: rgba(51,65,85,.3)}:root[data-mode=light] .th-dashboard{--db-bg: #f0f4f8;--db-fg: #475569;--db-fg-h: #0f172a;--db-fg-2: #94a3b8;--db-fg-3: #e2e8f0;--db-c-bg: rgba(255,255,255,.8);--db-c-bg-h: rgba(255,255,255,1);--db-border: rgba(148,163,184,.25);--db-acc: #2563eb;--db-acc-soft: rgba(37,99,235,.08);--db-acc-border: rgba(37,99,235,.2);--db-success: #16a34a;--db-success-soft: rgba(22,163,74,.12);--db-sidebar-bg: rgba(255,255,255,.97);--db-bar-track: rgba(148,163,184,.18)}.th-dashboard{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--db-fg);background:var(--db-bg);min-height:100vh;display:flex;position:relative}.th-dashboard *,.th-dashboard *:before,.th-dashboard *:after{box-sizing:border-box}.th-dashboard .db-sidebar{position:fixed;top:0;left:0;width:240px;height:100vh;background:var(--db-sidebar-bg);border-right:1px solid var(--db-border);display:flex;flex-direction:column;z-index:100;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:width .3s ease,transform .3s ease;overflow:hidden}.th-dashboard .db-hamburger{display:none;position:fixed;top:12px;left:12px;z-index:150;width:40px;height:40px;border:1px solid var(--db-border);border-radius:8px;background:var(--db-sidebar-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:0}.th-dashboard .db-hamburger-line{display:block;width:18px;height:2px;background:var(--db-fg-h);border-radius:1px;transition:transform .3s ease,opacity .3s ease}.th-dashboard .db-hamburger.db-hamburger--active .db-hamburger-line:nth-child(1){transform:translateY(6px) rotate(45deg)}.th-dashboard .db-hamburger.db-hamburger--active .db-hamburger-line:nth-child(2){opacity:0}.th-dashboard .db-hamburger.db-hamburger--active .db-hamburger-line:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.th-dashboard .db-sidebar-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:90}.th-dashboard .db-sidebar-overlay.db-sidebar-overlay--visible{display:block}.th-dashboard .db-sidebar-top{padding:24px 20px 16px;border-bottom:1px solid var(--db-border);display:flex;flex-direction:column;align-items:center;gap:12px}.th-dashboard .db-logo{width:52px;height:52px;border-radius:50%;border:2px solid var(--db-acc);display:flex;align-items:center;justify-content:center;background:var(--db-acc-soft);flex-shrink:0}.th-dashboard .db-logo-text{font-family:JetBrains Mono,monospace;font-weight:700;font-size:18px;color:var(--db-acc)}.th-dashboard .db-brand{text-align:center;display:flex;flex-direction:column;gap:2px}.th-dashboard .db-brand-name{font-weight:600;font-size:14px;color:var(--db-fg-h);white-space:nowrap}.th-dashboard .db-brand-role{font-size:11px;color:var(--db-fg-2);line-height:1.3}.th-dashboard .db-nav{flex:1;padding:16px 12px;display:flex;flex-direction:column;gap:4px;overflow-y:auto}.th-dashboard .db-nav-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;color:var(--db-fg-2);text-decoration:none;font-size:13px;font-weight:500;transition:all .2s ease;white-space:nowrap}.th-dashboard .db-nav-item:hover{background:var(--db-acc-soft);color:var(--db-fg-h)}.th-dashboard .db-nav-item--active{background:var(--db-acc-soft);color:var(--db-acc);border-left:3px solid var(--db-acc)}.th-dashboard .db-nav-icon{font-size:16px;width:24px;text-align:center;flex-shrink:0}.th-dashboard .db-sidebar-bottom{padding:16px 20px;border-top:1px solid var(--db-border);display:flex;flex-direction:column;gap:8px}.th-dashboard .db-status{display:flex;align-items:center;gap:8px;font-size:12px}.th-dashboard .db-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;display:inline-block}.th-dashboard .db-status-dot--online{background:var(--db-success);box-shadow:0 0 6px var(--db-success);animation:db-pulse-dot 2s ease-in-out infinite}.th-dashboard .db-status-dot--offline{background:var(--db-fg-2)}@keyframes db-pulse-dot{0%,to{opacity:1}50%{opacity:.5}}.th-dashboard .db-status-text{color:var(--db-fg-2)}.th-dashboard .db-location{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--db-fg-2)}.th-dashboard .db-location-icon{font-size:14px}.th-dashboard .db-clock{font-family:JetBrains Mono,monospace;font-size:12px;color:var(--db-fg-2);letter-spacing:.5px}.th-dashboard .db-main{margin-left:240px;flex:1;padding:24px;min-height:100vh;transition:margin-left .3s ease}.th-dashboard .db-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;flex-wrap:wrap;gap:16px}.th-dashboard .db-header-left{display:flex;flex-direction:column;gap:4px}.th-dashboard .db-header-title{font-size:24px;font-weight:700;color:var(--db-fg-h);margin:0}.th-dashboard .db-header-sub{font-size:13px;color:var(--db-fg-2)}.th-dashboard .db-header-right{display:flex;align-items:center;gap:16px}.th-dashboard .db-clock-main{font-family:JetBrains Mono,monospace;font-size:14px;color:var(--db-fg-2);background:var(--db-c-bg);padding:6px 12px;border-radius:8px;border:1px solid var(--db-border);letter-spacing:1px}.th-dashboard .db-header-status{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--db-success);background:var(--db-success-soft);padding:6px 12px;border-radius:8px}.th-dashboard .db-section{margin-bottom:32px}.th-dashboard .db-section-title{font-size:16px;font-weight:600;color:var(--db-fg-h);margin:0 0 16px;display:flex;align-items:center;gap:8px}.th-dashboard .db-section-icon{font-size:18px}.th-dashboard .db-kpi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}.th-dashboard .db-kpi-card{background:var(--db-c-bg);border:1px solid var(--db-border);border-radius:12px;padding:20px;text-align:center;transition:all .2s ease;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.th-dashboard .db-kpi-card:hover{background:var(--db-c-bg-h);border-color:var(--db-acc-border);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.th-dashboard .db-kpi-value{font-family:JetBrains Mono,monospace;font-size:28px;font-weight:700;color:var(--db-acc);line-height:1.2}.th-dashboard .db-kpi-label{font-size:12px;color:var(--db-fg-2);margin-top:6px;text-transform:uppercase;letter-spacing:.5px}.th-dashboard .db-skills-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.th-dashboard .db-skill-card{background:var(--db-c-bg);border:1px solid var(--db-border);border-radius:12px;overflow:hidden;transition:border-color .2s ease}.th-dashboard .db-skill-card:hover{border-color:var(--db-acc-border)}.th-dashboard .db-skill-card-header{display:flex;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid var(--db-border);background:var(--db-acc-soft)}.th-dashboard .db-skill-card-icon{font-size:16px;color:var(--db-acc)}.th-dashboard .db-skill-card-title{font-size:14px;font-weight:600;color:var(--db-fg-h);flex:1}.th-dashboard .db-skill-card-count{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--db-fg-2);background:var(--db-c-bg);padding:2px 8px;border-radius:10px}.th-dashboard .db-skill-card-body{padding:12px 16px;display:flex;flex-direction:column;gap:8px}.th-dashboard .db-skill-row{display:flex;align-items:center;gap:10px}.th-dashboard .db-skill-name{font-size:12px;color:var(--db-fg);flex:0 0 45%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.th-dashboard .db-skill-bar{flex:1;height:6px;background:var(--db-bar-track);border-radius:3px;overflow:hidden}.th-dashboard .db-skill-bar-fill{height:100%;background:var(--db-acc);border-radius:3px;transition:width 1s ease-out}.th-dashboard .db-skill-pct{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--db-fg-2);flex:0 0 32px;text-align:right}.th-dashboard .db-feed{display:flex;flex-direction:column;gap:8px}.th-dashboard .db-feed-item{background:var(--db-c-bg);border:1px solid var(--db-border);border-radius:12px;overflow:hidden;transition:border-color .2s ease}.th-dashboard .db-feed-item:hover{border-color:var(--db-acc-border)}.th-dashboard .db-feed-header{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;user-select:none}.th-dashboard .db-feed-badge{font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600;padding:3px 8px;border-radius:4px;letter-spacing:.5px;flex-shrink:0}.th-dashboard .db-feed-badge--current{background:var(--db-success-soft);color:var(--db-success);border:1px solid var(--db-success)}.th-dashboard .db-feed-badge--past{background:var(--db-c-bg);color:var(--db-fg-2);border:1px solid var(--db-border)}.th-dashboard .db-feed-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.th-dashboard .db-feed-role{font-size:14px;font-weight:600;color:var(--db-fg-h)}.th-dashboard .db-feed-meta{font-size:12px;color:var(--db-fg-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.th-dashboard .db-feed-toggle{background:none;border:none;color:var(--db-fg-2);cursor:pointer;padding:4px;font-size:12px;transition:transform .2s ease;flex-shrink:0}.th-dashboard .db-feed-item.db-feed-item--open .db-feed-toggle{transform:rotate(90deg)}.th-dashboard .db-feed-chevron{display:inline-block}.th-dashboard .db-feed-details{padding:0 16px 16px;border-top:1px solid var(--db-border)}.th-dashboard .db-feed-desc{font-size:13px;color:var(--db-fg);line-height:1.6;margin:12px 0 8px}.th-dashboard .db-feed-highlights{margin:8px 0;padding-left:18px;list-style:none}.th-dashboard .db-feed-highlights li{font-size:12px;color:var(--db-fg);line-height:1.6;position:relative;padding-left:4px}.th-dashboard .db-feed-highlights li:before{content:"▸";position:absolute;left:-16px;color:var(--db-acc)}.th-dashboard .db-feed-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.th-dashboard .db-tag{font-family:JetBrains Mono,monospace;font-size:11px;padding:3px 10px;border-radius:6px;background:var(--db-acc-soft);color:var(--db-acc);border:1px solid var(--db-acc-border);white-space:nowrap}.th-dashboard .db-projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.th-dashboard .db-project-card{background:var(--db-c-bg);border:1px solid var(--db-border);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:12px;transition:all .2s ease}.th-dashboard .db-project-card:hover{border-color:var(--db-acc-border);transform:translateY(-3px);box-shadow:0 8px 24px #0000001f}.th-dashboard .db-project-header{display:flex;justify-content:space-between;align-items:center}.th-dashboard .db-project-name{font-size:16px;font-weight:600;color:var(--db-fg-h)}.th-dashboard .db-project-year{font-family:JetBrains Mono,monospace;font-size:12px;padding:2px 8px;border-radius:6px;background:var(--db-acc-soft);color:var(--db-acc);border:1px solid var(--db-acc-border)}.th-dashboard .db-project-desc{font-size:13px;color:var(--db-fg);line-height:1.6;margin:0;flex:1}.th-dashboard .db-project-tags{display:flex;flex-wrap:wrap;gap:6px}.th-dashboard .db-project-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:var(--db-acc);text-decoration:none;padding:8px 16px;border-radius:8px;border:1px solid var(--db-acc-border);background:var(--db-acc-soft);transition:all .2s ease;align-self:flex-start}.th-dashboard .db-project-link:hover{background:var(--db-acc);color:#fff;border-color:var(--db-acc)}.th-dashboard .db-stepper{display:flex;flex-direction:column;gap:0}.th-dashboard .db-step{display:flex;gap:16px}.th-dashboard .db-step-track{display:flex;flex-direction:column;align-items:center;width:28px;flex-shrink:0}.th-dashboard .db-step-dot{width:28px;height:28px;border-radius:50%;background:var(--db-acc);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 0 0 4px var(--db-acc-soft)}.th-dashboard .db-step-line{width:2px;flex:1;min-height:24px;background:var(--db-acc-border)}.th-dashboard .db-step-content{padding-bottom:24px;display:flex;flex-direction:column;gap:4px;padding-top:2px}.th-dashboard .db-step-level{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--db-acc);font-weight:600}.th-dashboard .db-step-title{font-size:15px;font-weight:600;color:var(--db-fg-h)}.th-dashboard .db-step-year{font-family:JetBrains Mono,monospace;font-size:12px;color:var(--db-fg-2)}.th-dashboard .db-step-details{font-size:12px;color:var(--db-fg);line-height:1.5;margin:4px 0 0}.th-dashboard .db-lang-int-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.th-dashboard .db-lang-card,.th-dashboard .db-int-card{background:var(--db-c-bg);border:1px solid var(--db-border);border-radius:12px;padding:20px}.th-dashboard .db-lang-list{display:flex;flex-direction:column;gap:20px}.th-dashboard .db-lang-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.th-dashboard .db-lang-info{display:flex;flex-direction:column;gap:2px}.th-dashboard .db-lang-name{font-size:14px;font-weight:600;color:var(--db-fg-h)}.th-dashboard .db-lang-level{font-size:12px;color:var(--db-fg-2)}.th-dashboard .db-lang-visual{display:flex;align-items:center;gap:10px}.th-dashboard .db-lang-circle{width:48px;height:48px;border-radius:50%;background:conic-gradient(var(--db-acc) 0% 0%,var(--db-bar-track) 0% 100%);transition:background 1.5s ease-out;position:relative}.th-dashboard .db-lang-circle:after{content:"";position:absolute;inset:6px;border-radius:50%;background:var(--db-c-bg)}.th-dashboard .db-lang-pct{font-family:JetBrains Mono,monospace;font-size:14px;font-weight:600;color:var(--db-acc);width:38px}.th-dashboard .db-int-chips{display:flex;flex-wrap:wrap;gap:8px}.th-dashboard .db-chip{font-size:12px;padding:6px 14px;border-radius:20px;background:var(--db-acc-soft);color:var(--db-fg-h);border:1px solid var(--db-acc-border);transition:all .2s ease}.th-dashboard .db-chip:hover{background:var(--db-acc);color:#fff;border-color:var(--db-acc)}.th-dashboard .db-contact-card{background:var(--db-c-bg);border:1px solid var(--db-border);border-radius:12px;padding:24px;display:flex;flex-direction:column;gap:20px;align-items:flex-start}.th-dashboard .db-contact-status{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--db-fg-h);font-weight:500}.th-dashboard .db-contact-links{display:flex;gap:12px;flex-wrap:wrap}.th-dashboard .db-contact-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:10px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s ease;border:1px solid var(--db-border)}.th-dashboard .db-contact-btn--linkedin{background:#0077b5;color:#fff;border-color:#0077b5}.th-dashboard .db-contact-btn--linkedin:hover{background:#005a8c;transform:translateY(-2px);box-shadow:0 4px 12px #0077b54d}.th-dashboard .db-contact-btn--github{background:var(--db-c-bg);color:var(--db-fg-h)}.th-dashboard .db-contact-btn--github:hover{background:var(--db-fg-h);color:var(--db-bg);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.th-dashboard .db-main::-webkit-scrollbar{width:6px}.th-dashboard .db-main::-webkit-scrollbar-track{background:transparent}.th-dashboard .db-main::-webkit-scrollbar-thumb{background:var(--db-border);border-radius:3px}.th-dashboard .db-nav::-webkit-scrollbar{width:4px}.th-dashboard .db-nav::-webkit-scrollbar-thumb{background:var(--db-border);border-radius:2px}@media(max-width:1024px){.th-dashboard .db-skills-grid,.th-dashboard .db-projects-grid,.th-dashboard .db-lang-int-grid{grid-template-columns:1fr}.th-dashboard .db-kpi-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.th-dashboard .db-sidebar{width:60px}.th-dashboard .db-nav-label,.th-dashboard .db-brand,.th-dashboard .db-status-text{display:none}.th-dashboard .db-sidebar-top{padding:16px 4px 12px}.th-dashboard .db-logo{width:40px;height:40px}.th-dashboard .db-logo-text{font-size:14px}.th-dashboard .db-nav{padding:12px 6px}.th-dashboard .db-nav-item{justify-content:center;padding:10px 8px;gap:0}.th-dashboard .db-nav-icon{width:auto}.th-dashboard .db-sidebar-bottom{padding:12px 6px;align-items:center}.th-dashboard .db-location{font-size:0}.th-dashboard .db-location .db-location-icon{font-size:14px}.th-dashboard .db-clock{display:none}.th-dashboard .db-main{margin-left:60px;padding:16px}.th-dashboard .db-header{flex-direction:column}.th-dashboard .db-kpi-grid{grid-template-columns:repeat(2,1fr)}.th-dashboard .db-kpi-card{padding:14px}.th-dashboard .db-feed-meta{white-space:normal;flex-wrap:wrap}.th-dashboard .db-feed-header{flex-wrap:wrap;gap:8px;padding:12px 14px}.th-dashboard .db-feed-role{font-size:13px}.th-dashboard .db-feed-meta{font-size:11px}.th-dashboard .db-skill-name{flex:0 0 40%}.th-dashboard .db-lang-circle{width:40px;height:40px}.th-dashboard .db-lang-circle:after{inset:5px}.th-dashboard .db-lang-pct{font-size:12px;width:32px}.th-dashboard .db-skill-bar{min-width:0}.th-dashboard .db-skill-pct{font-size:10px;flex:0 0 28px}}@media(max-width:640px){.th-dashboard .db-kpi-grid{grid-template-columns:repeat(2,1fr);gap:10px}.th-dashboard .db-kpi-card{padding:12px 10px}.th-dashboard .db-kpi-value{font-size:24px}.th-dashboard .db-kpi-label{font-size:10px}.th-dashboard .db-feed-item{border-radius:8px}.th-dashboard .db-feed-header{padding:10px 12px;gap:8px}.th-dashboard .db-feed-badge{font-size:9px;padding:2px 6px}.th-dashboard .db-feed-role{font-size:13px}.th-dashboard .db-feed-meta{font-size:11px;line-height:1.4}.th-dashboard .db-feed-details{padding:0 12px 12px}.th-dashboard .db-feed-desc{font-size:12px}.th-dashboard .db-feed-highlights li{font-size:11px}.th-dashboard .db-tag{font-size:10px;padding:2px 8px}.th-dashboard .db-skill-card-body{padding:10px 12px}.th-dashboard .db-skill-name{flex:0 0 38%;font-size:11px}.th-dashboard .db-project-card{padding:14px;gap:10px}.th-dashboard .db-project-name{font-size:14px}.th-dashboard .db-project-desc{font-size:12px}.th-dashboard .db-lang-card,.th-dashboard .db-int-card{padding:14px}.th-dashboard .db-chip{font-size:11px;padding:4px 10px}.th-dashboard .db-contact-card{padding:16px}.th-dashboard .db-contact-btn{padding:8px 14px;font-size:13px}.th-dashboard .db-section{margin-bottom:24px}.th-dashboard .db-section-title{font-size:15px}.th-dashboard .db-header-title{font-size:20px}.th-dashboard .db-header-sub{font-size:12px}.th-dashboard .db-clock-main,.th-dashboard .db-header-status{font-size:12px;padding:4px 10px}}@media(max-width:480px){.th-dashboard .db-hamburger{display:flex}.th-dashboard .db-sidebar{width:240px;transform:translate(-100%)}.th-dashboard .db-sidebar.db-sidebar--open{transform:translate(0)}.th-dashboard .db-sidebar.db-sidebar--open .db-nav-label,.th-dashboard .db-sidebar.db-sidebar--open .db-brand,.th-dashboard .db-sidebar.db-sidebar--open .db-status-text{display:inline}.th-dashboard .db-sidebar.db-sidebar--open .db-clock{display:block}.th-dashboard .db-sidebar.db-sidebar--open .db-sidebar-top{padding:24px 20px 16px}.th-dashboard .db-sidebar.db-sidebar--open .db-logo{width:52px;height:52px}.th-dashboard .db-sidebar.db-sidebar--open .db-logo-text{font-size:18px}.th-dashboard .db-sidebar.db-sidebar--open .db-nav{padding:16px 12px}.th-dashboard .db-sidebar.db-sidebar--open .db-nav-item{justify-content:flex-start;padding:10px 12px;gap:12px}.th-dashboard .db-sidebar.db-sidebar--open .db-nav-icon{width:24px}.th-dashboard .db-sidebar.db-sidebar--open .db-sidebar-bottom{padding:16px 20px;align-items:flex-start}.th-dashboard .db-sidebar.db-sidebar--open .db-location{font-size:12px}.th-dashboard .db-main{margin-left:0;padding:60px 12px 16px}.th-dashboard .db-kpi-grid{grid-template-columns:repeat(2,1fr);gap:8px}.th-dashboard .db-kpi-card{padding:10px 8px;border-radius:8px}.th-dashboard .db-kpi-value{font-size:20px}.th-dashboard .db-kpi-label{font-size:9px;margin-top:4px}.th-dashboard .db-header-title{font-size:18px}.th-dashboard .db-feed-header{padding:10px}.th-dashboard .db-feed-info{flex-basis:calc(100% - 80px)}.th-dashboard .db-feed-meta{font-size:10px;white-space:normal;word-break:break-word}.th-dashboard .db-skill-name{flex:0 0 35%;font-size:10px}.th-dashboard .db-skill-pct{font-size:9px;flex:0 0 24px}.th-dashboard .db-skill-bar{height:5px}.th-dashboard .db-lang-circle{width:36px;height:36px}.th-dashboard .db-lang-circle:after{inset:4px}.th-dashboard .db-lang-pct{font-size:11px;width:28px}.th-dashboard .db-lang-name{font-size:13px}.th-dashboard .db-lang-level{font-size:11px}.th-dashboard .db-lang-row{gap:10px}.th-dashboard .db-step{gap:12px}.th-dashboard .db-step-dot{width:24px;height:24px}.th-dashboard .db-step-track{width:24px}.th-dashboard .db-step-title{font-size:13px}.th-dashboard .db-step-details{font-size:11px}.th-dashboard .db-project-link{padding:6px 12px;font-size:12px}.th-dashboard .db-contact-links{flex-direction:column;width:100%}.th-dashboard .db-contact-btn{justify-content:center;width:100%}}@keyframes db-fade-in-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.th-dashboard .db-section{animation:db-fade-in-up .5s ease-out both}.th-dashboard .db-section:nth-child(2){animation-delay:.1s}.th-dashboard .db-section:nth-child(3){animation-delay:.15s}.th-dashboard .db-section:nth-child(4){animation-delay:.2s}.th-dashboard .db-section:nth-child(5){animation-delay:.25s}.th-dashboard .db-section:nth-child(6){animation-delay:.3s}.th-dashboard .db-section:nth-child(7){animation-delay:.35s}.th-dashboard .db-section:nth-child(8){animation-delay:.4s}:root[data-mode=dark] .th-immersive{--im-bg: #050510;--im-fg: #d4d0e0;--im-fg-h: #ffffff;--im-fg-2: #7a7490;--im-fg-3: #3d3850;--im-c-bg: rgba(20,15,40,.5);--im-c-bg-h: rgba(30,25,50,.7);--im-border: rgba(124,58,237,.15);--im-acc: #a855f7;--im-acc2: #ec4899;--im-acc-soft: rgba(168,85,247,.1);--im-acc-border: rgba(168,85,247,.25);--im-overlay-bg: rgba(5,5,16,.92)}:root[data-mode=light] .th-immersive{--im-bg: #faf5ff;--im-fg: #4a4560;--im-fg-h: #1a1030;--im-fg-2: #9a95aa;--im-fg-3: #e8e0f0;--im-c-bg: rgba(255,255,255,.7);--im-c-bg-h: rgba(255,255,255,1);--im-border: rgba(124,58,237,.12);--im-acc: #7c3aed;--im-acc2: #db2777;--im-acc-soft: rgba(124,58,237,.08);--im-acc-border: rgba(124,58,237,.2);--im-overlay-bg: rgba(250,245,255,.94)}.th-immersive{position:relative;width:100%;height:100%;background:var(--im-bg);color:var(--im-fg);font-family:Inter,sans-serif;overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.th-immersive *,.th-immersive *:before,.th-immersive *:after{box-sizing:border-box}.th-immersive .im-snap-container{width:100%;height:100vh;overflow-y:auto;overflow-x:hidden;scroll-snap-type:y mandatory;scroll-behavior:smooth}.th-immersive .im-section{min-height:100vh;scroll-snap-align:start;position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:2rem;opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.th-immersive .im-section.im-visible,.th-immersive .im-hero{opacity:1;transform:translateY(0)}.th-immersive .im-section-inner{width:100%;max-width:1200px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%}.th-immersive .im-section-title{font-family:Syne,sans-serif;font-size:clamp(2rem,5vw,3.5rem);font-weight:700;color:var(--im-fg-h);margin-bottom:2.5rem;text-align:center;letter-spacing:-.02em}.th-immersive .im-section-title--sm{font-size:clamp(1.4rem,3vw,2rem);margin-bottom:1.5rem}.th-immersive .im-hamburger{position:fixed;top:1.5rem;right:1.5rem;z-index:10000;width:48px;height:48px;background:var(--im-c-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--im-border);border-radius:12px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0;transition:background .3s,transform .3s}.th-immersive .im-hamburger:hover{background:var(--im-c-bg-h);transform:scale(1.05)}.th-immersive .im-hamburger-line{display:block;width:22px;height:2px;background:var(--im-fg-h);border-radius:2px;transition:transform .3s,opacity .3s}.th-immersive .im-nav-overlay{position:fixed;inset:0;z-index:9999;background:var(--im-overlay-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transform:scale(.95);transition:opacity .4s ease,transform .4s ease}.th-immersive .im-nav-overlay.im-nav-open{opacity:1;pointer-events:all;transform:scale(1)}.th-immersive .im-nav-close{position:absolute;top:1.5rem;right:1.5rem;width:48px;height:48px;background:none;border:1px solid var(--im-border);border-radius:12px;color:var(--im-fg-h);font-size:2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .3s,transform .3s}.th-immersive .im-nav-close:hover{background:var(--im-acc-soft);transform:scale(1.1)}.th-immersive .im-nav-links{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.th-immersive .im-nav-link{font-family:Syne,sans-serif;font-size:clamp(2rem,5vw,4rem);font-weight:700;color:var(--im-fg-2);text-decoration:none;letter-spacing:-.02em;transition:color .3s,transform .3s;position:relative}.th-immersive .im-nav-link:hover{color:var(--im-acc);transform:translate(10px)}.th-immersive .im-nav-link:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:3px;background:linear-gradient(90deg,var(--im-acc),var(--im-acc2));border-radius:2px;transition:width .3s ease}.th-immersive .im-nav-link:hover:after{width:100%}.th-immersive .im-hero{overflow:hidden;padding:0}.th-immersive .im-hero-bg{position:absolute;inset:0;background:linear-gradient(135deg,#a855f7,#ec4899,#6366f1,#a855f7);background-size:400% 400%;animation:im-gradient-shift 15s ease infinite;opacity:.15;z-index:0}@keyframes im-gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.th-immersive .im-hero-content{position:relative;z-index:1;text-align:center;padding:2rem}.th-immersive .im-hero-name{font-family:Syne,sans-serif;font-size:clamp(3rem,18vw,15rem);font-weight:300;line-height:.9;letter-spacing:-.04em;margin:0;background:linear-gradient(135deg,var(--im-acc),var(--im-acc2),#6366f1,var(--im-acc));background-size:400% 400%;animation:im-gradient-shift 15s ease infinite;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.th-immersive .im-hero-title{font-family:Inter,sans-serif;font-size:clamp(1rem,2.5vw,1.6rem);color:var(--im-fg);margin-top:2rem;font-weight:400;letter-spacing:.05em;text-transform:uppercase;opacity:0;animation:im-fade-in-up 1s ease .6s forwards}.th-immersive .im-hero-tagline{font-family:Inter,sans-serif;font-size:clamp(.85rem,1.8vw,1.1rem);color:var(--im-fg-2);margin-top:1rem;max-width:600px;margin-left:auto;margin-right:auto;line-height:1.6;opacity:0;animation:im-fade-in-up 1s ease 1s forwards}.th-immersive .im-hero-badge{display:inline-block;margin-top:1.5rem;padding:.5rem 1.5rem;font-size:.85rem;font-weight:600;color:var(--im-acc);border:1px solid var(--im-acc-border);border-radius:24px;background:var(--im-acc-soft);text-transform:uppercase;letter-spacing:.1em;opacity:0;animation:im-fade-in-up 1s ease 1.4s forwards}@keyframes im-fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.th-immersive .im-scroll-indicator{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);z-index:2;color:var(--im-fg-2);animation:im-bounce 2s ease infinite;transition:opacity .6s}.th-immersive .im-scroll-indicator.im-hidden{opacity:0;pointer-events:none}@keyframes im-bounce{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(10px)}}.th-immersive .im-carousel{position:relative;width:100%;max-width:900px;overflow:hidden}.th-immersive .im-carousel-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:0}.th-immersive .im-carousel-track::-webkit-scrollbar{display:none}.th-immersive .im-carousel-slide{flex:0 0 100%;scroll-snap-align:center;display:flex;align-items:center;justify-content:center;padding:1rem}.th-immersive .im-carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border:1px solid var(--im-border);border-radius:50%;background:var(--im-c-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--im-fg-h);font-size:1.2rem;cursor:pointer;z-index:5;display:flex;align-items:center;justify-content:center;transition:background .3s,transform .3s,border-color .3s}.th-immersive .im-carousel-arrow:hover{background:var(--im-c-bg-h);border-color:var(--im-acc-border);transform:translateY(-50%) scale(1.1)}.th-immersive .im-carousel-arrow--left{left:-.5rem}.th-immersive .im-carousel-arrow--right{right:-.5rem}.th-immersive .im-carousel-dots{display:flex;justify-content:center;gap:.5rem;margin-top:1.5rem}.th-immersive .im-dot{width:10px;height:10px;border-radius:50%;border:1px solid var(--im-acc-border);background:transparent;cursor:pointer;padding:0;transition:background .3s,transform .3s}.th-immersive .im-dot--active{background:var(--im-acc);transform:scale(1.2)}.th-immersive .im-dot:hover{background:var(--im-acc)}.th-immersive .im-exp-card{background:var(--im-c-bg);border:1px solid var(--im-border);border-radius:24px;padding:2.5rem;width:100%;max-width:700px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:border-color .3s,background .3s}.th-immersive .im-exp-card:hover{background:var(--im-c-bg-h);border-color:var(--im-acc-border)}.th-immersive .im-exp-period{font-family:JetBrains Mono,monospace;font-size:.8rem;color:var(--im-acc);text-transform:uppercase;letter-spacing:.1em}.th-immersive .im-exp-role{font-family:Syne,sans-serif;font-size:clamp(1.4rem,3vw,2rem);font-weight:700;color:var(--im-fg-h);margin:.5rem 0 .25rem;letter-spacing:-.02em}.th-immersive .im-exp-company{font-size:.95rem;color:var(--im-fg-2);margin:0 0 1rem}.th-immersive .im-exp-desc{font-size:.95rem;line-height:1.6;color:var(--im-fg);margin-bottom:1rem}.th-immersive .im-exp-highlights{list-style:none;padding:0;margin:0 0 1rem}.th-immersive .im-exp-highlights li{font-size:.85rem;color:var(--im-fg);padding:.3rem 0 .3rem 1.2rem;position:relative;line-height:1.5}.th-immersive .im-exp-highlights li:before{content:"";position:absolute;left:0;top:.7rem;width:6px;height:6px;border-radius:50%;background:var(--im-acc)}.th-immersive .im-exp-tags{display:flex;flex-wrap:wrap;gap:.4rem}.th-immersive .im-tag{display:inline-block;font-family:JetBrains Mono,monospace;font-size:.7rem;padding:.25rem .7rem;border-radius:24px;background:var(--im-acc-soft);color:var(--im-acc);border:1px solid var(--im-acc-border);letter-spacing:.02em}.th-immersive .im-skills-radial{position:relative;width:min(90vw,700px);height:min(90vw,700px);margin:0 auto}.th-immersive .im-skills-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:Syne,sans-serif;font-size:clamp(1rem,2.5vw,1.6rem);font-weight:700;color:var(--im-fg-h);text-align:center;z-index:2;background:var(--im-c-bg);border:1px solid var(--im-border);border-radius:50%;width:clamp(100px,18vw,140px);height:clamp(100px,18vw,140px);display:flex;align-items:center;justify-content:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.th-immersive .im-skill-node{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(calc(360deg / var(--node-total) * var(--node-index))) translateY(calc(-1*min(38vw,270px))) rotate(calc(-360deg / var(--node-total) * var(--node-index)));text-align:center;cursor:pointer;z-index:3;opacity:0;transition:opacity .6s ease,transform .6s ease;transition-delay:calc(var(--node-index) * .1s)}.th-immersive .im-skills-radial.im-radial-visible .im-skill-node{opacity:1}.th-immersive .im-skill-icon{font-size:1.6rem;margin-bottom:.3rem;color:var(--im-acc);transition:transform .3s}.th-immersive .im-skill-node:hover .im-skill-icon{transform:scale(1.3)}.th-immersive .im-skill-label{font-family:Syne,sans-serif;font-size:clamp(.7rem,1.5vw,.95rem);font-weight:600;color:var(--im-fg-h);white-space:nowrap;margin-bottom:.3rem}.th-immersive .im-skill-items{display:none;flex-direction:column;gap:.2rem;background:var(--im-c-bg-h);border:1px solid var(--im-acc-border);border-radius:16px;padding:.8rem 1rem;position:absolute;top:100%;left:50%;transform:translate(-50%);min-width:200px;z-index:100;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);animation:im-fade-in-up .3s ease forwards}.th-immersive .im-skill-node:hover .im-skill-items,.th-immersive .im-skill-node:focus-within .im-skill-items{display:flex}.th-immersive .im-skill-item{font-size:.75rem;color:var(--im-fg);line-height:1.5;text-align:left}.th-immersive .im-carousel--projects .im-carousel-slide{flex:0 0 85%}.th-immersive .im-proj-card{background:var(--im-c-bg);border:1px solid var(--im-border);border-radius:24px;padding:3rem;width:100%;max-width:700px;text-align:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:border-color .3s,background .3s,transform .3s}.th-immersive .im-proj-card:hover{background:var(--im-c-bg-h);border-color:var(--im-acc-border);transform:translateY(-4px)}.th-immersive .im-proj-year{font-family:JetBrains Mono,monospace;font-size:.8rem;color:var(--im-acc);text-transform:uppercase;letter-spacing:.15em}.th-immersive .im-proj-name{font-family:Syne,sans-serif;font-size:clamp(2rem,5vw,3.5rem);font-weight:700;color:var(--im-fg-h);margin:.5rem 0 1rem;letter-spacing:-.03em}.th-immersive .im-proj-desc{font-size:1rem;line-height:1.7;color:var(--im-fg);margin-bottom:1.5rem;max-width:550px;margin-left:auto;margin-right:auto}.th-immersive .im-proj-tags{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center;margin-bottom:1.5rem}.th-immersive .im-proj-link{display:inline-block;font-family:Syne,sans-serif;font-size:.95rem;font-weight:600;color:var(--im-acc);text-decoration:none;padding:.6rem 2rem;border:1px solid var(--im-acc-border);border-radius:24px;transition:background .3s,color .3s,transform .3s}.th-immersive .im-proj-link:hover{background:var(--im-acc);color:#fff;transform:scale(1.05)}.th-immersive .im-formation-section{padding:4rem 2rem}.th-immersive .im-formation-grid{display:grid;grid-template-columns:1fr;gap:3rem;max-width:900px;justify-items:center}.th-immersive .im-formation-block{text-align:center;width:100%}.th-immersive .im-formation-list{display:flex;flex-direction:column;gap:2.5rem}.th-immersive .im-formation-item{text-align:center}.th-immersive .im-formation-year{font-family:JetBrains Mono,monospace;font-size:clamp(1.5rem,4vw,2.5rem);font-weight:700;color:var(--im-acc);display:block;margin-bottom:.3rem}.th-immersive .im-formation-title{font-family:Syne,sans-serif;font-size:clamp(1.2rem,3vw,1.8rem);font-weight:700;color:var(--im-fg-h);margin:.25rem 0;letter-spacing:-.01em}.th-immersive .im-formation-level{font-family:JetBrains Mono,monospace;font-size:.8rem;color:var(--im-acc);display:block;margin-bottom:.5rem;letter-spacing:.05em}.th-immersive .im-formation-details{font-size:.9rem;color:var(--im-fg-2);max-width:500px;margin:0 auto;line-height:1.6}.th-immersive .im-lang-block{text-align:center;width:100%}.th-immersive .im-lang-circles{display:flex;justify-content:center;gap:3rem;flex-wrap:wrap}.th-immersive .im-lang-circle{position:relative;width:120px;height:120px}.th-immersive .im-lang-svg{width:100%;height:100%;transform:rotate(-90deg)}.th-immersive .im-lang-bg-ring{fill:none;stroke:var(--im-fg-3);stroke-width:6}.th-immersive .im-lang-fg-ring{fill:none;stroke:var(--im-acc);stroke-width:6;stroke-linecap:round;stroke-dasharray:calc(2 * 3.14159 * 52);stroke-dashoffset:calc(2 * 3.14159 * 52 * (1 - var(--lang-pct) / 100));transition:stroke-dashoffset 1.2s ease}.th-immersive .im-lang-info{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.th-immersive .im-lang-name{font-family:Syne,sans-serif;font-size:.85rem;font-weight:600;color:var(--im-fg-h)}.th-immersive .im-lang-level{font-size:.7rem;color:var(--im-fg-2);margin-top:.15rem}.th-immersive .im-interests-block{text-align:center;width:100%}.th-immersive .im-interests-cloud{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center;max-width:600px;margin:0 auto}.th-immersive .im-interest-tag{font-family:Syne,sans-serif;font-size:clamp(.85rem,1.5vw,1.05rem);font-weight:500;padding:.5rem 1.4rem;border-radius:24px;background:var(--im-acc-soft);color:var(--im-fg-h);border:1px solid var(--im-acc-border);transform:rotate(calc((var(--tag-i) - 3) * 2deg));transition:transform .3s,background .3s,color .3s}.th-immersive .im-interest-tag:hover{transform:rotate(0) scale(1.08);background:var(--im-acc);color:#fff;border-color:var(--im-acc)}.th-immersive .im-contact{overflow:hidden;padding-bottom:0}.th-immersive .im-contact-bg{position:absolute;inset:0;background:linear-gradient(315deg,#6366f1,#ec4899,#a855f7,#6366f1);background-size:400% 400%;animation:im-gradient-shift 15s ease infinite;opacity:.12;z-index:0}.th-immersive .im-contact-content{position:relative;z-index:1;text-align:center;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center}.th-immersive .im-contact-headline{font-family:Syne,sans-serif;font-size:clamp(4rem,15vw,12rem);font-weight:300;color:var(--im-fg-h);margin:0;line-height:1;letter-spacing:-.04em}.th-immersive .im-contact-sub{font-size:clamp(1rem,2vw,1.3rem);color:var(--im-fg-2);margin:1.5rem 0 2.5rem}.th-immersive .im-contact-buttons{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}.th-immersive .im-contact-btn{display:inline-flex;align-items:center;gap:.6rem;padding:.9rem 2rem;font-family:Syne,sans-serif;font-size:1rem;font-weight:600;text-decoration:none;border-radius:24px;border:1px solid var(--im-acc-border);color:var(--im-fg-h);background:var(--im-c-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:background .3s,transform .3s,border-color .3s}.th-immersive .im-contact-btn:hover{transform:translateY(-3px) scale(1.03);border-color:var(--im-acc)}.th-immersive .im-contact-btn--linkedin:hover{background:#0077b5;color:#fff;border-color:#0077b5}.th-immersive .im-contact-btn--github:hover{background:var(--im-fg-h);color:var(--im-bg);border-color:var(--im-fg-h)}.th-immersive .im-footer{position:relative;z-index:1;width:100%;text-align:center;padding:2rem;font-size:.8rem;color:var(--im-fg-2);display:flex;align-items:center;justify-content:center;gap:.5rem}.th-immersive .im-footer-sep{opacity:.4}@media(max-width:768px){.th-immersive .im-snap-container{scroll-snap-type:y proximity}.th-immersive .im-section{min-height:100vh;height:auto;scroll-snap-align:start}.th-immersive .im-carousel-arrow{width:36px;height:36px;font-size:1rem}.th-immersive .im-carousel-arrow--left{left:.25rem}.th-immersive .im-carousel-arrow--right{right:.25rem}.th-immersive .im-carousel-slide{flex:0 0 100%}.th-immersive .im-exp-card{padding:1.5rem;border-radius:18px}.th-immersive .im-proj-card{padding:2rem 1.5rem;border-radius:18px}.th-immersive .im-carousel--projects .im-carousel-slide{flex:0 0 95%}.th-immersive .im-skills-radial{width:min(95vw,360px);height:min(95vw,360px)}.th-immersive .im-skill-node{transform:translate(-50%,-50%) rotate(calc(360deg / var(--node-total) * var(--node-index))) translateY(calc(-1*min(42vw,150px))) rotate(calc(-360deg / var(--node-total) * var(--node-index)))}.th-immersive .im-skill-label{font-size:.65rem}.th-immersive .im-skill-icon{font-size:1.2rem}.th-immersive .im-skill-items{min-width:160px;padding:.6rem .8rem}.th-immersive .im-skill-item{font-size:.65rem}.th-immersive .im-skills-center{width:80px;height:80px;font-size:.75rem}.th-immersive .im-formation-section{padding:3rem 1.5rem}.th-immersive .im-lang-circles{gap:1.5rem}.th-immersive .im-lang-circle{width:100px;height:100px}.th-immersive .im-contact-btn{padding:.7rem 1.5rem;font-size:.9rem}.th-immersive .im-nav-links{gap:1rem}.th-immersive .im-nav-link{min-height:44px;display:flex;align-items:center;padding:.5rem 0}.th-immersive .im-interests-cloud{flex-wrap:wrap;gap:.5rem;max-width:100%}.th-immersive .im-interest-tag{font-size:.8rem;padding:.4rem 1rem}}@media(max-width:640px){.th-immersive .im-hero-name{font-size:clamp(3rem,15vw,10rem)}.th-immersive .im-skills-radial{position:static;width:100%;height:auto;display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 1rem}.th-immersive .im-skills-center{grid-column:1 / -1;position:static;transform:none;width:auto;height:auto;border-radius:16px;padding:1rem;margin-bottom:.5rem;font-size:1rem}.th-immersive .im-skill-node{position:static!important;transform:none!important;opacity:1;text-align:center;background:var(--im-c-bg);border:1px solid var(--im-border);border-radius:16px;padding:1rem .75rem}.th-immersive .im-skills-radial.im-radial-visible .im-skill-node{opacity:1}.th-immersive .im-skill-icon{font-size:1.4rem}.th-immersive .im-skill-label{font-size:.75rem;white-space:normal}.th-immersive .im-skill-items{position:static;transform:none;min-width:unset;background:none;border:none;padding:.4rem 0 0;backdrop-filter:none;-webkit-backdrop-filter:none;display:flex;animation:none}.th-immersive .im-skill-item{font-size:.65rem;text-align:center}}@media(max-width:480px){.th-immersive .im-hero-name,.th-immersive .im-contact-headline{font-size:clamp(3rem,13vw,6rem)}.th-immersive .im-carousel-arrow{display:none}.th-immersive .im-exp-highlights li{font-size:.78rem}.th-immersive .im-lang-circle{width:70px;height:70px}.th-immersive .im-lang-name{font-size:.65rem}.th-immersive .im-lang-level{font-size:.55rem}.th-immersive .im-lang-circles{gap:1rem}.th-immersive .im-interest-tag{font-size:.75rem;padding:.35rem .8rem}.th-immersive .im-nav-link{font-size:clamp(1.6rem,5vw,2.5rem);min-height:48px;padding:.6rem 0}.th-immersive .im-section{padding:1.5rem 1rem}.th-immersive .im-hero-content{padding:1rem}}.th-space{position:fixed;inset:0;overflow:hidden;background:#5c94fc;font-family:JetBrains Mono,monospace}.gm-canvas{position:fixed;inset:0;z-index:0;display:block;image-rendering:pixelated;image-rendering:crisp-edges}.gm-hud{position:fixed;top:12px;left:50%;transform:translate(-50%);z-index:5;display:flex;gap:20px;font-family:JetBrains Mono,monospace;font-size:12px;letter-spacing:.08em;background:#1a1028;padding:6px 18px;border:2px solid #fca044;outline:2px solid #5c2d00;color:#fff;pointer-events:none}.gm-hud-zone{color:#fca044}.gm-hud-coins{color:#ffdf00}.gm-hud-kills{color:#f66}.gm-hint{position:fixed;inset:0;z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#000000d9;color:#fff;font-family:JetBrains Mono,monospace;font-size:14px;line-height:2.2;letter-spacing:.04em;transition:opacity .5s}.gm-hint.hidden{opacity:0;pointer-events:none}.gm-hint-title{font-size:20px;color:#fca044;letter-spacing:.2em;margin-bottom:8px}.gm-hint b{color:#fca044}.gm-hint-sub{color:#ffffff80;font-size:11px;margin-top:8px}.gm-hint-dismiss{color:#ffffff40;font-size:10px;margin-top:4px;animation:gm-blink 2s infinite}@keyframes gm-blink{0%,to{opacity:1}50%{opacity:.3}}.gm-panel{position:fixed;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.92) translateY(12px);transition:opacity .35s,transform .35s;pointer-events:none;padding:50px 16px}.gm-panel.active{opacity:1;transform:scale(1) translateY(0);pointer-events:auto}.gm-card{max-width:480px;width:100%;background:#1a1028;border:4px solid #fca044;outline:3px solid #5c2d00;border-radius:0;padding:24px;box-shadow:inset 0 0 0 2px #2a1838;color:#e0e0e0;text-align:center;overflow:hidden;position:relative;font-family:JetBrains Mono,monospace}.gm-card--lg{max-width:640px;text-align:left;max-height:70vh;display:flex;flex-direction:column}.gm-pscroll{overflow-y:auto;flex:1;min-height:0;padding-right:6px;scrollbar-width:thin;scrollbar-color:rgba(252,160,68,.3) transparent;pointer-events:auto}.gm-close-btn{position:absolute;top:8px;right:10px;background:none;border:2px solid #fca044;color:#fca044;font-family:JetBrains Mono,monospace;font-size:16px;width:28px;height:28px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;line-height:1;z-index:2;border-radius:0}.gm-close-btn:hover{background:#fca044;color:#1a1028}.gm-ph{margin-bottom:14px}.gm-pn{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.2em;color:#fca044;display:block;margin-bottom:4px}.gm-pt{font-family:JetBrains Mono,monospace;font-size:clamp(1.3rem,3vw,1.8rem);font-weight:700;color:#fff}.gm-hero-name{font-family:JetBrains Mono,monospace;font-size:clamp(1.6rem,5vw,2.4rem);font-weight:800;color:#fff;line-height:1.1;margin-bottom:8px}.gm-hero-title{font-size:clamp(.85rem,2vw,1rem);color:#c0c8d0;margin-bottom:10px}.gm-hero-tagline{font-size:11px;color:#fff6;line-height:1.8}.gm-hero-links{margin-top:16px;display:flex;justify-content:center;gap:12px;font-family:JetBrains Mono,monospace;font-size:11px}.gm-hero-links a{color:#fca044;pointer-events:auto;transition:color .2s}.gm-hero-links a:hover{color:#ffdf00}.gm-hero-links span{color:#fca0444d}.gm-xpc{padding:12px;border:2px solid rgba(252,160,68,.2);border-radius:0;margin-bottom:8px;background:#fca0440a}.gm-xpt{display:flex;justify-content:space-between;margin-bottom:4px}.gm-xpp{font-family:JetBrains Mono,monospace;font-size:10px;color:#fca044}.gm-xpl{font-size:9px;color:#ffffff4d;font-family:JetBrains Mono,monospace}.gm-xpr{font-size:14px;font-weight:700;color:#fff;margin-bottom:2px}.gm-xpco{font-size:11px;color:#fca04480;margin-bottom:6px}.gm-xpd{font-size:11px;color:#8898a8;line-height:1.5;margin-bottom:4px}.gm-hl{margin-bottom:4px}.gm-hl li{font-size:10px;color:#687888;line-height:1.4;margin-bottom:2px}.gm-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.gm-tag{font-family:JetBrains Mono,monospace;font-size:8px;padding:2px 6px;border-radius:0;border:2px solid rgba(252,160,68,.25);color:#fca044;background:#fca0440f}.gm-sgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}.gm-scard{padding:10px;border:2px solid rgba(252,160,68,.15);border-radius:0;background:#fca04408}.gm-scat{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#fff;margin-bottom:6px}.gm-sico{color:#fca044;opacity:.6}.gm-slist li{font-size:10px;color:#708090;margin-bottom:2px;line-height:1.3}.gm-projc{display:block;padding:12px;border:2px solid rgba(252,160,68,.15);border-radius:0;margin-bottom:8px;background:#fca04408;transition:border-color .2s;pointer-events:auto}.gm-projc:hover{border-color:#fca04466}.gm-projt{display:flex;justify-content:space-between;margin-bottom:4px}.gm-projn{font-size:15px;font-weight:700;color:#fff;transition:color .2s}.gm-projc:hover .gm-projn{color:#fca044}.gm-projy{font-family:JetBrains Mono,monospace;font-size:10px;color:#fca0444d}.gm-projd{font-size:11px;color:#8898a8;line-height:1.5;margin-bottom:4px}.gm-fc{padding:10px;border:2px solid rgba(252,160,68,.15);border-radius:0;margin-bottom:8px;background:#fca04408}.gm-fy{font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700;color:#fca044}.gm-ft{font-size:13px;font-weight:700;color:#fff;margin:2px 0}.gm-fl{font-family:JetBrains Mono,monospace;font-size:9px;color:#fca04466;margin-bottom:2px}.gm-fd{font-size:10px;color:#687888;line-height:1.4}.gm-duo{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.gm-duot{font-family:JetBrains Mono,monospace;font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#fca044;margin-bottom:8px}.gm-lr{margin-bottom:6px;font-size:11px}.gm-ll{color:#607080;margin-left:6px}.gm-lbg{height:3px;background:#fca04426;border-radius:0;margin-top:3px;overflow:hidden}.gm-lb{height:100%;background:linear-gradient(90deg,#c06020,#fca044);border-radius:0}.gm-ints{display:flex;flex-wrap:wrap;gap:4px}.gm-int{font-size:9px;padding:2px 7px;border-radius:0;border:2px solid rgba(252,160,68,.15);color:#8090a0}.gm-csub{font-size:12px;color:#fff6;text-align:center;margin:6px 0 16px}.gm-clinks{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.gm-btn{font-family:JetBrains Mono,monospace;font-size:12px;padding:10px 22px;border-radius:0;border:2px solid #fca044;color:#fca044;background:transparent;transition:all .15s;pointer-events:auto;cursor:pointer;text-decoration:none;display:inline-block}.gm-btn:hover{background:#fca044;color:#1a1028;transform:none}.gm-btn--g{border-color:#fca0444d;color:#8090a0}.gm-btn--g:hover{border-color:#fca044;color:#1a1028;background:#fca044}.gm-copy{margin-top:14px;font-family:JetBrains Mono,monospace;font-size:9px;color:#ffffff26;text-align:center}.gm-touch{position:fixed;bottom:16px;left:50%;transform:translate(-50%);z-index:15;display:none;gap:8px;pointer-events:auto}.gm-tb{all:unset;cursor:pointer;width:52px;height:52px;border-radius:0;background:#1a1028bf;border:2px solid rgba(252,160,68,.3);color:#fff;font-size:18px;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent;user-select:none;font-family:JetBrains Mono,monospace}.gm-tb:active{background:#fca04459;border-color:#fca044}.gm-tb-e{font-size:14px;font-weight:700;color:#fca044;border-color:#fca044}@media(max-width:768px){.gm-touch{display:flex}.gm-card--lg{max-height:60vh}.gm-sgrid,.gm-duo{grid-template-columns:1fr}}@media(max-width:480px){.gm-hero-name{font-size:1.6rem}}
