html{scroll-behavior:smooth;scroll-padding-top:var(--nav-scroll-pad, 4.5rem);scrollbar-gutter:stable;overflow-x:clip;overflow-y:scroll}body.site-body{margin:0;font-family:"DM Sans",system-ui,sans-serif;font-size:1rem;line-height:1.6;color:#1a1a2e;background:#fafafa;overflow-x:clip}.section-inner{max-width:960px;margin:0 auto;padding:2rem 1.5rem 3rem;position:relative;z-index:1;box-sizing:border-box}.section-tagline{margin:-0.5rem 0 1.5rem 0;font-size:1.0625rem;color:#4a4a68;max-width:42ch}.page-sections{width:100%;overflow-x:clip}.page-section{position:relative;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;justify-content:flex-start;padding:0;overflow-x:clip;opacity:0;transform:translateY(24px);transition:opacity 0.6s ease, transform 0.6s ease}.page-section.revealed{opacity:1;transform:translateY(0)}#introduction.page-section{opacity:1;transform:none}.page-section h2{margin:0 0 0.5rem 0;padding-bottom:0.75rem;font-family:"Plus Jakarta Sans",system-ui,sans-serif;font-size:clamp(1.375rem, 3.5vw, 1.75rem);font-weight:700;letter-spacing:-0.02em;color:#1a1a2e;border-bottom:2px solid rgba(0,0,0,0.08)}#introduction.page-section .section-inner{flex:1 1 0%;min-height:0;min-width:0;display:flex;flex-direction:column;justify-content:center;align-items:stretch;padding-top:clamp(1rem, 3vh, 1.5rem);padding-bottom:0.35rem;box-sizing:border-box}#introduction.page-section::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 80% 50% at 50% -20%, rgba(99,102,241,0.18), transparent),radial-gradient(ellipse 60% 40% at 100% 50%, rgba(139,92,246,0.1), transparent),radial-gradient(ellipse 50% 30% at 0% 80%, rgba(59,130,246,0.1), transparent),linear-gradient(180deg, #f8fafc 0%, #eef2ff 50%, #f1f5f9 100%);z-index:0;animation:hero-bg-shift 15s ease-in-out infinite}#introduction.page-section .intro-content{display:flex;flex-direction:row;align-items:flex-start;gap:clamp(1rem, 3vw, 2rem);align-self:center;width:100%;min-width:0}#introduction.page-section .profile-photo{width:clamp(104px, 26vw, 184px);height:clamp(104px, 26vw, 184px);object-fit:cover;border-radius:50%;flex-shrink:0;box-shadow:0 12px 48px rgba(0,0,0,0.08);border:4px solid rgba(255,255,255,0.9);animation:hero-fade-in 0.8s ease-out both}#introduction.page-section .intro-stack{flex:1 1 0;min-width:0;display:flex;flex-direction:column;animation:hero-fade-in 0.8s ease-out 0.15s both}#introduction.page-section .intro-name{margin:0 0 0.5rem 0;font-family:"Plus Jakarta Sans",system-ui,sans-serif;font-size:clamp(2rem, 5vw, 2.75rem);font-weight:700;letter-spacing:-0.02em;color:#1a1a2e}#introduction.page-section .intro-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:0;margin:0 0 0.75rem 0}#introduction.page-section .intro-role,#introduction.page-section .intro-location{margin:0;font-size:1.0625rem;color:#4a4a68}#introduction.page-section .intro-role::after{content:"\00b7";margin-inline:0.35em;white-space:nowrap}#introduction.page-section .intro-below{min-width:0}#introduction.page-section .intro-tagline{margin:0 0 1rem 0;font-size:1rem;color:#4a4a68;max-width:40ch}#introduction.page-section .intro-links{margin-bottom:1rem;display:flex;gap:0.5rem 0.75rem;flex-wrap:wrap;align-items:center}#introduction.page-section .intro-links a{display:inline-block;padding:0.5rem 1rem;background:#6366f1;color:#fff;text-decoration:none;border-radius:999px;font-weight:500;font-size:.875rem;transition:background 0.25s ease,transform 0.25s ease}#introduction.page-section .intro-links a:hover{background:#4f46e5;transform:translateY(-1px)}#introduction.page-section .intro-links a:first-of-type{background:#1a1a2e}#introduction.page-section .intro-links a:first-of-type:hover{background:#0b0b14}#introduction.page-section .intro-bullets{margin:0;padding-left:1.25rem;line-height:1.6;color:#4a4a68;text-align:left}#introduction.page-section .intro-skills-label{margin:0.75rem 0 0 0;font-size:.875rem;line-height:1.5;color:#4a4a68;opacity:0.9;text-align:left}#introduction.page-section .scroll-hint{position:relative;z-index:1;flex-shrink:0;width:100%;margin:0;padding:0.25rem 0 0.65rem;text-align:center;font-size:.75rem;color:#4a4a68;letter-spacing:0.1em;text-transform:uppercase;animation:scroll-hint-bounce 2s ease-in-out infinite}@keyframes hero-bg-shift{0%, 100%{opacity:1}50%{opacity:0.95}}@keyframes hero-fade-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes scroll-hint-bounce{0%, 100%{opacity:0.6;transform:translateY(0)}50%{opacity:1;transform:translateY(4px)}}.site-section-nav{position:sticky;top:0;z-index:10;background:rgba(255,255,255,0.88);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(0,0,0,0.06);padding:0.875rem 1rem;transition:box-shadow 0.25s ease}.site-section-nav .nav-inner{max-width:960px;margin:0 auto;display:flex;gap:clamp(0.55rem, 2.2vw, 1.75rem);flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.site-section-nav .nav-inner::-webkit-scrollbar{display:none}.site-section-nav a{color:#1a1a2e;text-decoration:none;font-weight:500;font-size:clamp(.78rem, 2.6vw, .9375rem);transition:color 0.25s ease;position:relative;white-space:nowrap;flex-shrink:0}.site-section-nav a:hover{color:#6366f1}.site-section-nav a.nav-active{font-weight:600;color:#6366f1}.site-section-nav a.nav-active::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:2px;background:#6366f1;border-radius:1px}.nav-text--wide{display:none}.nav-text--narrow{display:inline}@media (min-width: 640px){.nav-text--wide{display:inline}.nav-text--narrow{display:none}}#work.page-section{overflow-x:clip}#work.page-section::before{content:"";position:absolute;inset:0;background:linear-gradient(165deg, #f0f4ff 0%, #e8ecff 30%, #fff 100%),radial-gradient(circle at 20% 80%, rgba(99,102,241,0.06), transparent 50%);z-index:0}#work .section-inner{padding-top:1rem;padding-bottom:1.75rem;min-width:0;box-sizing:border-box}#work .section-tagline{margin-bottom:1rem}#work .work-tabs{margin-top:0.5rem;min-width:0;max-width:100%;overflow-x:clip}#work .work-tabs-card{display:flex;flex-direction:column;gap:0;min-width:0;max-width:100%;overflow-x:clip}#work .work-tab-panels{min-width:0;max-width:100%;overflow-x:clip}#work .tab-buttons{display:flex;gap:0.5rem;flex-wrap:wrap;margin-bottom:1rem;justify-content:center}#work .tab-buttons button{padding:0.55rem 0.75rem;border:none;background:rgba(0,0,0,0.06);color:#4a4a68;cursor:pointer;border-radius:18px;font-size:clamp(.8rem, 2.4vw, .9375rem);font-family:"DM Sans",system-ui,sans-serif;font-weight:500;transition:background 0.25s ease,color 0.25s ease,transform 0.25s ease;display:flex;align-items:center;gap:0.5rem;text-align:left;flex:0 1 auto;width:auto;max-width:100%;min-width:0;touch-action:manipulation}#work .tab-buttons button:hover{background:rgba(0,0,0,0.1);color:#1a1a2e;transform:translateY(-1px)}#work .tab-buttons button[aria-selected="true"]{background:#6366f1;color:#fff}.work-tab-icon{width:1.65rem;height:1.65rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-family:"Plus Jakarta Sans",system-ui,sans-serif;font-size:.8125rem;font-weight:800;line-height:1;text-transform:uppercase;background:rgba(255,255,255,0.75);color:#1a1a2e}.work-tab-icon-netflix{background:linear-gradient(135deg, #b20710, #e50914);color:#fff}.work-tab-icon-amazon{background:linear-gradient(135deg, #111827, #232f3e);color:#ffb11a}.work-tab-icon-tailabs{background:linear-gradient(135deg, #0f766e, #155e75);color:#fff}.work-tab-copy{display:flex;flex-direction:column;line-height:1.15;min-width:0;overflow-wrap:break-word}.work-tab-company{font-weight:600}.work-tab-dates{font-size:.75rem;opacity:0.8}#work .tab-panel{background:rgba(255,255,255,0.85);backdrop-filter:blur(8px);border-radius:12px;padding:1.25rem 1.5rem;box-shadow:0 4px 24px rgba(0,0,0,0.06);overflow-x:hidden;overflow-y:visible;min-width:0;box-sizing:border-box}#work .tab-panel h3{margin:0 0 0.35rem 0;font-family:"Plus Jakarta Sans",system-ui,sans-serif;font-size:1.25rem;font-weight:600}.tab-panel-header{display:grid;grid-template-columns:minmax(0, 1fr) auto;align-items:flex-start;gap:1rem;margin-bottom:1rem;min-width:0;width:100%}.work-panel-badge{min-width:2.25rem;height:2.25rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgba(99,102,241,0.12);color:#6366f1;font-family:"Plus Jakarta Sans",system-ui,sans-serif;font-weight:800;text-transform:uppercase;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.14)}.work-panel-badge-netflix{background:linear-gradient(135deg, #b20710, #e50914);color:#fff}.work-panel-badge-amazon{background:linear-gradient(135deg, #111827, #232f3e);color:#ffb11a}.work-panel-badge-tailabs{background:linear-gradient(135deg, #0f766e, #155e75);color:#fff}#work .work-meta{margin:0 0 1rem 0;color:#4a4a68;font-size:.875rem;overflow-wrap:anywhere;word-break:break-word}#work .tab-panel ul{margin:0;padding-left:1.25rem;line-height:1.6;overflow-wrap:anywhere;word-break:break-word}#work .tab-panel li{overflow-wrap:anywhere;word-break:break-word}.work-role-list{display:flex;flex-direction:column;gap:0.75rem;min-width:0;max-width:100%}.work-role-card{display:flex;flex-direction:column;align-items:stretch;gap:0.5rem;padding:0.75rem 1rem;background:rgba(255,255,255,0.72);border:1px solid rgba(99,102,241,0.08);border-radius:14px;min-width:0;width:100%;max-width:100%;box-sizing:border-box;overflow-wrap:anywhere;word-break:break-word}.work-role-card .work-role-topline{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:0.35rem 1rem;width:100%;margin-bottom:0}.work-role-card>ul{margin:0;padding-left:1.25rem;line-height:1.55;overflow-wrap:anywhere;word-break:break-word;width:100%}.work-role-topline{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:0.6rem}.work-role-topline h4{margin:0;font-size:1rem;font-weight:700}.work-role-dates{color:#4a4a68;font-size:.8125rem;white-space:normal}#education-certifications.page-section::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg, #fff 0%, #f8fafc 50%, #f3f4ff 100%),radial-gradient(circle at 80% 20%, rgba(99,102,241,0.05), transparent 45%);z-index:0}#education-certifications .section-inner{min-height:calc(100vh - 4.5rem);min-height:calc(100dvh - 4.5rem);display:flex;align-items:center;padding-top:1rem;padding-bottom:1.75rem}.split-section-grid{display:grid;grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);gap:1.25rem;align-items:stretch;width:100%}.split-section-column{min-width:0;display:flex;flex-direction:column;gap:0.9rem}.split-section-column .section-tagline{margin:-0.35rem 0 0.35rem 0}.education-item{margin-bottom:0;background:rgba(255,255,255,0.85);border-radius:12px;box-shadow:0 4px 24px rgba(0,0,0,0.06);transition:box-shadow 0.25s ease,transform 0.25s ease;display:grid;grid-template-columns:76px 1fr;min-height:112px;overflow:hidden}.education-item:hover{box-shadow:0 12px 48px rgba(0,0,0,0.08);transform:translateY(-2px)}.education-item p{margin:0.25rem 0}.rail-card-body{padding:1rem 1.25rem;display:flex;flex-direction:column;justify-content:center;gap:0.15rem;min-width:0;overflow-wrap:break-word;word-break:break-word}.rail-icon{display:flex;align-items:center;justify-content:center;min-height:100%;font-family:"Plus Jakarta Sans",system-ui,sans-serif;font-size:1.5rem;font-weight:800;letter-spacing:-0.03em;text-transform:uppercase;color:#fff}.rail-icon-uw{background:linear-gradient(180deg, #4b2e83, #6b46c1);color:#b7a57a}.rail-icon-umich{background:linear-gradient(180deg, #00274c, #0a4d86);color:#ffcb05}.rail-icon-aws{background:linear-gradient(180deg, #111827, #232f3e);color:#ff9900;font-size:.9375rem}.rail-icon-java{background:linear-gradient(180deg, #b91c1c, #ea580c);color:#fff7ed;font-size:.9375rem}.rail-icon-work-netflix{background:linear-gradient(135deg, #b20710, #e50914);color:#fff;font-size:.9375rem}.rail-icon-work-amazon{background:linear-gradient(135deg, #111827, #232f3e);color:#ffb11a;font-size:.9375rem}.rail-icon-work-tailabs{background:linear-gradient(135deg, #0f766e, #155e75);color:#fff;font-size:.9375rem}.work-mobile-cards{display:none}.edu-meta{color:#4a4a68;font-size:.875rem}.rail-card-body p:first-child{margin-top:0}.rail-card-body p:last-child{margin-bottom:0}#contact.page-section::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #6366f1 100%);background-size:200% 200%;animation:contact-bg 12s ease infinite;z-index:0}#contact .section-inner{min-height:calc(100vh - 4.5rem);min-height:calc(100dvh - 4.5rem);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding-top:1.5rem;padding-bottom:1.5rem}@keyframes contact-bg{0%, 100%{background-position:0% 50%}50%{background-position:100% 50%}}#contact h2{color:#fff;border-bottom-color:rgba(255,255,255,0.3)}#contact .section-tagline{color:rgba(255,255,255,0.9)}#contact p{color:rgba(255,255,255,0.95);margin:0}#contact .contact-lead{margin-bottom:1.25rem;max-width:28rem}.contact-form-honeypot{position:absolute;left:-9999px}.contact-form{width:100%;max-width:28rem;margin:0 auto;text-align:left;position:relative}.contact-form-field{margin-bottom:1rem}.contact-form-field label{display:block;font-size:.875rem;font-weight:600;color:rgba(255,255,255,0.92);margin-bottom:0.35rem}.contact-form-field input,.contact-form-field textarea{width:100%;box-sizing:border-box;padding:0.65rem 0.85rem;border:1px solid rgba(255,255,255,0.35);border-radius:8px;font-family:"DM Sans",system-ui,sans-serif;font-size:1rem;background:rgba(255,255,255,0.97);color:#1a1a2e;transition:border-color 0.25s ease,box-shadow 0.25s ease}.contact-form-field input:focus,.contact-form-field textarea:focus{outline:none;border-color:rgba(255,255,255,0.85);box-shadow:0 0 0 3px rgba(255,255,255,0.2)}.contact-form-field textarea{resize:vertical;min-height:6rem}.contact-form-submit{display:inline-block;margin-top:0.25rem;padding:0.75rem 1.75rem;background:#fff;color:#6366f1;border:none;border-radius:999px;font-weight:600;font-size:1rem;font-family:"DM Sans",system-ui,sans-serif;cursor:pointer;transition:transform 0.25s ease,box-shadow 0.25s ease}.contact-form-submit:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,0.15)}@media (min-width: 721px){html{scroll-snap-type:y mandatory}.page-section{min-height:0;height:100vh;height:100dvh;overflow-y:clip;scroll-snap-align:end;scroll-snap-stop:normal}.page-section>.section-inner{flex:1;min-height:0;overflow-y:auto;scrollbar-gutter:stable}.site-footer{scroll-snap-align:none}#introduction .section-inner{padding-top:calc(4.5rem + 0.85rem)}#work .section-inner{padding-top:calc(4.5rem + 0.85rem)}#education-certifications .section-inner{padding-top:calc(4.5rem + 0.5rem)}#contact .section-inner{padding-top:calc(4.5rem + 0.85rem)}#work .work-mobile-cards{display:none !important}}@media (max-width: 720px){html{scroll-snap-type:y mandatory;overflow-anchor:none}.page-section{min-height:0;height:100vh;height:100dvh;overflow-x:clip;overflow-y:clip;scroll-snap-align:end;scroll-snap-stop:normal}.page-section>.section-inner{flex:1;min-height:0;overflow-y:auto;scrollbar-gutter:stable}.site-footer{scroll-snap-align:none}#introduction.page-section{scroll-snap-align:start}#introduction.page-section .section-inner{justify-content:flex-start;min-height:0;padding-top:calc(var(--nav-scroll-pad, 4.5rem) + 0.25rem);padding-bottom:0.25rem}#introduction.page-section .intro-content{display:grid;grid-template-columns:auto 1fr;column-gap:0.65rem;row-gap:0.15rem;align-items:start;flex:0 1 auto;min-height:0;max-height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch}#introduction.page-section .profile-photo{grid-column:1;grid-row:1 / span 3;width:92px;height:92px;align-self:start}#introduction.page-section .intro-stack{display:contents}#introduction.page-section .intro-name{grid-column:2;grid-row:1;margin:0;font-size:clamp(1.375rem, 5.5vw, 1.375rem);line-height:1.15}#introduction.page-section .intro-meta{display:contents}#introduction.page-section .intro-role{grid-column:2;grid-row:2;margin:0;font-size:.875rem}#introduction.page-section .intro-location{grid-column:2;grid-row:3;margin:0;font-size:.875rem}#introduction.page-section .intro-role::after{content:none}#introduction.page-section .intro-below{grid-column:1 / -1;grid-row:4;margin-top:0.65rem;text-align:left}#introduction.page-section .intro-tagline{max-width:none}#work .section-tagline{display:none}#work.page-section h2{margin-bottom:0.25rem;padding-bottom:0.45rem}#work .section-inner{display:flex;flex-direction:column;justify-content:flex-start;min-height:0;padding-top:max(calc(var(--nav-scroll-pad, 4.5rem) + 0.25rem), 20dvh);padding-bottom:1rem}#work .work-tabs{display:none !important}.work-mobile-cards{display:flex;flex-direction:column;gap:0.45rem;flex:0 1 auto;min-width:0;max-width:100%;overflow:visible}#work .work-mobile-card.education-item{min-height:0}#work .work-mobile-role{margin:0.08rem 0 0 0;font-size:.8125rem;font-weight:600;color:#1a1a2e;line-height:1.35}.split-section-grid{grid-template-columns:1fr;gap:1.25rem}#education-certifications .split-section-column>.section-tagline{display:none}.split-section-column:last-child{padding-top:1rem;border-top:1px solid rgba(0,0,0,0.08)}.split-section-column{gap:0.45rem}#education-certifications .split-section-column h2{margin-bottom:0.25rem;padding-bottom:0.4rem}.education-item{grid-template-columns:44px 1fr;min-height:0;border-radius:8px}.rail-card-body{padding:0.45rem 0.55rem}.rail-card-body p{font-size:.8125rem;line-height:1.35;margin:0.1rem 0}.edu-meta{font-size:.75rem;line-height:1.3}.rail-icon{font-size:0.95rem}.rail-icon-aws,.rail-icon-java{font-size:.75rem}.work-role-dates{white-space:normal}#education-certifications .section-inner{min-height:0;justify-content:flex-start;align-items:stretch;align-self:stretch;display:flex;flex-direction:column;width:100%;max-width:none;margin-left:0;margin-right:0;box-sizing:border-box;padding-top:max(calc(var(--nav-scroll-pad, 4.5rem) + 0.25rem), 20dvh);padding-bottom:1.25rem;padding-left:1.25rem;padding-right:1.25rem}#contact .section-inner{min-height:0;width:100%;max-width:none;margin-left:0;margin-right:0;box-sizing:border-box;padding-top:calc(var(--nav-scroll-pad, 4.5rem) + 0.85rem);padding-bottom:1.5rem;padding-left:1.25rem;padding-right:1.25rem}}@media (max-width: 480px){.education-item{grid-template-columns:40px 1fr}#education-certifications .section-inner{padding-left:0.85rem;padding-right:0.85rem}}.contact-toast{position:fixed;bottom:1rem;left:1rem;z-index:10050;max-width:min(calc(100vw - 2rem), 22rem);padding:0.85rem 1.1rem;border-radius:12px;font-size:.9375rem;font-weight:600;line-height:1.35;box-shadow:0 8px 28px rgba(0,0,0,0.22)}.contact-toast[hidden]{display:none !important}.contact-toast--success{background:#27ae60;color:#fff}.contact-toast--error{background:#c0392b;color:#fff}@media (prefers-reduced-motion: reduce){.contact-form-submit:hover{transform:none}.contact-toast{transition:none}}.site-footer{padding:1.5rem 1rem;background:#1a1a2e;color:rgba(255,255,255,0.8);font-size:.875rem}.site-footer .footer-inner{max-width:960px;margin:0 auto;display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.site-footer a{color:rgba(255,255,255,0.9);text-decoration:none}.site-footer a:hover{text-decoration:underline}.infinite-scroll-bg{display:none}
