:root{color:#2a2430;background:#fff8f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--bg: #fff8f5;--panel: rgba(255, 255, 255, .78);--panel-strong: rgba(255, 252, 249, .94);--line: rgba(133, 102, 94, .16);--muted: #756b73;--text: #2a2430;--cream: #fff8f0;--blush: #f3b8bd;--rose: #c66b7e;--mauve: #8d6e8d;--sage: #8fae9d;--gold: #caa46a;--radius: 8px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 12% 8%,rgba(243,184,189,.42),transparent 28rem),radial-gradient(circle at 84% 12%,rgba(143,174,157,.34),transparent 28rem),radial-gradient(circle at 76% 68%,rgba(202,164,106,.16),transparent 30rem),linear-gradient(180deg,#fff8f5,#fffdf9 48%,#f8eee9);color:var(--text)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.site-shell{position:relative;overflow:hidden}.aurora{position:fixed;z-index:0;width:22rem;height:22rem;border-radius:999px;filter:blur(42px);opacity:.42;pointer-events:none;animation:drift 12s ease-in-out infinite alternate}.aurora-one{top:9rem;left:-8rem;background:#f3b8bd8c}.aurora-two{right:-9rem;bottom:18rem;background:#8fae9d73;animation-delay:-4s}.topbar{position:fixed;z-index:20;top:16px;left:50%;display:flex;width:min(1120px,calc(100% - 28px));min-height:58px;transform:translate(-50%);align-items:center;justify-content:space-between;gap:14px;border:1px solid rgba(133,102,94,.14);border-radius:var(--radius);background:#fffaf7d1;box-shadow:0 18px 60px #7f524e24;padding:8px 10px 8px 14px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:grid;width:40px;height:40px;place-items:center;border:1px solid rgba(198,107,126,.28);border-radius:8px;background:linear-gradient(135deg,#f3b8bd94,#fff8f0eb);color:#5a3441;font-weight:900}.nav{display:flex;align-items:center;gap:6px}.nav a{border-radius:7px;color:#5a5158;font-size:.9rem;padding:10px 12px;transition:background .18s ease,color .18s ease}.nav a:hover{background:#c66b7e1a;color:#2a2430}.nav-cta,.primary-button,.ghost-button,.linkedin-button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:8px;border-radius:8px;font-weight:800;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.nav-cta{background:#2a2430;color:#fff8f0;padding:0 14px}.primary-button{background:linear-gradient(135deg,var(--rose),var(--blush));color:#fff;padding:0 18px;box-shadow:0 16px 34px #c66b7e47}.ghost-button{border:1px solid rgba(198,107,126,.24);background:#ffffff8a;color:#5a3441;padding:0 18px}.linkedin-button{border:1px solid rgba(10,102,194,.18);background:#ffffff9e;color:#384150;padding:0 18px}.linkedin-button svg{color:#0a66c2}.nav-cta:hover,.primary-button:hover,.ghost-button:hover,.linkedin-button:hover{transform:translateY(-2px)}.menu-button{display:none;width:42px;height:42px;place-items:center;border:1px solid rgba(133,102,94,.16);border-radius:8px;background:#ffffffa3;color:#5a3441}.hero{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:42px;width:min(1120px,calc(100% - 40px));min-height:88vh;align-items:center;margin:0 auto;padding:124px 0 54px;isolation:isolate}.hero:before{position:absolute;top:86px;right:-7vw;bottom:18px;left:-7vw;z-index:-1;background:linear-gradient(135deg,#ffffff8f,#fff6f13d),repeating-linear-gradient(90deg,rgba(141,110,141,.07) 0 1px,transparent 1px 88px),repeating-linear-gradient(0deg,rgba(143,174,157,.07) 0 1px,transparent 1px 88px);border-radius:32px;content:"";-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 72%,transparent 100%);mask-image:linear-gradient(180deg,#000 0%,#000 72%,transparent 100%)}.hero-content{max-width:800px;padding-bottom:20px}.eyebrow,.kicker{display:inline-flex;align-items:center;gap:8px;margin:0 0 18px;color:var(--rose);font-size:.84rem;font-weight:800;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{max-width:760px;margin-bottom:18px;color:#2a2430;font-size:clamp(3.1rem,7vw,6.6rem);line-height:.92}h2{max-width:860px;margin-bottom:18px;color:#332b36;font-size:clamp(2rem,4.4vw,4.8rem);line-height:.98}h3{margin-bottom:10px;font-size:1.28rem}.hero-copy,.section-intro>p,.contact-copy p,.role-card>p,.project-card p{color:var(--muted);line-height:1.65}.hero-copy{max-width:660px;margin-bottom:28px;font-size:clamp(1.05rem,2.2vw,1.32rem)}.portrait-stage{position:relative;min-height:470px;align-self:stretch}.portrait-stage:before{position:absolute;top:28px;right:10px;bottom:34px;left:10px;border-radius:44% 56% 50% 50%/38% 44% 56% 62%;background:radial-gradient(circle at 62% 22%,rgba(255,255,255,.9),transparent 7rem),linear-gradient(145deg,#f3b8bd6b,#8fae9d4d);box-shadow:0 28px 70px #7f524e2e;content:"";animation:breathe 7s ease-in-out infinite alternate}.portrait-image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:10px solid rgba(255,255,255,.82);border-radius:46% 54% 48% 52%/42% 44% 56% 58%;box-shadow:0 28px 80px #50393838;object-fit:cover;object-position:center top}.portrait-orbit{position:absolute;border:1px solid rgba(198,107,126,.18);border-radius:999px;pointer-events:none}.portrait-orbit-one{top:18px;right:-10px;bottom:46px;left:22px;animation:float 8s ease-in-out infinite}.portrait-orbit-two{top:60px;right:34px;bottom:2px;left:-14px;border-color:#8fae9d38;animation:float 9s ease-in-out infinite reverse}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.signal-panel{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:min(720px,100%)}.signal-panel div{display:flex;min-height:68px;align-items:center;gap:10px;border:1px solid var(--line);border-radius:var(--radius);background:#fffcf9b8;padding:14px;color:#4e444b;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.signal-panel svg{color:var(--rose);flex:0 0 auto}.stats-band,.section,.contact-section{position:relative;z-index:1;width:min(1120px,calc(100% - 40px));margin:0 auto}.stats-band{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:20px 0 62px}.stat,.role-card,.skill-card,.project-card,.award-item{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:0 18px 70px #7f524e1f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.stat{min-height:128px;padding:20px}.stat strong{display:block;color:var(--rose);font-size:clamp(2rem,4vw,3.2rem);line-height:1}.stat span{display:block;margin-top:10px;color:var(--muted);line-height:1.45}.section{padding:76px 0}.section-intro{max-width:840px;margin-bottom:30px}.timeline{display:grid;gap:16px}.role-card{position:relative;padding:24px}.role-card:before{position:absolute;top:24px;bottom:24px;left:0;width:3px;border-radius:999px;background:linear-gradient(180deg,var(--rose),var(--blush),var(--sage));content:""}.role-meta,.project-topline{display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--rose);font-size:.84rem;font-weight:800;text-transform:uppercase}.company{color:#2a2430;font-weight:800}.role-card ul{display:grid;gap:8px;margin:0 0 18px;padding-left:18px;color:#4f464e;line-height:1.5}.chips{display:flex;flex-wrap:wrap;gap:8px}.chips span{border:1px solid rgba(198,107,126,.16);border-radius:999px;background:#fff8f5db;color:#66555d;font-size:.78rem;font-weight:700;padding:7px 10px}.skills-grid,.project-grid,.award-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.skill-card,.project-card{min-height:260px;padding:24px}.icon-shell{display:grid;width:48px;height:48px;margin-bottom:18px;place-items:center;border:1px solid rgba(198,107,126,.18);border-radius:8px;background:#f3b8bd2e;color:var(--rose)}.projects-section{width:min(1180px,calc(100% - 40px))}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.project-card{display:flex;flex-direction:column;overflow:hidden}.project-card:nth-child(1){background:linear-gradient(135deg,#f3b8bd33,#fff8f094),var(--panel)}.project-card:nth-child(2){background:linear-gradient(135deg,#8fae9d2e,#fff8f094),var(--panel)}.project-card:nth-child(3){background:linear-gradient(135deg,#8d6e8d29,#fff8f094),var(--panel)}.project-card p{flex:1}.award-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.award-item{display:flex;min-height:96px;align-items:center;gap:12px;padding:18px;color:#3b3339;font-weight:800}.award-item svg{color:var(--gold);flex:0 0 auto}.contact-section{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:32px;align-items:start;border-top:1px solid rgba(133,102,94,.14);padding:86px 0 52px}.contact-copy h2{margin-bottom:16px}.contact-links{display:grid;gap:12px;border:1px solid var(--line);border-radius:var(--radius);background:#fffcf994;box-shadow:0 18px 70px #7f524e1f;padding:18px}.contact-panel-title{margin-bottom:4px;color:#5a3441;font-size:.86rem;font-weight:900;text-transform:uppercase}.contact-links a,.contact-links span{display:flex;min-height:50px;align-items:center;gap:10px;border:1px solid var(--line);border-radius:var(--radius);background:#fffcf9b8;color:#3b3339;padding:12px 14px;overflow-wrap:anywhere}.contact-links .coffee-link{background:linear-gradient(135deg,#c66b7eeb,#f3b8bde0);color:#fff;font-weight:900;box-shadow:0 16px 34px #c66b7e38}.contact-links .coffee-link svg{color:#fff}.contact-links svg{color:var(--rose);flex:0 0 auto}[data-reveal]{transform:translateY(24px);opacity:0;transition:opacity .7s ease,transform .7s ease}[data-reveal].is-visible{transform:translateY(0);opacity:1}@keyframes drift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(3rem,-2rem,0) scale(1.08)}}@keyframes float{0%{transform:translateZ(0) rotate(-2deg)}50%{transform:translate3d(.7rem,-.5rem,0) rotate(1deg)}to{transform:translate3d(-.3rem,.4rem,0) rotate(2deg)}}@keyframes breathe{0%{transform:scale(.985)}to{transform:scale(1.02)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}@media(max-width:900px){.topbar{top:10px;width:calc(100% - 20px)}.nav{position:absolute;top:calc(100% + 8px);right:0;left:0;display:none;grid-template-columns:1fr;border:1px solid rgba(133,102,94,.14);border-radius:var(--radius);background:#fffaf7f5;padding:8px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.nav.is-open{display:grid}.nav a{min-height:42px}.nav-cta{display:none}.menu-button{display:grid}.hero{grid-template-columns:1fr;min-height:auto;padding-top:110px}.hero:before{top:80px;right:-16px;bottom:20px;left:-16px;border-radius:24px}.hero-content{padding-bottom:0}.portrait-stage{min-height:430px;max-width:350px;width:100%;justify-self:center}.signal-panel,.stats-band,.skills-grid,.project-grid,.award-grid,.contact-section{grid-template-columns:1fr}.stats-band{padding-bottom:38px}.section{padding:54px 0}}@media(max-width:560px){.hero,.stats-band,.section,.contact-section{width:calc(100% - 28px)}.hero{width:100%;padding-right:14px;padding-left:14px}.portrait-stage{min-height:260px;max-width:220px}.portrait-image{border-width:7px}.eyebrow{align-items:flex-start;line-height:1.35}h1{font-size:clamp(3rem,15vw,4.4rem)}.primary-button,.ghost-button,.linkedin-button{width:100%}.role-card,.skill-card,.project-card{padding:20px}.role-meta,.project-topline{align-items:flex-start}}
