:root{--primary:#7aa2f7;--primary-dark:#5a85f0;--secondary:#ed9345;--secondary-dark:#e98125;--white:#f8fafc;--white2:#f1f5f9;--gray:#e2e8f0;--gray2:#94a3b8;--gray3:#64748b;--black:#1e293b;--black2:#0f172a}body{color:var(--gray3);font-family:Montserrat,sans-serif;font-size:clamp(14px,1.5vw,16px);text-align:center}footer,header,section.even{color:var(--white)}h1{text-transform:uppercase}h2,h3,h4{letter-spacing:.3rem}h3{font-size:clamp(1.6rem,4vw,2.2rem);font-weight:700;text-transform:uppercase}h4{font-size:clamp(1rem,2.5vw,1.3rem)}html{background:linear-gradient(var(--white),var(--white2))}section{padding-bottom:4rem;padding-top:4rem}#navbar,section.even{background:linear-gradient(150deg,#111827,#1a2744)}hr{background-image:linear-gradient(to right,transparent,var(--primary),transparent);border:0;height:.1rem;max-width:100%}section.even hr{background-image:linear-gradient(to right,transparent,var(--white),transparent)}section hr{margin-bottom:3.5rem}.section-title{display:inline-block;margin-bottom:.5rem;position:relative}.section-title:after{background:var(--primary);border-radius:2px;bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:36px}section.even .section-title:after{background:var(--white)}.animate-on-scroll{opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease}.animate-on-scroll.visible{opacity:1;transform:translateY(0)}.portfolio-grid .animate-on-scroll:nth-child(2){transition-delay:.08s}.portfolio-grid .animate-on-scroll:nth-child(3){transition-delay:.16s}.portfolio-grid .animate-on-scroll:nth-child(4){transition-delay:.24s}.portfolio-grid .animate-on-scroll:nth-child(5){transition-delay:.32s}.portfolio-grid .animate-on-scroll:nth-child(6){transition-delay:.4s}.skillset-grid .animate-on-scroll:nth-child(2){transition-delay:.06s}.skillset-grid .animate-on-scroll:nth-child(3){transition-delay:.12s}.skillset-grid .animate-on-scroll:nth-child(4){transition-delay:.18s}.skillset-grid .animate-on-scroll:nth-child(5){transition-delay:.24s}.skillset-grid .animate-on-scroll:nth-child(6){transition-delay:.3s}.skillset-grid .animate-on-scroll:nth-child(7){transition-delay:.36s}.skillset-grid .animate-on-scroll:nth-child(8){transition-delay:.42s}.skip-link{background:var(--primary);border-radius:6px;color:var(--black);font-size:.9rem;font-weight:700;left:1rem;padding:.5rem 1rem;position:absolute;text-decoration:none;top:-100%;transition:top .2s ease;z-index:9999}.skip-link:focus{top:1rem}:focus-visible{outline:2px solid var(--primary);outline-offset:3px}footer{background:linear-gradient(160deg,var(--black) 0,var(--black2) 100%);padding:2.5rem 1rem}.footer-content{align-items:center;color:var(--white);display:flex;flex-direction:column;gap:.75rem}.footer-content p{color:var(--gray2);font-size:.95rem;margin:0}.footer-content strong{color:var(--white)}.footer-content small{color:var(--gray3);font-size:.8rem}.footer-links{display:flex;gap:1.5rem}.footer-links a{color:var(--gray2);font-size:.88rem;font-weight:600;letter-spacing:.04em;text-decoration:none;transition:color .2s ease}.footer-links a:hover{color:var(--primary)}header{align-items:center;background:linear-gradient(160deg,var(--black) 0,var(--black2) 100%);display:flex;flex-direction:column;justify-content:center;min-height:100vh;overflow:hidden;padding:5rem 1rem 4rem;position:relative}header video{left:50%;min-height:100%;min-width:100%;object-fit:cover;opacity:.15;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%)}.hero-logo{border:3px solid rgba(122,162,247,.35);box-shadow:0 0 30px rgba(122,162,247,.18);height:clamp(90px,15vw,130px);margin-bottom:1.25rem;object-fit:cover;width:clamp(90px,15vw,130px)}.hero-logo,.hero-name{position:relative;z-index:1}.hero-name{background:linear-gradient(135deg,var(--primary) 0,var(--secondary) 100%);-webkit-background-clip:text;font-size:clamp(1.8rem,6vw,3.5rem);font-weight:800;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:.15em;margin:0 0 .25rem}header hr{background:hsla(0,0%,100%,.2);border:none;height:2px;margin:.75rem auto;position:relative;width:60px;z-index:1}.hero-subtitle{color:var(--gray2);font-size:clamp(.9rem,2.5vw,1.15rem);font-weight:400;letter-spacing:.3em;margin:0 0 2rem}.hero-cta,.hero-subtitle{position:relative;text-transform:uppercase;z-index:1}.hero-cta{border:2px solid var(--primary);border-radius:50px;color:var(--primary);display:inline-block;font-size:.95rem;font-weight:600;letter-spacing:.08em;padding:.75rem 2.2rem;text-decoration:none;transition:background .3s ease,color .3s ease,transform .3s ease,box-shadow .3s ease}.hero-cta:hover{background:var(--primary);box-shadow:0 8px 24px rgba(122,162,247,.32);color:var(--black);transform:translateY(-3px)}.scroll-indicator{bottom:2rem;left:50%;position:absolute;transform:translateX(-50%);z-index:1}.scroll-arrow{animation:bounce 2.2s ease infinite;color:hsla(0,0%,100%,.35);display:inline-block;font-size:1.4rem}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}@media (max-width:480px){header{padding:4rem 1rem 3.5rem}}#navbar{box-shadow:0 2px 10px rgba(0,0,0,.2);transition:background .3s ease,box-shadow .3s ease}#navbar div{justify-content:space-between}#navbar div,#navbar div a{align-items:center;display:flex}#navbar div a{color:var(--white);font-weight:600;padding:.75rem 1rem;text-decoration:none;transition:color .2s ease}#navbar div a:hover{color:var(--primary)}#navbar div img{height:36px;margin-right:.5rem;width:36px}#burger{background:transparent;border:none;border-radius:8px;color:var(--white);cursor:pointer;font-size:1.5rem;line-height:1;margin:.5rem;padding:.3rem .75rem;transition:background .2s ease}#burger:hover,#navbar.open #burger{background:rgba(0,0,0,.2)}#navbar ul{background:linear-gradient(150deg,#111827,#1a2744);border-top:1px solid hsla(0,0%,100%,.1);margin:0;max-height:0;overflow:hidden;padding:0;position:absolute;transition:max-height .3s ease;width:100%;z-index:200}#navbar.open ul{max-height:160px}#navbar li{list-style:none;padding:0}#navbar ul a{color:var(--white);display:block;font-weight:600;letter-spacing:.05em;padding:.65rem 1rem;text-decoration:none;transition:color .2s ease,background .2s ease}#navbar ul a:focus,#navbar ul a:hover{background:var(--white);color:var(--black)}.navbar-fixed{position:fixed;top:0;width:100%;z-index:100}#navbar.navbar-fixed{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:rgba(28,28,28,.88)!important;border-bottom:1px solid hsla(0,0%,100%,.07);box-shadow:0 4px 24px rgba(0,0,0,.35)}#navbar.navbar-fixed div a{color:var(--white)}#navbar.navbar-fixed div a:hover{color:var(--primary)}.portfolio-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin:0 auto;max-width:1200px;padding:0 2rem 2rem}.portfolio-btn{background:var(--black2);border:1px solid hsla(0,0%,100%,.06);border-radius:12px;box-shadow:0 4px 16px rgba(0,0,0,.25);cursor:pointer;overflow:hidden;padding:0;position:relative;transition:transform .3s ease,box-shadow .3s ease;width:100%}.portfolio-btn:hover{box-shadow:0 20px 40px rgba(122,162,247,.15);transform:translateY(-6px)}.portfolio-btn img{display:block;height:220px;object-fit:cover;transition:transform .4s ease;width:100%}.portfolio-btn:hover img{transform:scale(1.06)}.card-info{background:linear-gradient(0deg,rgba(0,0,0,.92) 0,rgba(0,0,0,.6) 60%,transparent);bottom:0;left:0;padding:1.25rem 1rem 1rem;position:absolute;right:0;transform:translateY(100%);transition:transform .35s ease}.portfolio-btn:hover .card-info{transform:translateY(0)}.card-info h4{color:var(--white);font-size:clamp(1rem,2.5vw,1.2rem);font-weight:700;letter-spacing:.05em;margin:0 0 .5rem}.card-tech{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center}.tech-tag{background:rgba(122,162,247,.12);border:1px solid rgba(122,162,247,.3);border-radius:100px;color:var(--primary);font-size:.7rem;font-weight:600;letter-spacing:.03em;padding:3px 10px}.skillset-grid{display:grid;gap:1rem;grid-template-columns:repeat(4,1fr);margin:0 auto;max-width:700px;padding:0 2rem 2rem}.skill-item{align-items:center;background:hsla(0,0%,100%,.07);border:1px solid hsla(0,0%,100%,.12);border-radius:14px;cursor:default;display:flex;flex-direction:column;gap:.6rem;padding:1.1rem .75rem;transition:background .25s ease,border-color .25s ease,transform .25s ease}.skill-item:hover{background:rgba(122,162,247,.1);border-color:var(--primary);transform:scale(1.06)}.skill-item img{height:2.8rem;object-fit:contain;width:2.8rem}.skill-name{color:var(--white);font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}@media (max-width:540px){.skillset-grid{grid-template-columns:repeat(2,1fr);padding:0 1.5rem 2rem}}#contact form{font-size:1rem;margin:0 auto 2.5rem;width:min(560px,90%)}.form-group{display:flex;flex-direction:column;margin-bottom:1.4rem;text-align:left}.form-group label{color:var(--gray3);font-size:.9rem;font-weight:600;letter-spacing:.04em;margin-bottom:.45rem;text-transform:uppercase}.form-group input,.form-group textarea{background:rgba(0,0,0,.04);border:1.5px solid var(--gray2);border-radius:10px;box-sizing:border-box;color:var(--black);font-family:inherit;font-size:1rem;outline:none;padding:.85rem 1rem;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(122,162,247,.14)}.form-group textarea{min-height:130px;resize:vertical}.submit-btn{background:var(--secondary);border:none;border-radius:50px;color:var(--white);cursor:pointer;display:block;font-family:inherit;font-size:1rem;font-weight:700;letter-spacing:.06em;margin:.5rem auto 0;padding:.85rem 2.5rem;transition:background .25s ease,transform .2s ease,box-shadow .25s ease}.submit-btn:hover{background:var(--secondary-dark);box-shadow:0 8px 20px rgba(255,138,32,.3);transform:translateY(-2px)}.form-success{background:rgba(122,162,247,.08);border:1px solid rgba(122,162,247,.3);border-radius:10px;color:var(--primary);font-size:.95rem;font-weight:600;margin-top:1.25rem;padding:.85rem 1.25rem}#social-media{display:flex;gap:.5rem;justify-content:center;margin-top:1rem}#social-media img{background-color:var(--white);border-radius:50%;height:48px;object-fit:contain;transition:background-color .3s ease,transform .2s ease;width:48px}#social-media a{text-decoration:none}#social-media a:hover img{transform:scale(1.1)}#linkedin:hover{background-color:#0077b5}#github:hover{background-color:#24292e}@media (max-width:540px){#contact form{width:92%}}#experience img{background:#fff;border:5px solid var(--primary);border-radius:25px;cursor:pointer;height:150px;padding:2rem;transition:border-radius .3s ease,box-shadow .3s ease;width:150px}#experience img:hover{border-radius:0;box-shadow:0 0 10px 1px var(--gray2)}#experience h4{font-size:1rem;margin-bottom:3rem}.circle{border-radius:50%}@media (max-width:420px){.portfolio-grid{grid-template-columns:1fr;padding:0 1rem 2rem}}@media (min-width:600px) and (max-width:900px){.portfolio-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){#navbar div a small{display:none}}@media (max-width:360px){#navbar div a span{display:none}}@media (max-width:600px){section{padding-bottom:2.5rem;padding-top:2.5rem}section hr{margin-bottom:2.5rem}}@media (max-width:540px){.submit-btn{width:100%}}.modal{font-family:-apple-system,BlinkMacSystemFont,avenir next,avenir,helvetica neue,helvetica,ubuntu,roboto,noto,segoe ui,arial,sans-serif}.modal__overlay{align-items:center;background:rgba(0,0,0,.6);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0}.modal__container{background-color:#fff;border-radius:4px;box-sizing:border-box;max-height:100vh;max-width:500px;overflow-y:auto;padding:30px}.modal__header{align-items:center;display:flex;justify-content:space-between}.modal__title{box-sizing:border-box;color:#00449e;font-size:1.25rem;font-weight:600;line-height:1.25;margin-bottom:0;margin-top:0}.modal__close{background:transparent;border:0;cursor:pointer}.modal__header .modal__close:before{content:"\2715"}.modal__content{color:rgba(0,0,0,.8);line-height:1.5;margin-bottom:2rem;margin-top:2rem}.modal__btn{background-color:#e6e6e6;border-radius:.25rem;border-style:none;border-width:0;color:rgba(0,0,0,.8);cursor:pointer;font-size:.875rem;line-height:1.15;margin:0;overflow:visible;padding:.5rem 1rem;text-transform:none;will-change:transform;-moz-osx-font-smoothing:grayscale;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:translateZ(0);transform:translateZ(0);transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.modal__btn:focus,.modal__btn:hover{-webkit-transform:scale(1.05);transform:scale(1.05)}.modal__btn-primary{background-color:#00449e;color:#fff}@keyframes mmfadeIn{0%{opacity:0}to{opacity:1}}@keyframes mmfadeOut{0%{opacity:1}to{opacity:0}}@keyframes mmslideIn{0%{transform:translateY(15%)}to{transform:translateY(0)}}@keyframes mmslideOut{0%{transform:translateY(0)}to{transform:translateY(-10%)}}.micromodal-slide{display:none}.micromodal-slide.is-open{display:block}.micromodal-slide[aria-hidden=false] .modal__overlay{animation:mmfadeIn .3s cubic-bezier(0,0,.2,1)}.micromodal-slide[aria-hidden=false] .modal__container{animation:mmslideIn .3s cubic-bezier(0,0,.2,1)}.micromodal-slide[aria-hidden=true] .modal__overlay{animation:mmfadeOut .3s cubic-bezier(0,0,.2,1)}.micromodal-slide[aria-hidden=true] .modal__container{animation:mmslideOut .3s cubic-bezier(0,0,.2,1)}.micromodal-slide .modal__container,.micromodal-slide .modal__overlay{will-change:transform}
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}