@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400&family=Outfit:wght@300;400;500&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--charcoal: #1e1e1e;--charcoal-light: #2a2a2a;--charcoal-mid: #252525;--ice-blue: #7dd4f8;--ice-blue-dim: rgba(125, 212, 248, .15);--ice-blue-glow: rgba(125, 212, 248, .35);--warm-white: #f0ece4;--warm-white-dim: rgba(240, 236, 228, .6);--font-display: "Cormorant Garamond", serif;--font-body: "Outfit", sans-serif}body{background:var(--charcoal);color:var(--warm-white);font-family:var(--font-body);min-height:100vh}html{scroll-behavior:smooth}.section,.hero{scroll-margin-top:64px}.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:0 3rem;height:64px;display:flex;align-items:center;justify-content:space-between;transition:background .4s ease,border-color .4s ease;border-bottom:1px solid transparent}.nav.scrolled{background:#1e1e1eeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-color:#7dd4f81f}.nav-brand{font-family:var(--font-display);font-size:1.25rem;font-weight:300;letter-spacing:.12em;color:var(--warm-white);text-transform:uppercase}.nav-brand span{color:var(--ice-blue)}.nav-links{display:flex;gap:2.5rem;list-style:none}.nav-links a{font-family:var(--font-body);font-size:.8rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--warm-white-dim);text-decoration:none;transition:color .2s ease;position:relative}.nav-links a:after{content:"";position:absolute;bottom:-3px;left:0;width:0;height:1px;background:var(--ice-blue);transition:width .3s ease}.nav-links a:hover{color:var(--ice-blue)}.nav-links a:hover:after{width:100%}.hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6rem 2rem 4rem;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;top:-20%;left:50%;transform:translate(-50%);width:600px;height:600px;background:radial-gradient(circle,rgba(125,212,248,.06) 0%,transparent 70%);pointer-events:none}.hero-logo{margin:0 auto 1rem;opacity:0;transition:opacity 1s ease .2s}.hero-logo.visible{opacity:1}.title-block{text-align:center;margin-bottom:3.5rem;opacity:0;transform:translateY(20px);transition:opacity .9s ease .1s,transform .9s ease .1s}.title-block.visible{opacity:1;transform:translateY(0)}.title-eyebrow{font-family:var(--font-body);font-size:.7rem;font-weight:400;letter-spacing:.3em;text-transform:uppercase;color:var(--ice-blue);margin-bottom:1rem}.title-name{font-family:var(--font-display);font-size:clamp(3rem,7vw,5.5rem);font-weight:300;letter-spacing:.05em;line-height:1.1;color:var(--warm-white)}.title-name em{font-style:italic;color:var(--ice-blue)}.title-rule{width:48px;height:1px;background:var(--ice-blue);margin:1.5rem auto;opacity:.6}.title-sub{font-family:var(--font-body);font-size:.78rem;font-weight:300;letter-spacing:.22em;text-transform:uppercase;color:var(--warm-white-dim)}.bio{display:grid;grid-template-columns:1fr 2fr 1fr;align-items:start;gap:1rem;width:100%;max-width:1400px;opacity:0;transform:translateY(24px);transition:opacity .9s ease .35s,transform .9s ease .35s}.bio.visible{opacity:1;transform:translateY(0)}.bio-card{max-width:680px;width:100%;background:var(--charcoal-mid);border:1px solid rgba(125,212,248,.1);border-radius:2px;padding:3rem 1.5rem;position:relative;justify-self:center}.bio-card:before{content:"";position:absolute;top:0;left:2rem;right:2rem;height:1px;background:linear-gradient(to right,transparent,var(--ice-blue),transparent);opacity:.4}.bio-card p{font-family:var(--font-body);font-size:.97rem;font-weight:300;line-height:1.85;color:var(--warm-white-dim);margin-bottom:1.4rem}.bio-card p:last-of-type{font-family:var(--font-display);font-size:1.15rem;font-style:italic;font-weight:400;color:var(--warm-white);margin-bottom:0}.ethos-block{margin-top:6rem;font-family:var(--font-body);transform:translateY(24px);transition:opacity .9s ease .35s,transform .9s ease .35s;padding:1rem 1rem 1rem 1.5rem}.ethos-block p{font-family:var(--font-body);font-size:.97rem;font-weight:300;line-height:1.85;color:var(--warm-white-dim)}.ethos-block h3{font-family:var(--font-display);font-size:1.25rem;font-weight:400;letter-spacing:.1em;color:var(--ice-blue);margin-bottom:1rem}.signature-block{margin-top:2rem;display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;opacity:0;transition:opacity .9s ease .6s}.signature-block.visible{opacity:1}.signature-cheers{font-family:var(--font-display);font-size:1rem;font-style:italic;color:var(--warm-white-dim);letter-spacing:.05em}.monogram{width:120px;height:60px;display:flex;align-items:flex-end;justify-content:center;position:relative}@keyframes scrollPulse{0%,to{opacity:.4;transform:scaleY(1)}50%{opacity:1;transform:scaleY(1.1)}}.section{min-height:60vh;display:flex;align-items:center;justify-content:center;border-top:1px solid rgba(125,212,248,.07);padding:6rem 2rem}.section-placeholder{text-align:center;opacity:.2}.section-placeholder h2{font-family:var(--font-display);font-size:2.5rem;font-weight:300;letter-spacing:.1em;color:var(--ice-blue);margin-bottom:.5rem}.section-placeholder p{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--warm-white-dim)}.hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;background:none;border:none;cursor:pointer;padding:4px;z-index:110}.hamburger span{display:block;width:24px;height:1px;background:var(--warm-white);transition:transform .3s ease,opacity .3s ease;transform-origin:center}.hamburger.open span:nth-child(1){transform:translateY(6px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.nav-links-mobile{display:none;position:fixed;top:64px;left:0;right:0;background:#1e1e1ef7;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex-direction:column;list-style:none;padding:1.5rem 2rem;gap:0;border-bottom:1px solid rgba(125,212,248,.12);transform:translateY(-10px);opacity:0;transition:opacity .3s ease,transform .3s ease;pointer-events:none}.nav-links-mobile.open{display:flex;opacity:1;transform:translateY(0);pointer-events:all}.nav-links-mobile a{font-family:var(--font-body);font-size:.85rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--warm-white-dim);text-decoration:none;padding:1rem 0;border-bottom:1px solid rgba(125,212,248,.07);display:block;transition:color .2s ease}.nav-links-mobile a:hover{color:var(--ice-blue)}.resume-section{align-items:flex-start;justify-content:center;padding:6rem 2rem 8rem}.resume-container{width:100%;max-width:860px;margin:0 auto;opacity:0;transform:translateY(28px);transition:opacity .9s ease .1s,transform .9s ease .1s}.resume-container.visible{opacity:1;transform:translateY(0)}.resume-header{text-align:center;margin-bottom:3.5rem}.resume-rule-top{width:48px;height:1px;background:var(--ice-blue);opacity:.6;margin:0 auto 2rem}.resume-eyebrow{font-family:var(--font-body);font-size:.7rem;font-weight:400;letter-spacing:.3em;text-transform:uppercase;color:var(--ice-blue);margin-bottom:.75rem}.resume-name{font-family:var(--font-display);font-size:clamp(2rem,5vw,3.5rem);font-weight:300;letter-spacing:.05em;color:var(--warm-white);margin-bottom:1rem}.resume-name em{font-style:italic;color:var(--ice-blue)}.resume-contact{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.4rem .8rem;font-family:var(--font-body);font-size:.78rem;font-weight:300;letter-spacing:.05em;color:var(--warm-white-dim);margin-bottom:2rem}.resume-contact a{color:var(--warm-white-dim);text-decoration:none;transition:color .2s ease}.resume-contact a:hover{color:var(--ice-blue)}.resume-contact-dot{color:var(--ice-blue);opacity:.5}.resume-download-btn{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-body);font-size:.72rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--ice-blue);text-decoration:none;border:1px solid rgba(125,212,248,.3);border-radius:2px;padding:.6rem 1.2rem;transition:background .2s ease,border-color .2s ease,color .2s ease}.resume-download-btn:hover{background:#7dd4f814;border-color:var(--ice-blue);color:var(--warm-white)}.resume-block{margin-bottom:3rem}.resume-section-label{font-family:var(--font-display);font-size:.7rem;font-weight:400;letter-spacing:.28em;text-transform:uppercase;color:var(--ice-blue);margin-bottom:.6rem}.resume-rule-section{width:100%;height:1px;background:linear-gradient(to right,rgba(125,212,248,.4),transparent);margin-bottom:1.5rem}.resume-statement{font-family:var(--font-body);font-size:.95rem;font-weight:300;line-height:1.85;color:var(--warm-white-dim)}.resume-entry{margin-bottom:2rem}.resume-entry-header{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;align-items:baseline;gap:.1rem 1rem;margin-bottom:.6rem}.resume-entry-company{font-family:var(--font-display);font-size:1rem;font-weight:400;letter-spacing:.05em;color:var(--warm-white);grid-column:1;grid-row:1}.resume-entry-location{font-family:var(--font-body);font-size:.75rem;font-weight:300;letter-spacing:.1em;color:var(--warm-white-dim);opacity:.6;grid-column:2;grid-row:1;text-align:right}.resume-entry-title{font-family:var(--font-body);font-size:.82rem;font-weight:400;letter-spacing:.12em;color:var(--ice-blue);grid-column:1;grid-row:2}.resume-entry-period{font-family:var(--font-body);font-size:.72rem;font-weight:300;letter-spacing:.08em;color:var(--warm-white-dim);opacity:.55;grid-column:2;grid-row:2;text-align:right}.resume-entry-subtitle{font-family:var(--font-body);font-size:.88rem;font-weight:300;line-height:1.75;color:var(--warm-white-dim);margin-bottom:.75rem;font-style:italic}.resume-bullets{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.45rem}.resume-bullets li{font-family:var(--font-body);font-size:.88rem;font-weight:300;line-height:1.7;color:var(--warm-white-dim);padding-left:1.2rem;position:relative}.resume-bullets li:before{content:"–";position:absolute;left:0;color:var(--ice-blue);opacity:.6}.resume-skills-grid{display:flex;flex-direction:column;gap:.6rem}.resume-skill-row{display:grid;grid-template-columns:200px 1fr;gap:1rem;font-family:var(--font-body);font-size:.88rem;font-weight:300;line-height:1.6;align-items:baseline}.resume-skill-cat{color:var(--ice-blue);letter-spacing:.06em}.resume-skill-val{color:var(--warm-white-dim)}@media(max-width:900px){.scroll-hint{display:flex}.nav-links{display:none}.hamburger{display:flex}.bio{grid-template-columns:1fr 1fr}.bio .bio-card{grid-column:1 / -1;grid-row:1}.bio .ethos-block{margin:0}.bio .ethos-block:first-child{grid-column:1;grid-row:2}.bio .ethos-block:last-child{grid-column:2;grid-row:2}.resume-entry-header{grid-template-columns:1fr}.resume-entry-location,.resume-entry-period{text-align:left;grid-column:1}.resume-entry-location{grid-row:2}.resume-entry-title{grid-row:3}.resume-entry-period{grid-row:4}.resume-skill-row{grid-template-columns:1fr;gap:.1rem}.resume-contact{flex-direction:column;gap:.3rem}.resume-contact-dot{display:none}}
