@charset "UTF-8";:root{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-black:#000;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:108,117,125;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-body-color-rgb:33,37,41;--bs-body-bg-rgb:255,255,255;--bs-font-sans-serif:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, .15), rgba(255, 255, 255, 0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-bg:#fff;--bs-border-width:1px;--bs-border-style:solid;--bs-border-color:#dee2e6;--bs-border-color-translucent:rgba(0, 0, 0, .175);--bs-border-radius:.375rem;--bs-border-radius-sm:.25rem;--bs-border-radius-lg:.5rem;--bs-border-radius-xl:1rem;--bs-border-radius-2xl:2rem;--bs-border-radius-pill:50rem;--bs-link-color:#0d6efd;--bs-link-hover-color:#0a58ca;--bs-code-color:#d63384;--bs-highlight-bg:#fff3cd}*,:after,:before{box-sizing:border-box}@media(prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr{margin:1rem 0;color:inherit;border:0;border-top:1px solid;opacity:.25}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2}.h1,h1{font-size:calc(1.375rem + 1.5vw)}@media(min-width:1200px){.h1,h1{font-size:2.5rem}}.h2,h2{font-size:calc(1.325rem + .9vw)}@media(min-width:1200px){.h2,h2{font-size:2rem}}.h3,h3{font-size:calc(1.3rem + .6vw)}@media(min-width:1200px){.h3,h3{font-size:1.75rem}}.h4,h4{font-size:calc(1.275rem + .3vw)}@media(min-width:1200px){.h4,h4{font-size:1.5rem}}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}.small,small{font-size:.875em}mark{padding:.1875em;background-color:var(--bs-highlight-bg)}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:var(--bs-link-color);text-decoration:underline}a:hover{color:var(--bs-link-hover-color)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:var(--bs-font-monospace);font-size:1em}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:var(--bs-code-color);word-wrap:break-word}a>code{color:inherit}kbd{padding:.1875rem .375rem;font-size:.875em;color:var(--bs-body-bg);background-color:var(--bs-body-color);border-radius:.25rem}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:#6c757d;text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none!important}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media(min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.img-fluid{max-width:100%;height:auto}.figure{display:inline-block}.container{--bs-gutter-x:1.5rem;--bs-gutter-y:0;width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-right:auto;margin-left:auto}@media(min-width:576px){.container{max-width:540px}}@media(min-width:768px){.container{max-width:720px}}@media(min-width:992px){.container{max-width:960px}}@media(min-width:1200px){.container{max-width:1140px}}@media(min-width:1400px){.container{max-width:1320px}}.row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;display:flex;flex-wrap:wrap;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x))}.row>*{flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-top:var(--bs-gutter-y)}@media(min-width:576px){.col-sm-12{flex:0 0 auto;width:100%}}@media(min-width:768px){.col-md-4{flex:0 0 auto;width:33.33333333%}.col-md-6{flex:0 0 auto;width:50%}}@media(min-width:992px){.col-lg-3{flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;width:33.33333333%}.col-lg-6{flex:0 0 auto;width:50%}.col-lg-8{flex:0 0 auto;width:66.66666667%}.col-lg-9{flex:0 0 auto;width:75%}.col-lg-12{flex:0 0 auto;width:100%}}.fade{transition:opacity .15s linear}@media(prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.nav{--bs-nav-link-padding-x:1rem;--bs-nav-link-padding-y:.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color:var(--bs-link-color);--bs-nav-link-hover-color:var(--bs-link-hover-color);--bs-nav-link-disabled-color:#6c757d;display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);text-decoration:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media(prefers-reduced-motion:reduce){.nav-link{transition:none}}.nav-link:focus,.nav-link:hover{color:var(--bs-nav-link-hover-color)}.nav-link.disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.navbar{--bs-navbar-padding-x:0;--bs-navbar-padding-y:.5rem;--bs-navbar-color:rgba(0, 0, 0, .55);--bs-navbar-hover-color:rgba(0, 0, 0, .7);--bs-navbar-disabled-color:rgba(0, 0, 0, .3);--bs-navbar-active-color:rgba(0, 0, 0, .9);--bs-navbar-brand-padding-y:.3125rem;--bs-navbar-brand-margin-end:1rem;--bs-navbar-brand-font-size:1.25rem;--bs-navbar-brand-color:rgba(0, 0, 0, .9);--bs-navbar-brand-hover-color:rgba(0, 0, 0, .9);--bs-navbar-nav-link-padding-x:.5rem;--bs-navbar-toggler-padding-y:.25rem;--bs-navbar-toggler-padding-x:.75rem;--bs-navbar-toggler-font-size:1.25rem;--bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");--bs-navbar-toggler-border-color:rgba(0, 0, 0, .1);--bs-navbar-toggler-border-radius:.375rem;--bs-navbar-toggler-focus-width:.25rem;--bs-navbar-toggler-transition:box-shadow .15s ease-in-out;position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)}.navbar>.container{display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.card{--bs-card-spacer-y:1rem;--bs-card-spacer-x:1rem;--bs-card-title-spacer-y:.5rem;--bs-card-border-width:1px;--bs-card-border-color:var(--bs-border-color-translucent);--bs-card-border-radius:.375rem;--bs-card-box-shadow: ;--bs-card-inner-border-radius: calc(.375rem - 1px) ;--bs-card-cap-padding-y:.5rem;--bs-card-cap-padding-x:1rem;--bs-card-cap-bg:rgba(0, 0, 0, .03);--bs-card-cap-color: ;--bs-card-height: ;--bs-card-color: ;--bs-card-bg:#fff;--bs-card-img-overlay-padding:1rem;--bs-card-group-margin:.75rem;position:relative;display:flex;flex-direction:column;min-width:0;height:var(--bs-card-height);word-wrap:break-word;background-color:var(--bs-card-bg);background-clip:border-box;border:var(--bs-card-border-width) solid var(--bs-card-border-color);border-radius:var(--bs-card-border-radius)}.card>hr{margin-right:0;margin-left:0}.badge{--bs-badge-padding-x:.65em;--bs-badge-padding-y:.35em;--bs-badge-font-size:.75em;--bs-badge-font-weight:700;--bs-badge-color:#fff;--bs-badge-border-radius:.375rem;display:inline-block;padding:var(--bs-badge-padding-y) var(--bs-badge-padding-x);font-size:var(--bs-badge-font-size);font-weight:var(--bs-badge-font-weight);line-height:1;color:var(--bs-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:var(--bs-badge-border-radius)}.badge:empty{display:none}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress{--bs-progress-height:1rem;--bs-progress-font-size:.75rem;--bs-progress-bg:#e9ecef;--bs-progress-border-radius:.375rem;--bs-progress-box-shadow:inset 0 1px 2px rgba(0, 0, 0, .075);--bs-progress-bar-color:#fff;--bs-progress-bar-bg:#0d6efd;--bs-progress-bar-transition:width .6s ease;display:flex;height:var(--bs-progress-height);overflow:hidden;font-size:var(--bs-progress-font-size);background-color:var(--bs-progress-bg);border-radius:var(--bs-progress-border-radius)}.progress-bar{display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:var(--bs-progress-bar-color);text-align:center;white-space:nowrap;background-color:var(--bs-progress-bar-bg);transition:var(--bs-progress-bar-transition)}@media(prefers-reduced-motion:reduce){.progress-bar{transition:none}}.modal{--bs-modal-zindex:1055;--bs-modal-width:500px;--bs-modal-padding:1rem;--bs-modal-margin:.5rem;--bs-modal-color: ;--bs-modal-bg:#fff;--bs-modal-border-color:var(--bs-border-color-translucent);--bs-modal-border-width:1px;--bs-modal-border-radius:.5rem;--bs-modal-box-shadow:0 .125rem .25rem rgba(0, 0, 0, .075);--bs-modal-inner-border-radius: calc(.5rem - 1px) ;--bs-modal-header-padding-x:1rem;--bs-modal-header-padding-y:1rem;--bs-modal-header-padding:1rem 1rem;--bs-modal-header-border-color:var(--bs-border-color);--bs-modal-header-border-width:1px;--bs-modal-title-line-height:1.5;--bs-modal-footer-gap:.5rem;--bs-modal-footer-bg: ;--bs-modal-footer-border-color:var(--bs-border-color);--bs-modal-footer-border-width:1px;position:fixed;top:0;left:0;z-index:var(--bs-modal-zindex);display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}@media(min-width:576px){.modal{--bs-modal-margin:1.75rem;--bs-modal-box-shadow:0 .5rem 1rem rgba(0, 0, 0, .15)}}.carousel{position:relative}@keyframes spinner-border{to{transform:rotate(360deg)}}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}@keyframes placeholder-glow{50%{opacity:.2}}@keyframes placeholder-wave{to{-webkit-mask-position:-200% 0%;mask-position:-200% 0%}}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.d-flex{display:flex!important}.border{border:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-top{border-top:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-bottom{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.flex-wrap{flex-wrap:wrap!important}.justify-content-center{justify-content:center!important}.align-items-stretch{align-items:stretch!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.mt-5{margin-top:3rem!important}.me-2{margin-right:.5rem!important}.pt-4{padding-top:1.5rem!important}.rounded{border-radius:var(--bs-border-radius)!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media(min-width:768px){.mt-md-0{margin-top:0!important}}@media(min-width:992px){.mt-lg-0{margin-top:0!important}.pt-lg-0{padding-top:0!important}}body{font-family:Montserrat,sans-serif;color:#fff;position:relative;background:transparent}::selection{background-color:#cf2506;color:#fff}::-moz-selection{background-color:#cf2506;color:#fff}body:before{content:"";position:fixed;background:#040404 url(/assets/img/herosrgb.webp) top center no-repeat;background-size:cover;inset:0;z-index:-1}@media(min-width:1024px){body:before{background-attachment:fixed}}a{color:#cf2506;text-decoration:none}a:hover{color:#6015bd;text-decoration:none}h1,h2,h3,h4,h5,h6{font-family:Raleway,sans-serif}code{background-color:#1b1b1b;color:#a02009}.credits{position:fixed;right:0;left:0;bottom:0;padding:15px;text-align:right;font-size:13px;color:#fff;z-index:999999}@media(max-width:992px){.credits{text-align:center;padding:10px;background:#000c}}.credits a{color:#cf2506;transition:.3s}.credits a:hover{color:#fff}:root{--font-poppins: "Poppins", sans-serif;--font-montserrat: "Montserrat", sans-serif;--font-raleway: "Raleway", sans-serif;--font-weight-thin: 100;--font-weight-extralight: 200;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--font-weight-black: 900;--text-xs: .75rem;--text-xs--line-height: calc(1 / .75);--text-sm: .875rem;--text-sm--line-height: calc(1.25 / .875);--text-base: 1rem;--text-base--line-height: 1.5 ;--text-lg: 1.125rem;--text-lg--line-height: calc(1.75 / 1.125);--text-xl: 1.25rem;--text-xl--line-height: calc(1.75 / 1.25);--text-2xl: 1.5rem;--text-2xl--line-height: calc(2 / 1.5);--text-3xl: 1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl: 2.25rem;--text-4xl--line-height: calc(2.5 / 2.25);--text-5xl: 3rem;--text-5xl--line-height: 1;--text-6xl: 3.75rem;--text-6xl--line-height: 1;--text-7xl: 4.5rem;--text-7xl--line-height: 1;--text-8xl: 6rem;--text-8xl--line-height: 1;--text-9xl: 8rem;--text-9xl--line-height: 1}.resume .resume-title{font-size:26px;font-weight:700;margin-top:20px;margin-bottom:20px;color:#fff}.resume .resume-item{padding:0 0 20px 20px;margin-top:-2px;border-left:2px solid rgba(255,255,255,.2);position:relative}.resume .resume-item h4{line-height:18px;font-size:18px;font-weight:600;text-transform:uppercase;font-family:Poppins,sans-serif;color:#cf2506;margin-bottom:10px}.resume .resume-item ul{padding-left:20px}.resume .resume-item ul li{padding-bottom:10px}.resume .resume-item:last-child{padding-bottom:0}.resume .resume-item:before{content:"";position:absolute;width:14px;height:14px;border-radius:50px;left:-8px;top:0;background:#cf2506;border:2px solid #cf2506}@media(max-width:991px){app-main-layout .resume .resume-title{font-size:1.25rem;line-height:1.4}app-main-layout .resume .resume-item h4{font-size:16px;line-height:1.5}}.experience-tabs{display:flex;flex-wrap:nowrap;gap:24px;overflow-x:auto;margin:0 0 24px}.experience-tabs button{position:relative;flex:0 0 auto;padding:10px 0;min-height:44px;border:0;border-radius:0;background:transparent;color:#fff9;white-space:nowrap;font-size:14px;cursor:pointer;transition:color .2s ease}.experience-tabs button:after{content:"";position:absolute;inset:auto 0 0;height:2px;background:#cf2506;transform:scaleX(0);transform-origin:center;transition:transform .3s cubic-bezier(.22,1,.36,1)}#experience.section-show .experience-tabs button{animation:experience-tab-enter .52s cubic-bezier(.22,1,.36,1) calc(var(--section-content-delay, 0ms) + var(--experience-tab-delay, 0ms)) backwards}@keyframes experience-tab-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.experience-tabs button:hover,.experience-tabs button.active{color:#fff}.experience-tabs button.active:after{transform:scaleX(1)}.experience-tabs button:focus-visible{outline-offset:-3px}@media(prefers-reduced-motion:reduce){#experience.section-show .experience-tabs button{animation:none}.experience-tabs button,.experience-tabs button:after{transition:none}}.experience .experience-item{--timeline-date-width: 140px;--timeline-gap: 28px;display:grid;grid-template-columns:var(--timeline-date-width) minmax(0,1fr);column-gap:var(--timeline-gap);margin:0;padding:0 0 32px;border:0}.experience .experience-item:before{left:calc(var(--timeline-date-width) + var(--timeline-gap) / 2 - 7px);top:5px}.experience .experience-item:after{content:"";position:absolute;left:calc(var(--timeline-date-width) + var(--timeline-gap) / 2 - 1px);top:19px;bottom:-5px;width:2px;background:#fff3}.experience .experience-item:last-child:after{content:none}@media(prefers-reduced-motion:no-preference){#experience.section-show .resume-title{animation:experience-title-in .28s ease-out var(--resume-title-delay) both}#experience.section-show .experience-item{--timeline-start: calc(var(--resume-title-delay) + .28s + var(--timeline-index) * .4s)}#experience.section-show .experience-item:before{animation:timeline-bullet-in .16s ease-out var(--timeline-start) both;animation-play-state:inherit}#experience.section-show .experience-date{-webkit-mask-image:linear-gradient(#000,#000);mask-image:linear-gradient(#000,#000);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:right center;mask-position:right center;animation:timeline-date-in .12s ease-out calc(var(--timeline-start) + 90ms) both}#experience.section-show .experience-detail{animation:timeline-detail-in .13s ease-out calc(var(--timeline-start) + 90ms) both}#experience.section-show .experience-item:after{transform-origin:top;animation:timeline-line-in .19s linear calc(var(--timeline-start) + .21s) both;animation-play-state:inherit}}@keyframes experience-title-in{0%{opacity:0}to{opacity:1}}@keyframes timeline-bullet-in{0%{transform:scale(0);opacity:0}65%{transform:scale(1.4);opacity:1}to{transform:scale(1);opacity:1}}@keyframes timeline-date-in{0%{-webkit-mask-size:0% 100%;mask-size:0% 100%;opacity:0}to{-webkit-mask-size:100% 100%;mask-size:100% 100%;opacity:1}}@keyframes timeline-detail-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes timeline-line-in{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.experience-date{align-self:start;padding:4px 8px;background:#ffffff26;font-size:14px;font-weight:600;line-height:1.5;text-align:center;clip-path:polygon(0 0,calc(100% - 6px) 0,100% 50%,calc(100% - 6px) 100%,0 100%)}.experience-detail{min-width:0;overflow-wrap:anywhere}.experience .experience-detail h4{line-height:1.5;margin-bottom:8px}.experience-detail>:last-child{margin-bottom:0}@media(max-width:991px){.experience-tabs{gap:16px}.experience .experience-item{display:block;padding-left:24px}.experience .experience-item:before{left:0}.experience .experience-item:after{left:6px}.experience-date{display:inline-block;margin-bottom:8px;font-size:12px;padding:4px 8px 4px 12px;clip-path:polygon(6px 0,100% 0,100% 100%,6px 100%,0 50%)}#experience.section-show .experience-date{-webkit-mask-position:left center;mask-position:left center}}app-main-layout #header.hero-motion [data-hero-item]{animation:none;transition:none;opacity:0}#header h2 .hero-role{color:#fffc;border-bottom:0;display:inline-block;vertical-align:baseline;min-height:1.2em;white-space:nowrap}.hero-role:after{content:"";display:inline-block;height:1em;margin-left:4px;border-right:2px solid currentColor;vertical-align:-.1em;animation:hero-caret .9s step-end infinite}@keyframes hero-caret{50%{opacity:0}}@media(max-width:991px){.mobile-background{position:fixed;inset:0;z-index:0;pointer-events:none}.mobile-background img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity 1.2s ease-in-out}.mobile-background img:first-child,.mobile-background img.is-active{opacity:1}.mobile-background-shade{position:absolute;inset:0;background:#0000008c}app-main-layout #header>.container{text-align:center}app-main-layout #header h1{font-size:clamp(1.75rem,6vw,2.125rem);line-height:1.3}app-main-layout #header h2{font-size:clamp(1.0625rem,4vw,1.25rem);min-height:36px}app-main-layout #header .social-links{flex-wrap:wrap;justify-content:center;gap:8px}app-main-layout #header .social-links a{margin:0;width:44px;height:44px}app-main-layout .mobile-explore-cta{display:inline-flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;margin-top:16px;border-radius:8px;background:transparent;color:#fffc;font-size:.875rem;font-weight:500;letter-spacing:.08em}app-main-layout .mobile-explore-cta:hover{color:#fff}app-main-layout #header.header-top h1{font-size:clamp(1rem,3.5vw,1.375rem);line-height:1.3;max-width:calc(100% - 64px);margin-right:auto;text-align:left}}@media(prefers-reduced-motion:reduce){app-main-layout #header.hero-motion [data-hero-item]{opacity:1}}.about-me .content h3{font-weight:800;font-size:26px;color:#cf2506}.about-me img{border-radius:15px}.about-me .content{text-align:justify}.about-me .content ul{list-style:none;padding:0}.about-me .content ul li{margin-bottom:20px;display:flex;align-items:center}.about-me .content ul strong{margin-right:10px}.about-me .content ul i{font-size:16px;margin-right:5px;color:#cf2506;line-height:0}.about-me .content p:last-child{margin-bottom:0}.counts{padding:70px 0 60px}.counts .count-box{padding:30px 30px 25px;width:100%;position:relative;text-align:center;background:#ffffff14}.counts .count-box i{position:absolute;top:-25px;left:50%;transform:translate(-50%);font-size:24px;background:#ffffff1a;padding:12px;color:#cf2506;border-radius:50px;line-height:0}.counts .count-box>.purecounter{font-size:36px;display:block;font-weight:600;color:#fff}.counts .count-box p{padding:0;margin:0;font-family:Raleway,sans-serif;font-size:14px}.counts .count-box:is(.projects,.awards,.certifications)>.purecounter:after{content:"+";display:inline}.skills .progress{height:60px;display:block;background:none;border-radius:0}.skills .progress .skill{padding:10px 0;margin:0;text-transform:uppercase;display:block;font-weight:600;font-family:Poppins,sans-serif;color:#fff}.skills .progress .skill .val{float:right;font-style:normal}.skills .progress-bar-wrap{background:#fff3}.skills .progress-bar{width:1px;height:10px;transition:.9s;background-color:#cf2506}.skills ul{list-style:none;padding:0}.skills ul li{margin-bottom:20px;display:flex;align-items:center}.skills ul strong{margin-right:10px}.skills ul i{font-size:16px;margin-right:5px;color:#cf2506;line-height:0}.interests{border-radius:0 0 15px 15px}.interests .icon-box{display:flex;align-items:center;padding:20px;background:#ffffff14;transition:ease-in-out .3s}.interests .icon-box i{display:flex;font-size:32px;padding-right:10px;line-height:1}.interests .icon-box h3{font-weight:700;margin:0;padding:0;line-height:1;font-size:16px;color:#fff}.interests .icon-box:hover{background:#ffffff1f}app-main-layout #about .skills ul li,app-main-layout #about .interests .icon-box h3{font-size:14px;line-height:1.5}@media(max-width:991px){app-main-layout .about-profile{display:flow-root;margin:0}app-main-layout .about-profile>.about-photo,app-main-layout .about-profile>.content{width:auto;min-width:0;padding:0!important}app-main-layout .about-profile>.about-photo{float:left;width:clamp(88px,26vw,160px);margin:0 14px 4px 0}app-main-layout .about-profile .content{overflow-wrap:anywhere;text-align:left}app-main-layout .about-profile .content p{text-align:justify;text-align-last:left}}#about .soft-skills-list{display:grid;grid-template-columns:minmax(0,1fr);column-gap:24px;list-style:none;padding:0;margin:0}#about .soft-skills-list li{display:flex;align-items:flex-start;gap:12px;padding-block:8px;margin-bottom:0}#about .soft-skills-list i{flex:0 0 24px;margin-right:0;color:#cf2506;font-size:20px;line-height:1.05;text-align:center}@media(min-width:768px){#about .soft-skills-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:992px){#about .soft-skills-list{grid-template-columns:repeat(4,minmax(0,1fr))}}#about .skills .progress-bar{transition-property:width}@media(max-width:991px){app-main-layout .about-me .content h3{font-size:1.25rem;line-height:1.4}}app-main-layout>#about>.about-card{padding:0}.about .about-section{padding:var(--section-card-padding)}app-main-layout #about .about-section:not(.about-revealed) .section-title :is(.section-label,.section-heading-title,.section-title-text){animation:none;opacity:0}app-main-layout #about .about-section:not(.about-revealed) .section-title :is(.section-label,h2:not(.section-heading)):after,app-main-layout #about .about-section:not(.about-revealed) .section-title .section-label:before{animation:none;transform:scaleX(0)}app-main-layout #about .about-section:not(.about-content-ready) .about-reveal-content{opacity:0}app-main-layout #about .about-section .row.about-profile.about-reveal-content{animation:none}.photo-skeleton-frame{position:relative;overflow:hidden;border-radius:15px;aspect-ratio:600 / 680}.photo-skeleton-frame app-profile-photo{opacity:0}.photo-skeleton{position:absolute;inset:0;overflow:hidden;background:#242424;pointer-events:none}.photo-skeleton-frame.photo-ready app-profile-photo{opacity:1}.photo-skeleton-frame.photo-ready .photo-skeleton{opacity:0}.photo-skeleton-shimmer{position:absolute;inset:0;background:linear-gradient(90deg,transparent,#ffffff0d,transparent);transform:translate(-100%)}.awards .icon-box{height:100%;text-align:center;background:#cccccc1a;padding:80px 20px;transition:all ease-in-out .3s}.row-flex{display:flex;flex-wrap:wrap}.awards .icon-box .icon{margin:0 auto 20px;width:64px;height:64px;background:#cf2506;border-radius:5px;transition:all .3s ease-out 0s;display:flex;align-items:center;justify-content:center;transform-style:preserve-3d}.awards .icon-box .icon i{display:flex;color:#fff;font-size:28px}.awards .icon-box .icon:before{position:absolute;content:"";left:-8px;top:-8px;height:100%;width:100%;background:#ffffff26;border-radius:5px;transition:all .3s ease-out 0s;transform:translateZ(-1px)}.awards .icon-box h4{font-weight:700;margin-bottom:15px;font-size:24px}.awards .icon-box h4 a{color:#fff}.awards .icon-box p{line-height:24px;font-size:14px;margin-bottom:0}.awards .icon-box:hover{background:#cf2506;border-color:#cf2506}.awards .icon-box:hover .icon{background:#fff}.awards .icon-box:hover .icon i{color:#cf2506}.awards .icon-box:hover .icon:before{background:#171616}.awards .icon-box:hover h4 a,.awards .icon-box:hover p{color:#fff}@media(max-width:991px){app-main-layout .awards .awards-content{padding:0}app-main-layout .awards .row-flex{display:grid;grid-template-columns:minmax(0,1fr);grid-auto-rows:1fr;gap:12px;margin:0}app-main-layout .awards .row-flex>div{width:100%;padding:0;margin-top:0!important}app-main-layout .awards .icon-box{--award-icon-offset: 8px;display:grid;grid-template-columns:calc(40px + var(--award-icon-offset)) minmax(0,1fr);column-gap:16px;align-content:center;height:100%;padding:0 20px;text-align:left}app-main-layout .awards .icon-box .icon{position:relative;grid-row:1 / 3;width:40px;height:40px;margin:calc(4px + var(--award-icon-offset)) 0 0 var(--award-icon-offset)}app-main-layout .awards .icon-box .icon:before{left:calc(-1 * var(--award-icon-offset));top:calc(-1 * var(--award-icon-offset))}app-main-layout .awards .icon-box .icon i{font-size:22px}app-main-layout .awards .icon-box h4{font-size:1rem;line-height:1.5;margin-bottom:6px;overflow-wrap:anywhere}app-main-layout .awards .icon-box p{font-size:.875rem;line-height:1.6}}@media(max-width:991px){#certifications .resume-item{border-left-color:transparent;margin-top:0}#certifications .resume-item:before{top:5px;z-index:1}#certifications .resume-item:after{content:"";position:absolute;left:-2px;top:0;bottom:0;width:2px;background:#fff3;pointer-events:none}#certifications .resume-item:first-child:after{top:12px}}.portfolio .portfolio-item{position:relative;margin-bottom:30px}.portfolio-filters{position:relative;isolation:isolate;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:24px}.portfolio-filters>button{z-index:1}.portfolio-filters>button:first-child{z-index:2}.portfolio .portfolio-wrap{position:relative;overflow:hidden;z-index:1;background:#0009}.portfolio .portfolio-wrap>img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover}.portfolio .portfolio-wrap:before{content:"";background:#0009;position:absolute;inset:30px;transition:opacity .3s ease-in-out,inset .3s ease-in-out;z-index:2;opacity:0}.portfolio .portfolio-wrap .portfolio-info{opacity:0;position:absolute;inset:0;text-align:center;z-index:3;transition:opacity .3s ease-in-out;display:flex;flex-direction:column;justify-content:center;align-items:center}.portfolio .portfolio-wrap .portfolio-info:before{display:block;content:"";width:48px;height:48px;position:absolute;top:35px;left:35px;border-top:3px solid #fff;border-left:3px solid #fff;transition:top .3s ease,left .3s ease;z-index:9994}.portfolio .portfolio-wrap .portfolio-info:after{display:block;content:"";width:48px;height:48px;position:absolute;bottom:35px;right:35px;border-bottom:3px solid #fff;border-right:3px solid #fff;transition:bottom .3s ease,right .3s ease;z-index:9994}.portfolio .portfolio-wrap .portfolio-info h4{font-size:20px;color:#fff;font-weight:600}.portfolio .portfolio-wrap .portfolio-info p{color:#fff;font-size:14px;text-transform:uppercase;padding:0;margin:0}.portfolio .portfolio-wrap:hover:before{inset:0;opacity:1}.portfolio .portfolio-wrap:hover .portfolio-info{opacity:1}.portfolio .portfolio-wrap:hover .portfolio-info:before{top:15px;left:15px}.portfolio .portfolio-wrap:hover .portfolio-info:after{bottom:15px;right:15px}@media(max-width:991px){app-main-layout .portfolio-item{width:100%}}.portfolio .portfolio-container{position:relative;align-content:flex-start;align-items:flex-start}.portfolio-details{padding-top:0;background:#000c;position:relative;inset:0;overflow-y:auto}.portfolio-details .container{padding-top:20px;padding-bottom:40px}.portfolio-details .portfolio-title{font-family:Poppins,sans-serif;font-size:26px;font-weight:700;margin-bottom:20px}.portfolio-details .portfolio-info{padding:0}.portfolio-details .portfolio-info ul{list-style:none;padding:0}.portfolio-details .portfolio-info ul li+li{margin-top:10px}.portfolio-details .portfolio-info p{padding:0;margin-top:0}.portfolio-details .portfolio-info :is(ul,p){font-family:inherit;font-size:14px;line-height:1.5;overflow-wrap:anywhere}@media(max-width:991px){.portfolio-details .portfolio-info :is(ul,li,p){font-size:14px}}.project-gallery img{width:100%;height:auto;border-radius:8px}.gallery-viewport{position:relative;width:100%;aspect-ratio:16 / 9;background:#000;overflow:hidden;touch-action:pan-y;cursor:grab;border-radius:8px}.gallery-viewport:focus-visible{outline:3px solid #ffb69e;outline-offset:3px}.gallery-viewport.is-dragging{cursor:grabbing}.gallery-track{position:absolute;inset:0;display:flex;transition:transform .6s cubic-bezier(.4,0,.2,1)}.is-dragging .gallery-track{transition:none}.gallery-slide{flex:0 0 100%;min-width:0;height:100%}.gallery-slide img{display:block;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.project-gallery .swiper-pagination{display:flex;justify-content:center;gap:8px;margin-top:20px}.project-gallery .swiper-pagination-bullet{width:12px;height:12px;padding:0;border:0;border-radius:50%;background:#ffffff4d;cursor:pointer}.project-gallery .swiper-pagination-bullet-active,.project-gallery .swiper-pagination-bullet:hover{background:#cf2506}.portfolio-details .project-gallery img{width:100%;height:100%;object-fit:contain;object-position:center}.project-dialog{width:min(1140px,calc(100vw - 48px));max-width:none;max-height:calc(100dvh - 96px);margin:auto;padding:0;overflow:auto;overscroll-behavior:contain;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#000;color:#fff;box-shadow:0 24px 80px #00000080}.project-dialog::backdrop{background:#000000b8}.project-dialog[open]{animation:project-dialog-in .42s cubic-bezier(.22,1,.36,1) both}.project-dialog[open]::backdrop{animation:project-backdrop-in .28s ease both}.project-dialog[open].is-closing{animation:project-dialog-out .2s ease-in both}.project-dialog[open].is-closing::backdrop{animation:project-backdrop-in .2s ease reverse both}@keyframes project-dialog-in{0%{opacity:0;transform:translateY(6px) scale(.7)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes project-dialog-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(8px) scale(.95)}}@keyframes project-backdrop-in{0%{opacity:0}to{opacity:1}}.project-dialog .portfolio-details .portfolio-title{display:none}.project-dialog .portfolio-details{background:transparent;overflow:visible}.project-dialog .portfolio-details .container{max-width:none;padding:48px}@media(max-width:575px){.project-dialog{width:calc(100vw - 24px)}}@media(max-width:991px){app-main-layout .project-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 32px)}app-main-layout .project-dialog .portfolio-details .container{padding:16px}}.project-dialog.mobile-glass{background:linear-gradient(145deg,#ffffff14,#ffffff05),#0c0c0ecc;-webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%)}.contact .info-box{color:#444;padding:20px;width:100%;background:#ffffff14}.contact .contact-icon{display:inline-flex;align-items:center;line-height:1;font-style:normal;vertical-align:-.125em}.contact .info-box>.contact-info-icon{font-size:24px;color:#ffffffd9;border-radius:50%;padding:14px;float:left;background:#cf2506}app-main-layout.mobile-glass .contact .info-box>.contact-info-icon{background:#6d1303cc;box-shadow:inset 0 0 0 1px #ffffff29,0 4px 16px #0008,inset 0 1px #ffffff26;-webkit-backdrop-filter:blur(10px) saturate(160%);backdrop-filter:blur(10px) saturate(160%)}.contact .info-box h3{font-size:20px;color:#ffffff80;font-weight:700;margin:10px 0 8px 68px}.contact .info-box p{padding:0;color:#fff;line-height:24px;font-size:14px;margin:0 0 0 68px}.contact .info-box .social-links{margin:5px 0 0 68px;display:flex}.contact .info-box .social-links a{font-size:18px;display:inline-block;color:#fff;line-height:1;margin-right:12px;transition:.3s}.contact .info-box .social-links a:hover{color:#cf2506}.contact .info-box p{overflow-wrap:anywhere}.contact .contact-quotes{width:85%;max-width:760px;margin:120px auto 0;padding:0;background:transparent}.contact .quotes-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.contact .quotes-heading h3{margin:0;font-size:14px;font-weight:700;letter-spacing:2px;color:#fff9}.contact .quotes-heading a{font-size:13px;color:#fff}.contact .quote-slide{display:flex;gap:18px;align-items:center;min-height:180px;padding:28px 0}.contact .quote-mark{align-self:flex-start;color:#cf2506;font-size:36px}.contact .quote-slide figure,.contact .quote-slide blockquote{margin:0}.contact .quote-stack{display:grid;flex:1;min-width:0}.contact .quote-item,.contact .quote-sizer{grid-area:1 / 1}.contact .quote-sizer{visibility:hidden;pointer-events:none}.contact .quote-slide p{margin:0 0 16px;font-family:Montserrat,sans-serif;font-size:clamp(20px,2.5vw,24px);font-weight:400;line-height:1.6;overflow-wrap:anywhere}.contact .quote-slide figcaption{font-size:14px;color:#fff9}.contact .quote-controls{display:flex;align-items:center;justify-content:center;gap:8px}.contact .quote-controls button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0;border:0;border-radius:50%;background:transparent;color:#ffffff80;transition:color .18s ease;cursor:pointer}.contact .quote-controls i{font-size:24px}.contact .quote-dots{display:flex;align-items:center}.contact .quote-controls .quote-dot{min-width:32px;min-height:44px}.contact .quote-dot span{width:6px;height:6px;border-radius:50%;background:#ffffff4d;transition:background .18s ease,transform .18s ease}.contact .quote-dot.active span{background:#cf2506;transform:scale(1.4)}.contact .quote-controls button:hover{color:#fff}.contact .quote-dot:hover span{background:#fff}.contact .contact-quotes :focus-visible{outline:2px solid #fff;outline-offset:4px}@media(max-width:575px){.contact .contact-quotes{width:92%}.contact .quote-slide{gap:10px;min-height:250px}.contact .quote-mark{font-size:24px}}#header{position:relative;height:100vh;display:flex;align-items:center;z-index:997;overflow-y:auto}#header *{transition:color .3s ease-in-out,background-color .3s ease-in-out,border-color .3s ease-in-out,opacity .3s ease-in-out}#header h1{font-size:48px;margin:0;padding:0;line-height:1;font-weight:700;font-family:Poppins,sans-serif}#header h1 a,#header h1 a:hover{color:#fff;line-height:1;display:inline-block}#header h2{font-size:24px;margin-top:20px;color:#fffc}#header h2 span{color:#fff;border-bottom:2px solid #cf2506;padding-bottom:6px}#header img{padding:0;margin:0}#header .social-links{margin-top:40px;display:flex}#header .social-links a{font-size:16px;display:flex;justify-content:center;align-items:center;background:#ffffff1a;color:#fff;line-height:1;margin-right:8px;border-radius:50%;width:40px;height:40px}#header .social-links a:hover{background:#cf2506}@media(max-width:992px){#header h1{font-size:36px}#header h2{font-size:20px;line-height:30px}#header .social-links{margin-top:15px}#header .container{display:flex;flex-direction:column;align-items:center}}#header.header-top{height:80px;position:fixed;left:0;top:0;right:0;background:#000000e6}#header.header-top .social-links,#header.header-top h2{display:none}#header.header-top h1{margin-right:auto;font-size:24px}#header.header-top .container{display:flex;align-items:center}#header.header-top .navbar{margin:0}@media(max-width:768px){#header.header-top{height:60px}#header.header-top h1{font-size:26px}}@media(max-width:480px){#header.header-top{height:60px}#header.header-top h1{font-size:8px}}.navbar{padding:0;margin-top:35px}.navbar ul{margin:0;padding:0;display:flex;list-style:none;align-items:center}.navbar li{position:relative}.navbar li+li{margin-left:30px}.navbar a,.navbar a:focus{display:flex;align-items:center;justify-content:space-between;padding:0;font-family:Poppins,sans-serif;font-size:16px;font-weight:400;color:#ffffffb3;white-space:nowrap;transition:.3s}.navbar a i,.navbar a:focus i{font-size:12px;line-height:0;margin-left:5px}.navbar a:before{content:"";position:absolute;width:0;height:2px;bottom:-4px;left:0;background-color:#cf2506;visibility:hidden;width:0px;transition:all .3s ease-in-out 0s}.navbar a:hover:before,.navbar li:hover>a:before,.navbar .active:before{visibility:visible;width:25px}.navbar a:hover,.navbar .active,.navbar .active:focus,.navbar li:hover>a{color:#fff}.mobile-nav-toggle{color:#fff;font-size:28px;cursor:pointer;display:none;line-height:0;transition:.5s;position:fixed;right:15px;top:15px}@media(max-width:991px){.mobile-nav-toggle{display:block}.navbar ul{display:none}}.navbar-mobile{position:fixed;overflow:hidden;inset:0;background:#000000e6;transition:.3s;z-index:999;margin-top:0}.navbar-mobile .mobile-nav-toggle{position:absolute;top:15px;right:15px}.navbar-mobile ul{display:block;position:absolute;inset:55px 15px 45px;padding:10px 0;overflow-y:auto;transition:.3s;border:2px solid rgba(255,255,255,.2)}.navbar-mobile li{padding:12px 20px}.navbar-mobile li+li{margin:0}.navbar-mobile a,.navbar-mobile a:focus{font-size:16px;position:relative}.mobile-nav-toggle{background:transparent;border:0;color:#fff;padding:8px}@media(max-width:991px){:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell) .mobile-nav-toggle{width:48px;height:48px;border-radius:8px;background:#111;z-index:1000}:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell) .navbar-mobile{height:100dvh}:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell) .navbar-mobile ul{text-align:left}:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell) .navbar-mobile a{min-height:44px}}.mobile-bottom-nav{display:none}@media(max-width:991px){:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell).mobile-sections #navbar{display:none}:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell).mobile-sections .mobile-bottom-nav{--nav-theme-duration: .32s;position:fixed;z-index:1001;bottom:0;left:0;right:0;display:flex;overflow:hidden;padding:8px max(8px,env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px));isolation:isolate;background:#000;border:1px solid #000;border-top-color:#ffffff1f;border-radius:0;box-shadow:none;scrollbar-width:none;scroll-padding-inline:7px;transition:bottom var(--nav-theme-duration) ease-in-out,left var(--nav-theme-duration) ease-in-out,right var(--nav-theme-duration) ease-in-out,padding var(--nav-theme-duration) ease-in-out,background-color var(--nav-theme-duration) ease-in-out,border-color var(--nav-theme-duration) ease-in-out,border-radius var(--nav-theme-duration) ease-in-out,box-shadow var(--nav-theme-duration) ease-in-out}.mobile-bottom-nav:before,.mobile-bottom-nav:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:-1;transition:opacity var(--nav-theme-duration) ease-in-out}.mobile-bottom-nav:before{background:#000;opacity:1}.mobile-bottom-nav:after{background:linear-gradient(145deg,#242427,#121214);opacity:0}:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell).mobile-nav-glass .mobile-bottom-nav:before{opacity:0}:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell).mobile-nav-glass .mobile-bottom-nav:after{opacity:1}.mobile-nav-scroll{position:relative;display:flex;gap:4px;width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;--left-edge: #000;--right-edge: #000;-webkit-mask-image:linear-gradient(to right,var(--left-edge),#000 16px,#000 calc(100% - 16px),var(--right-edge));mask-image:linear-gradient(to right,var(--left-edge),#000 16px,#000 calc(100% - 16px),var(--right-edge))}.mobile-nav-scroll.can-scroll-left{--left-edge: transparent}.mobile-nav-scroll.can-scroll-right{--right-edge: transparent}.mobile-nav-scroll::-webkit-scrollbar{display:none}:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell).mobile-sections.mobile-nav-glass .mobile-bottom-nav{transform-origin:center;background:transparent;bottom:calc(12px + env(safe-area-inset-bottom,0px));left:max(12px,env(safe-area-inset-left,0px));right:max(12px,env(safe-area-inset-right,0px));padding:7px;border:1px solid #ffffff29;border-radius:28px;box-shadow:0 12px 36px #0009,inset 0 1px #ffffff26,inset 0 -1px #ffffff08;transition:transform .36s cubic-bezier(.22,1,.36,1),bottom var(--nav-theme-duration) ease-in-out,left var(--nav-theme-duration) ease-in-out,right var(--nav-theme-duration) ease-in-out,padding var(--nav-theme-duration) ease-in-out,background-color var(--nav-theme-duration) ease-in-out,border-color var(--nav-theme-duration) ease-in-out,border-radius var(--nav-theme-duration) ease-in-out,box-shadow var(--nav-theme-duration) ease-in-out}:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell).mobile-nav-glass .mobile-bottom-nav:has(.nav-pressed){transform:scale(1.01)}:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell).mobile-nav-glass .mobile-bottom-nav:has(.nav-held){transform:scale(1.02)}:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell).mobile-nav-glass .mobile-bottom-nav.nav-tap{animation:mobile-glass-nav-tap .42s cubic-bezier(.22,1,.36,1)}@keyframes mobile-glass-nav-tap{0%,to{transform:scale(1)}35%{transform:scale(1.018)}}@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.mobile-bottom-nav:after{background:linear-gradient(145deg,#ffffff14,#ffffff05),#0c0c0e66;-webkit-backdrop-filter:blur(10px) saturate(160%);backdrop-filter:blur(10px) saturate(160%)}}.mobile-bottom-nav a{flex:1 0 72px;min-height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-radius:10px;color:#ffffffd9;font-size:.75rem;line-height:1.3;transition:border-radius var(--nav-theme-duration) ease-in-out,box-shadow var(--nav-theme-duration) ease-in-out}.mobile-bottom-nav a i{font-size:20px}.mobile-bottom-nav.mobile-nav-icons-only a{flex:1 0 44px;min-height:48px;gap:0}.mobile-bottom-nav.mobile-nav-icons-only a i{font-size:24px}.mobile-nav-icons-only .mobile-nav-scroll{touch-action:pan-y;user-select:none;-webkit-user-select:none}.indicator-dragging .mobile-nav-indicator{transition:none}:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell).mobile-nav-glass .mobile-bottom-nav a{border-radius:21px}.mobile-bottom-nav a.active{background:#6d1303;color:#fff;box-shadow:none}:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell).mobile-nav-glass .mobile-bottom-nav a.active{background:linear-gradient(160deg,#cf250699,#8f190380 45%,#d7887a4d);box-shadow:inset 0 1px #ffffff26,0 3px 10px #0003}.mobile-nav-indicator{position:absolute;top:0;left:0;pointer-events:none;width:var(--nav-indicator-width, 0px);height:var(--nav-indicator-height, 0px);transform:translate(var(--nav-indicator-x, 0px),var(--nav-indicator-y, 0px));border-radius:10px;background:#6d1303;opacity:0;transition:transform .28s cubic-bezier(.22,1,.36,1),width .28s ease,border-radius var(--nav-theme-duration) ease-in-out}.indicator-ready .mobile-nav-indicator{opacity:1}.mobile-bottom-nav .indicator-ready a{position:relative;z-index:1}:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell) .mobile-bottom-nav .indicator-ready a.active{background:transparent;box-shadow:none}:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell).mobile-nav-glass .mobile-nav-indicator{border-radius:21px;background:linear-gradient(160deg,#cf250699,#8f190380 45%,#d7887a4d);box-shadow:inset 0 1px #ffffff26,0 3px 10px #0003}.mobile-bottom-nav a:focus-visible{outline-offset:-3px}.mobile-bottom-nav a{transition:background-color .18s ease,color .18s ease,transform .18s ease}.mobile-bottom-nav a:active{transform:translateY(2px) scale(.96)}:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell).mobile-nav-glass .mobile-bottom-nav a:active{transform:scale(1.04)}}@media(prefers-reduced-motion:reduce){:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell).mobile-nav-glass .mobile-bottom-nav.nav-tap{animation:none}:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell).mobile-nav-glass .mobile-bottom-nav:has(.nav-pressed),:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell).mobile-nav-glass .mobile-bottom-nav:has(.nav-held),:is(app-main-layout,app-project-detail.project-page,app-root.nav-shell).mobile-nav-glass .mobile-bottom-nav a:active{transform:none}.mobile-nav-indicator{transition:none}.mobile-bottom-nav a:active{transform:none}}:is(app-main-layout,app-project-detail.project-page){--section-card-padding: 50px;--section-outer-padding: 24px;--section-card-gap: 24px}app-main-layout>.page-frame>.section-card,app-project-detail.project-page .section-card{background:#000000e6;padding:var(--section-card-padding);border-radius:15px}@media(max-width:991px){:is(app-main-layout,app-project-detail.project-page){--section-card-padding: 46px 36px}}.section-title h2:not(.section-heading),.section-title .section-label{font-size:14px;font-weight:500;padding:0;line-height:1px;margin:0 0 20px;letter-spacing:2px;text-transform:uppercase;color:#aaa;font-family:Poppins,sans-serif}.section-title h2:not(.section-heading):after,.section-title .section-label:after{content:"";width:120px;height:1px;display:inline-block;background:#dd2e0f;margin:4px 10px}.section-title p,.section-title .section-heading-title{margin:-15px 0 15px;font-size:36px;font-weight:700;text-transform:uppercase;font-family:Poppins,sans-serif;color:#fff}.section-title h2.section-heading{display:flow-root;margin:0;padding:0;line-height:inherit}.section-title .section-label,.section-title .section-heading-title{display:block}.section-title.section-title-right{text-align:right}.section-title-right .section-label{display:flex;align-items:center;justify-content:flex-end;gap:10px}.section-title-right .section-label:after{display:none}.section-title-right .section-label:before{content:"";width:120px;min-width:16px;flex-shrink:1;height:1px;background:#dd2e0f}@media(max-width:991px){:is(app-main-layout,app-project-detail.project-page) .section-title :is(p,.section-heading-title){font-size:clamp(1.5rem,5vw,1.875rem);line-height:1.35;overflow-wrap:anywhere}}.section-title{text-align:left}app-main-layout #about :is(.skills,.interests) .section-title h2,.section-title h2.section-subtitle{font-size:18px;font-weight:600;line-height:1.4;letter-spacing:1px;color:#fff}app-main-layout #about :is(.skills,.interests) .section-title h2:after,.section-title h2.section-subtitle:after{display:block;width:48px;margin:8px 0 0}.section-title h2.section-subtitle{margin:0}.section-title .section-title-text{display:inline-block}app-main-layout section.section-show .section-title .section-label:after,app-main-layout section.section-show .section-title .section-label:before,app-main-layout section.section-show .section-title h2:not(.section-heading):after{transform-origin:left center;animation:section-divider-in .35s cubic-bezier(.4,0,.2,1) 80ms both}app-main-layout section.section-show .section-title :is(.section-heading-title,.section-title-text){animation:section-title-in .3s cubic-bezier(.4,0,.2,1) .1s both}app-main-layout section.section-show .section-title .section-label{animation:section-title-in .25s cubic-bezier(.4,0,.2,1) both}@keyframes section-divider-in{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes section-title-in{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@media(min-width:992px){app-main-layout>.page-frame>.section-card,app-main-layout #header.header-top,app-main-layout #header .social-links a{isolation:isolate;transition:background-color .32s ease}app-main-layout>.page-frame>.section-card,app-main-layout #header .social-links a{position:relative}app-main-layout>.page-frame>.section-card:before,app-main-layout #header.header-top:before,app-main-layout #header .social-links a:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;opacity:0;background:linear-gradient(145deg,#ffffff14,#ffffff05),#0c0c0ee6;box-shadow:inset 0 0 0 1px #ffffff29,0 12px 36px #0005;transition:opacity .32s ease}app-main-layout.mobile-glass>.page-frame>.section-card,app-main-layout.mobile-glass #header.header-top,app-main-layout.mobile-glass #header .social-links a{background-color:transparent}app-main-layout.mobile-glass>.page-frame>.section-card:before,app-main-layout.mobile-glass #header.header-top:before,app-main-layout.mobile-glass #header .social-links a:before{opacity:1}app-main-layout.mobile-glass #header .social-links a:hover{background-color:#cf250699}@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){app-main-layout>.page-frame>.section-card:before,app-main-layout #header.header-top:before,app-main-layout #header .social-links a:before{background:linear-gradient(145deg,#ffffff14,#ffffff05),#0c0c0e73}app-main-layout #header.header-top:before,app-main-layout #header .social-links a:before{-webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%)}}@media(prefers-reduced-motion:reduce){app-main-layout>.page-frame>.section-card,app-main-layout #header.header-top,app-main-layout #header .social-links a,app-main-layout>.page-frame>.section-card:before,app-main-layout #header.header-top:before,app-main-layout #header .social-links a:before{transition:none}}}@media(max-width:991px){app-main-layout.mobile-glass #header .social-links a{position:relative;overflow:hidden;isolation:isolate;border:1px solid #ffffff1a;background:linear-gradient(145deg,#ffffff12,#ffffff03);box-shadow:inset 0 1px #fff3,inset 0 -1px #ffffff0d}app-main-layout.mobile-glass #header .social-links a:hover{background:linear-gradient(160deg,#cf250666,#8f19034d 45%,#d7887a33)}@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){app-main-layout.mobile-glass #header .social-links a{background:linear-gradient(145deg,#ffffff12,#ffffff03);-webkit-backdrop-filter:blur(8px) saturate(140%);backdrop-filter:blur(8px) saturate(140%)}}app-main-layout>.page-frame>.section-card{max-width:100%}app-main-layout{font-size:14px;line-height:1.7}app-main-layout .page-card>section p,app-main-layout .page-card>section li:not(:where(#about .skills ul li)){line-height:1.7}}@media(max-width:991px){body:has(app-project-detail.project-page):before{background:#000}html:has(:is(app-main-layout.mobile-sections.section-open,app-project-detail.project-page)),body:has(:is(app-main-layout.mobile-sections.section-open,app-project-detail.project-page)){background-color:#000}app-project-detail.project-page{animation:none}app-main-layout.mobile-sections{display:block;min-height:100dvh;padding-bottom:calc(104px + env(safe-area-inset-bottom,0px));animation:none}app-main-layout.mobile-sections #header{height:calc(100svh - 88px)}app-main-layout.mobile-sections #header.header-top{display:none}}@keyframes mobile-content-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes mobile-card-in{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:991px){app-main-layout>.page-frame>.section-card{border-radius:0}app-main-layout.mobile-glass>.page-frame>.section-card{border-radius:28px}app-project-detail.project-page .section-card,app-main-layout>.page-frame>.section-card{padding:var(--section-card-padding);position:relative;isolation:isolate;background:transparent}app-project-detail.project-page .section-card:before,app-main-layout>.page-frame>.section-card:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;border:1px solid transparent;border-radius:0;background:#000;transition:inset .32s ease,border-radius .32s ease}app-project-detail.project-page .section-card:after,app-main-layout>.page-frame>.section-card:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;border:1px solid #ffffff29;border-radius:0;opacity:0;background:linear-gradient(145deg,#242427,#121214);box-shadow:0 12px 36px #0009,inset 0 1px #ffffff26,inset 0 -1px #ffffff08;transition:inset .32s ease,border-radius .32s ease,opacity .32s ease}app-project-detail.project-page.mobile-glass .section-card:before,app-project-detail.project-page.mobile-glass .section-card:after,app-main-layout.mobile-glass>.page-frame>.section-card:before,app-main-layout.mobile-glass>.page-frame>.section-card:after{inset:0;border-radius:28px}app-project-detail.project-page.mobile-glass .section-card:before,app-main-layout.mobile-glass>.page-frame>.section-card:before{background:transparent}app-project-detail.project-page.mobile-glass .section-card:after,app-main-layout.mobile-glass>.page-frame>.section-card:after{opacity:1}@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){app-project-detail.project-page .section-card:after,app-main-layout>.page-frame>.section-card:after{background:linear-gradient(145deg,#ffffff14,#ffffff05),#0c0c0ecc}app-project-detail.project-page .section-card:after{-webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%)}}}@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){app-main-layout>.page-frame>.section-card{-webkit-backdrop-filter:blur(0px) saturate(100%);backdrop-filter:blur(0px) saturate(100%);transition:background-color .32s ease,border-radius .32s ease,-webkit-backdrop-filter .32s ease,backdrop-filter .32s ease}app-main-layout.mobile-glass>.page-frame>.section-card{-webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%)}}@media(prefers-reduced-motion:reduce){app-main-layout>.page-frame>.section-card{transition:none}}app-main-layout .page-frame{padding:100px 0 45px}app-main-layout{overflow-x:clip}app-main-layout .page-card>section{position:relative;width:100%;z-index:2;padding:0;overflow:visible}app-main-layout .page-card>section:not(#experience).section-show .resume-item,app-main-layout .page-card>#contact.section-show .info-box{animation:mobile-content-in .48s cubic-bezier(.2,.7,.3,1) .1s backwards}app-main-layout .page-card>#awards.section-show .row-flex>div{animation:mobile-card-in .52s cubic-bezier(.2,.7,.3,1) .12s backwards}app-main-layout .page-card>section:not(#about).section-show{--section-content-delay: 0ms}app-main-layout .page-card>section:not(#about,#portfolio,#experience).section-show>div>.section-title~*{animation:section-content-in .4s cubic-bezier(.22,1,.36,1) var(--section-content-delay) backwards}app-main-layout .page-card>section:not(#about,#experience).section-show .resume-item,app-main-layout .page-card>#contact.section-show .info-box{animation-delay:var(--section-content-delay)}@keyframes section-content-in{0%{opacity:0}to{opacity:1}}app-main-layout .page-frame>.page-card:has(>#about.section-show){padding:0}@media(max-width:991px){app-main-layout .page-frame{padding:var(--section-outer-padding)}}.page-background{display:none}@media(max-width:991px){app-main-layout>.page-background{display:block;position:fixed;inset:0;z-index:0;pointer-events:none}.page-background-shade{position:absolute;inset:0;background:#000}app-main-layout.mobile-glass .page-background-shade{background:radial-gradient(ellipse at top left,#292323,#101010 55%,#000)}app-main-layout>.page-frame{position:relative;z-index:2}}@media(max-width:991px){app-main-layout.mobile-sections.mobile-project-open{padding-bottom:0}}app-main-layout section.section-sequence:not(.section-content-ready) :is(.section-title~*,.section-title~* *),app-main-layout section.section-sequence:not(.section-content-ready) :is(.section-title~*,.section-title~* *):before,app-main-layout section.section-sequence:not(.section-content-ready) :is(.section-title~*,.section-title~* *):after{animation-play-state:paused!important}app-main-layout #portfolio:not(.section-content-ready) .portfolio-filters,app-main-layout #portfolio:not(.section-content-ready) .portfolio-container{visibility:hidden}[hidden]{display:none!important}html{background-color:#040404;scroll-behavior:smooth}body{margin:0;min-height:100vh;min-height:100dvh}@media(min-width:992px){html,body,#header{scrollbar-width:none}html::-webkit-scrollbar,body::-webkit-scrollbar,#header::-webkit-scrollbar{display:none}body:before{filter:brightness(.28) saturate(.75) contrast(1)}html,body{overscroll-behavior-y:auto;background-color:#040404}body{isolation:isolate}}button{font:inherit}app-root>router-outlet+*{display:block}app-root>router-outlet+:not(app-main-layout):not(app-project-detail){animation:page-reveal .4s ease-out both}@keyframes page-reveal{0%{opacity:0}to{opacity:1}}button:focus-visible,a:focus-visible{outline:3px solid #ffb69e;outline-offset:5px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(max-width:991px){body:before{background:#040404}}@media(max-width:991px){html{scroll-behavior:auto}}
