@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.8e0177b5.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.b97b3418.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.853070df.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist","Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.c1fdd6c2.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.799d8ef8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.dbea232f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}
:root{--accent:#4a90e2;--accent-light:#6fa8ec;--accent-dark:#2e5f9e;--bg-primary:#0a0a0a;--bg-secondary:#111;--bg-elevated:#1a1a1a;--text-primary:#fff;--text-secondary:#a0a0a0;--text-tertiary:#707070;--border:#2a2a2a;--border-light:#333}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{color:var(--text-primary);background:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}.container{min-height:100vh}.nav{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:100;background:0 0;border-bottom:1px solid #2a2a2a4d;transition:all .3s;position:fixed;top:0;left:0;right:0}.nav-content{justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto;padding:1.5rem 3rem;display:flex}.nav-left{align-items:center;display:flex}.nav-email{color:var(--text-secondary);letter-spacing:.02em;text-transform:none;align-items:center;gap:.5rem;font-size:.875rem;font-weight:400;transition:color .3s;display:flex}.nav-email:after{display:none}.nav-email:hover{color:var(--accent)}.email-icon{opacity:.8;font-size:1.125rem}.nav-links{gap:3rem;display:flex}.nav-links a{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;font-size:.875rem;font-weight:400;transition:color .3s;position:relative}.nav-links a:after{content:"";background:var(--accent);width:0;height:1px;transition:width .3s;position:absolute;bottom:-4px;left:0}.nav-links a:hover{color:var(--text-primary)}.nav-links a:hover:after{width:100%}.hero{background:var(--bg-primary);border-bottom:1px solid var(--border);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative}.hero:before{content:"";filter:grayscale()brightness(.3);pointer-events:none;background-image:url(/skylinesf.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.hero:after{content:"";pointer-events:none;background:linear-gradient(135deg,#4a90e226 0%,#0a0a0ab3 100%);position:absolute;inset:0}.hero-content{text-align:center;z-index:1;max-width:900px;padding:2rem;animation:1s ease-out fadeInUp;position:relative}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero-label{letter-spacing:.2em;text-transform:uppercase;color:var(--accent);cursor:default;margin-bottom:2rem;font-size:.75rem;font-weight:500;transition:transform .3s,color .3s,letter-spacing .3s}.hero-label:hover{color:var(--accent-light);letter-spacing:.25em;transform:translateY(-2px)}.hero-title{letter-spacing:-.02em;color:var(--text-primary);cursor:default;margin-bottom:1.5rem;font-size:5rem;font-weight:300;transition:transform .3s,color .3s,letter-spacing .3s}.hero-title:hover{color:var(--accent-light);letter-spacing:-.01em;transform:scale(1.02)}.hero-subtitle{color:var(--text-secondary);letter-spacing:.05em;cursor:default;margin-bottom:3rem;font-size:1.25rem;font-weight:300;transition:transform .3s,color .3s}.hero-subtitle:hover{color:var(--text-primary);transform:translateY(-2px)}.hero-divider{background:var(--accent);width:60px;height:1px;margin:0 auto}.section{border-bottom:1px solid var(--border);padding:10rem 4rem}.section-alt{background:var(--bg-secondary)}.section-content{max-width:1100px;margin:0 auto}.section-header{margin-bottom:5rem}.section-label{letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:.75rem;font-size:.75rem;font-weight:500}.section-title{letter-spacing:-.01em;color:var(--text-primary);text-align:left;font-size:3rem;font-weight:300}.about-content{max-width:850px;transition:transform .3s,padding-left .3s}.about-content:hover{transform:translate(8px)}.about-lead{color:var(--text-primary);border-bottom:1px solid var(--border);margin-bottom:3.5rem;padding-bottom:3.5rem;font-size:1.75rem;font-weight:300;line-height:1.65;transition:color .3s}.about-content:hover .about-lead{color:var(--accent-light)}.about-content p{color:var(--text-secondary);margin-bottom:2rem;font-size:1.125rem;line-height:1.9;transition:color .3s}.about-content:hover p{color:var(--text-primary)}.timeline{padding-left:3.5rem;transition:transform .3s;position:relative}.timeline:hover{transform:translate(8px)}.timeline:before{content:"";background:var(--border);opacity:.5;width:1px;transition:opacity .3s,background .3s;position:absolute;top:0;bottom:0;left:0}.timeline:hover:before{opacity:1;background:var(--accent)}.timeline-item{margin-bottom:5rem;position:relative}.timeline-item:last-child{margin-bottom:0}.timeline-marker{background:var(--accent);width:9px;height:9px;transition:transform .5s;position:absolute;top:.5rem;left:-3.5rem;transform:translate(-4px)}.timeline-item:hover .timeline-marker{transform:translate(-4px)scale(1.3)}.timeline-content{background:0 0;border:none;border-left:1px solid #0000;padding:0 0 0 2.5rem;transition:all .5s}.timeline-content:hover{border-left-color:var(--accent);padding-left:3rem}.timeline-header{justify-content:space-between;align-items:flex-start;gap:2rem;margin-bottom:1.25rem;display:flex}.timeline-title{color:var(--text-primary);margin-bottom:.75rem;font-size:1.5rem;font-weight:400;transition:color .3s}.timeline-item:hover .timeline-title{color:var(--text-primary)}.timeline-org{color:var(--accent);font-size:1.05rem;font-weight:500;transition:color .3s}.timeline-item:hover .timeline-org{color:var(--accent-light)}.timeline-date{color:var(--text-tertiary);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;font-size:.8rem}.timeline-description{color:var(--text-secondary);margin-top:1.75rem;padding-left:0;font-size:1.05rem;line-height:1.8;list-style:none}.timeline-description li{margin-bottom:.75rem;padding-left:1.5rem;position:relative}.timeline-description li:last-child{margin-bottom:0}.timeline-description li:before{content:"•";color:var(--accent);font-weight:700;position:absolute;left:0}.education-grid{grid-template-columns:repeat(2,1fr);gap:4rem;display:grid}.education-item{border:none;border-bottom:1px solid var(--border);background:0 0;padding:0 0 2.5rem;transition:all .5s}.education-item:hover{border-bottom-color:var(--accent);padding-bottom:2.75rem}.education-degree{color:var(--text-primary);margin-bottom:1.25rem;font-size:1.5rem;font-weight:400;line-height:1.4}.education-school{color:var(--accent);margin-bottom:1rem;font-size:1.125rem;font-weight:500;transition:color .3s}.education-item:hover .education-school{color:var(--accent-light)}.education-year{color:var(--text-tertiary);letter-spacing:.08em;text-transform:uppercase;font-size:.85rem}.contact-container{grid-template-columns:300px 1fr;align-items:start;gap:5rem;transition:transform .3s;display:grid}.contact-container:hover{transform:translate(8px)}.contact-photo-container{transition:transform .3s;position:relative}.contact-container:hover .contact-photo-container{transform:scale(1.05)}.contact-photo{filter:grayscale(0%);width:100%;height:auto;transition:transform .3s,box-shadow .3s;display:block}.contact-photo:hover{transform:scale(1.03);box-shadow:0 10px 30px #4a90e24d}.contact-info{padding-top:1rem}.contact-intro{color:var(--text-secondary);margin-bottom:3rem;font-size:1.125rem;line-height:1.8;transition:color .3s}.contact-container:hover .contact-intro{color:var(--text-primary)}.contact-methods{flex-direction:column;gap:2rem;display:flex}.contact-method{border-bottom:1px solid var(--border);padding-bottom:1.5rem;transition:all .5s;display:block}.contact-method:hover{border-bottom-color:var(--accent);padding-bottom:1.75rem}.contact-method-label{letter-spacing:.15em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:.75rem;font-size:.7rem;font-weight:500}.contact-method-value{color:var(--text-primary);font-size:1.05rem;font-weight:300;transition:color .3s}.contact-method:hover .contact-method-value{color:var(--accent)}.footer{background:var(--bg-primary);border-top:1px solid var(--border)}.footer-content{text-align:center;max-width:1400px;color:var(--text-tertiary);letter-spacing:.05em;margin:0 auto;padding:3rem;font-size:.875rem}@media (max-width:1024px){.hero-title{font-size:4rem}.section{padding:6rem 2rem}.section-title{font-size:2.5rem}.education-grid{grid-template-columns:1fr}.contact-container{grid-template-columns:1fr;gap:3rem}.contact-photo{max-width:300px;margin:0 auto}}@media (max-width:768px){.nav-content{flex-direction:column;align-items:flex-start;gap:1rem;padding:1.25rem 2rem}.nav-email{font-size:.8rem}.nav-links{gap:2rem}.nav-links a{font-size:.75rem}.hero-title{font-size:3rem}.hero-subtitle{font-size:1.125rem}.section{padding:5rem 1.5rem}.section-title{font-size:2rem}.about-lead{font-size:1.25rem}.timeline{padding-left:2rem}.timeline-marker{left:-2rem}.timeline-content{padding-left:2rem}.timeline-description li{padding-left:1.25rem;font-size:.95rem}.timeline-header{flex-direction:column;gap:.5rem}.timeline-title{font-size:1.25rem}.education-item{padding:2rem}.contact-card{padding:1.5rem 2rem}}@media (max-width:480px){.nav-content{flex-direction:column;align-items:flex-start;gap:1rem;padding:1rem 1.5rem}.nav-email{font-size:.75rem}.nav-links{gap:1.5rem}.nav-links a{font-size:.7rem}.hero-title{font-size:2.25rem}.hero-subtitle{font-size:1rem}.section{padding:4rem 1.25rem}.section-title{font-size:1.75rem}.about-lead{font-size:1.125rem}.timeline-content{padding:1.5rem}.education-item{padding:1.75rem}.contact-card{padding:1.25rem 1.75rem}}
