@import url("https://fonts.googleapis.com/css2?family=Roboto&display=swap");@import url("https://fonts.googleapis.com/css2?family=Roboto+Mono&display=swap");@import url("https://fonts.googleapis.com/css2?family=Chakra+Petch:wght@500&display=swap");*,:after,:before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}:root{--bh-star-color:#98ffe3;--bh-star-glow:rgba(0,241,180,.75);--bh-glow-shadow:rgba(0,241,180,.3);--bh-ring-color:rgba(0,241,180,.45);--bh-ring-highlight:rgba(94,255,219,.85);--bh-core-bg:#02010f;--bh-core-glow:rgba(0,241,180,.24);--intro-muted:rgba(204,213,255,.7);--intro-border:rgba(204,213,255,.45);--intro-tag-sep:rgba(204,213,255,.35);--intro-code-bg:hsla(0,0%,100%,.06);--intro-tag-blue-bg:rgba(0,241,180,.15);--intro-tag-blue-color:#5dffd8;--intro-tag-purple-bg:rgba(160,120,255,.18);--intro-tag-purple-color:#c4a8ff;--intro-tag-green-bg:rgba(120,255,160,.15);--intro-tag-green-color:#8dffb0}[data-theme=orange]{--bh-star-color:#4fa0bf;--bh-star-glow:rgba(79,160,191,.35);--bh-glow-shadow:rgba(79,160,191,.16);--bh-ring-color:rgba(37,90,115,.38);--bh-ring-highlight:rgba(61,125,152,.55);--bh-core-bg:#0f2331;--bh-core-glow:rgba(37,90,115,.2);--intro-muted:rgba(14,56,84,.65);--intro-border:rgba(14,56,84,.35);--intro-tag-sep:rgba(14,56,84,.45);--intro-code-bg:rgba(14,56,84,.08);--intro-tag-blue-bg:rgba(255,124,31,.14);--intro-tag-blue-color:#0a4d6e;--intro-tag-purple-bg:rgba(92,61,158,.12);--intro-tag-purple-color:#4a2d8a;--intro-tag-green-bg:rgba(26,107,66,.12);--intro-tag-green-color:#145a38}body{background-color:var(--main-background-color);color:var(--main-font-color);font-family:var(--main-font);transition:background-color 1s;overflow-x:hidden}::-webkit-scrollbar{width:7px;-webkit-transition:width 1s;transition:width 1s}::-webkit-scrollbar:hover{width:10px}::-webkit-scrollbar-track{box-shadow:inset 0 0 5px grey;border-radius:10px}::-webkit-scrollbar-thumb{background:var(--secondary-font-color);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--secondary-font-color);filter:brightness(20%)}li{list-style:none}a{text-decoration:none;color:inherit}.container{margin:30px}.section{padding-top:120px;margin-top:-120px}@media only screen and (max-width:768px){.section{padding-top:100px;margin-top:-100px}}header{display:block;width:100%;position:absolute;top:0;left:0}.nav{position:fixed;width:100%;background-color:var(--main-background-color);height:7rem;display:flex;align-items:center;justify-content:center;box-shadow:1px 13px 16px 2px rgba(0,0,0,.51);-webkit-box-shadow:1px 13px 16px 2px rgba(0,0,0,.51);-moz-box-shadow:1px 13px 16px 2px rgba(0,0,0,.51);z-index:1000;animation-name:comeUpToView;animation-duration:1s;transition:all 1s ease}.nav .active{transform:translateY(0);opacity:1}.logo{color:var(--secondary-font-color);font-size:2.2rem;position:absolute;top:50%;transform:translateY(-50%);left:2.5rem;cursor:pointer;z-index:1500}.switch{position:relative;display:inline-block;width:47px;height:20px;right:-5%}.switch input{opacity:0;width:0;height:0}.checkbox{margin-top:10px}.slider{cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc}.slider,.slider:before{position:absolute;transition:.4s}.slider:before{content:"";height:12px;width:12px;left:4px;bottom:4px;background-color:#fff}input:checked+.slider{background-color:#2196f3}input:focus+.slider{box-shadow:0 0 1px #2196f3}input:checked+.slider:before{transform:translateX(26px)}.slider.round{border-radius:34px}.slider.round:before{border-radius:50%}.menu-toggle,.nav-backdrop{display:none}.nav-list{list-style:none;position:absolute;font-size:15px;right:2.5rem;width:40%;display:flex;justify-content:space-around;align-items:center;z-index:1250}.nav-link{text-decoration:none;font-family:var(--secondary-font);color:var(--main-font-color)}.nav-link span,.nav-link:hover,.resume{color:var(--secondary-font-color)}.resume{background-color:transparent;border:1px solid var(--secondary-font-color);border-radius:5px}.resume:hover{cursor:pointer}.resume a{display:block;width:100%;padding:10px;background-color:transparent;margin:0!important;transition:background-color .5s}.resume a:hover{background-color:var(--secondary-font-color);color:var(--main-background-color)}@media only screen and (max-width:1000px){li{margin:0 7px}.switch{right:6rem}.nav-list{right:7rem}}@media only screen and (max-width:768px){body.open{overflow:hidden}.nav{height:5rem}.logo{left:1.15rem}.switch{right:-150%}.menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;padding:0;border:1px solid color-mix(in srgb,var(--secondary-font-color) 45%,transparent);border-radius:12px;background:color-mix(in srgb,var(--main-background-color) 72%,transparent);position:absolute;top:50%;right:1rem;transform:translateY(-50%);cursor:pointer;z-index:1600}.menu-toggle:focus-visible{outline:2px solid var(--secondary-font-color);outline-offset:3px}.open .menu-toggle{background:color-mix(in srgb,var(--secondary-font-color) 14%,var(--main-background-color))}.menu-bar{display:block;width:18px;height:2px;border-radius:2px;background:var(--secondary-font-color);transform-origin:center;transition:transform .28s ease,opacity .2s ease}.open .menu-bar:first-child{transform:translateY(8px) rotate(45deg)}.open .menu-bar:nth-child(2){opacity:0}.open .menu-bar:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.nav-backdrop{display:block;position:fixed;inset:0;border:0;padding:0;margin:0;background:rgba(2,1,15,.55);z-index:1200;opacity:0;pointer-events:none;transition:opacity .35s ease}.open .nav-backdrop{opacity:1;pointer-events:auto}.nav-list{list-style:none;position:fixed;top:5rem;right:0;left:0;width:100%;height:calc(100dvh - 5rem);margin:0;padding:1.5rem 1.5rem 1.35rem;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:.15rem;background:linear-gradient(180deg,color-mix(in srgb,var(--secondary-font-color) 12%,transparent),transparent 8rem),var(--main-background-color);border-top:1px solid color-mix(in srgb,var(--secondary-font-color) 28%,transparent);box-shadow:0 28px 60px rgba(0,0,0,.28);z-index:1400;transform:translateX(100%);transition:transform .4s cubic-bezier(.22,1,.36,1)}.nav-list:before{content:"Menu";display:block;margin:0 .35rem .85rem;padding-bottom:.85rem;border-bottom:1px solid color-mix(in srgb,var(--main-font-color) 16%,transparent);font-family:var(--secondary-font);font-size:.7rem;letter-spacing:.28em;text-transform:uppercase;color:var(--secondary-font-color)}.open .nav-list{transform:translateX(0)}.nav-list li{width:100%;margin:0}.nav-list .nav-item{opacity:0;transform:translateX(14px);transition:opacity .28s ease,transform .28s ease}.open .nav-list .nav-item{opacity:1;transform:none}.open .nav-list .nav-item:first-child{transition-delay:.08s}.open .nav-list .nav-item:nth-child(2){transition-delay:.12s}.open .nav-list .nav-item:nth-child(3){transition-delay:.16s}.open .nav-list .nav-item:nth-child(4){transition-delay:.2s}.open .nav-list .nav-item:nth-child(5){transition-delay:.24s}.nav-list li a{margin-left:0}.nav-list .nav-link{display:flex;align-items:baseline;gap:.85rem;padding:.85rem .7rem;border-radius:10px;font-size:1.15rem;letter-spacing:.01em}.nav-list .nav-link span{min-width:2.1rem;font-size:.72rem;letter-spacing:.04em}.nav-list .nav-link:focus-visible,.nav-list .nav-link:hover{background:var(--experience-hover-bg);color:var(--secondary-font-color)}.nav-list li:last-child{margin-top:auto;padding-top:1.25rem}.nav-list .resume{display:block;width:100%;border-radius:10px;font-family:var(--secondary-font);letter-spacing:.12em;text-transform:uppercase;font-size:.75rem}.nav-list .resume a{padding:.9rem 1rem;text-align:center}}@media (max-width:768px) and (prefers-reduced-motion:reduce){.menu-bar,.nav-backdrop,.nav-list,.nav-list .nav-item{transition:none}}.top-social .socialss{position:fixed;left:0;top:15rem;margin-left:2.7rem;z-index:1000;animation:fromBottomToUp 2s}.top-social .socialss:after{content:"";display:block;width:2px;height:250px;background:var(--secondary-font-color);margin-left:10px;position:absolute}.top-social ul li{margin:1rem 0}.top-social .fab{font-size:25px;margin:10px 0 0;transition:margin .2s}.top-social .fab:hover{cursor:pointer;color:var(--secondary-font-color);margin:0 0 10px}.theme-btn{background-color:transparent;padding:2px 6px;border:2px solid var(--secondary-font-color);border-radius:50%;color:var(--secondary-font-color);position:fixed;right:1rem;margin-left:5px;top:6rem;z-index:1000}.dots-wrapper:hover,.theme-btn{cursor:pointer}.theme-btn{visibility:hidden}.dots-wrapper{position:fixed;width:100%;display:flex;margin-left:5px;margin-top:7.5rem;justify-content:center;z-index:1000}#dot-1{background-color:#0b0039}#dot-2{background-color:#fff}.browser-dot{background-color:#000;height:20px;width:20px;border:2px solid var(--secondary-font-color);border-radius:50%;margin:5px;box-shadow:1px 1px 6px 0 #666266;animation:fromBottomToUp 2s;transition:transform .3s}.browser-dot:hover{transform:scale(1.2)}.top-social .email{position:relative;writing-mode:vertical-rl;transition:margin .2s;position:fixed;margin-right:2.7rem;right:0;top:14rem;z-index:1000;animation:fromBottomToUp 2s}.top-social .email p{margin-bottom:20px}.top-social .email p:after{content:"";display:block;width:2px;height:200px;margin-right:10px;margin-top:8rem;background:var(--secondary-font-color);right:0;top:50%;position:absolute}.top-social .email:hover{color:var(--secondary-font-color);cursor:pointer;margin-top:-.3rem;margin-bottom:.3rem}@media only screen and (max-width:768px){.theme-btn,.top-social .email,.top-social .socialss{visibility:hidden}.dots-wrapper{display:block;width:auto;right:1rem;top:auto;bottom:2rem;margin-top:0;transform:translateX(200%);transition:transform 1s}.open-themer{transform:translateX(0)}.browser-dot{margin:15px 0;box-shadow:1px 1px 6px 0 #666266}}.intro-title{position:relative;margin-top:180px;margin-left:10rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.intro-content{width:60%;--intro-fs-status:clamp(0.65rem,0.6rem + 0.15vw,0.75rem);--intro-fs-greeting:clamp(0.9rem,0.85rem + 0.2vw,1.125rem);--intro-fs-hero:clamp(2rem,1.5rem + 2.2vw,3.25rem);--intro-fs-role:clamp(1.05rem,0.95rem + 0.35vw,1.35rem);--intro-fs-tag:clamp(0.75rem,0.72rem + 0.12vw,0.8125rem);--intro-fs-body:clamp(0.9rem,0.88rem + 0.15vw,1.0625rem);--intro-fs-stat:clamp(1.25rem,1.1rem + 0.5vw,1.75rem)}.intro-status{display:flex;align-items:center;gap:10px;font-family:var(--secondary-font);font-size:var(--intro-fs-status);font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--secondary-font-color);margin-bottom:24px;animation:rightToLeft 2s}.intro-status-line{display:inline-block;width:28px;height:2px;background:var(--secondary-font-color);border-radius:2px}.intro-title h6{font-family:var(--main-font);font-size:var(--intro-fs-greeting);font-weight:400;color:var(--intro-muted);margin:0 0 8px;animation:rightToLeft 2s}.intro-title h1{font-size:var(--intro-fs-hero);line-height:1.1;margin:0 0 12px;animation:rightToLeft 2s}.intro-name-dot{display:inline-block;width:.22em;height:.22em;margin-left:.08em;margin-bottom:.12em;background:var(--secondary-font-color);vertical-align:baseline}.intro-role{font-size:var(--intro-fs-role);font-weight:600;letter-spacing:.02em;color:var(--secondary-font-color);margin:0 0 14px}.intro-positioning,.intro-role{font-family:var(--secondary-font);animation:rightToLeft 2s}.intro-positioning{font-size:var(--intro-fs-tag);font-weight:500;letter-spacing:.04em;line-height:1.6;color:var(--intro-muted);margin:0 0 28px}.intro-tags{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:28px;animation:rightToLeft 2s}.intro-tag{font-family:var(--secondary-font);font-size:var(--intro-fs-tag);font-weight:500;padding:.45em 1.05em;border-radius:999px}.intro-tag--blue{background:var(--intro-tag-blue-bg);color:var(--intro-tag-blue-color)}.intro-tag--purple{background:var(--intro-tag-purple-bg);color:var(--intro-tag-purple-color)}.intro-tag--green{background:var(--intro-tag-green-bg);color:var(--intro-tag-green-color)}.intro-tag-sep{color:var(--intro-tag-sep);font-size:var(--intro-fs-tag)}.intro-description{width:90%;font-size:var(--intro-fs-body);line-height:1.75;color:var(--intro-muted);margin:0 0 32px;animation:rightToLeft 2s}.intro-description strong{color:var(--main-font-color);font-weight:600}.intro-code{font-family:var(--secondary-font);font-size:.85em;background:var(--intro-code-bg);color:var(--secondary-font-color);padding:3px 10px;border-radius:6px;white-space:nowrap}.intro-stats{display:flex;flex-wrap:wrap;gap:40px;margin-bottom:36px;animation:rightToLeft 2s}.intro-stat{display:flex;flex-direction:column;gap:6px}.intro-stat-value{font-family:var(--secondary-font);font-size:var(--intro-fs-stat);font-weight:700;color:var(--main-font-color);line-height:1}.intro-stat-value--accent{color:var(--secondary-font-color)}.intro-stat-label{font-family:var(--secondary-font);font-size:var(--intro-fs-status);letter-spacing:.1em;text-transform:uppercase;color:var(--intro-muted)}.intro-cta{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:28px;animation:rightToLeft 2s}.intro-btn{background-color:transparent;color:var(--main-font-color);border:1px solid var(--intro-border);font-family:var(--secondary-font);font-size:var(--intro-fs-tag);padding:.85em 1.6em;border-radius:6px;transition:border-color .2s,color .2s}.intro-btn:hover{cursor:pointer;border-color:var(--secondary-font-color);color:var(--secondary-font-color)}.intro-btn:active,.intro-btn:focus{border-color:var(--secondary-font-color);outline:none}.intro-location{display:flex;align-items:center;gap:8px;font-family:var(--secondary-font);font-size:var(--intro-fs-tag);color:var(--intro-muted);animation:rightToLeft 2s}.intro-location-dot{width:8px;height:8px;border-radius:50%;background:#4ade80;box-shadow:0 0 6px rgba(74,222,128,.6)}.gravity-field-dots{position:fixed;inset:0;pointer-events:none;z-index:3}.gravity-dot{position:absolute;border-radius:50%;background:var(--bh-star-color);box-shadow:0 0 10px var(--bh-star-glow);animation:blackHolePulse 2.2s ease-in-out infinite;transform:translate(-50%,-50%);will-change:left,top}.hero-doodle-wrapper{width:40%;min-height:460px;position:relative;display:flex;align-items:center;justify-content:center;perspective:900px;overflow:visible;padding-right:4rem}.hero-orbit{position:absolute;width:min(420px,100%);height:min(420px,100%);left:50%;top:46%;transform:translate(-54%,-50%);pointer-events:none;z-index:1}.hero-orbit-ring{position:absolute;inset:18%;border-radius:50%;border:1px dashed rgba(0,241,180,.18)}.hero-orbit-ring--two{inset:4%;border-color:rgba(0,241,180,.1)}.hero-signal{--orbit-radius:min(168px,38vw);position:absolute;left:50%;top:50%;display:inline-flex;align-items:center;gap:6px;transform:rotate(calc((1turn / var(--n)) * var(--i) - 70deg)) translate(var(--orbit-radius)) rotate(calc((1turn / var(--n)) * var(--i) * -1 + 70deg));animation:heroSignalFade .8s ease both;animation-delay:calc(var(--i) * .06s)}.hero-signal-dot{width:6px;height:6px;border-radius:50%;background:var(--secondary-font-color);box-shadow:0 0 8px rgba(0,241,180,.45);flex-shrink:0}.hero-signal-label{font-family:var(--secondary-font);font-size:clamp(.65rem,.6rem + .2vw,.78rem);letter-spacing:.04em;color:var(--intro-muted);white-space:nowrap;max-width:140px;overflow:hidden;text-overflow:ellipsis}.hero-signal-meta{position:absolute;left:50%;bottom:12px;transform:translateX(-54%);text-align:center;z-index:2}.hero-signal-caption{margin:0;font-family:var(--secondary-font);font-size:var(--intro-fs-status,.7rem);letter-spacing:.12em;text-transform:uppercase;color:var(--intro-muted)}.hero-signal-viewer{margin:8px 0 0;font-family:var(--secondary-font);font-size:clamp(.72rem,.7rem + .15vw,.85rem);color:var(--secondary-font-color);letter-spacing:.04em}.hero-doodle{width:320px;height:320px;border-radius:50%;position:relative;z-index:2;transition:transform .1s ease-out;will-change:transform}@keyframes heroSignalFade{0%{opacity:0;filter:blur(2px)}to{opacity:1;filter:blur(0)}}.black-hole-glow{inset:56px;background:radial-gradient(circle,rgba(0,0,0,.92) 22%,rgba(20,8,60,.9) 54%,var(--bh-ring-color) 72%,transparent 100%);box-shadow:0 0 34px var(--bh-glow-shadow)}.black-hole-core,.black-hole-glow{position:absolute;border-radius:50%}.black-hole-core{inset:112px;background:var(--bh-core-bg);box-shadow:inset 0 0 18px #000,0 0 12px var(--bh-core-glow)}.accretion-ring{position:absolute;inset:68px;border-radius:50%;border-bottom:2px solid var(--bh-ring-color);border-right-color:var(--bh-ring-color);border-top:2px solid var(--bh-ring-color);border-left:2px solid transparent;border-right:2px solid var(--bh-ring-highlight);filter:blur(.2px);animation:blackHoleSpin 5.5s linear infinite;transition:transform .1s ease-out}.ring-two{inset:84px;border-width:1px;border-right-color:transparent;border-left-color:var(--bh-ring-highlight);animation-duration:3.2s;animation-direction:reverse}.cursor-well{position:absolute;left:50%;top:50%;width:72px;height:72px;border-radius:50%;margin-left:-36px;margin-top:-36px;background:radial-gradient(circle,rgba(0,241,180,.45) 0,rgba(0,241,180,.08) 55%,transparent 70%);pointer-events:none;transition:transform .05s linear,opacity .1s ease}@media only screen and (max-width:640px){.gravity-field-dots{display:none}.intro-title{margin-top:125px;margin-left:1.5rem;display:block}.intro-title h6{margin:0 0 8px 3px}.intro-title h1{margin:0 0 10px}.intro-role{margin:0 0 12px}.intro-positioning{margin:0 0 22px}.intro-description{width:100%}.intro-code{display:inline-block;margin-top:6px;white-space:normal;word-break:break-word}.intro-stats{gap:24px;margin-bottom:28px}.intro-content{width:100%}.hero-doodle-wrapper{display:none}.intro-cta{margin-top:10px;margin-bottom:24px}.intro-btn{width:100%;text-align:center}}.about-me{--about-muted:var(--experience-muted);--about-body:var(--experience-body);--about-title:var(--experience-title);position:relative;margin:12rem 0 5rem;padding:0 clamp(1.25rem,6vw,14rem);width:100%;max-width:100%;box-sizing:border-box}.about-me-header{width:100%;margin-bottom:clamp(1.75rem,3vw,2.5rem)}.section-title span{font-family:var(--secondary-font);font-weight:200;color:var(--secondary-font-color)}.section-title h1{position:relative;width:100%;margin:10px 0 20px}.section-title h1:after{z-index:-1;position:absolute;right:0;content:"";width:70%;border-bottom:1px solid var(--secondary-font-color);margin-top:30px}.about-me .section-title span{margin-right:.55rem}.about-me .section-title h1{margin:0;font-size:clamp(1.4rem,2.4vw,1.85rem);line-height:1.25;color:var(--about-title);overflow:hidden}.about-me-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);grid-column-gap:clamp(1.5rem,3vw,3rem);column-gap:clamp(1.5rem,3vw,3rem);align-items:stretch;width:100%}.about-me-copy{min-width:0;max-width:none;padding-right:0}.about-me-lead{margin:0 0 clamp(1.75rem,3vw,2.25rem);font-size:clamp(1.1rem,1.05rem + .35vw,1.3rem);line-height:1.65;font-weight:400;color:var(--about-title);max-width:58rem}.about-me-accent{color:var(--secondary-font-color);font-family:var(--secondary-font);font-weight:500}.about-me-blocks{display:grid;grid-gap:clamp(1.25rem,2.2vw,1.65rem);gap:clamp(1.25rem,2.2vw,1.65rem)}.about-me-block{display:grid;grid-gap:.45rem;gap:.45rem;padding-left:.95rem;border-left:2px solid var(--experience-track)}.about-me-label{margin:0;font-family:var(--secondary-font);font-size:.72rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--secondary-font-color)}.about-me-block p:not(.about-me-label){margin:0;font-size:clamp(.95rem,.92rem + .15vw,1.05rem);line-height:1.72;color:var(--about-body);max-width:58rem}.about-me-tech{margin-top:clamp(1.75rem,3vw,2.35rem);padding-top:clamp(1.25rem,2vw,1.6rem);border-top:1px solid var(--experience-track)}.about-me-tech .about-me-label{margin-bottom:.85rem}.about-me-tech-list{display:flex;flex-wrap:wrap;gap:.55rem;list-style:none;margin:0;padding:0}.about-me-tech-list li{font-family:var(--secondary-font);font-size:.8rem;line-height:1;color:var(--intro-tag-blue-color);background:var(--intro-tag-blue-bg);border:1px solid var(--experience-track);border-radius:999px;padding:.48rem .78rem}.about-me-media.section-right{--about-img-size:270px;--about-img-offset:16px;width:100%;padding:0;top:auto;justify-self:stretch;align-self:stretch;margin:0;height:auto;justify-content:center}.about-me-media.section-right,.about-me-portrait{max-width:100%;position:relative;display:flex;align-items:center}.about-me-portrait{flex-direction:column;gap:1.1rem;width:calc(var(--about-img-size) + var(--about-img-offset) + 28px)}.about-me-portrait-glow{position:absolute;top:12%;left:8%;width:78%;height:62%;border-radius:50%;background:radial-gradient(circle,var(--bh-core-glow) 0,transparent 70%);filter:blur(18px);pointer-events:none;z-index:0}.about-me-photo{position:relative;z-index:1;width:calc(var(--about-img-size) + var(--about-img-offset) + 4px);height:calc(var(--about-img-size) + var(--about-img-offset) + 4px)}.about-me-photo-bracket{position:absolute;width:1.35rem;height:1.35rem;z-index:3;pointer-events:none;border-color:var(--secondary-font-color);border-style:solid;opacity:.85;transition:transform .4s ease,opacity .4s ease}.about-me-photo-bracket--tl{top:-8px;left:-8px;border-width:2px 0 0 2px}.about-me-photo-bracket--br{right:-2px;bottom:-2px;border-width:0 2px 2px 0}.about-me-media .about-me-photo img,.section-right .about-me-photo img{width:var(--about-img-size);height:var(--about-img-size);max-width:100%;object-fit:cover;border-radius:6px;position:absolute;top:0;left:0;z-index:1;filter:hue-rotate(180deg) saturate(.95);box-shadow:0 18px 40px rgba(2,1,15,.45);transition:filter .45s ease,transform .45s ease,box-shadow .45s ease}.about-me-media .about-me-photo:hover img{filter:hue-rotate(0) saturate(1);transform:translate(-3px,-3px);box-shadow:0 22px 48px rgba(2,1,15,.55)}.about-me-media .about-me-photo .img-2,.section-right .about-me-photo .img-2{border:2px solid var(--secondary-font-color);margin:0;border-radius:6px;width:var(--about-img-size);height:var(--about-img-size);position:absolute;top:var(--about-img-offset);left:var(--about-img-offset);opacity:.9;transition:top .45s ease,left .45s ease,opacity .45s ease}.about-me-media .about-me-photo:hover .img-2{top:10px;left:10px;opacity:1}.about-me-media .about-me-photo:hover .about-me-photo-bracket--tl{transform:translate(-2px,-2px);opacity:1}.about-me-media .about-me-photo:hover .about-me-photo-bracket--br{transform:translate(2px,2px);opacity:1}.about-me-portrait-meta{position:relative;z-index:1;padding-left:.15rem;max-width:var(--about-img-size);text-align:center}.about-me-portrait-name{margin:0 0 .28rem;font-size:1rem;font-weight:500;color:var(--experience-title);letter-spacing:.01em}.about-me-portrait-role{margin:0;font-family:var(--secondary-font);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--secondary-font-color);opacity:.9}.section-right img:hover+.img-2{top:10px;left:10px}.section-right .img-2 img{position:absolute;visibility:hidden;z-index:100;border:2px solid var(--secondary-font-color)}@media only screen and (max-width:1100px){.about-me{padding:0 clamp(1.5rem,5vw,4rem)}.about-me-media.section-right{--about-img-size:220px;--about-img-offset:14px}}@media only screen and (max-width:900px){.about-me{margin:7.5rem 0 4rem;padding:0 clamp(1.25rem,4vw,2.5rem)}.about-me .section-title h1:after{width:48%}.about-me-layout{grid-template-columns:1fr;gap:2.25rem}.about-me-copy{max-width:100%;padding-right:0;order:1}.about-me-media.section-right{--about-img-size:min(340px,78vw);--about-img-offset:16px;position:relative;top:auto;justify-self:stretch;align-self:start;justify-content:center;order:2}.about-me-portrait{align-items:center}.about-me-portrait-meta{display:none}.about-me-lead{max-width:100%}}@media only screen and (max-width:640px){.about-me{margin:5.5rem 0 3.5rem;padding:0 1.15rem}.about-me .section-title h1{font-size:1.3rem}.about-me .section-title h1:after{width:32%;margin-top:22px}.about-me-lead{font-size:1.05rem;margin-bottom:1.5rem}.about-me-block{padding-left:.8rem}.about-me-block p:not(.about-me-label){font-size:.95rem;line-height:1.68}.about-me-tech-list{gap:.45rem}.about-me-tech-list li{font-size:.75rem;padding:.42rem .7rem}.about-me-media.section-right{--about-img-size:min(320px,78vw);--about-img-offset:15px;justify-self:center}.about-me-portrait{align-items:center}}@media only screen and (max-width:400px){.about-me{padding:0 1rem}.about-me-media.section-right{--about-img-size:min(300px,80vw);--about-img-offset:14px}}.experience{--exp-surface:hsla(0,0%,100%,.035);--exp-surface-border:rgba(0,241,180,.16);--exp-shadow:0 18px 40px rgba(2,0,24,.28);padding:0 clamp(2rem,8vw,14rem);margin:0 0 5rem}[data-theme=orange] .experience{--exp-surface:hsla(0,0%,100%,.72);--exp-surface-border:rgba(14,56,84,.1);--exp-shadow:0 14px 32px rgba(14,56,84,.08)}.experience .section-title h1{margin:0 0 .25rem;font-size:clamp(1.4rem,2.4vw,1.85rem);line-height:1.25;color:var(--experience-title)}.experience .section-title span{margin-right:.55rem}.experience .experience-panel{display:flex;align-items:flex-start;gap:1.35rem;margin-top:2.25rem}.experience .company-list{width:min(268px,32%);flex-shrink:0;align-self:flex-start}.experience .company-list ul{list-style:none;margin:0;padding:.2rem;position:relative;height:auto;display:flex;flex-direction:column;justify-content:flex-start;gap:.4rem;border-left:none}.experience .company-list li{margin:0;padding:0;width:100%;border:none;background:none}.experience .company-tab{width:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.18rem;text-align:left;padding:.72rem .9rem .72rem .95rem;margin:0;border:1px solid transparent;border-left-width:3px;border-radius:12px;background:transparent;color:var(--experience-muted);font-family:var(--main-font);cursor:pointer;transition:color .2s ease,background-color .2s ease,border-color .2s ease}.experience .company-tab:hover{color:var(--experience-title);background-color:var(--experience-hover-bg)}.experience .company-tab.active{color:var(--secondary-font-color);background-color:var(--experience-active-bg);border-color:var(--exp-surface-border);border-left-color:var(--secondary-font-color)}.experience .tab-company{font-size:.92rem;font-weight:500;line-height:1.3;letter-spacing:.01em}.experience .tab-role{font-size:.74rem;line-height:1.35;color:var(--experience-muted-soft)}.experience .company-tab.active .tab-role,.experience .company-tab:hover .tab-role{color:var(--experience-muted)}.experience .description-wrap{position:relative;flex:1 1;min-width:0;align-self:stretch;display:flex;flex-direction:column}.experience .description-panel{width:100%;flex:1 1;display:flex;flex-direction:column}.experience .description-panel.from-right{animation:experienceSlideFromRight .28s ease}.experience .description-panel.from-left{animation:experienceSlideFromLeft .28s ease}.experience .description{position:relative;flex:1 1;display:flex;flex-direction:column;height:100%;padding:1.55rem 1.7rem 1.45rem;border-radius:16px;background:var(--exp-surface);border:1px solid var(--exp-surface-border);box-shadow:var(--exp-shadow);overflow:hidden}.experience .description:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--secondary-font-color),transparent 72%)}.experience .description .job-head{display:flex;flex-direction:column;gap:.28rem;margin:0 0 .95rem;font-weight:600;line-height:1.3;flex-shrink:0}.experience .description .job-role{font-size:clamp(1.15rem,2vw,1.45rem);color:var(--experience-title)}.experience .description .job-company{font-family:var(--secondary-font);font-size:.92rem;font-weight:400;color:var(--secondary-font-color)}.experience .description .job-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 1.25rem;font-family:var(--secondary-font);font-size:.78rem;letter-spacing:.02em;color:var(--experience-muted);flex-shrink:0}.experience .description .job-meta .duration,.experience .description .job-meta .tenure{display:inline-flex;align-items:center;padding:.32rem .7rem;border-radius:999px;border:1px solid var(--experience-track);background:var(--experience-hover-bg)}.experience .description .job-meta .duration.is-current{color:var(--secondary-font-color);border-color:var(--exp-surface-border)}.experience .description .job-points{list-style:none;margin:0;padding:0;flex:1 1;display:flex;flex-direction:column;justify-content:flex-start;gap:.8rem}.experience .description .job-points li{position:relative;margin:0;padding-left:1.2rem;font-family:var(--main-font);font-size:.98rem;line-height:1.65;color:var(--experience-body);border:none;background:none;width:auto;cursor:default}.experience .description .job-points li:before{content:"▹";position:absolute;left:0;top:.05rem;color:var(--secondary-font-color);font-size:.95rem;line-height:1.65}.experience .experience-measure{position:absolute;left:0;top:0;width:100%;visibility:hidden;pointer-events:none;z-index:-1}.experience .experience-measure .description-measure{position:relative;height:auto;display:block}.experience .experience-measure .description-measure .job-points{display:block;flex:none}.experience .experience-measure .description-measure .job-points li{margin-bottom:.85rem}@keyframes experienceSlideFromRight{0%{opacity:0;transform:translateX(24px)}to{opacity:1;transform:translateX(0)}}@keyframes experienceSlideFromLeft{0%{opacity:0;transform:translateX(-24px)}to{opacity:1;transform:translateX(0)}}@media only screen and (max-width:900px){.experience{padding:0 clamp(1.25rem,5vw,2rem);margin-bottom:4rem}.experience .experience-panel{flex-direction:column;align-items:stretch;gap:1.25rem;margin-top:1.5rem;min-height:0!important}.experience .company-list{width:100%;align-self:auto}.experience .company-list ul{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start;height:auto;gap:.45rem;overflow-x:auto;overflow-y:hidden;border-bottom:none;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;padding-bottom:.15rem}.experience .company-list ul::-webkit-scrollbar{display:none}.experience .company-list li{width:auto;flex:0 0 auto}.experience .company-tab{justify-content:center;text-align:left;white-space:nowrap;padding:.6rem .85rem;border-left-width:3px;border-radius:10px}.experience .tab-role{display:none}.experience .description{padding:1.2rem 1.15rem 1.1rem}.experience .description .job-role{font-size:1.15rem}.experience .description .job-meta{margin-bottom:1.05rem}.experience .description .job-points{gap:.7rem}.experience .description .job-points li{font-size:.95rem}}@media only screen and (max-width:640px){.experience{padding:0 1.25rem}.experience .company-tab{padding:.55rem .75rem}.experience .description .job-role{font-size:1.05rem}.experience .description .job-company{font-size:.82rem}}.skills{position:relative;text-align:center}.skills .title{font-family:var(--main-font);font-size:25px}.skills .sub-title{color:var(--secondary-font-color);font-family:var(--secondary-font);font-size:13px;font-weight:300;position:relative}.skills .row{margin:2rem 6rem;display:flex}.skills .card{border-radius:5px;background-color:var(--secondary-background-color);margin:.3rem 1rem .7rem;padding:30px 15px;transition:margin .4s}.tool-img{background-color:#fff;border-radius:50%;border:6px solid var(--main-background-color);width:120px;height:120px;padding:13px;margin:0 auto;overflow:hidden;transition:border .5s}.card:hover .tool-img{border:6px solid var(--secondary-font-color)}.tool-name h1{font-family:var(--main-font);font-size:large;font-weight:100;margin:10px 0;color:var(--main-font-color)}.tool-description{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}@media only screen and (max-width:768px){.skills .row{margin:2rem 1rem;flex-direction:column}.skills .card{margin:20px}}.skills-section{position:relative;text-align:left;padding:0 clamp(2rem,8vw,14rem);margin:0 0 5rem}.skills-section .section-title span{margin-right:.55rem}.skills-section .section-title h1{margin:0 0 1.25rem;font-size:clamp(1.4rem,2.4vw,1.85rem);line-height:1.25;color:var(--experience-title)}.skills-lead{max-width:38rem;margin:0;font-size:clamp(1.02rem,1rem + .2vw,1.15rem);line-height:1.65;color:var(--experience-body)}.skills-board{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);grid-gap:1.15rem;gap:1.15rem;margin-top:clamp(1.75rem,3vw,2.5rem)}.skills-group{border:1px solid var(--experience-track);border-radius:16px;padding:1.2rem 1.1rem .85rem;background:color-mix(in srgb,var(--secondary-background-color) 16%,transparent)}.skills-group--wide{grid-column:1/-1}.skills-kicker{margin:0;font-family:var(--secondary-font);font-size:.75rem;letter-spacing:.14em;color:var(--secondary-font-color)}.skills-group h2{margin:.3rem 0 .2rem;font-size:1.2rem;font-weight:500;color:var(--experience-title)}.skills-note{margin:0 0 .85rem;font-size:.92rem;line-height:1.5;color:var(--experience-muted)}.skills-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:.2rem;gap:.2rem}.skills-group--wide .skills-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:.35rem .5rem}.skills-item{display:flex;align-items:center;gap:.8rem;min-height:64px;padding:.45rem .55rem;border-radius:12px;border:1px solid transparent;color:inherit;transition:background-color .2s ease,border-color .2s ease}.skills-item:focus-visible,.skills-item:hover{background:var(--experience-hover-bg);border-color:var(--secondary-font-color);outline:none}.skills-logo{width:46px;height:46px;flex-shrink:0;display:grid;place-items:center;border-radius:12px;background:#fff;overflow:hidden}.skills-logo img{width:34px;height:34px;object-fit:contain}.skills-copy{display:flex;flex-direction:column;min-width:0;gap:.1rem}.skills-name{font-size:.98rem;font-weight:500;color:var(--experience-title)}.skills-use{font-size:.82rem;line-height:1.35;color:var(--experience-muted)}@media only screen and (max-width:1100px){.skills-group--wide .skills-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media only screen and (max-width:900px){.skills-board{grid-template-columns:1fr}}@media only screen and (max-width:640px){.skills-section{padding:0 1.25rem}.skills-group--wide .skills-list{grid-template-columns:1fr}}.projects{position:relative;display:block;text-align:center;width:100%}.projects a{text-decoration:none;color:inherit}.projects .card{padding:10px 10px 30px;display:block;overflow:hidden}.projects .ss{overflow:hidden;border-radius:5px}.projects img{width:100%;border-radius:5px}.card img{transition:transform .5s;object-fit:cover}.card:hover img{transform:scale(1.3)}.project-details{margin-top:10px}.project-details .name{display:flex}.project-details h1{font-family:var(--main-font);font-size:20px}.project-details p{font-family:var(--main-font);font-size:18px;margin:5px 0 0 5px}.project-details .sub-details{display:flex;margin-top:5px}.sub-details p{margin-left:0}.project-details .one{width:100%;text-align:start!important}.project-details .one p{font-family:var(--main-font);font-size:15px}.project-details .one span{font-family:var(--secondary-font);color:var(--secondary-font-color)}.project-details .two i{vertical-align:middle}footer{text-align:center;margin-top:10rem}footer h2{font-size:45px}footer p{font-size:18px;margin:2rem 15rem;filter:brightness(70%)}footer .say-hello{font-family:var(--main-font);background-color:transparent;padding:15px 20px;border:2px solid var(--secondary-font-color);border-radius:5px}footer .say-hello:hover{cursor:pointer}footer a{color:var(--secondary-font-color);text-decoration:none}footer .social{visibility:hidden;margin:4rem 0 1rem}footer ul{display:flex;justify-content:center}footer li{margin:0 1rem}footer .fab{font-size:25px;margin:.3rem 0 0;transition:margin .2s;color:var(--main-font-color)}footer a .fab:hover{cursor:pointer;color:var(--secondary-font-color);margin:0 0 .3rem}footer .two p,footer footer .two{font-family:var(--secondary-font)}footer .two p{font-size:13px;margin-top:0}@media only screen and (max-width:768px){footer{margin-top:5rem}footer p{margin:2rem;filter:brightness(70%)}footer .social{visibility:visible}}.uk-section{background-color:#666}.owl-carousel{position:relative;margin-top:30px}.owl-nav{position:absolute;top:-60px;left:10px}.uk-card-primary{border-radius:8px}h3{margin-top:10px}.uk-card>:last-child{margin-top:0;margin-bottom:10px}p{margin-top:30px;margin-bottom:0}.owl-next{background:#3286f0}.owl-theme .owl-nav [class*=owl-]{background:#383838}.owl-dots{margin-top:30px}.uk-card-title{padding-bottom:20px}.reveal-left{transform:translateX(-150px)}.reveal-left,.reveal-right{position:relative;opacity:0;transition:all 1s ease}.reveal-right{transform:translateX(150px)}.reveal-left.active,.reveal-right.active{transform:translateY(0);opacity:1}@keyframes scale{0%{transform:scale(2)}to{opacity:1;transform:scale(1)}}@keyframes comeUpToView{0%{top:-150px}to{top:0;opacity:1}}@keyframes rightToLeft{0%{opacity:0;transform:translateX(550px)}to{opacity:1;transform:translateX(0)}}@keyframes fromBottomToUp{0%{opacity:0}to{opacity:1}}@keyframes blackHoleSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes blackHolePulse{0%,to{opacity:.7}50%{opacity:1}}:root,[data-theme=dark]{--main-font:"Roboto",sans-serif;--main-font-color:#ccd5ff;--secondary-font-color:#00f1b4;--secondary-font:"Roboto Mono",monospace;--main-background-color:#0b0039;--secondary-background-color:#014082;--experience-title:#e6f1ff;--experience-muted:rgba(204,213,255,.75);--experience-muted-soft:rgba(204,213,255,.45);--experience-body:rgba(204,213,255,.88);--experience-track:rgba(204,213,255,.2);--experience-hover-bg:rgba(0,241,180,.06);--experience-active-bg:rgba(0,241,180,.1)}[data-theme=orange]{--main-font:"Roboto",sans-serif;--main-font-color:#0e3854;--secondary-font-color:#ff7c1f;--secondary-font:"Roboto Mono",monospace;--main-background-color:#e4e4e4;--secondary-background-color:#99d6ff;--experience-title:#0e3854;--experience-muted:rgba(14,56,84,.72);--experience-muted-soft:rgba(14,56,84,.45);--experience-body:rgba(14,56,84,.9);--experience-track:rgba(14,56,84,.22);--experience-hover-bg:rgba(255,124,31,.08);--experience-active-bg:rgba(255,124,31,.14)}