:root{--color-accent:#575ecf;--color-bg-primary:#1b1b1b;--color-bg-nav:#121218;--color-text-primary:#dcdad5;--color-text-secondary:#c5c1b9;--color-border:#c5c1b9;--color-white:#fff;--font-display:"Cormorant Garamond", Georgia, serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--space-xs:8px;--space-sm:16px;--space-md:24px;--space-lg:32px;--space-xl:40px;--space-2xl:48px;--space-3xl:64px;--space-4xl:80px;--space-5xl:96px;--space-6xl:128px;--max-width:1440px;--transition-fast:.2s ease;--transition-normal:.3s ease;--transition-slow:.5s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-body);background-color:var(--color-bg-primary);color:var(--color-text-primary);min-height:100vh;line-height:1.5;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;transition:color var(--transition-fast);text-decoration:none}ul,ol{list-style:none}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}h1,.display{font-family:var(--font-display);letter-spacing:0;color:var(--color-text-primary);font-size:128px;font-weight:400;line-height:.95}h2{font-family:var(--font-display);letter-spacing:0;font-size:60px;font-weight:400;line-height:1}h3{font-family:var(--font-display);letter-spacing:0;font-size:30px;font-weight:400;line-height:1.2}p{font-family:var(--font-body);color:var(--color-text-secondary);font-size:14px;font-weight:400;line-height:1.6}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--color-bg-primary)}::-webkit-scrollbar-thumb{background:var(--color-text-secondary)}::selection{background:var(--color-accent);color:var(--color-white)}@media (width<=1023px){h1,.display{font-size:72px}h2{font-size:48px}h3{font-size:24px}}@media (width<=767px){h1,.display{font-size:48px}h2{font-size:36px}h3{font-size:20px}}@media (prefers-reduced-motion:no-preference){.reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(24px)}.reveal.visible{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}.sidenav{z-index:50;will-change:transform, opacity;transition:transform .55s cubic-bezier(.22,1,.36,1),opacity .4s;position:fixed;top:50%;right:40px;transform:translateY(-50%)}.sidenav--idle{opacity:.35;pointer-events:none;transform:translateY(-50%)translate(calc(100% - 6px))}.sidenav--idle .sidenav__label{opacity:0;transform:translate(12px)}.sidenav__list{flex-direction:column;gap:8px;display:flex}.sidenav__link{transition:all var(--transition-fast);align-items:center;gap:12px;padding:6px 0;display:flex}.sidenav__dot{background:var(--color-text-secondary);width:6px;height:6px;transition:background var(--transition-fast);border-radius:50%;flex-shrink:0}.sidenav__label{font-family:var(--font-body);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:1px;transition:color var(--transition-fast), opacity var(--transition-normal), transform var(--transition-normal);white-space:nowrap;font-size:11px;font-weight:500}.sidenav__link--active .sidenav__dot{background:var(--color-accent)}.sidenav__link--active .sidenav__label{color:var(--color-text-primary);font-weight:600}.sidenav__link:hover .sidenav__label{color:var(--color-text-primary)}.sidenav-hamburger{z-index:60;cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;padding:8px;display:none;position:fixed;top:20px;right:20px}.sidenav-hamburger span{background:var(--color-text-primary);width:24px;height:1px;transition:all var(--transition-fast);display:block}.sidenav-hamburger--open span:first-child{transform:translateY(6px)rotate(45deg)}.sidenav-hamburger--open span:nth-child(2){opacity:0}.sidenav-hamburger--open span:nth-child(3){transform:translateY(-6px)rotate(-45deg)}@media (width<=1023px){.sidenav{right:24px}}@media (width<=767px){.sidenav-hamburger{display:flex}.sidenav{background:var(--color-bg-nav);opacity:0;visibility:visible;pointer-events:none;transition:opacity var(--transition-normal), visibility 0s;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;transform:none}.sidenav--open{opacity:1;pointer-events:all}.sidenav--idle{opacity:0;visibility:visible;transform:none}.sidenav__list{gap:16px}.sidenav__label{font-size:16px}}.hero{isolation:isolate;align-items:center;min-height:100vh;padding:0 48px;display:flex;position:relative;overflow:hidden}.hero__content{z-index:10;width:100%;max-width:1280px;margin:0 auto;position:relative}.hero__text{z-index:2;max-width:672px;padding-right:96px;position:relative}.hero__greeting{font-family:var(--font-body);color:var(--color-accent);margin-bottom:16px;font-size:14px;font-weight:400}.hero__title{font-family:var(--font-display);color:var(--color-text-primary);margin-bottom:32px;font-size:128px;font-style:italic;font-weight:400;line-height:.95}.hero__tags{font-family:var(--font-body);color:var(--color-accent);text-transform:uppercase;letter-spacing:1px;margin-bottom:24px;font-size:12px;font-weight:500}.hero__description{font-family:var(--font-body);color:var(--color-text-secondary);max-width:420px;margin-bottom:32px;font-size:13px;font-weight:400;line-height:1.8}.hero__cta{font-family:var(--font-body);color:var(--color-text-primary);text-transform:uppercase;letter-spacing:1px;transition:color var(--transition-fast);align-items:center;font-size:13px;font-weight:600;display:inline-flex}.hero__cta:hover{color:var(--color-accent)}.hero__social-bar{z-index:10;gap:24px;display:flex;position:absolute;bottom:32px;right:24px}.hero__social-bar a{font-family:var(--font-body);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:1.5px;transition:color var(--transition-fast);font-size:11px;font-weight:500}.hero__social-bar a:hover{color:var(--color-accent)}.hero__image{z-index:0;background:var(--color-bg-primary);position:absolute;inset:0;overflow:hidden}.hero__avatar{z-index:1;pointer-events:auto;width:min(68.34vh,100vw);position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.hero__avatar img{object-fit:contain;object-position:56% top;opacity:.7;filter:grayscale(80%)brightness(.7);transform-origin:56% 0;width:100%;height:100%;transition:filter .6s,opacity .6s,transform .8s cubic-bezier(.22,1,.36,1);position:absolute;inset:0;transform:scale(1.5)}.hero__avatar:hover img{filter:grayscale(0%)brightness(.95);opacity:.82;transform:scale(1.54)}.hero__gradient{z-index:2;pointer-events:none;transition:opacity .6s;position:absolute;inset:0}.hero__avatar:hover~.hero__gradient--vertical{opacity:.7}.hero__avatar:hover~.hero__gradient--horizontal{opacity:.72}.hero__gradient--vertical{background:linear-gradient(to top, var(--color-bg-primary) 0%, #1b1b1be0 16%, #1b1b1b61 48%, transparent 78%)}.hero__gradient--horizontal{background:linear-gradient(90deg,#1b1b1bd1 0%,#1b1b1b52 42%,#0000 76%)}@media (width<=1023px){.hero{padding:0 40px}.hero__content{max-width:100%}.hero__title{font-size:96px}.hero__avatar{width:min(68.34vh,100vw)}.hero__avatar img{object-position:center top;transform-origin:top;transform:scale(1.3)}}@media (width<=767px){.hero{align-items:flex-end;padding:96px 24px 48px}.hero__text{padding-right:0}.hero__social-bar{display:none}.hero__title{font-size:60px}.hero__avatar{width:100vw}.hero__avatar img{object-position:center top;transform-origin:top;transform:scale(1.2)}}.about{padding:128px 80px}.about__inner{max-width:1100px;margin:0 auto}.about__header{margin-bottom:48px}.about__label{font-family:var(--font-body);color:var(--color-accent);text-transform:uppercase;letter-spacing:2px;margin-bottom:20px;font-size:12px;font-weight:500;display:block}.about__content{grid-template-columns:1fr 1fr;gap:64px;display:grid}.about__text p{font-family:var(--font-body);color:var(--color-text-secondary);margin-bottom:24px;font-size:13px;font-weight:400;line-height:1.8}.about__text p:last-child{margin-bottom:0}.about__images{align-items:center;margin-top:-72px;display:flex}.about__image-wrapper{aspect-ratio:4/3;background:#1a1a1a;width:100%;overflow:hidden}.about__image-wrapper img{object-fit:cover;object-position:center;filter:grayscale(75%)brightness(.72);width:100%;height:100%;transition:filter var(--transition-normal), transform var(--transition-normal)}.about__image-wrapper:hover img{filter:grayscale(0%)brightness(.95);transform:scale(1.02)}@media (width<=1023px){.about{padding:96px 40px}.about__content{grid-template-columns:1fr;gap:48px}.about__images{margin-top:0}}@media (width<=767px){.about{padding:64px 24px}.about__header{margin-bottom:32px}.about__image-wrapper{aspect-ratio:4/3}}.skills{padding:128px 80px}.skills__inner{max-width:1100px;margin:0 auto}.skills__header{margin-bottom:48px}.skills__label{font-family:var(--font-body);color:var(--color-accent);text-transform:uppercase;letter-spacing:2px;margin-bottom:20px;font-size:12px;font-weight:500;display:block}.skills__desc{font-family:var(--font-body);color:var(--color-text-secondary);max-width:480px;margin-top:16px;font-size:13px;font-weight:400;line-height:1.7}.skills__grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.skills__card{border:1px solid var(--color-border);text-align:center;transition:all var(--transition-fast);background:0 0;padding:28px 24px}.skills__card:hover{border-color:var(--color-accent);background:#575ecf0d}.skills__card-text{font-family:var(--font-body);color:var(--color-text-primary);text-transform:uppercase;letter-spacing:1px;font-size:12px;font-weight:600}@media (width<=1023px){.skills{padding:96px 40px}.skills__grid{grid-template-columns:repeat(2,1fr)}}@media (width<=767px){.skills{padding:64px 24px}.skills__header{margin-bottom:32px}.skills__grid{grid-template-columns:1fr}}.experience{padding:128px 80px}.experience__inner{max-width:1100px;margin:0 auto}.experience__header{margin-bottom:64px}.experience__label{font-family:var(--font-body);color:var(--color-accent);text-transform:uppercase;letter-spacing:2px;margin-bottom:20px;font-size:12px;font-weight:500;display:block}.experience__list{flex-direction:column;display:flex}.experience__item{border-top:1px solid var(--color-border);grid-template-columns:1fr 1fr;gap:48px;padding:40px 0;display:grid}.experience__item:last-child{border-bottom:1px solid var(--color-border)}.experience__item-role{font-family:var(--font-display);color:var(--color-text-primary);text-underline-offset:4px;text-decoration:underline;-webkit-text-decoration-color:var(--color-text-secondary);text-decoration-color:var(--color-text-secondary);margin-bottom:8px;font-size:24px;font-weight:400}.experience__item-company{font-family:var(--font-body);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:1px;font-size:11px;font-weight:500}.experience__item-right{flex-direction:column;gap:16px;display:flex}.experience__item-period{font-family:var(--font-body);color:var(--color-accent);align-self:flex-end;font-size:13px;font-weight:400}.experience__item-desc{font-family:var(--font-body);color:var(--color-text-secondary);text-align:right;font-size:13px;font-weight:400;line-height:1.8}@media (width<=1023px){.experience{padding:96px 40px}.experience__item{grid-template-columns:1fr;gap:16px;padding:32px 0}.experience__item-period{align-self:flex-start}.experience__item-desc{text-align:left}}@media (width<=767px){.experience{padding:64px 24px}.experience__header{margin-bottom:40px}.experience__item{padding:24px 0}}.education{padding:96px 80px}.education__inner{max-width:1100px;margin:0 auto}.education__content{grid-template-columns:1fr 1fr;align-items:start;gap:64px;display:grid}.education__label{font-family:var(--font-body);color:var(--color-accent);text-transform:uppercase;letter-spacing:2px;margin-bottom:20px;font-size:12px;font-weight:500;display:block}.education__list{flex-direction:column;gap:40px;display:flex}.education__item{flex-direction:column;gap:8px;display:flex}.education__item-title{font-family:var(--font-display);color:var(--color-text-primary);font-size:22px;font-weight:400;line-height:1.3}.education__item-institution{font-family:var(--font-body);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:1px;font-size:11px;font-weight:500}.education__item-period{font-family:var(--font-body);color:var(--color-text-secondary);font-size:13px;font-weight:400}@media (width<=1023px){.education{padding:72px 40px}.education__content{grid-template-columns:1fr;gap:32px}}@media (width<=767px){.education{padding:48px 24px}}.blog{padding:128px 80px}.blog__inner{max-width:1100px;margin:0 auto}.blog__header{margin-bottom:64px}.blog__label{font-family:var(--font-body);color:var(--color-accent);text-transform:uppercase;letter-spacing:2px;margin-bottom:20px;font-size:12px;font-weight:500;display:block}.blog__list{flex-direction:column;display:flex}.blog__item{border-bottom:1px solid var(--color-border);transition:padding var(--transition-fast);justify-content:space-between;align-items:center;gap:32px;padding:40px 0;display:flex}.blog__item:first-child{border-top:1px solid var(--color-border)}.blog__item:hover{border-bottom-color:var(--color-accent);background:#575ecf0d;padding-left:24px;padding-right:24px}.blog__item-title{font-family:var(--font-display);color:var(--color-text-primary);transition:color var(--transition-fast);font-size:24px;font-weight:400}.blog__item:hover .blog__item-title{color:var(--color-accent)}.blog__item-meta{font-family:var(--font-body);color:var(--color-text-secondary);letter-spacing:1px;text-transform:uppercase;align-items:center;gap:16px;font-size:12px;font-weight:500;display:flex}@media (width<=1023px){.blog{padding:96px 40px}}@media (width<=767px){.blog{padding:64px 24px}.blog__item{flex-direction:column;align-items:flex-start;gap:16px;padding:32px 0}.blog__item:hover{padding-left:16px;padding-right:16px}}.share{padding:128px 80px}.share__inner{max-width:1100px;margin:0 auto}.share__header{margin-bottom:64px}.share__label{font-family:var(--font-body);color:var(--color-accent);text-transform:uppercase;letter-spacing:2px;margin-bottom:20px;font-size:12px;font-weight:500;display:block}.share__grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.share__card{border:1px solid var(--color-border);transition:all var(--transition-fast);flex-direction:column;gap:16px;padding:40px 32px;display:flex}.share__card:hover{border-color:var(--color-accent);background:#575ecf0d;transform:translateY(-8px)}.share__card-year{font-family:var(--font-body);color:var(--color-accent);font-size:12px;font-weight:500}.share__card-title{font-family:var(--font-display);color:var(--color-text-primary);font-size:24px;font-weight:400;line-height:1.3}.share__card-desc{font-family:var(--font-body);color:var(--color-text-secondary);font-size:13px;font-weight:400;line-height:1.7}@media (width<=1023px){.share{padding:96px 40px}.share__grid{grid-template-columns:1fr 1fr}}@media (width<=767px){.share{padding:64px 24px}.share__grid{grid-template-columns:1fr}.share__card{padding:32px 24px}}.contact{padding:128px 80px}.contact__inner{grid-template-columns:1fr 1fr;align-items:start;gap:80px;max-width:1100px;margin:0 auto;display:grid}.contact__label{font-family:var(--font-body);color:var(--color-accent);text-transform:uppercase;letter-spacing:2px;margin-bottom:20px;font-size:12px;font-weight:500;display:block}.contact__desc{font-family:var(--font-body);color:var(--color-text-secondary);max-width:400px;margin-top:24px;font-size:14px;font-weight:400;line-height:1.8}.contact__right{flex-direction:column;gap:24px;display:flex}.contact__email-card{border:1px solid var(--color-border);transition:all var(--transition-fast);align-items:center;gap:24px;padding:32px;display:flex}.contact__email-card:hover{border-color:var(--color-accent);background:#575ecf0d}.contact__email-icon{border:1px solid var(--color-border);width:48px;height:48px;color:var(--color-text-primary);transition:all var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;display:flex}.contact__email-card:hover .contact__email-icon{border-color:var(--color-accent);color:var(--color-accent)}.contact__email-text{flex-direction:column;gap:8px;display:flex}.contact__email-label{font-family:var(--font-body);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:1px;font-size:11px;font-weight:600}.contact__email-address{font-family:var(--font-display);color:var(--color-text-primary);transition:color var(--transition-fast);font-size:24px}.contact__email-card:hover .contact__email-address{color:var(--color-accent)}.contact__social-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.contact__social-card{border:1px solid var(--color-border);transition:all var(--transition-fast);color:var(--color-text-primary);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:32px 16px;display:flex}.contact__social-card span{font-family:var(--font-body);text-transform:uppercase;letter-spacing:1px;font-size:11px;font-weight:600}.contact__social-card:hover{border-color:var(--color-accent);color:var(--color-accent);background:#575ecf0d;transform:translateY(-4px)}@media (width<=1023px){.contact{padding:96px 40px}.contact__inner{grid-template-columns:1fr;gap:48px}}@media (width<=767px){.contact{padding:64px 24px}.contact__email-card{flex-direction:column;align-items:flex-start;padding:24px}.contact__email-address{word-break:break-all;font-size:18px}.contact__social-grid{grid-template-columns:1fr}.contact__social-card{flex-direction:row;justify-content:flex-start;gap:16px;padding:24px}}.footer{border-top:1px solid var(--color-border);padding:48px 80px}.footer__inner{justify-content:space-between;align-items:center;max-width:1100px;margin:0 auto;display:flex}.footer__copyright{font-family:var(--font-body);color:var(--color-text-secondary);font-size:13px;font-weight:400}.footer__socials{gap:24px;display:flex}.footer__socials a{color:var(--color-text-secondary);transition:color var(--transition-fast);justify-content:center;align-items:center;width:24px;height:24px;line-height:0;display:flex}.footer__socials svg{flex:0 0 20px;width:20px;height:20px;display:block}.footer__socials a:first-child svg{transform:translate(-3px)}.footer__socials a:nth-child(2) svg,.footer__socials a:nth-child(3) svg{transform:translate(3px)}.footer__socials a:hover{color:var(--color-accent)}@media (width<=1023px){.footer{padding:40px}}@media (width<=767px){.footer{padding:32px 24px}.footer__inner{text-align:center;flex-direction:column;gap:24px}}
