@import "https://fonts.googleapis.com/css2?family=Space+Mono:wght@400;700&family=Space+Grotesk:wght@500;700&family=Silkscreen:wght@400;700&display=swap";@layer components;@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-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;--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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration: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:where(:not(iframe)){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 utilities{.static{position:static}.block{display:block}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--accent-color) var(--card-bg)}body{background-color:var(--bg-color);color:var(--text-color);font-family:Space Mono,ui-monospace,SFMono-Regular,monospace;line-height:1.6;overflow-x:hidden}:root{--bg-color-dark:#0a0a0a;--text-color-dark:#f5f5f2;--card-bg-dark:#111;--navbar-bg-dark:#0a0a0a;--navbar-icon-bg-dark:#f5f5f20d;--navbar-icon-color-dark:#c9c9c6;--accent-color-dark:#ff3b30;--accent-hover-dark:#ff6259;--card-border-dark:#f5f5f21f;--card-shadow-dark:#0006;--available-bg-dark:#ff3b301f;--available-text-dark:var(--accent-color-dark);--tooltip-bg-dark:#1a1a1a;--tooltip-text-dark:#f5f5f2;--tech-tag-bg-dark:transparent;--tech-tag-text-dark:#c9c9c6;--bg-color-light:#f2f2ef;--text-color-light:#0a0a0a;--card-bg-light:#fff;--navbar-bg-light:#f2f2ef;--navbar-icon-bg-light:#0a0a0a0a;--navbar-icon-color-light:#4a4a47;--accent-color-light:#d6281e;--accent-hover-light:#b81f17;--card-border-light:#0a0a0a1f;--card-shadow-light:#0000000f;--available-bg-light:#d6281e14;--available-text-light:var(--accent-color-light);--tooltip-bg-light:#1a1a1a;--tooltip-text-light:#f5f5f2;--tech-tag-bg-light:transparent;--tech-tag-text-light:#4a4a47}[data-theme=dark]{--bg-color:var(--bg-color-dark);--text-color:var(--text-color-dark);--card-bg:var(--card-bg-dark);--navbar-bg:var(--navbar-bg-dark);--navbar-icon-bg:var(--navbar-icon-bg-dark);--navbar-icon-color:var(--navbar-icon-color-dark);--accent-color:var(--accent-color-dark);--accent-hover:var(--accent-hover-dark);--card-border:var(--card-border-dark);--card-shadow:var(--card-shadow-dark);--available-bg:var(--available-bg-dark);--available-text:var(--available-text-dark);--tooltip-bg:var(--tooltip-bg-dark);--tooltip-text:var(--tooltip-text-dark);--tech-tag-bg:var(--tech-tag-bg-dark);--tech-tag-text:var(--tech-tag-text-dark);--card-bg-rgb:17, 17, 17;--dot-grid-color:#f5f5f20f}[data-theme=light]{--bg-color:var(--bg-color-light);--text-color:var(--text-color-light);--card-bg:var(--card-bg-light);--navbar-bg:var(--navbar-bg-light);--navbar-icon-bg:var(--navbar-icon-bg-light);--navbar-icon-color:var(--navbar-icon-color-light);--accent-color:var(--accent-color-light);--accent-hover:var(--accent-hover-light);--card-border:var(--card-border-light);--card-shadow:var(--card-shadow-light);--available-bg:var(--available-bg-light);--available-text:var(--available-text-light);--tooltip-bg:var(--tooltip-bg-light);--tooltip-text:var(--tooltip-text-light);--tech-tag-bg:var(--tech-tag-bg-light);--tech-tag-text:var(--tech-tag-text-light);--card-bg-rgb:255, 255, 255;--dot-grid-color:#0a0a0a0d}.notch-navbar{background-color:var(--navbar-bg);z-index:1000;border-bottom:1px solid var(--card-border);justify-content:space-between;align-items:center;gap:20px;height:76px;padding:0 32px;transition:background-color .4s,border-color .4s;display:flex;position:fixed;top:0;left:0;right:0}.notch-navbar .nav-brand{align-items:center;gap:14px;min-width:0;display:flex}.notch-navbar .nav-wordmark{aspect-ratio:1052/380;flex-shrink:0;height:36px;display:block}.brand-mark{width:100%;height:100%;color:var(--text-color);transition:color .4s;display:block}.brand-mark svg{width:100%;height:100%;display:block}.notch-navbar .nav-links{align-items:center;gap:34px;display:flex}.notch-navbar .nav-icon{letter-spacing:1.5px;text-transform:uppercase;color:var(--navbar-icon-color);white-space:nowrap;cursor:pointer;align-items:baseline;gap:7px;font-family:Space Mono,monospace;font-size:11px;text-decoration:none;transition:color .2s;display:inline-flex;position:relative}.notch-navbar .nav-icon .nav-index{color:var(--card-border)}.notch-navbar .nav-icon:hover,.notch-navbar .nav-icon.active,.notch-navbar .nav-icon.active .nav-index{color:var(--accent-color)}.notch-navbar .nav-icon.active:after{content:"";background-color:var(--accent-color);width:100%;height:2px;position:absolute;bottom:-14px;left:0}.notch-navbar .nav-controls{flex-shrink:0;align-items:center;gap:12px;display:flex}.notch-navbar .nav-controls .nav-icon{background-color:var(--navbar-icon-bg);color:var(--navbar-icon-color);border:1px solid var(--card-border);cursor:pointer;border-radius:3px;justify-content:center;align-items:center;width:34px;height:34px;padding:0;font-size:13px;transition:background-color .2s,color .2s,border-color .2s;display:flex;position:relative}.notch-navbar .nav-controls .nav-icon:hover{border-color:var(--accent-color);color:var(--accent-color)}.separator{background-color:var(--card-border);width:1px;height:22px;transition:background-color .4s}.theme-toggle-button,.lang-toggle-button{position:relative;overflow:hidden}@media (width<=900px){.notch-navbar .nav-links{gap:20px}}@media (width<=700px){.notch-navbar{height:64px;padding:0 16px}.notch-navbar .nav-links .nav-index{display:none}.notch-navbar .nav-links{gap:16px}.notch-navbar .nav-wordmark{height:30px}.notch-navbar .nav-controls .nav-icon{width:30px;height:30px;font-size:12px}.separator{display:none}}@media (width<=560px){.notch-navbar .nav-links .nav-label{font-size:10px}.notch-navbar .nav-links{gap:12px}}.hero-section{background-image:radial-gradient(var(--dot-grid-color) 1px, transparent 1px);background-size:26px 26px;height:100vh;position:relative;overflow:hidden}.hero-frame-corner{border-color:var(--card-border);z-index:2;border-style:solid;border-width:0;width:22px;height:22px;position:absolute}.hero-frame-corner.tl{border-top-width:1.5px;border-left-width:1.5px;top:96px;left:28px}.hero-frame-corner.tr{border-top-width:1.5px;border-right-width:1.5px;top:96px;right:28px}.hero-frame-corner.bl{border-bottom-width:1.5px;border-left-width:1.5px;bottom:28px;left:28px}.hero-frame-corner.br{border-bottom-width:1.5px;border-right-width:1.5px;bottom:28px;right:28px}.hero-ghost-number{color:var(--text-color);opacity:.035;letter-spacing:-.02em;z-index:0;-webkit-user-select:none;user-select:none;pointer-events:none;font-family:Silkscreen,monospace;font-size:34vw;line-height:1;position:absolute;bottom:-8vw;left:-20px}.hero-coords{text-align:right;letter-spacing:1px;color:var(--navbar-icon-color);opacity:.6;z-index:2;font-family:Space Mono,monospace;font-size:11px;line-height:1.6;position:absolute;top:108px;right:32px}.hero-name-block{z-index:2;text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:0 16px;display:flex;position:relative}.hero-name{letter-spacing:-1px;color:var(--text-color);text-transform:uppercase;-webkit-user-select:none;user-select:none;font-family:Space Grotesk,ui-monospace,sans-serif;font-size:clamp(2.6rem,8vw,7rem);font-weight:700;line-height:.98;transition:color .4s}.hero-name-bar{background-color:var(--accent-color);width:64px;height:6px;margin:clamp(18px,3vw,28px) auto 0;transition:background-color .4s}.hero-subtitle{color:var(--text-color);opacity:.82;text-align:center;z-index:10;-webkit-user-select:none;user-select:none;letter-spacing:.5px;min-height:2em;margin-top:clamp(20px,4vw,28px);font-size:clamp(1rem,2.4vw,1.4rem);font-weight:400;transition:color .4s;position:relative}.hero-availability{z-index:2;align-items:center;gap:10px;display:flex;position:absolute;bottom:40px;left:32px}.hero-availability .dot{background-color:var(--accent-color);flex-shrink:0;width:7px;height:7px}.hero-availability span.label{letter-spacing:2px;text-transform:uppercase;color:var(--text-color);font-family:Space Mono,monospace;font-size:11px}.scroll-down-indicator{z-index:2;color:var(--navbar-icon-color);opacity:.75;flex-direction:column;align-items:center;gap:8px;text-decoration:none;transition:color .4s,opacity .3s;display:flex;position:absolute;bottom:32px;right:32px}.scroll-down-indicator:hover{opacity:1;color:var(--accent-color)}.scroll-down-indicator .scroll-label{letter-spacing:3px;font-family:Space Mono,monospace;font-size:10px}.scroll-down-indicator .scroll-box{border:1.5px solid var(--card-border);border-radius:3px;justify-content:center;align-items:center;width:26px;height:26px;font-size:12px;display:flex}@media (width<=600px){.hero-coords{display:none}.hero-frame-corner.tl,.hero-frame-corner.tr{top:76px}.hero-availability{bottom:24px;left:20px}.scroll-down-indicator{bottom:20px;right:20px}}.bento-grid-container{grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(150px,auto);gap:20px;max-width:1100px;margin:0 auto;padding:116px 10px 40px;display:grid}.section-eyebrow{align-items:center;gap:18px;max-width:1100px;margin:0 auto;padding:0 10px;display:flex}.bento-grid-container>.section-eyebrow{grid-column:1/-1;margin-bottom:6px;padding:0}.section-eyebrow .eyebrow-index{letter-spacing:2px;color:var(--accent-color);flex-shrink:0;font-family:Space Mono,monospace;font-size:13px}.section-eyebrow .eyebrow-line{background-color:var(--card-border);flex:1;height:1px}.section-eyebrow .eyebrow-label{letter-spacing:2px;color:var(--navbar-icon-color);text-transform:uppercase;white-space:nowrap;font-family:Space Mono,monospace;font-size:11px}.card{background-color:var(--card-bg);box-shadow:0 4px 15px var(--card-shadow);border:1px solid var(--card-border);color:var(--text-color);border-radius:3px;flex-direction:column;padding:25px;transition:background-color .4s,border-color .3s,box-shadow .3s,transform .3s;display:flex;position:relative;overflow:hidden}.card:before,.card:after{content:"";border-color:var(--accent-color);opacity:.55;pointer-events:none;border-style:solid;border-width:0;width:12px;height:12px;position:absolute}.card:before{border-top-width:1.5px;border-left-width:1.5px;top:0;left:0}.card:after{border-bottom-width:1.5px;border-right-width:1.5px;bottom:0;right:0}.card:hover{box-shadow:0 8px 25px var(--card-shadow);border-color:var(--accent-color);transform:translateY(-4px)}.card-span-2{grid-column:span 2}.card-span-3{grid-column:span 3}.profile-header{flex-shrink:0;align-items:center;gap:15px;margin-bottom:20px;display:flex}.profile-avatar{flex-shrink:0;width:65px;height:65px}.profile-name-title h3{color:var(--text-color);text-transform:uppercase;letter-spacing:.5px;margin:0 0 4px;font-family:Space Grotesk,sans-serif;font-size:1.1rem;font-weight:700}.profile-subtitle{color:var(--text-color);opacity:.7;letter-spacing:.5px;margin:0 0 6px;font-size:.8rem}.availability{letter-spacing:1.5px;text-transform:uppercase;background-color:var(--available-bg);color:var(--available-text);border:1px solid;border-radius:2px;align-items:center;gap:7px;padding:3px 8px;font-size:.7rem;display:inline-flex}.availability .dot{background-color:currentColor;flex-shrink:0;width:6px;height:6px}.profile-info-list{flex-shrink:0;margin:0 0 20px;padding:0;list-style:none}.profile-info-list li{opacity:.85;color:var(--text-color);border-bottom:1px dashed var(--card-border);align-items:center;gap:10px;margin-bottom:8px;padding-bottom:8px;font-size:.8rem;display:flex}.profile-info-list .icon{color:var(--accent-color);text-align:center;flex-shrink:0;width:16px}.profile-actions{border-top:1px solid var(--card-border);flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:10px;margin-top:auto;padding-top:15px;display:flex}.profile-action-icon{background-color:var(--navbar-icon-bg);border:1px solid var(--card-border);width:36px;height:36px;color:var(--navbar-icon-color);cursor:pointer;border-radius:3px;justify-content:center;align-items:center;font-size:14px;text-decoration:none;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex;position:relative}.profile-action-icon:hover{border-color:var(--accent-color);color:var(--accent-color)}.btn-cv{background-color:var(--accent-color);color:#0a0a0a;border-color:var(--accent-color)}.btn-cv:hover{background-color:var(--accent-hover);color:#0a0a0a;border-color:var(--accent-hover)}.card-title{letter-spacing:2px;text-transform:uppercase;color:var(--navbar-icon-color);flex-shrink:0;align-items:center;gap:8px;margin-top:0;margin-bottom:18px;font-family:Space Mono,monospace;font-size:.72rem;display:flex}.card-title:before{content:"//";color:var(--accent-color)}.about-card p{opacity:.85;font-size:.88rem;line-height:1.75}.skills-grid-internal{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:22px 20px;display:grid}.skills-category-card h4{letter-spacing:1.5px;text-transform:uppercase;color:var(--navbar-icon-color);margin-top:0;margin-bottom:10px;font-family:Space Mono,monospace;font-size:.68rem}.skills-category-card ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.skills-category-card li{font-size:0}.education-item{border-bottom:1px dashed var(--card-border);flex-shrink:0;margin-bottom:15px;padding-bottom:10px}.education-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.education-item h4{color:var(--text-color);margin:0 0 4px;font-family:Space Grotesk,sans-serif;font-size:.95rem;font-weight:700}.education-item p{opacity:.75;margin:0 0 5px;font-size:.85rem}.education-item .dates{opacity:.55;font-family:Space Mono,monospace;font-size:.75rem;font-style:normal}.experience-item{border-bottom:1px dashed var(--card-border);flex-shrink:0;margin-bottom:15px;padding-bottom:10px}.experience-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.experience-item h4{color:var(--text-color);letter-spacing:.3px;margin:0 0 4px;font-family:Space Grotesk,sans-serif;font-size:.92rem;font-weight:700}.experience-item p{opacity:.75;margin:0 0 5px;font-size:.85rem}.experience-item .dates{opacity:.5;font-family:Space Mono,monospace;font-size:.72rem;font-style:normal}.experience-grid{grid-template-columns:repeat(2,1fr);gap:18px 30px;display:grid}.experience-grid .experience-item{border-bottom:none;margin-bottom:0;padding-bottom:0}.experience-bullets{margin:8px 0 0;padding:0;list-style:none}.experience-bullets li{opacity:.8;color:var(--text-color);margin-bottom:4px;padding-left:16px;font-size:.82rem;line-height:1.5;position:relative}.experience-bullets li:before{content:">";color:var(--accent-color);font-family:Space Mono,monospace;position:absolute;top:0;left:0}.now-card .card-title i{display:none}.now-list{flex-grow:1;margin:0 0 12px;padding:0;list-style:none}.now-list li{opacity:.85;color:var(--text-color);margin-bottom:8px;padding-left:18px;font-size:.85rem;line-height:1.5;position:relative}.now-list li:before{content:">";color:var(--accent-color);font-family:Space Mono,monospace;font-weight:700;position:absolute;top:0;left:0}.now-updated{opacity:.5;border-top:1px solid var(--card-border);letter-spacing:.5px;margin:0;padding-top:8px;font-family:Space Mono,monospace;font-size:.7rem;font-style:normal}@media (width<=992px){.bento-grid-container{grid-template-columns:repeat(2,1fr);max-width:95%}.profile-card,.about-card,.education-card,.experience-card{grid-area:span 1/span 1}.skills-card,.card-span-3,.card-span-2{grid-column:span 2}.skills-grid-internal{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}}@media (width<=768px){.bento-grid-container{grid-template-columns:1fr;padding:96px 15px 30px}.profile-card,.about-card,.skills-card,.education-card,.experience-card,.card-span-2,.card-span-3{grid-column:span 1}.skills-grid-internal{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:20px 15px}.card-title{font-size:.68rem}.profile-actions{justify-content:center}.experience-grid{grid-template-columns:1fr;gap:16px}}@media (width<=600px){.bento-grid-container{gap:15px;padding:84px 10px 25px}.card{padding:20px}.profile-header{text-align:center;flex-direction:column}.profile-avatar{width:60px;height:60px}.profile-name-title h3{font-size:1.05rem}.profile-subtitle{font-size:.8rem}.profile-info-list li{justify-content:center;font-size:.8rem}.about-card p{font-size:.85rem}.skills-grid-internal{grid-template-columns:repeat(2,1fr)}.profile-action-icon{width:34px;height:34px;font-size:13px}.profile-actions{gap:8px}}.tech-tag{letter-spacing:.5px;background-color:var(--tech-tag-bg);color:var(--tech-tag-text);border:1px solid var(--card-border);text-transform:uppercase;white-space:nowrap;border-radius:2px;padding:4px 8px;font-family:Space Mono,monospace;font-size:.72rem;transition:border-color .2s,color .2s}.tech-tag:before{content:"[";opacity:.45;margin-right:4px}.tech-tag:after{content:"]";opacity:.45;margin-left:4px}a.tech-tag:hover,.skills-category-card .tech-tag:hover{border-color:var(--accent-color);color:var(--text-color)}.section-container{max-width:1100px;margin:0 auto}.section-title{color:var(--text-color);text-align:left;text-transform:uppercase;letter-spacing:-.5px;margin:10px 0 6px;font-family:Space Grotesk,sans-serif;font-size:2.2rem;font-weight:700}.section-subtitle{color:var(--text-color);opacity:.6;text-align:left;max-width:600px;margin-bottom:34px;font-family:Space Mono,monospace;font-size:.82rem;font-style:normal}.projects-section{margin-top:20px;margin-bottom:20px;padding:40px 10px}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:25px;display:grid}.project-card{padding:0;overflow:hidden}.project-image{aspect-ratio:16/9;object-fit:cover;border-bottom:1px solid var(--card-border);width:100%;display:block}.project-details{flex-direction:column;flex-grow:1;padding:20px;display:flex;position:relative}.project-title{color:var(--text-color);text-transform:uppercase;letter-spacing:.3px;margin:0 0 10px;font-family:Space Grotesk,sans-serif;font-size:1.05rem;font-weight:700}.project-description{opacity:.8;color:var(--text-color);flex-grow:1;margin-bottom:15px;font-size:.85rem;line-height:1.6}.project-tech{flex-wrap:wrap;gap:8px;margin-bottom:15px;display:flex}.project-links{z-index:5;align-items:center;gap:10px;display:flex;position:absolute;top:15px;right:15px}.project-links .profile-action-icon{background-color:rgba(var(--card-bg-rgb), .8);backdrop-filter:blur(4px);width:34px;height:34px;font-size:15px}.project-placeholder{aspect-ratio:16/9;background:var(--card-bg);width:100%;color:var(--accent-color);border-bottom:1px solid var(--card-border);background-image:radial-gradient(var(--dot-grid-color) 1px, transparent 1px);background-size:18px 18px;justify-content:center;align-items:center;font-size:3rem;display:flex;position:relative;overflow:hidden}.project-placeholder i{z-index:1;position:relative}.project-client-badge{text-transform:uppercase;letter-spacing:1px;border:1px solid var(--card-border);color:var(--navbar-icon-color);border-radius:2px;align-self:flex-start;align-items:center;gap:6px;margin-bottom:10px;padding:4px 10px;font-family:Space Mono,monospace;font-size:.65rem;font-weight:700;display:inline-flex}.project-client-badge i{color:var(--accent-color);font-size:.85em}.pro-project .project-title{margin-top:0}.certifications-section{margin-top:20px;padding:40px 10px}.certifications-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;display:grid}.certification-card{background-color:var(--card-bg);box-shadow:0 4px 15px var(--card-shadow);border:1px solid var(--card-border);color:var(--text-color);cursor:pointer;border-radius:3px;flex-direction:column;padding:20px;transition:background-color .4s,border-color .3s,box-shadow .3s,transform .3s;display:flex;position:relative}.certification-card:before,.certification-card:after{content:"";border-color:var(--accent-color);opacity:.55;pointer-events:none;border-style:solid;border-width:0;width:12px;height:12px;position:absolute}.certification-card:before{border-top-width:1.5px;border-left-width:1.5px;top:0;left:0}.certification-card:after{border-bottom-width:1.5px;border-right-width:1.5px;bottom:0;right:0}.certification-card:hover{box-shadow:0 8px 25px var(--card-shadow);border-color:var(--accent-color);transform:translateY(-4px)}.certification-header{align-items:center;gap:15px;margin-bottom:10px;display:flex}.certification-logo{object-fit:contain;width:38px;height:38px;color:var(--accent-color);border:1px solid var(--card-border);border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.2rem;display:flex}.certification-text{flex-grow:1}.certification-title{color:var(--text-color);text-transform:uppercase;letter-spacing:.2px;margin:0 0 4px;font-family:Space Grotesk,sans-serif;font-size:.95rem;font-weight:700}.certification-issuer{opacity:.65;color:var(--text-color);margin:0;font-family:Space Mono,monospace;font-size:.78rem}@media (width<=992px){.certifications-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}}@media (width<=768px){.section-title{margin-bottom:20px;font-size:1.7rem}.certifications-grid{grid-template-columns:1fr}.projects-grid{grid-template-columns:1fr;gap:20px}.project-details{padding:15px}.project-title{font-size:1rem}.project-description{font-size:.82rem}}@media (width<=600px){.projects-section,.certifications-section{padding:30px 10px}.section-title{margin-bottom:16px;font-size:1.5rem}.certification-card{padding:15px}.certification-logo{width:34px;height:34px}.certification-title{font-size:.88rem}.certification-issuer{font-size:.75rem}.project-card{padding:0}.project-details{padding:15px}.project-title{font-size:.95rem}.project-description{margin-bottom:12px;font-size:.82rem}.project-tech{gap:6px;margin-bottom:12px}.tech-tag{padding:3px 6px;font-size:.68rem}.project-links{gap:8px;top:10px;right:10px}.project-links .profile-action-icon{width:30px;height:30px;font-size:13px}}.site-footer{text-align:center;border-top:1px solid var(--card-border);max-width:900px;margin:60px auto 0;padding:60px 20px 30px}.footer-cta h2{color:var(--text-color);text-transform:uppercase;letter-spacing:-.3px;margin:0 0 12px;font-family:Space Grotesk,sans-serif;font-size:clamp(1.4rem,4vw,2rem);font-weight:700}.footer-cta p{opacity:.75;color:var(--text-color);margin:0 0 25px;font-size:.95rem}.footer-cta-btn{color:var(--text-color);border:1.5px solid var(--accent-color);letter-spacing:1.5px;text-transform:uppercase;background-color:#0000;border-radius:3px;align-items:center;gap:6px;padding:12px 24px;font-family:Space Mono,monospace;font-size:.85rem;font-weight:700;text-decoration:none;transition:background-color .2s,color .2s,transform .2s;display:inline-flex}.footer-cta-btn:before{content:"[";opacity:.6}.footer-cta-btn:after{content:"]";opacity:.6}.footer-cta-btn:hover{background-color:var(--accent-color);color:#0a0a0a;transform:translateY(-2px)}.footer-socials{justify-content:center;gap:14px;margin:35px 0 20px;display:flex}.footer-socials a{background-color:var(--navbar-icon-bg);border:1px solid var(--card-border);width:38px;height:38px;color:var(--navbar-icon-color);border-radius:3px;justify-content:center;align-items:center;font-size:15px;text-decoration:none;transition:border-color .2s,color .2s,transform .2s;display:inline-flex}.footer-socials a:hover{border-color:var(--accent-color);color:var(--accent-color);transform:translateY(-2px)}.footer-copy{opacity:.5;color:var(--text-color);letter-spacing:.5px;margin:0;font-family:Space Mono,monospace;font-size:.72rem}.profile-action-tooltip{background-color:var(--tooltip-bg);color:var(--tooltip-text);white-space:nowrap;z-index:1001;opacity:0;visibility:hidden;pointer-events:none;border-radius:2px;padding:4px 8px;font-family:Space Mono,monospace;font-size:11px;font-weight:500;transition:opacity .2s,transform .2s,visibility .2s;position:absolute;bottom:120%;left:50%;transform:translate(-50%)translateY(-5px)}.profile-action-icon:hover .profile-action-tooltip{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}@media (width<=600px){.profile-action-tooltip{visibility:hidden;display:none}}.hero-subtitle:after{content:"|";opacity:1;color:var(--accent-color);font-weight:700;font-size:inherit;line-height:inherit;margin-left:6px;transition:opacity .2s;animation:.7s infinite blink;position:absolute}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.hero-subtitle.typing-complete:after{opacity:0;animation:none}.theme-toggle-button i{transition:transform .4s,opacity .4s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}[data-theme=dark] .theme-toggle-button .fa-sun{opacity:1;transform:translate(-50%,-50%)rotate(0)}[data-theme=dark] .theme-toggle-button .fa-moon{opacity:0;transform:translate(-50%,150%)rotate(90deg)}[data-theme=light] .theme-toggle-button .fa-sun{opacity:0;transform:translate(-50%,-150%)rotate(-90deg)}[data-theme=light] .theme-toggle-button .fa-moon{opacity:1;transform:translate(-50%,-50%)rotate(0)}.lang-text{opacity:0;text-transform:uppercase;color:var(--navbar-icon-color);white-space:nowrap;font-family:Space Mono,monospace;font-size:11px;font-weight:700;line-height:1;transition:transform .4s,opacity .4s;position:absolute;top:50%;left:50%;transform:translate(-50%,50%)}.lang-text.active{opacity:1;transform:translate(-50%,-50%)}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}.scroll-down-indicator{animation:2.5s ease-in-out infinite bounce}dialog.certificate-modal{background:0 0;border:none;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0}dialog.certificate-modal::backdrop{background-color:#000000e6}dialog.certificate-modal .modal-inner{justify-content:center;align-items:center;width:100%;height:100%;padding:50px 20px 20px;display:flex;position:relative}dialog.certificate-modal .modal-content{object-fit:contain;border:1px solid #f5f5f226;width:85%;max-width:800px;max-height:90vh;animation:.4s zoom;display:block}@media (width<=768px){dialog.certificate-modal .modal-content{width:95%}}@keyframes zoom{0%{transform:scale(0)}to{transform:scale(1)}}.modal-close{color:#f1f1f1;cursor:pointer;background:0 0;border:none;font-size:40px;font-weight:700;line-height:1;transition:color .3s;position:absolute;top:15px;right:35px}.modal-close:hover,.modal-close:focus-visible{color:var(--accent-color)}.reveal{opacity:0;will-change:opacity, transform;transition:opacity .6s,transform .6s;transform:translateY(24px)}.reveal.is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}}@media print{.notch-navbar,.scroll-down-indicator,.hero-frame-corner,.hero-ghost-number,.footer-cta-btn,.footer-socials,.project-links,dialog.certificate-modal{display:none!important}body{color:#000!important;background:#fff!important}.hero-section{page-break-after:avoid;height:auto;padding:20px 0;background-image:none!important}.hero-name,.hero-coords,.hero-availability{color:#000!important;text-shadow:none!important}.hero-name{font-size:2.2rem}.hero-subtitle{min-height:auto;margin-top:10px;color:#000!important;text-shadow:none!important}.hero-subtitle:after{display:none!important}.card,.certification-card,.project-card{page-break-inside:avoid;box-shadow:none!important;color:#000!important;background:#fff!important;border:1px solid #ccc!important;transform:none!important}.card:before,.card:after,.certification-card:before,.certification-card:after{display:none!important}.card-title,h2,h3,h4,p,li,span{color:#000!important}.bento-grid-container,.projects-grid,.certifications-grid{display:block!important}.card,.project-card,.certification-card{margin-bottom:14px}a{color:#000!important;text-decoration:none!important}.site-footer{border-top:1px solid #ccc;margin-top:30px;padding-top:20px}.reveal{opacity:1!important;transform:none!important}}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--card-bg);border-radius:10px;margin-block:4px}::-webkit-scrollbar-thumb{background-color:var(--accent-color);border:3px solid var(--card-bg);border-radius:10px;transition:background-color .3s}::-webkit-scrollbar-thumb:hover{background-color:var(--accent-hover)}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
