:root{--bg: #0c0b0a;--surface: #141312;--surface-2: #1d1c1a;--border: #252320;--border-l: #332f2b;--text: #e6dfd4;--text-muted: #877f74;--text-faint: #413d39;--accent: #d95e28;--accent-glow: rgba(217, 94, 40, 0.18);--white: #faf8f5;--font-display: 'Fraunces', Georgia, serif;--font-body: 'Syne', system-ui, sans-serif;--nav-h: 68px;--max-w: 1160px;--pad-x: clamp(1.5rem, 5vw, 3.5rem);--ease: cubic-bezier(0.4, 0, 0.2, 1)}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:1rem;line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}body::after{content:'';position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)'/%3E%3C/svg%3E");opacity:0.032;pointer-events:none;z-index:9999}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}ul{list-style:none}h1,h2,h3,h4{font-family:var(--font-display);line-height:1.1;letter-spacing:-0.02em}.container{max-width:var(--max-w);margin:0 auto;padding:0 var(--pad-x)}.section{padding:clamp(4rem, 8vw, 7rem) 0}.eyebrow{font-size:0.72rem;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;color:var(--accent)}.btn{display:inline-flex;align-items:center;gap:0.5rem;padding:0.75rem 1.75rem;font-family:var(--font-body);font-size:0.85rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;border:none;cursor:pointer;transition:all 0.3s var(--ease);border-radius:2px}.btn--primary{background:var(--accent);color:var(--white)}.btn--primary:hover{background:#e8702e;transform:translateY(-2px);box-shadow:0 10px 30px var(--accent-glow)}.btn--ghost{background:transparent;color:var(--text);border:1px solid var(--border-l)}.btn--ghost:hover{border-color:var(--text-muted);color:var(--white);transform:translateY(-2px)}.btn--outline-accent{background:transparent;color:var(--accent);border:1px solid var(--accent)}.btn--outline-accent:hover{background:var(--accent);color:var(--white)}.site-header{position:fixed;top:0;left:0;right:0;height:var(--nav-h);z-index:100;display:flex;align-items:center;background:rgba(12,11,10,0.82);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);transition:background 0.3s var(--ease)}.nav{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:var(--max-w);margin:0 auto;padding:0 var(--pad-x)}.nav__logo{font-family:var(--font-display);font-size:1.3rem;font-weight:800;font-style:italic;color:var(--white);letter-spacing:-0.02em;transition:color 0.2s}.nav__logo:hover{color:var(--accent)}.nav__links{display:flex;gap:2rem}.nav__links a{font-size:0.82rem;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;color:var(--text-muted);transition:color 0.2s;position:relative;padding-bottom:2px}.nav__links a::after{content:'';position:absolute;bottom:-2px;left:0;width:0;height:1px;background:var(--accent);transition:width 0.3s var(--ease)}.nav__links a:hover,.nav__links a.active{color:var(--white)}.nav__links a:hover::after,.nav__links a.active::after{width:100%}.nav__right{display:flex;align-items:center;gap:0.75rem}.nav__artstation{display:inline-flex;align-items:center;gap:0.4rem;padding:0.45rem 1.1rem;background:var(--surface-2);border:1px solid var(--border-l);border-radius:2px;font-size:0.78rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--text);transition:all 0.25s var(--ease)}.nav__artstation svg{flex-shrink:0}.nav__artstation:hover{background:var(--accent);border-color:var(--accent);color:var(--white);transform:translateY(-1px)}.nav__linkedin{display:inline-flex;align-items:center;gap:0.4rem;padding:0.45rem 1.1rem;background:var(--surface-2);border:1px solid var(--border-l);border-radius:2px;font-size:0.78rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--text);transition:all 0.25s var(--ease)}.nav__linkedin svg{flex-shrink:0}.nav__linkedin:hover{background:var(--accent);border-color:var(--accent);color:var(--white);transform:translateY(-1px)}.nav__hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px;background:none;border:none}.nav__hamburger span{display:block;width:22px;height:1.5px;background:var(--text);transition:all 0.3s var(--ease);transform-origin:center}.nav__hamburger.is-open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.nav__hamburger.is-open span:nth-child(2){opacity:0;transform:scaleX(0)}.nav__hamburger.is-open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.mobile-menu{display:none;position:fixed;inset:0;background:var(--bg);z-index:99;flex-direction:column;justify-content:center;align-items:flex-start;padding:var(--pad-x);transform:translateX(100%);transition:transform 0.45s cubic-bezier(0.76, 0, 0.24, 1)}.mobile-menu.is-open{transform:translateX(0)}.mobile-menu ul{margin-bottom:2.5rem}.mobile-menu a{display:block;font-family:var(--font-display);font-size:clamp(2.5rem, 9vw, 4.5rem);font-weight:800;color:var(--text-faint);line-height:1.15;transition:color 0.3s}.mobile-menu a:hover,.mobile-menu a.active{color:var(--white)}@media (max-width: 820px){.nav__links{display:none}.nav__right .nav__artstation{display:none}.nav__hamburger{display:flex}.mobile-menu{display:flex}}.hero{min-height:100vh;display:flex;align-items:center;padding-top:var(--nav-h);position:relative;overflow:hidden}.hero::before{content:'';position:absolute;top:15%;right:5%;width:45vw;height:45vw;background:radial-gradient(circle, rgba(217,94,40,0.07) 0%, transparent 65%);pointer-events:none}.hero__inner{max-width:var(--max-w);margin:0 auto;padding:clamp(3rem, 6vw, 6rem) var(--pad-x);display:grid;grid-template-columns:1fr 300px;gap:4rem;align-items:center;width:100%}.hero__eyebrow{display:flex;align-items:center;gap:0.75rem;margin-bottom:1.75rem;opacity:0;animation:fadeUp 0.9s var(--ease) 0.2s forwards}.hero__eyebrow::before{content:'';display:block;width:2rem;height:1px;background:var(--accent)}.hero__name{font-family:var(--font-display);font-size:clamp(4.5rem, 11vw, 9.5rem);font-weight:900;line-height:0.92;letter-spacing:-0.03em;margin-bottom:1.75rem}.hero__name span{display:block;opacity:0;animation:fadeUp 0.9s var(--ease) forwards}.hero__name span:nth-child(1){color:var(--white);animation-delay:0.3s}.hero__name span:nth-child(2){color:transparent;-webkit-text-stroke:1.5px rgba(230,223,212,0.4);animation-delay:0.45s}.hero__title{font-size:0.82rem;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-muted);margin-bottom:1.25rem;opacity:0;animation:fadeUp 0.9s var(--ease) 0.55s forwards}.hero__tagline{font-family:var(--font-display);font-style:italic;font-size:clamp(1.1rem, 2.2vw, 1.45rem);color:var(--text-muted);margin-bottom:2.5rem;opacity:0;animation:fadeUp 0.9s var(--ease) 0.65s forwards}.hero__cta{display:flex;gap:1rem;flex-wrap:wrap;opacity:0;animation:fadeUp 0.9s var(--ease) 0.75s forwards}.hero__visual{width:280px;height:280px;position:relative;flex-shrink:0;opacity:0;animation:fadeIn 1.5s var(--ease) 1.1s forwards}.orbit{position:absolute;border-radius:50%;border:1px solid var(--border-l)}.orbit--outer{inset:0;animation:spin 28s linear infinite}.orbit--outer::after{content:'';position:absolute;width:9px;height:9px;background:var(--accent);border-radius:50%;top:-4.5px;left:calc(50% - 4.5px);box-shadow:0 0 14px var(--accent),0 0 28px var(--accent-glow)}.orbit--mid{inset:50px;border-color:var(--border);animation:spin 18s linear infinite reverse}.orbit--mid::after{content:'';position:absolute;width:5px;height:5px;background:var(--text-faint);border-radius:50%;bottom:-2.5px;left:calc(50% - 2.5px)}.orbit--inner{inset:90px;border-color:var(--text-faint);opacity:0.4;animation:spin 10s linear infinite}.orbit__center{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:58px;height:58px;background:var(--surface);border:1px solid var(--border-l);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:800;font-style:italic;font-size:1.1rem;color:var(--text-muted)}.hero__scroll{position:absolute;bottom:2.5rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:0.6rem;opacity:0;animation:fadeIn 1s var(--ease) 1.8s forwards}.hero__scroll span{font-size:0.65rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--text-faint)}.scroll-line{width:1px;height:48px;background:linear-gradient(to bottom, var(--accent), transparent);animation:scrollPulse 2.2s ease-in-out infinite}@media (max-width: 820px){.hero__inner{grid-template-columns:1fr}.hero__visual{display:none}}.marquee-section{border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:1.1rem 0;overflow:hidden;background:var(--surface)}.marquee{display:flex;overflow:hidden;user-select:none}.marquee__track{display:flex;align-items:center;gap:2.5rem;animation:marquee 38s linear infinite;will-change:transform;white-space:nowrap}.marquee__track:hover{animation-play-state:paused}.marquee__item{display:flex;align-items:center;gap:2.5rem;font-size:0.72rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-muted);transition:color 0.2s}.marquee__item:hover{color:var(--accent)}.marquee__dot{width:3px;height:3px;background:var(--accent);border-radius:50%;flex-shrink:0}.intro-strip{border-top:1px solid var(--border)}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}.intro-text h2{font-family:var(--font-display);font-size:clamp(1.8rem, 3.5vw, 2.75rem);color:var(--white);margin-bottom:1.25rem}.intro-text p{color:var(--text-muted);line-height:1.85;margin-bottom:1.25rem}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.stat__num{font-family:var(--font-display);font-size:3.5rem;font-weight:900;color:var(--white);line-height:1;margin-bottom:0.25rem}.stat__label{font-size:0.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.1em}@media (max-width: 820px){.intro-grid{grid-template-columns:1fr;gap:2.5rem}}.work-preview{border-top:1px solid var(--border)}.section__header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:2.5rem}.section__title{font-size:clamp(1.75rem, 3.5vw, 2.5rem);color:var(--white);margin-top:0.5rem}.section__link{font-size:0.8rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--text-muted);display:flex;align-items:center;gap:0.4rem;transition:color 0.2s;white-space:nowrap}.section__link:hover{color:var(--accent)}.section__link .arrow{transition:transform 0.2s}.section__link:hover .arrow{transform:translateX(3px)}.preview-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:1px;background:var(--border);border:1px solid var(--border)}.preview-card{background:var(--bg);padding:2.5rem;transition:background 0.3s var(--ease);display:block;position:relative}.preview-card:hover{background:var(--surface)}.preview-card:hover .preview-card__arrow{transform:translate(3px, -3px)}.preview-card__num{font-size:0.68rem;font-weight:700;letter-spacing:0.2em;color:var(--text-faint);text-transform:uppercase;margin-bottom:2rem}.preview-card__title{font-family:var(--font-display);font-size:1.5rem;font-weight:800;color:var(--white);margin-bottom:0.6rem}.preview-card__desc{font-size:0.875rem;color:var(--text-muted);line-height:1.65;margin-bottom:1.5rem}.preview-card__tags{display:flex;flex-wrap:wrap;gap:0.4rem;margin-bottom:2rem}.tag{font-size:0.67rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-muted);background:var(--surface-2);padding:0.22rem 0.6rem;border:1px solid var(--border)}.preview-card__arrow{color:var(--accent);font-size:1.1rem;display:inline-block;transition:transform 0.3s var(--ease)}@media (max-width: 820px){.preview-grid{grid-template-columns:1fr}.section__header{flex-direction:column;align-items:flex-start;gap:1rem}}.pdf-bar{background:var(--surface);border-bottom:1px solid var(--border);padding:0.8rem 0;margin-top:var(--nav-h)}.pdf-bar__inner{max-width:var(--max-w);margin:0 auto;padding:0 var(--pad-x);display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.pdf-bar p{font-size:0.82rem;color:var(--text-muted)}.resume-page{padding-bottom:6rem}.resume-head{max-width:var(--max-w);margin:0 auto;padding:3rem var(--pad-x) 3rem;border-bottom:1px solid var(--border);display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:end}.resume-head__name{font-size:clamp(2.5rem, 7vw, 5.5rem);font-weight:900;color:var(--white);letter-spacing:-0.03em;line-height:0.95;margin-bottom:0.75rem}.resume-head__role{font-size:0.82rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--accent)}.resume-head__contact{display:flex;flex-direction:column;gap:0.4rem;text-align:right}.resume-head__contact a{font-size:0.84rem;color:var(--text-muted);transition:color 0.2s}.resume-head__contact a:hover{color:var(--accent)}.resume-layout{max-width:var(--max-w);margin:0 auto;padding:3.5rem var(--pad-x) 0;display:grid;grid-template-columns:1fr 280px;gap:4rem;align-items:start}.rs{margin-bottom:3.5rem}.rs__label{font-size:0.68rem;font-weight:800;letter-spacing:0.22em;text-transform:uppercase;color:var(--accent);margin-bottom:1.5rem;display:flex;align-items:center;gap:1rem}.rs__label::after{content:'';flex:1;height:1px;background:var(--border)}.resume-summary{font-family:var(--font-display);font-style:italic;font-size:1.1rem;line-height:1.75;color:var(--text-muted);padding:1.25rem 0 2rem;border-bottom:1px solid var(--border);margin-bottom:3.5rem}.exp-item{padding:1.75rem 0;border-bottom:1px solid var(--border)}.exp-item:last-child{border-bottom:none}.exp-item__top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:0.35rem}.exp-item__role{font-family:var(--font-display);font-size:1.15rem;font-weight:700;color:var(--white)}.exp-item__period{font-size:0.8rem;color:var(--text-muted);font-weight:500;white-space:nowrap;flex-shrink:0}.exp-item__co{font-size:0.84rem;font-weight:600;color:var(--accent);letter-spacing:0.04em;margin-bottom:0.2rem}.exp-item__loc{font-size:0.75rem;color:var(--text-faint);margin-bottom:0.9rem}.exp-item__list li{position:relative;padding-left:1.2rem;font-size:0.9rem;color:var(--text-muted);line-height:1.7;margin-bottom:0.35rem}.exp-item__list li::before{content:'—';position:absolute;left:0;color:var(--text-faint)}.skill-row{display:flex;justify-content:space-between;align-items:center;padding:0.55rem 0;border-bottom:1px solid var(--border);font-size:0.875rem}.skill-row:last-child{border-bottom:none}.skill-row__name{color:var(--text);font-weight:500}.skill-row__lvl{font-size:0.68rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-faint)}.soft-tags{display:flex;flex-wrap:wrap;gap:0.5rem}.soft-tag{font-size:0.72rem;font-weight:600;letter-spacing:0.06em;color:var(--text-muted);background:var(--surface);border:1px solid var(--border);padding:0.28rem 0.65rem}.edu-item{padding:1rem 0;border-bottom:1px solid var(--border)}.edu-item:last-child{border-bottom:none}.edu-item__deg{font-size:0.9rem;font-weight:700;color:var(--text);margin-bottom:0.2rem}.edu-item__school{font-size:0.82rem;color:var(--accent);font-weight:600;margin-bottom:0.15rem}.edu-item__period{font-size:0.77rem;color:var(--text-muted);margin-bottom:0.25rem}.edu-item__note{font-size:0.8rem;color:var(--text-faint);font-style:italic}.cert-item{padding:0.6rem 0;border-bottom:1px solid var(--border);font-size:0.84rem;color:var(--text-muted)}.cert-item:last-child{border-bottom:none}.cert-item strong{display:block;color:var(--text);font-size:0.82rem}.lang-row{display:flex;justify-content:space-between;padding:0.5rem 0;border-bottom:1px solid var(--border);font-size:0.84rem}.lang-row:last-child{border-bottom:none}.lang-row__lang{color:var(--text);font-weight:500}.lang-row__lvl{color:var(--text-muted)}.ref-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:1.25rem;margin-top:0.5rem}.ref-item{background:var(--surface);border:1px solid var(--border);padding:1.1rem}.ref-item__name{font-weight:700;color:var(--white);font-size:0.9rem;margin-bottom:0.2rem}.ref-item__company{font-size:0.78rem;color:var(--accent);font-weight:600;margin-bottom:0.35rem}.ref-item__email{font-size:0.75rem;color:var(--text-muted);transition:color 0.2s;word-break:break-all}.ref-item__email:hover{color:var(--accent)}@media (max-width: 900px){.resume-head{grid-template-columns:1fr}.resume-head__contact{text-align:left}.resume-layout{grid-template-columns:1fr}.ref-grid{grid-template-columns:1fr}}.about-hero{padding:calc(var(--nav-h) + 4rem) 0 4rem;border-bottom:1px solid var(--border)}.about-hero__grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}.about-hero__text h1{font-size:clamp(2.5rem, 6vw, 4.5rem);color:var(--white);margin-bottom:0.6rem}.about-hero__text .role{font-size:0.82rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--accent);margin-bottom:2rem;display:block}.about-hero__text .lead{font-family:var(--font-display);font-style:italic;font-size:1.2rem;color:var(--text);line-height:1.7;margin-bottom:1.5rem}.about-hero__text p{color:var(--text-muted);line-height:1.85;margin-bottom:1.1rem}.about-photo{aspect-ratio:2/3;background:var(--surface);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.about-photo__placeholder{font-size:0.72rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--text-faint);text-align:center}.about-photo__note{position:absolute;bottom:1rem;left:1rem;right:1rem;font-size:0.7rem;color:var(--text-faint);text-align:center}.values-grid{display:grid;grid-template-columns:repeat(2, 1fr);gap:1px;background:var(--border);border:1px solid var(--border)}.value-card{background:var(--bg);padding:2.25rem;transition:background 0.3s}.value-card:hover{background:var(--surface)}.value-card__icon{font-size:1.75rem;margin-bottom:1rem}.value-card__title{font-family:var(--font-display);font-size:1.1rem;font-weight:700;color:var(--white);margin-bottom:0.5rem}.value-card__desc{font-size:0.875rem;color:var(--text-muted);line-height:1.65}@media (max-width: 820px){.about-hero__grid{grid-template-columns:1fr;gap:3rem}.values-grid{grid-template-columns:1fr}}.work-hero{padding:calc(var(--nav-h) + 4rem) 0 3.5rem;border-bottom:1px solid var(--border)}.work-hero h1{font-size:clamp(2.5rem, 6vw, 4.5rem);color:var(--white);margin-top:0.6rem;margin-bottom:1.25rem}.work-hero p{color:var(--text-muted);max-width:52ch;line-height:1.75}.work-grid{display:grid;grid-template-columns:repeat(2, 1fr);gap:1px;background:var(--border);border:1px solid var(--border)}.project-card{background:var(--bg);overflow:hidden;transition:background 0.3s;display:block}.project-card:hover{background:var(--surface)}.project-card:hover .project-card__img-inner{transform:scale(1.04)}.project-card__img{aspect-ratio:16/10;overflow:hidden;background:var(--surface-2);border-bottom:1px solid var(--border)}.project-card__img-inner{width:100%;height:100%;background:linear-gradient(135deg, var(--surface) 0%, var(--surface-2) 60%, rgba(217,94,40,0.05) 100%);display:flex;align-items:center;justify-content:center;transition:transform 0.7s var(--ease)}.project-card__img-inner span{font-size:0.7rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--text-faint)}.project-card__body{padding:2rem}.project-card__num{font-size:0.68rem;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;color:var(--text-faint);margin-bottom:0.75rem}.project-card__title{font-family:var(--font-display);font-size:1.45rem;font-weight:800;color:var(--white);margin-bottom:0.5rem}.project-card__desc{font-size:0.875rem;color:var(--text-muted);line-height:1.7;margin-bottom:1.1rem}.project-card__tags{display:flex;flex-wrap:wrap;gap:0.4rem;margin-bottom:1.25rem}.project-card__link{font-size:0.78rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--accent);display:inline-flex;align-items:center;gap:0.4rem;transition:gap 0.2s}.project-card__link:hover{gap:0.7rem}.portfolio-cta{border-top:1px solid var(--border);text-align:center}.portfolio-cta h2{font-size:clamp(1.75rem, 3.5vw, 2.5rem);color:var(--white);margin-bottom:1rem}.portfolio-cta p{color:var(--text-muted);max-width:44ch;margin:0 auto 2.5rem;line-height:1.75}@media (max-width: 820px){.work-grid{grid-template-columns:1fr}}.contact-page{padding:calc(var(--nav-h) + 4.5rem) 0 6rem}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem}.contact-left h1{font-size:clamp(2rem, 5vw, 3.75rem);color:var(--white);margin-bottom:0.75rem}.contact-left .lead{font-size:1rem;color:var(--text-muted);line-height:1.8;margin-bottom:2.5rem;max-width:40ch}.avail-badge{display:inline-flex;align-items:center;gap:0.6rem;padding:0.5rem 1rem;background:var(--surface);border:1px solid var(--border-l);font-size:0.8rem;font-weight:600;letter-spacing:0.04em;color:var(--text);margin-bottom:3rem}.avail-badge .dot{width:7px;height:7px;border-radius:50%;animation:pulseDot 2s ease-in-out infinite}.dot-green{background:#4ade80}.dot-grey{background:var(--text-faint)}.contact-email{display:block;font-family:var(--font-display);font-size:clamp(1.3rem, 3vw, 2rem);font-weight:700;color:var(--white);border-bottom:1px solid var(--border-l);padding-bottom:1rem;margin-bottom:2.5rem;transition:color 0.2s, border-color 0.2s}.contact-email:hover{color:var(--accent);border-color:var(--accent)}.socials{display:flex;flex-direction:column;gap:0.6rem}.social-row{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:var(--surface);border:1px solid var(--border);transition:all 0.3s var(--ease)}.social-row:hover{border-color:var(--border-l);background:var(--surface-2);transform:translateX(5px)}.social-row__name{font-weight:600;font-size:0.88rem;color:var(--text)}.social-row__handle{font-size:0.8rem;color:var(--text-muted)}.social-row__arrow{color:var(--text-faint);font-size:0.85rem}.contact-right h2{font-family:var(--font-display);font-size:1.75rem;color:var(--white);margin-bottom:0.5rem}.contact-right .sub{font-size:0.875rem;color:var(--text-muted);margin-bottom:2rem;line-height:1.7}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-size:0.72rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-muted);margin-bottom:0.5rem}.form-group input,.form-group textarea,.form-group select{width:100%;background:var(--surface);border:1px solid var(--border);color:var(--text);font-family:var(--font-body);font-size:0.9rem;padding:0.875rem 1rem;outline:none;transition:border-color 0.2s, background 0.2s;border-radius:2px;appearance:none}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-faint)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--accent);background:var(--surface-2)}.form-group textarea{min-height:140px;resize:vertical}@media (max-width: 820px){.contact-grid{grid-template-columns:1fr;gap:3rem}}.site-footer{border-top:1px solid var(--border);padding:1.75rem 0}.site-footer__inner{max-width:var(--max-w);margin:0 auto;padding:0 var(--pad-x);display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.site-footer p{font-size:0.78rem;color:var(--text-faint)}.site-footer__links{display:flex;gap:1.5rem}.site-footer__links a{font-size:0.78rem;color:var(--text-muted);transition:color 0.2s}.site-footer__links a:hover{color:var(--accent)}@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes scrollPulse{0%, 100%{opacity:0.3}50%{opacity:1}}@keyframes pulseDot{0%, 100%{opacity:1;box-shadow:0 0 0 0 rgba(74,222,128,0.5)}50%{opacity:0.8;box-shadow:0 0 0 6px rgba(74,222,128,0)}}.page-content{animation:fadeIn 0.5s var(--ease) both}@media print{@page{size:A4 portrait;margin:1.2cm 1.5cm}body::after,.site-header,.site-footer,.mobile-menu,.pdf-bar,nav{display:none !important}.hero,.marquee-section,.intro-strip,.work-preview,.about-hero,.values-grid,.work-hero,.work-grid,.portfolio-cta,.contact-page{display:none !important}*{opacity:1 !important;transform:none !important;animation:none !important;transition:none !important}html,body{background:#fff !important;color:#111 !important;font-family:Arial, Helvetica, sans-serif !important;font-size:10pt !important;line-height:1.5 !important;-webkit-print-color-adjust:exact;print-color-adjust:exact}*:not(hr){background:transparent !important;background-image:none !important;box-shadow:none !important;text-shadow:none !important;backdrop-filter:none !important;border-color:#ccc !important;color:#111 !important}.page-content{padding:0 !important;margin:0 !important}.container{max-width:100% !important;padding:0 !important;margin:0 !important}.resume-page{padding:0 !important;margin:0 !important}.resume-head{display:block !important;padding:0 0 10pt !important;border-bottom:2pt solid #000 !important;margin-bottom:10pt !important}.resume-head__name{font-family:Arial, sans-serif !important;font-size:20pt !important;font-weight:700 !important;color:#000 !important;letter-spacing:0 !important;line-height:1.15 !important;margin-bottom:2pt !important}.resume-head__role{font-family:Arial, sans-serif !important;font-size:10.5pt !important;font-weight:400 !important;color:#444 !important;text-transform:none !important;letter-spacing:0 !important;margin-bottom:4pt !important}.resume-head__contact{display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;gap:2pt 12pt !important;text-align:left !important}.resume-head__contact a,.resume-head__contact span{font-family:Arial, sans-serif !important;font-size:9pt !important;color:#333 !important;display:inline !important}.resume-layout{display:block !important;width:100% !important;padding:0 !important;margin:0 !important;grid-template-columns:unset !important;gap:0 !important}.resume-layout>main{display:block !important;width:100% !important}.resume-summary{font-family:Arial, sans-serif !important;font-style:normal !important;font-size:10pt !important;color:#222 !important;border:none !important;padding:0 0 8pt !important;margin-bottom:12pt !important}.rs{display:block !important;margin-bottom:10pt !important;page-break-inside:avoid !important;break-inside:avoid !important}.rs__label{page-break-after:avoid !important;break-after:avoid !important;font-family:Arial, sans-serif !important;font-size:7.5pt !important;font-weight:700 !important;letter-spacing:0.1em !important;text-transform:uppercase !important;color:#000 !important;border-bottom:1pt solid #000 !important;padding-bottom:2pt !important;margin-bottom:6pt !important;display:block !important;width:100% !important}.rs__label::after{display:none !important}.exp-item{display:block !important;page-break-inside:avoid !important;break-inside:avoid !important;padding:6pt 0 !important;border-bottom:0.5pt solid #ddd !important;margin:0 !important;width:100% !important;overflow:visible !important}.exp-item__top{display:flex !important;justify-content:space-between !important;align-items:baseline !important;margin-bottom:1pt !important}.exp-item__role{font-family:Arial, sans-serif !important;font-size:10.5pt !important;font-weight:700 !important;color:#000 !important}.exp-item__period{font-family:Arial, sans-serif !important;font-size:9pt !important;color:#555 !important;white-space:nowrap !important;flex-shrink:0 !important}.exp-item__co{font-family:Arial, sans-serif !important;font-size:10pt !important;color:#333 !important;font-weight:600 !important;display:block !important;margin-bottom:1pt !important}.exp-item__loc{font-family:Arial, sans-serif !important;font-size:8.5pt !important;color:#666 !important;display:block !important;margin-bottom:3pt !important}.exp-item__list{list-style:none !important;padding:0 !important;margin:0 !important}.exp-item__list li{font-family:Arial, sans-serif !important;font-size:9.5pt !important;color:#222 !important;line-height:1.45 !important;margin-bottom:2pt !important;padding-left:12pt !important;position:relative !important}.exp-item__list li::before{content:'•' !important;position:absolute !important;left:3pt !important;color:#555 !important}.resume-sidebar{display:grid !important;grid-template-columns:1fr 1fr 1fr !important;column-gap:20pt !important;row-gap:0 !important;border-top:1pt solid #aaa !important;padding-top:10pt !important;margin-top:4pt !important;width:100% !important;page-break-before:auto !important;page-break-inside:avoid !important;break-inside:avoid !important}.skill-row{display:flex !important;justify-content:space-between !important;border-bottom:0.5pt solid #eee !important;padding:1.5pt 0 !important}.skill-row__name{font-family:Arial, sans-serif !important;font-size:9pt !important;color:#111 !important;font-weight:500 !important}.skill-row__lvl{font-family:Arial, sans-serif !important;font-size:8pt !important;color:#666 !important;text-transform:uppercase !important}.soft-tags{display:flex !important;flex-wrap:wrap !important;gap:3pt !important}.soft-tag{font-family:Arial, sans-serif !important;font-size:8pt !important;color:#333 !important;border:0.5pt solid #bbb !important;padding:1pt 4pt !important;background:transparent !important}.edu-item{page-break-inside:avoid !important;break-inside:avoid !important;padding:4pt 0 !important;border-bottom:0.5pt solid #eee !important;display:block !important}.edu-item__deg{font-family:Arial, sans-serif !important;font-size:9.5pt !important;font-weight:700 !important;color:#000 !important;display:block !important;margin-bottom:1pt !important}.edu-item__school{font-family:Arial, sans-serif !important;font-size:9pt !important;color:#333 !important;display:block !important;margin-bottom:1pt !important}.edu-item__period{font-family:Arial, sans-serif !important;font-size:8.5pt !important;color:#666 !important;display:block !important;margin-bottom:1pt !important}.edu-item__note{font-family:Arial, sans-serif !important;font-size:8.5pt !important;color:#777 !important;font-style:italic !important;display:block !important}.lang-row{display:flex !important;justify-content:space-between !important;padding:2pt 0 !important;border-bottom:0.5pt solid #eee !important}.lang-row__lang{font-family:Arial, sans-serif !important;font-size:9pt !important;color:#111 !important;font-weight:600 !important}.lang-row__lvl{font-family:Arial, sans-serif !important;font-size:9pt !important;color:#555 !important}.ref-grid{display:grid !important;grid-template-columns:1fr 1fr 1fr !important;gap:8pt !important}.ref-item{background:transparent !important;border:0.5pt solid #ccc !important;padding:5pt !important;page-break-inside:avoid !important;break-inside:avoid !important}.ref-item__name{font-family:Arial, sans-serif !important;font-size:9.5pt !important;font-weight:700 !important;color:#000 !important;display:block !important;margin-bottom:1pt !important}.ref-item__company{font-family:Arial, sans-serif !important;font-size:8.5pt !important;color:#444 !important;display:block !important;margin-bottom:2pt !important}.ref-item__email{font-family:Arial, sans-serif !important;font-size:8pt !important;color:#555 !important;word-break:break-all !important;display:block !important}.cert-item{font-family:Arial, sans-serif !important;font-size:9pt !important;color:#111 !important;display:block !important;padding:2pt 0 !important;border-bottom:0.5pt solid #eee !important}.cert-item strong{display:block !important;font-weight:600 !important}a::after{content:none !important}}
