.hero{align-items:center;min-height:100vh;padding:100px 0 60px;display:flex;position:relative;overflow-x:clip}.hero__blob{pointer-events:none;z-index:0;will-change:transform;border-radius:50%;position:absolute}.hero__blob--1{background:radial-gradient(circle,#2563eb2e 0%,#0000 70%);width:560px;height:480px;animation:7s ease-in-out infinite alternate blob-drift;top:-140px;left:-100px}.hero__blob--2{background:radial-gradient(circle,#60a5fa1f 0%,#0000 70%);width:480px;height:420px;animation:5.5s ease-in-out -2.5s infinite alternate blob-drift;top:80px;right:-80px}.hero__blob--3{background:radial-gradient(circle,#1d4ed81a 0%,#0000 70%);width:380px;height:320px;animation:8s ease-in-out -4.5s infinite alternate blob-drift;bottom:0;left:42%}@keyframes blob-drift{0%{transform:translate(0,0)scale(1)}50%{transform:translate(20px,-18px)scale(1.04)}to{transform:translate(-15px,15px)scale(.97)}}[data-theme=light] .hero__blob--1{background:radial-gradient(circle,#1d4ed812 0%,#0000 70%)}[data-theme=light] .hero__blob--2{background:radial-gradient(circle,#3b82f60f 0%,#0000 70%)}[data-theme=light] .hero__blob--3{background:radial-gradient(circle,#2563eb0d 0%,#0000 70%)}.hero__inner{z-index:1;box-sizing:border-box;justify-content:space-between;align-items:center;gap:64px;width:100%;max-width:1600px;margin:0 auto;padding:0 48px;display:flex;position:relative}.hero__text{flex:0 44%;min-width:300px}.hero__text--animate>*{animation:.275s cubic-bezier(.22,1,.36,1) both hero-fade-up}.hero__text--animate .hero__badge{animation-delay:50ms}.hero__text--animate .hero__name{animation-delay:.11s}.hero__text--animate .hero__subtitle{animation-delay:.15s}.hero__text--animate .hero__role{animation-delay:.19s}.hero__text--animate .hero__actions{animation-delay:.23s}.hero__text--animate .hero__socials{animation-delay:.27s}@keyframes hero-fade-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.hero__badge{background:var(--bg-glass);border:1px solid var(--border-accent);color:var(--violet-bright);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);letter-spacing:.3px;border-radius:50px;align-items:center;gap:8px;margin-bottom:22px;padding:6px 15px;font-size:.77rem;font-weight:500;display:inline-flex}.hero__badge-dot{background:#22c55e;border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:1.1s ease-in-out infinite dot-pulse;box-shadow:0 0 7px #22c55e}@keyframes dot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.82)}}.hero__name{color:var(--text-primary);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;font-family:Space Grotesk,sans-serif;font-size:4.2rem;font-weight:700;line-height:1.15;display:flex}.hero__name-grad{background:var(--grad-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero__inline-photo-wrap{border:2px solid var(--border-accent);background:var(--bg-surface);width:72px;height:72px;box-shadow:0 0 18px var(--violet-glow);vertical-align:middle;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative;top:-2px;overflow:hidden}.hero__inline-photo{object-fit:cover;object-position:center 10%;width:100%;height:100%;display:block}.hero__subtitle{color:var(--text-primary);margin-bottom:12px;font-family:Space Grotesk,sans-serif;font-size:2.2rem;font-weight:600}.hero__role{color:var(--text-secondary);min-height:2em;margin-bottom:32px;font-family:Space Grotesk,sans-serif;font-size:1.4rem;font-weight:600}.hero__role-static{color:var(--text-secondary)}.hero__typed{background:var(--grad-aurora);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero__typed-cursor{color:var(--violet-bright);-webkit-text-fill-color:var(--violet-bright);margin-left:2px;font-weight:300;animation:.7s step-end infinite typed-blink;display:inline-block}@keyframes typed-blink{0%,to{opacity:1}50%{opacity:0}}.hero__terminal{background:#0a0a0a;border:1px solid #ffffff14;border-radius:16px;outline:none;width:100%;margin-bottom:0;font-family:Space Mono,Fira Code,Courier New,monospace;font-size:1rem;transition:border-color .15s,box-shadow .3s;overflow:hidden;box-shadow:0 0 0 1px #2563eb26,0 8px 40px #00000080}.hero__terminal--focused{border-color:#2563eb99;box-shadow:0 0 0 1px #2563eb99,0 8px 40px #00000080,0 0 20px #2563eb33}[data-theme=light] .hero__terminal{background:#1a1a1a;border-color:#2563eb33;box-shadow:0 0 0 1px #2563eb1f,0 8px 40px #00000026}[data-theme=light] .hero__terminal--focused{border-color:#2563ebcc;box-shadow:0 0 0 1px #2563ebcc,0 8px 40px #00000026}.hero__terminal-bar{background:#111;border-bottom:1px solid #ffffff0f;align-items:center;gap:8px;padding:14px 20px;display:flex}[data-theme=light] .hero__terminal-bar{background:#1e1e1e}.hero__terminal-dot{border-radius:50%;flex-shrink:0;width:13px;height:13px}.hero__terminal-dot--red{background:#ff5f57}.hero__terminal-dot--yellow{background:#febc2e}.hero__terminal-dot--green{background:#28c840}.hero__terminal-title{color:#ffffff4d;letter-spacing:.5px;text-overflow:ellipsis;white-space:nowrap;margin-left:auto;font-size:.75rem;overflow:hidden}.hero__terminal-body{flex-direction:column;gap:4px;padding:22px 24px 20px;display:flex}.hero__terminal-line{white-space:pre-wrap;word-break:break-word;will-change:opacity;text-align:left;font-size:1.05rem;line-height:1.65;transition:opacity .1s}.term-prompt{color:#22c55e;margin-right:6px;font-weight:600}.hero__terminal-line--cmd{color:#e5e7eb;font-weight:500}.hero__terminal-line--output{color:#ffffffbf;padding-left:4px}.hero__terminal-line--output-justify{color:#ffffffbf;text-align:justify;padding-left:4px}.hero__terminal-line--blank{height:8px;line-height:1}.hero__terminal-menu{margin-top:6px;padding-left:4px}.hero__terminal-option{color:#ffffff80;border-radius:4px;align-items:center;padding:2px 4px;font-size:.85rem;line-height:1.6;transition:color .1s,background .2s;display:flex}.hero__terminal-option--selected{color:#fff;background:#ffffff1a}.hero__terminal-cursor-indicator{color:#60a5fa;width:14px;font-weight:700;display:inline-block}.hero__terminal-help{color:#fff6;min-height:20px;margin-top:14px;padding-left:18px;font-size:.78rem}.hero__terminal-click-prompt{color:#22c55e;animation:1s infinite pulse-text}@keyframes pulse-text{0%,to{opacity:.5}50%{opacity:1}}.hero__terminal-cursor{vertical-align:text-bottom;background:#60a5fa;border-radius:2px;flex-shrink:0;width:10px;height:16px;margin-left:6px;animation:.5s step-end infinite terminal-blink;display:inline-block}@keyframes terminal-blink{0%,to{opacity:1}50%{opacity:0}}.hero__actions{flex-wrap:wrap;gap:13px;margin-bottom:32px;display:flex}.hero__btn{cursor:pointer;will-change:transform;white-space:nowrap;border:none;border-radius:12px;align-items:center;gap:8px;padding:13px 26px;font-family:Inter,sans-serif;font-size:.9rem;font-weight:600;text-decoration:none;transition:transform .11s,box-shadow .22s;display:inline-flex}.hero__btn--primary{background:var(--grad-primary);color:#fff;box-shadow:0 4px 20px var(--violet-glow)}.hero__btn--primary:hover{box-shadow:0 8px 28px var(--violet-glow);color:#fff;transform:translateY(-2px)}.hero__btn--ghost{background:var(--bg-glass);border:1px solid var(--border-accent);color:var(--violet-bright);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.hero__btn--ghost:hover{background:var(--violet-dim);border-color:var(--violet-bright);color:var(--violet-bright);transform:translateY(-2px)}.hero__socials{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.hero__social-btn{background:var(--bg-glass);border:1px solid var(--glass-border);width:38px;height:38px;color:var(--text-secondary);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:10px;justify-content:center;align-items:center;font-size:1.1rem;transition:all .11s;display:flex}.hero__social-btn:hover{border-color:var(--border-accent);color:var(--violet-bright);background:var(--violet-dim);transform:translateY(-2px)}.hero__social-sep{background:var(--border);width:1px;height:20px}.hero__social-email{color:var(--text-secondary);letter-spacing:.2px;font-family:Inter,sans-serif;font-size:.95rem;font-weight:500;text-decoration:none;transition:color .11s}.hero__social-email:hover{color:var(--violet-bright)}.hero__right{flex:1;justify-content:flex-end;align-items:center;max-width:1000px;display:flex}.hero__right--animate{animation:.275s cubic-bezier(.22,1,.36,1) .15s both hero-fade-up}.resume-modal__overlay{z-index:9999;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-sizing:border-box;background:#000c;justify-content:center;align-items:center;padding:16px;animation:.11s both fade-in;display:flex;position:fixed;inset:0}.resume-modal__overlay--closing{animation:.13s both fade-out}.resume-modal{background:var(--bg-elevated);border:1px solid var(--border-accent);width:100%;max-width:700px;max-height:92vh;box-shadow:0 0 60px var(--violet-glow);border-radius:18px;animation:.28s cubic-bezier(.22,1,.36,1) both modal-pop;position:relative;overflow:hidden auto}.resume-modal--closing{animation:.26s cubic-bezier(.22,1,.36,1) both modal-pop-out}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes modal-pop{0%{opacity:0;transform:scale(.92)translateY(24px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes modal-pop-out{0%{opacity:1;transform:scale(1)translateY(0)}to{opacity:0;transform:scale(.92)translateY(24px)}}.resume-modal__bar{border-bottom:1px solid var(--border);background:var(--bg-surface);z-index:2;justify-content:flex-end;align-items:center;gap:10px;padding:12px 16px;display:flex;position:sticky;top:0}.resume-modal__dl{color:var(--violet-bright);border:1px solid var(--border-accent);border-radius:8px;align-items:center;gap:6px;padding:6px 14px;font-size:.8rem;transition:all .1s;display:flex}.resume-modal__dl:hover{background:var(--violet-dim);color:var(--violet-bright)}.resume-modal__close{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;font-size:1rem;transition:all .1s;display:flex}.resume-modal__close:hover{border-color:var(--border-accent);color:var(--violet-bright)}.resume-modal__img{width:100%;display:block}@media (max-width:1600px){.hero__inner{gap:48px;padding:0 40px}.hero__right{max-width:900px}}@media (max-width:1440px){.hero__inner{gap:36px;padding:0 32px}.hero__right{max-width:800px}.hero__name{font-size:3.6rem}.hero__subtitle{font-size:1.9rem}.hero__role{font-size:1.25rem}.hero__terminal-line{font-size:.95rem}}@media (max-width:1280px){.hero__right{max-width:680px}.hero__text{flex:0 46%}.hero__inner{gap:28px}.hero__name{font-size:3rem}.hero__subtitle{font-size:1.7rem}.hero__terminal-line{font-size:.88rem}}@media (max-width:1099px){.hero{align-items:flex-start;padding-top:88px;padding-bottom:48px}.hero__inner{text-align:center;flex-direction:column;align-items:center;gap:36px;width:100%;max-width:680px;padding:0 32px}.hero__text{flex:none;width:100%;min-width:0}.hero__badge{margin:0 auto 22px}.hero__name{justify-content:center;font-size:2.4rem}.hero__subtitle{font-size:1.5rem}.hero__actions,.hero__socials{justify-content:center}.hero__right{flex:none;justify-content:center;width:100%;max-width:640px}.hero__terminal{text-align:left;max-width:100%;margin-bottom:20px}}@media (max-width:768px){.hero{padding-top:78px;padding-bottom:40px}.hero__inner{gap:28px;padding:0 20px}.hero__name{gap:8px;font-size:2rem}.hero__subtitle{font-size:1.3rem}.hero__role{font-size:1.1rem}.hero__terminal-line{font-size:.78rem}.hero__terminal-body{padding:18px 18px 16px}.hero__inline-photo-wrap{border-radius:12px;width:52px;height:52px}}@media (max-width:480px){.hero{padding-top:72px;padding-bottom:32px}.hero__inner{gap:24px;padding:0 16px}.hero__name{gap:7px;font-size:1.7rem}.hero__subtitle{font-size:1.1rem}.hero__role{font-size:.95rem}.hero__badge{padding:5px 12px;font-size:.72rem}.hero__actions{flex-direction:column;align-items:center;gap:10px;width:100%}.hero__btn{justify-content:center;width:100%;max-width:280px;padding:12px 20px}.hero__terminal-line{font-size:.72rem}.hero__terminal-body{padding:14px 14px 12px}.hero__terminal-bar{padding:12px 14px}.hero__inline-photo-wrap{border-radius:10px;width:46px;height:46px}.resume-modal{border-radius:14px;max-height:95vh}}
