@font-face{font-family:Thmanyah Sans;src:url(/fonts/thmanyah-sans/thmanyahsans-Light.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Thmanyah Sans;src:url(/fonts/thmanyah-sans/thmanyahsans-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Thmanyah Sans;src:url(/fonts/thmanyah-sans/thmanyahsans-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Thmanyah Sans;src:url(/fonts/thmanyah-sans/thmanyahsans-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Thmanyah Sans;src:url(/fonts/thmanyah-sans/thmanyahsans-Black.woff2)format("woff2");font-weight:800 900;font-style:normal;font-display:swap}:root{--bg:#050806;--panel:#0b120e;--text:#eef5f0;--text-secondary:#8fa39a;--text-muted:#57685f;--text-body:#a9bab1;--mobile-link:#c7d6cd;--accent:#3ddc84;--accent-hover:#5ce89d;--accent-cyan:#2ee6c8;--border:#3ddc8426;--border-strong:#3ddc844d;--border-neutral:#ffffff1f;--font-mono:"Thmanyah Sans", sans-serif;--font-body:"Thmanyah Sans", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}html[dir=rtl]{direction:rtl}a{color:inherit;text-decoration:none}::selection{background:#3ddc844d}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}.split-line{display:block;overflow:hidden}[data-reveal]{visibility:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.container{max-width:1180px;margin:0 auto;padding-left:24px;padding-right:24px}.container-narrow{max-width:840px;margin:0 auto;padding-left:24px;padding-right:24px}section{padding-top:60px;padding-bottom:96px}.eyebrow{font-family:var(--font-mono);color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px;font-size:12px;font-weight:700}.h2{font-family:var(--font-mono);color:var(--text);margin:0 0 40px;font-size:clamp(22px,3vw,30px);font-weight:700}.chamfer{clip-path:polygon(0 0,calc(100% - 26px) 0,100% 26px,100% 100%,0 100%)}.chamfer-lg{clip-path:polygon(0 0,calc(100% - 34px) 0,100% 34px,100% 100%,0 100%)}.chamfer-sm{clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,0 100%)}html[dir=rtl] .chamfer{clip-path:polygon(26px 0,100% 0,100% 100%,0 100%,0 26px)}html[dir=rtl] .chamfer-lg{clip-path:polygon(34px 0,100% 0,100% 100%,0 100%,0 34px)}html[dir=rtl] .chamfer-sm{clip-path:polygon(22px 0,100% 0,100% 100%,0 100%,0 22px)}.card{background:var(--panel);border:1px solid var(--border)}.tag{font-family:var(--font-mono);color:var(--text-secondary);border:1px solid var(--border);background:#3ddc840f;border-radius:3px;padding:5px 10px;font-size:11px;font-weight:500}.btn{font-family:var(--font-mono);cursor:pointer;border:none;border-radius:4px;padding:13px 22px;font-size:13.5px;font-weight:700;display:inline-block}.btn-filled{color:#050806;background:var(--accent);transition:background .2s}.btn-filled:hover{background:var(--accent-hover)}.btn-outline{color:var(--text);background:0 0;border:1px solid #3ddc8459;transition:border-color .2s}.btn-outline:hover{border-color:var(--accent)}.chip{font-family:var(--font-mono);color:var(--mobile-link);border:1px solid var(--border-neutral);border-radius:4px;padding:8px 14px;font-size:12px;font-weight:600;transition:border-color .2s}.chip:hover{border-color:var(--accent)}@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-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--font-weight-semibold:600;--leading-snug:1.375;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer utilities{.visible{visibility:visible}.relative{position:relative}.z-50{z-index:50}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.hidden{display:none}.inline-flex{display:inline-flex}.w-fit{width:fit-content}.max-w-\[240px\]{max-width:240px}.grow{flex-grow:1}.resize{resize:both}.items-center{align-items:center}.rounded-\[3px\]{border-radius:3px}.border{border-style:var(--tw-border-style);border-width:1px}.border-\[rgba\(61\,220\,132\,0\.2\)\]{border-color:#3ddc8433}.border-\[var\(--border\)\]{border-color:var(--border)}.border-\[var\(--border-neutral\)\]{border-color:var(--border-neutral)}.border-\[var\(--border-strong\)\]{border-color:var(--border-strong)}.bg-\[rgba\(61\,220\,132\,0\.08\)\]{background-color:#3ddc8414}.bg-\[var\(--panel\)\]{background-color:var(--panel)}.bg-transparent{background-color:#0000}.fill-\[var\(--panel\)\]{fill:var(--panel)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-\[13px\]{padding-inline:13px}.py-2{padding-block:calc(var(--spacing) * 2)}.py-\[7px\]{padding-block:7px}.\[font-family\:var\(--font-mono\)\]{font-family:var(--font-mono)}.text-\[11\.5px\]{font-size:11.5px}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-\[var\(--text\)\]{color:var(--text)}.text-\[var\(--text-secondary\)\]{color:var(--text-secondary)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){.hover\:border-\[var\(--accent\)\]:hover{border-color:var(--accent)}.hover\:bg-\[rgba\(61\,220\,132\,0\.16\)\]:hover{background-color:#3ddc8429}.hover\:text-\[var\(--text\)\]:hover{color:var(--text)}}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}.nav{z-index:40;background:var(--bg);border-bottom:1px solid var(--border);padding:18px 0;transition:padding .35s;position:fixed;top:0;left:0;right:0}.nav--scrolled{padding:13px 0}.nav__row{justify-content:space-between;align-items:center;display:flex}.nav__logo{font-family:var(--font-mono);letter-spacing:.02em;color:var(--text);font-size:15px;font-weight:700}.nav__logo-accent{color:var(--accent)}.nav__links{align-items:center;gap:20px;display:flex}.nav__link{font-family:var(--font-mono);color:var(--text-secondary);letter-spacing:.02em;white-space:nowrap;font-size:11.5px;font-weight:500;transition:color .2s}.nav__link:hover{color:var(--accent)}.nav__resume{font-family:var(--font-mono);color:#050806;background:var(--accent);white-space:nowrap;border-radius:3px;padding:8px 14px;font-size:11.5px;font-weight:700;transition:background .2s}.nav__resume:hover{background:var(--accent-hover)}.nav__lang{font-family:var(--font-mono);color:var(--text);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #3ddc844d;border-radius:3px;padding:7px 11px;font-size:11px;font-weight:700;transition:border-color .2s,color .2s}.nav__lang:hover{border-color:var(--accent);color:var(--accent)}.nav__mobile-row{align-items:center;gap:10px;display:flex}.nav__hamburger{cursor:pointer;background:0 0;border:1px solid #3ddc844d;border-radius:4px;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:36px;height:36px;display:flex}.nav__hamburger span{background:var(--accent);width:14px;height:1.5px}.nav__mobile-menu{opacity:0;background:var(--bg);max-height:0;transition:max-height .35s,opacity .3s;overflow:hidden}.nav__mobile-menu--open{opacity:1;max-height:440px}.nav__mobile-list{flex-direction:column;gap:2px;padding:6px 24px 18px;display:flex}.nav__mobile-link{font-family:var(--font-mono);color:var(--mobile-link);border-bottom:1px solid #3ddc841f;padding:11px 4px;font-size:13px;font-weight:500}.nav__mobile-resume{text-align:center;font-family:var(--font-mono);color:#050806;background:var(--accent);border-radius:3px;margin-top:12px;padding:11px 16px;font-size:12px;font-weight:700}.pdf-viewer-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:60;background:#020403d9;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.pdf-viewer{background:var(--panel);border:1px solid #3ddc8440;flex-direction:column;width:100%;max-width:960px;height:min(88vh,1100px);display:flex}.pdf-viewer__top{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.pdf-viewer__title{font-family:var(--font-mono);color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.pdf-viewer__actions{flex:none;align-items:center;gap:14px;display:flex}.pdf-viewer__btn{padding:8px 14px;font-size:11.5px}.pdf-viewer__close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:20px;line-height:1}.pdf-viewer__frame{background:#fff;border:none;flex:1;width:100%}.pdf-viewer__image{object-fit:contain;background:#fff;flex:1;width:100%;height:100%;min-height:0}.hero{max-width:1180px;margin:0 auto;padding:150px 24px 96px;position:relative;overflow:hidden}.hero__grid-bg{pointer-events:none;background-image:linear-gradient(#3ddc840f 1px,#0000 1px),linear-gradient(90deg,#3ddc840f 1px,#0000 1px);background-size:42px 42px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 60% at 50% 20%,#000 40%,#0000 100%);mask-image:radial-gradient(70% 60% at 50% 20%,#000 40%,#0000 100%)}.hero__bars-bg{opacity:.08;pointer-events:none;align-items:flex-end;gap:16px;height:200px;padding:0 24px;display:flex;position:absolute;bottom:0;left:0;right:0}.hero__bar{transform-origin:bottom;width:100%;animation:2.4s ease-in-out infinite hero-bar-pulse}.hero__row{flex-wrap:wrap;align-items:center;gap:56px;display:flex;position:relative}.hero__copy{flex:480px;min-width:300px}.hero__status{font-family:var(--font-mono);color:var(--accent);border:1px solid #3ddc844d;border-radius:3px;align-items:center;gap:8px;margin-bottom:24px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.hero__status-dot{background:var(--accent);border-radius:50%;width:6px;height:6px;position:relative}.hero__status-dot:before{content:"";background:var(--accent);border-radius:50%;animation:1.8s ease-out infinite hero-status-ping;position:absolute;inset:0}@keyframes hero-status-ping{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(2.8)}}.hero__cursor{animation:1s step-start infinite blink}.hero__title{font-family:var(--font-mono);color:var(--text);letter-spacing:-.01em;margin:0 0 18px;font-size:clamp(32px,5vw,52px);font-weight:800;line-height:1.1}.hero__role{font-family:var(--font-mono);color:var(--accent);margin:0 0 20px;font-size:clamp(16px,2vw,20px);font-weight:600}.hero__desc{color:var(--text-secondary);max-width:520px;margin:0 0 32px;font-size:15.5px;line-height:1.7}.hero__actions{flex-wrap:wrap;gap:12px;margin-bottom:28px;display:flex}.hero__chips{gap:10px;display:flex}.hero__cardWrap{flex:340px;justify-content:center;min-width:280px;display:flex}.hero__card{background:var(--panel);border:1px solid #3ddc8440;width:100%;max-width:380px;padding:22px;position:relative;box-shadow:0 30px 70px -25px #000c}.hero__card-top{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.hero__dots{gap:6px;display:flex}.hero__dots span{background:#3ddc8440;border-radius:50%;width:9px;height:9px}.hero__card-label{font-family:var(--font-mono);color:var(--text-muted);font-size:10px}.hero__card-eyebrow{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:14px;font-size:11px;font-weight:600}.hero__card-bars{align-items:flex-end;gap:8px;height:90px;margin-bottom:18px;display:flex}.hero__card-bar{transform-origin:bottom;border-radius:2px;flex:1;animation:2.4s ease-in-out infinite hero-bar-pulse}@keyframes hero-bar-pulse{0%,to{transform:scaleY(1)}50%{transform:scaleY(.7)}}.hero__card-skeleton{flex-direction:column;gap:8px;display:flex}.hero__card-skeleton div{background:linear-gradient(90deg,#3ddc841a 25%,#3ddc844d 50%,#3ddc841a 75%) 0 0/200% 100%;border-radius:2px;height:8px;animation:1.8s ease-in-out infinite hero-skeleton-shimmer}@keyframes hero-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.hero__card-bar,.hero__card-skeleton div,.hero__bar,.hero__status-dot:before{animation:none}}@media (width<=640px){.hero{padding-top:120px}}.about__p{color:var(--text-body);margin:0 0 18px;font-size:15.5px;line-height:1.8}.about__p--last{margin-bottom:0}.timeline__track{margin-top:32px;position:relative}.timeline__line{top:4px;bottom:4px;background:var(--border);width:2px;position:absolute;inset-inline-start:9px}.timeline__line-fill{top:4px;background:linear-gradient(180deg, var(--accent), var(--accent-cyan));width:2px;height:0%;position:absolute;inset-inline-start:9px}.timeline__line-pulse{top:4px;bottom:4px;pointer-events:none;background:linear-gradient(#0000 0% 42%,#eafff2 50%,#0000 58% 100%) 0 0/100% 320%;width:2px;animation:2.6s linear infinite timeline-pulse-travel;position:absolute;inset-inline-start:9px}@keyframes timeline-pulse-travel{0%{background-position:0 -110%}to{background-position:0 210%}}@media (prefers-reduced-motion:reduce){.timeline__line-pulse{display:none}}.timeline__nodes{flex-direction:column;gap:24px;display:flex}.timeline__node{align-items:flex-start;gap:22px;display:flex;position:relative}.timeline__dot{background:var(--bg);border:2px solid var(--accent);width:20px;height:20px;box-shadow:0 0 0 4px var(--bg);z-index:1;border-radius:50%;flex:none;margin-top:2px}.timeline__card{background:var(--panel);border:1px solid var(--border);flex-wrap:wrap;flex:1;align-items:baseline;gap:4px 14px;padding:16px 20px;display:flex}.timeline__type{font-family:var(--font-mono);color:var(--accent);text-transform:uppercase;letter-spacing:.06em;flex-basis:100%;font-size:10.5px;font-weight:700}.timeline__title{font-family:var(--font-mono);color:var(--text);font-size:14px;font-weight:700}.timeline__subtitle{color:var(--text-secondary);font-size:12.5px}.timeline__dates{font-family:var(--font-mono);color:var(--text-muted);flex-basis:100%;margin-top:2px;font-size:11px}.experience__list{flex-direction:column;gap:28px;display:flex}.experience__card{background:var(--panel);border:1px solid var(--border);flex-wrap:wrap;gap:32px;padding:32px;display:flex}.experience__left{flex:320px;min-width:260px}.experience__role{font-family:var(--font-mono);color:var(--text);margin-bottom:4px;font-size:18px;font-weight:700}.experience__company{font-family:var(--font-mono);color:var(--accent);margin-bottom:10px;font-size:13px;font-weight:600}.experience__dates{font-family:var(--font-mono);color:var(--text-muted);margin-bottom:18px;font-size:11.5px}.experience__summary{color:var(--text-secondary);margin:0 0 16px;font-size:14px;line-height:1.7}.experience__points{flex-direction:column;gap:8px;margin:0 0 18px;padding-inline-start:18px;display:flex}.experience__points li{color:var(--text-body);font-size:13.5px;line-height:1.65}.experience__skills{flex-wrap:wrap;gap:8px;display:flex}.experience__cert-actions{gap:10px;margin-top:18px;display:flex}.experience__cert-btn{padding:9px 16px;font-size:11.5px}.experience__right{flex:280px;min-width:240px}.experience__snapshot-label{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:16px;font-size:11px;font-weight:600}.experience__metrics{flex-direction:column;gap:14px;display:flex}.experience__metric-row{justify-content:space-between;margin-bottom:6px;font-size:12.5px;display:flex}.experience__metric-label{color:var(--text-secondary)}.experience__metric-value{font-family:var(--font-mono);color:var(--text);font-weight:600}.experience__metric-track{background:#3ddc8414;border-radius:2px;height:6px;position:relative;overflow:hidden}.experience__metric-fill{inset-inline-start:0;background:linear-gradient(90deg,#3ddc84,#2ee6c8);border-radius:2px;width:0%;height:100%;position:absolute;top:0}html[dir=rtl] .experience__metric-fill{background:linear-gradient(270deg,#3ddc84,#2ee6c8)}.lightbox-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:60;background:#020403d9;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.lightbox{background:var(--panel);border:1px solid #3ddc8440;flex-direction:column;width:100%;max-width:1040px;height:min(88vh,1100px);display:flex}.lightbox__top{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.lightbox__caption{font-family:var(--font-mono);color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.lightbox__close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex:none;font-size:20px;line-height:1}.lightbox__stage{background:#fff;flex:1;justify-content:center;align-items:center;min-height:0;display:flex;position:relative}.lightbox__image{object-fit:contain;max-width:100%;max-height:100%}.lightbox__nav{width:40px;height:40px;color:var(--text);cursor:pointer;background:#050806a6;border:1px solid #3ddc844d;border-radius:50%;justify-content:center;align-items:center;font-size:22px;line-height:1;transition:border-color .15s,background .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox__nav:hover{border-color:var(--accent);background:#050806d9}.lightbox__nav--prev{inset-inline-start:14px}.lightbox__nav--next{inset-inline-end:14px}.lightbox__dots{border-top:1px solid var(--border);justify-content:center;gap:8px;padding:14px;display:flex}.lightbox__dot{background:var(--border-neutral);cursor:pointer;border:none;border-radius:50%;width:8px;height:8px;padding:0;transition:background .15s}.lightbox__dot--active{background:var(--accent)}.project__tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:28px;display:flex}.project__tab{font-family:var(--font-mono);cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 18px;font-size:13px;font-weight:600;transition:color .2s,border-color .2s;transform:translateY(1px)}.project__tab--active{color:var(--accent);border-bottom-color:var(--accent)}.project__title{color:var(--text);margin:0 0 8px;font-size:22px;font-weight:700}.project__meta{flex-wrap:wrap;gap:10px;margin-bottom:36px;display:flex}.project__meta-pill{font-size:11.5px}.project__meta-pill--link{cursor:pointer;transition:border-color .15s,color .15s}.project__meta-pill--link:hover{border-color:var(--accent);color:var(--accent)}.project__meta-pill--highlight{font-family:var(--font-mono);color:var(--accent);background:#3ddc841f;border:1px solid #3ddc844d;border-radius:3px;padding:6px 12px;font-size:11.5px;font-weight:700}.project__screens{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:20px;display:grid}.project__screen{background:var(--panel);cursor:pointer;text-align:start;width:100%;font:inherit;color:inherit;border:1px solid #3ddc8433;border-radius:8px;margin:0;padding:0;transition:border-color .15s;display:block;position:relative;overflow:hidden}.project__screen:hover{border-color:var(--accent)}.project__screen img{aspect-ratio:16/10;object-fit:cover;object-position:top;width:100%;display:block}.project__screen--wide img{aspect-ratio:16/9;object-fit:contain;background:#0b0f0c}.project__screen-caption{font-family:var(--font-mono);color:var(--text-muted);border-top:1px solid var(--border);padding:10px 12px;font-size:11px;display:block}.project__screen-zoom{top:10px;font-family:var(--font-mono);color:var(--text);opacity:0;background:#050806b3;border:1px solid #3ddc844d;border-radius:3px;padding:5px 10px;font-size:10.5px;font-weight:600;transition:opacity .15s,transform .15s;position:absolute;inset-inline-end:10px;transform:translateY(-4px)}.project__screen:hover .project__screen-zoom,.project__screen:focus-visible .project__screen-zoom{opacity:1;transform:translateY(0)}.project__body{flex-wrap:wrap;gap:28px;margin-top:44px;display:flex}.project__col-main{flex-direction:column;flex:2 420px;gap:26px;min-width:280px;display:flex}.project__label{font-family:var(--font-mono);color:var(--text);margin-bottom:8px;font-size:13px;font-weight:700}.project__text{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.7}.project__capabilities{flex-wrap:wrap;gap:8px;display:flex}.project__cap{font-family:var(--font-mono);color:var(--text-body);border:1px solid var(--border);background:#3ddc840f;border-radius:3px;padding:6px 11px;font-size:11.5px}.project__arch{background:var(--panel);border:1px solid var(--border);flex:260px;min-width:240px;padding:26px}.project__arch-label{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:12px;font-size:11px;font-weight:600}.project__flow{flex-direction:column;align-items:center;gap:4px;margin-bottom:20px;display:flex}.project__flow-item{text-align:center;width:100%;font-family:var(--font-mono);color:var(--text);background:#3ddc840f;border:1px solid #3ddc8433;border-radius:4px;padding:10px 12px;font-size:12.5px;font-weight:600}.project__tags{flex-wrap:wrap;gap:7px;display:flex}.project__infra-tag{font-family:var(--font-mono);color:var(--text-secondary);border:1px solid var(--border);background:#3ddc840d;border-radius:3px;padding:5px 10px;font-size:11px}.project__stack-tag{font-family:var(--font-mono);color:var(--accent);background:#3ddc841a;border:1px solid #3ddc8440;border-radius:3px;padding:5px 10px;font-size:11px}.project__stat-row{flex-wrap:wrap;gap:14px;display:flex}.project__stat-card{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.project__stat-value{padding:8px 14px;font-size:20px}.project__stat-value--muted{color:var(--text-secondary)}.project__stat-label{font-family:var(--font-mono);color:var(--text-muted);font-size:11.5px}.project__stat-note{color:var(--text-muted);font-style:italic}.project__deliverables{flex-direction:column;gap:10px;margin-bottom:20px;display:flex}.project__deliverable-btn{text-align:center;flex:auto}.skills__grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}@media (width<=860px){.skills__grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.skills__grid{grid-template-columns:1fr}}.skills__card{background:var(--panel);border:1px solid var(--border);padding:22px}.skills__card-title{font-family:var(--font-mono);color:var(--text);margin-bottom:14px;font-size:12.5px;font-weight:700}.skills__items{flex-wrap:wrap;gap:7px;display:flex}.education__terminal{background:var(--panel);border:1px solid #2ee6c840;width:100%;margin-bottom:24px;padding:20px 24px}.education__terminal-top{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.education__terminal-dots{gap:6px;display:flex}.education__terminal-dots span{background:#2ee6c840;border-radius:50%;width:9px;height:9px}.education__terminal-label{font-family:var(--font-mono);color:var(--text-muted);font-size:10px}.education__terminal-body{margin-bottom:18px}.education__terminal-command{font-family:var(--font-mono);color:var(--accent-cyan);white-space:nowrap;font-size:12.5px;display:block;overflow-x:auto}.education__terminal-run{padding:9px 18px;font-size:12px}.education__terminal-run:disabled{cursor:default;opacity:.8}.education__terminal-output{border-top:1px dashed var(--border);margin-top:18px;padding-top:16px}.education__terminal-output-note{color:var(--text-secondary);margin-bottom:12px;font-size:13px}.education__terminal-table-wrap{overflow-x:auto}.education__terminal-output table{border-collapse:collapse;width:100%;font-family:var(--font-mono);white-space:nowrap;font-size:11.5px}.education__terminal-output th,.education__terminal-output td{text-align:start;border-bottom:1px solid var(--border);padding:8px 14px 8px 0}.education__terminal-output th{color:var(--text-muted);text-transform:lowercase;letter-spacing:.03em;font-weight:600}.education__terminal-output td{color:var(--text-secondary)}.education__terminal-output tbody td:first-child{color:var(--accent-cyan)}.education__terminal-output td a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.education__terminal-output td a:hover{color:var(--accent-hover)}.education__terminal-output-caption{font-family:var(--font-mono);color:var(--text-muted);margin-top:8px;font-size:11px}.education__card{background:var(--panel);border:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;gap:24px;padding:32px;display:flex}.education__info{flex:320px}.education__degree{font-family:var(--font-mono);color:var(--text);margin-bottom:4px;font-size:18px;font-weight:700}.education__university{font-family:var(--font-mono);color:var(--accent);margin-bottom:10px;font-size:13px;font-weight:600}.education__faculty{color:var(--text-secondary);margin-bottom:4px;font-size:13px}.education__dates{font-family:var(--font-mono);color:var(--text-muted);font-size:11.5px}.education__badges{flex-wrap:wrap;align-items:flex-start;gap:10px;display:flex}.education__badge{font-family:var(--font-mono);color:var(--text);background:#3ddc8414;border:1px solid #3ddc8433;border-radius:3px;padding:7px 13px;font-size:11.5px;font-weight:600}.education__excellence{margin-top:28px}.education__excellence-label{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:14px;font-size:11px;font-weight:600}.education__excellence-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.education__excellence-card{background:var(--panel);border:1px solid var(--border);text-align:start;width:100%;font:inherit;color:inherit;align-items:flex-start;gap:14px;padding:20px;display:flex}button.education__excellence-card{cursor:pointer;transition:border-color .15s}button.education__excellence-card:hover{border-color:var(--accent)}.education__certs{border-top:1px solid var(--border);flex-direction:column;flex:100%;gap:12px;padding-top:16px;display:flex}.education__cert-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.education__cert-label{font-family:var(--font-mono);color:var(--text);font-size:12.5px;font-weight:600}.education__cert-actions{gap:10px;display:flex}.education__cert-btn{padding:9px 16px;font-size:11.5px}.education__dot{flex:none;width:8px;height:8px;margin-top:6px}.education__excellence-title{font-family:var(--font-mono);color:var(--text);margin-bottom:3px;font-size:13.5px;font-weight:700}.education__excellence-desc{color:var(--text-secondary);font-size:12.5px}.certifications__tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:28px;display:flex}.certifications__tab{font-family:var(--font-mono);cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 18px;font-size:13px;font-weight:600;transition:color .2s,border-color .2s;transform:translateY(1px)}.certifications__tab--active{color:var(--accent);border-bottom-color:var(--accent)}.certifications__grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-bottom:36px;display:grid}.certifications__card{text-align:start;cursor:pointer;background:var(--panel);border:1px solid var(--border);flex-direction:column;gap:12px;width:100%;padding:22px;font-family:inherit;transition:border-color .2s;display:flex}.certifications__card:hover{border-color:#3ddc8466}.certifications__card-top{justify-content:space-between;align-items:center;display:flex}.certifications__category{font-family:var(--font-mono);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:7px;font-size:10.5px;font-weight:600;display:flex}.certifications__dot{background:var(--accent);width:6px;height:6px}.certifications__featured{font-family:var(--font-mono);color:var(--accent);text-transform:uppercase;letter-spacing:.05em;font-size:9.5px;font-weight:700}.certifications__name{color:var(--text);font-size:14.5px;font-weight:700;line-height:1.35}.certifications__issuer{color:var(--text-secondary);font-size:12.5px}.certifications__date{font-family:var(--font-mono);color:var(--text-muted);font-size:11px}.certifications__card-actions{gap:10px;margin-top:4px;display:flex}.certifications__card-btn{padding:9px 16px;font-size:11.5px}.certifications__overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;background:#020403cc;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.certifications__modal{background:var(--panel);border:1px solid #3ddc8440;width:100%;max-width:420px;padding:32px}.certifications__modal-top{justify-content:space-between;align-items:flex-start;margin-bottom:18px;display:flex}.certifications__close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:20px;line-height:1}.certifications__modal-name{color:var(--text);margin-bottom:6px;font-size:17px;font-weight:700}.certifications__modal-issuer{font-family:var(--font-mono);color:var(--accent);margin-bottom:4px;font-size:12.5px;font-weight:600}.certifications__modal-date{font-family:var(--font-mono);color:var(--text-muted);margin-bottom:16px;font-size:11px}.certifications__modal-detail{color:var(--text-body);margin:0;font-size:13.5px;line-height:1.65}.certifications__modal-actions{gap:10px;margin-top:22px;display:flex}.certifications__modal-btn{text-align:center;flex:1;padding:10px 18px;font-size:12.5px}.certifications__modal-unavailable{font-family:var(--font-mono);color:var(--text-muted);text-align:center;border:1px dashed #3ddc8433;border-radius:4px;margin-top:22px;padding:10px 12px;font-size:11.5px}.contact__card{background:var(--panel);text-align:center;border:1px solid #3ddc8433;padding:64px 40px;position:relative;overflow:hidden}.contact__grid-bg{pointer-events:none;background-image:linear-gradient(#3ddc840d 1px,#0000 1px),linear-gradient(90deg,#3ddc840d 1px,#0000 1px);background-size:36px 36px;position:absolute;inset:0}.contact__title{font-family:var(--font-mono);color:var(--text);margin:0 0 16px;font-size:clamp(24px,3.4vw,34px);font-weight:800;position:relative}.contact__desc{color:var(--text-secondary);max-width:520px;margin:0 auto 32px;font-size:15px;line-height:1.7;position:relative}.contact__actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex;position:relative}.footer{border-top:1px solid #3ddc841f;padding:36px 24px}.footer__row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.footer__name{font-family:var(--font-mono);color:var(--text);font-size:13px;font-weight:700}.footer__tagline{color:var(--text-muted);font-size:12px}.footer__links{gap:10px;display:flex}.footer__link{font-family:var(--font-mono);color:var(--text-secondary);font-size:11px;font-weight:600;transition:color .2s}.footer__link:hover{color:var(--accent)}
