.hero{min-height:100vh;padding:160px 0 var(--space-9);z-index:1;align-items:center;display:flex;position:relative;overflow:clip}.hero__greeting{font-size:var(--font-size-2xl);color:var(--color-accent);margin-bottom:var(--space-3);font-weight:500}.hero__name{letter-spacing:-.04em;margin-bottom:var(--space-6);font-size:clamp(56px,12vw,168px);font-weight:700;line-height:.92}.hero__dot{background:var(--gradient-accent);-webkit-text-fill-color:#0000;-webkit-background-clip:text;background-clip:text}.hero__tagline{font-size:clamp(18px,2vw,22px);line-height:var(--leading-normal);color:var(--color-text-muted);max-width:720px;margin-bottom:var(--space-7)}.hero__tagline strong{color:var(--color-text);font-weight:600}.hero__tagline-label{font-size:var(--font-size-md);color:var(--color-text-dim);text-transform:uppercase;letter-spacing:.08em;margin-right:var(--space-1)}.hero__tagline-divider{color:var(--color-accent);margin:0 var(--space-1)}.hero__cta{gap:var(--space-3);flex-wrap:wrap;display:flex}@media (max-width:600px){.hero{padding-top:130px}.hero__cta{width:100%}.hero__cta .btn{flex:1}}
.skill-pill{--float-distance:var(--space-3);align-items:center;gap:var(--space-2);padding:var(--space-2) 14px;background:var(--color-surface-alt);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);font-size:var(--font-size-md);color:var(--color-text);cursor:default;opacity:0;transform:translateY(var(--float-distance));animation:pill-rise .6s var(--ease-out) forwards,pill-bob 4s var(--ease) infinite;animation-delay:var(--skill-delay,0s),calc(var(--skill-delay,0s) + .6s);transition:transform var(--duration-hover) var(--ease),box-shadow var(--duration-hover) var(--ease),border-color var(--duration-hover) var(--ease),color var(--duration-hover) var(--ease),padding .4s cubic-bezier(.34, 1.56, .64, 1),background-color var(--duration-theme) var(--ease);font-weight:500;display:inline-flex;position:relative;overflow:hidden}.skill-pill:before{content:"";background:var(--skill-color);opacity:0;transition:opacity var(--duration-hover) var(--ease);z-index:0;position:absolute;inset:0}.skill-pill:hover{border-color:var(--skill-color);box-shadow:0 var(--space-2) 18px -6px var(--skill-color);color:var(--skill-text);animation-play-state:paused;transform:translateY(-4px)scale(1.05)}.skill-pill:hover:before{opacity:1}.skill-pill:hover .skill-pill__dot{box-shadow:0 0 0 var(--space-1) rgb(var(--rgb-white)/.4);transform:scale(1.3)}.skill-pill__dot,.skill-pill__name{z-index:1;position:relative}.skill-pill__dot{width:var(--space-2);height:var(--space-2);transition:transform var(--duration-hover) var(--ease);border-radius:50%;flex-shrink:0}@keyframes pill-rise{0%{opacity:0;transform:translateY(var(--float-distance))}to{opacity:1;transform:translateY(0)}}@keyframes pill-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}
.about{z-index:2;position:relative}.about__grid{gap:var(--space-8);grid-template-columns:1fr 1fr;align-items:start;display:grid}.about__bio{gap:var(--space-4);flex-direction:column;display:flex}.about__paragraph{color:var(--color-text-muted);font-size:17px;line-height:1.7}.about__paragraph strong{color:var(--color-text);font-weight:600}.about__funfact{padding:var(--space-3) var(--space-4);border-left:var(--border-width-accent) solid var(--color-accent);font-size:var(--font-size-xl);color:var(--color-text-muted);gap:var(--space-1);flex-direction:column;margin:0;font-style:italic;line-height:1.7;display:flex}.about__funfact-label{font-size:var(--font-size-sm);letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent);font-style:normal;font-weight:600}.about__skills{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6)}.about__skills-title{font-size:var(--font-size-4xl);letter-spacing:-.02em;margin-bottom:var(--space-2);color:var(--color-text);font-weight:600}.about__skills-lede{font-size:var(--font-size-base);color:var(--color-text-muted);margin-bottom:var(--space-5);line-height:var(--leading-normal)}.about__skills-category{margin-bottom:var(--space-5)}.about__skills-category:last-child{margin-bottom:0}.about__skills-category-title{font-size:var(--font-size-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-3);opacity:.7;font-weight:600}.about__skills-list{gap:var(--space-2);flex-wrap:wrap;display:flex}@media (max-width:900px){.about__grid{gap:var(--space-6);grid-template-columns:1fr}}
.exp-tabs{gap:var(--space-7);margin-top:var(--space-6);grid-template-columns:200px 1fr;display:grid}.exp-tabs__list{flex-direction:column;display:flex;position:relative}@media (min-width:769px){.exp-tabs__list{align-self:start;overflow:hidden}.exp-tabs__list:before{content:"";width:var(--border-width-thick);background:var(--color-border);border-radius:var(--border-width-thick);height:100%;position:absolute;top:0;left:0}}.exp-tabs__tab{text-align:left;font-family:var(--font-mono);font-size:var(--font-size-md);color:var(--color-text-muted);cursor:pointer;white-space:nowrap;transition:color var(--duration-hover) var(--ease),background-color var(--duration-hover) var(--ease);background:0 0;border:none;padding:14px 20px;font-weight:500;position:relative}.exp-tabs__tab:hover{color:var(--color-accent);background:var(--color-accent-soft)}.exp-tabs__tab--active{color:var(--color-accent)}.exp-tabs__indicator{width:var(--border-width-thick);background:var(--gradient-accent);height:48px;transform:translateY(calc(var(--active-index) * 48px));transition:transform .35s var(--ease);border-radius:var(--border-width-thick);position:absolute;top:0;left:0}.exp-tabs__panel{animation:panel-fade-in .4s var(--ease-out)}@keyframes panel-fade-in{0%{opacity:0;transform:translateY(var(--space-2))}to{opacity:1;transform:translateY(0)}}.exp-tabs__role{letter-spacing:var(--tracking-tight);color:var(--color-text);margin-bottom:var(--space-1);font-size:clamp(22px,2.5vw,28px);font-weight:600;line-height:var(--leading-snug)}.exp-tabs__at,.exp-tabs__company{background:var(--gradient-accent);-webkit-text-fill-color:#0000;-webkit-background-clip:text;background-clip:text;font-weight:600}.exp-tabs__company-link{background:var(--gradient-accent);-webkit-text-fill-color:#0000;border-bottom:var(--border-width) solid #0000;transition:border-color var(--duration-hover) var(--ease);-webkit-background-clip:text;background-clip:text;text-decoration:none}.exp-tabs__company-link:hover{border-bottom-color:var(--color-accent)}.exp-tabs__period{font-size:var(--font-size-md);color:var(--color-text-muted);letter-spacing:.04em;margin-bottom:var(--space-5)}.exp-tabs__bullets{gap:var(--space-3);font-size:var(--font-size-lg);line-height:var(--leading-loose) 5;color:var(--color-text-muted);flex-direction:column;display:flex}.exp-tabs__bullets li{padding-left:28px;position:relative}.exp-tabs__bullets li:before{content:"▸";background:var(--gradient-accent);-webkit-text-fill-color:#0000;font-size:var(--font-size-base);-webkit-background-clip:text;background-clip:text;font-weight:700;position:absolute;top:0;left:6px}@media (max-width:768px){.exp-tabs{gap:var(--space-5);grid-template-columns:1fr}.exp-tabs__list{border-left:none;border-bottom:var(--border-width-thick) solid var(--color-border);flex-direction:row}.exp-tabs__tab{padding:12px var(--space-2);text-align:center;flex:1}.exp-tabs__indicator{width:calc(100%/var(--tab-count,3));height:var(--border-width-thick);transform:translateX(calc(var(--active-index) * 100%));top:auto;bottom:-2px;left:0}}
.project-card{gap:var(--space-3);padding:var(--space-6);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;min-height:280px;color:inherit;transition:transform var(--duration-hover) var(--ease),box-shadow var(--duration-hover) var(--ease),background-color var(--duration-theme) var(--ease),border-color var(--duration-theme) var(--ease);flex-direction:column;display:flex;position:relative;overflow:hidden}.project-card:before{content:"";height:var(--border-width-accent);background:var(--gradient-accent);transform-origin:0;transition:transform .4s var(--ease);position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.project-card:hover{box-shadow:0 18px 40px -16px var(--color-shadow);border-color:#0000;transform:translateY(-4px)}.project-card:hover:before{transform:scaleX(1)}.project-card:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.project-card__top{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;display:flex}.project-card__icon{width:var(--icon-size-lg);height:var(--icon-size-lg);border-radius:var(--space-3);background:var(--color-accent-soft);color:var(--color-accent);justify-content:center;align-items:center;display:inline-flex}.project-card__links{gap:var(--space-3);color:var(--color-text-muted);display:flex}.project-card__links a:hover{color:var(--color-accent)}.project-card__title{font-size:var(--font-size-4xl);letter-spacing:-.02em;color:var(--color-text);font-weight:600;line-height:var(--leading-tight) 5}.project-card__description{font-size:var(--font-size-lg);line-height:var(--leading-loose);color:var(--color-text-muted);flex:1}.project-card__stack{gap:var(--space-1);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.project-card__stack li{font-size:var(--font-size-xs);padding:var(--space-1) 10px;background:var(--color-surface-alt);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text-muted);letter-spacing:.02em}.project-card__recent-tag{font-size:var(--font-size-2xs);letter-spacing:var(--tracking-wider);text-transform:uppercase;padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);color:var(--color-accent);background:var(--color-accent-soft);border:var(--border-width) solid var(--color-border-strong);align-self:center;font-weight:600}
.projects{z-index:2;position:relative}.projects__head{justify-content:space-between;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;display:flex}.projects__head .section-header{margin-bottom:var(--space-7)}.projects__see-more{align-items:center;gap:var(--space-1);font-size:var(--btn-font-size);margin-bottom:var(--space-7);background:var(--gradient-accent);-webkit-text-fill-color:#0000;transition:gap var(--duration-hover) var(--ease);-webkit-background-clip:text;background-clip:text;font-weight:500;display:inline-flex}.projects__see-more svg{color:var(--color-accent);-webkit-text-fill-color:initial}.projects__see-more:hover{gap:var(--space-3)}.projects__grid{gap:var(--space-5);grid-template-columns:1fr 1fr;display:grid}@media (max-width:768px){.projects__grid{grid-template-columns:1fr}}
