@charset "UTF-8";*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:#0a0a0f;color:#e4e4ef;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}#root{min-height:100vh;display:flex;flex-direction:column}.header{position:sticky;top:0;z-index:10;padding:16px 24px;background:#0a0a0fcc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid #1e1e2e}.header__container{max-width:1100px;margin:0 auto}.header__logo{display:inline-flex;align-items:center;gap:6px;font-size:1.25rem;font-weight:700;color:#f0f0ff;letter-spacing:-.02em}.header__logo-icon{color:#4f8fff;font-weight:400}.footer{margin-top:auto;padding:32px 24px;border-top:1px solid #1e1e2e}.footer__container{max-width:1100px;margin:0 auto;text-align:center}.footer__text{font-size:.85rem;color:#8888a0}.hero{padding:80px 24px 40px;text-align:center}.hero__container{max-width:1100px;margin:0 auto}.hero__title{font-size:clamp(2rem,5vw,3.25rem);font-weight:700;color:#f0f0ff;line-height:1.2;letter-spacing:-.03em}.hero__title-accent{background:linear-gradient(135deg,#4f8fff,#8b5cf6);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero__subtitle{margin-top:20px;font-size:1.125rem;color:#8888a0;max-width:540px;margin-inline:auto;line-height:1.7}.product-card{background:#12121a;border:1px solid #1e1e2e;border-radius:16px;padding:36px;display:flex;flex-direction:column;transition:border-color .25s ease,background .25s ease}.product-card:hover{border-color:#2a2a3e;background:#1a1a2e}.product-card--blue .product-card__badge{background:#4f8fff1f;color:#4f8fff}.product-card--blue .product-card__feature-dot{background:#4f8fff}.product-card--blue .product-card__cta{background:linear-gradient(135deg,#4f8fff,#8b5cf6)}.product-card--blue .product-card__cta:hover{box-shadow:0 4px 20px #4f8fff4d}.product-card--green .product-card__badge{background:#22c55e1f;color:#22c55e}.product-card--green .product-card__feature-dot{background:#22c55e}.product-card--green .product-card__cta{background:linear-gradient(135deg,#22c55e,#4f8fff)}.product-card--green .product-card__cta:hover{box-shadow:0 4px 20px #22c55e4d}.product-card__badge{align-self:flex-start;padding:4px 12px;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.product-card__title{margin-top:20px;font-size:1.5rem;font-weight:700;color:#f0f0ff;letter-spacing:-.02em}.product-card__description{margin-top:12px;color:#8888a0;font-size:.95rem;line-height:1.7}.product-card__features{margin-top:24px;list-style:none;display:flex;flex-direction:column;gap:10px;flex:1}.product-card__feature{display:flex;align-items:center;gap:10px;font-size:.9rem;color:#e4e4ef}.product-card__feature-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.product-card__cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:28px;padding:12px 24px;border-radius:12px;font-size:.9rem;font-weight:600;color:#fff;transition:box-shadow .25s ease,transform .25s ease}.product-card__cta:hover{transform:translateY(-1px)}.product-card__cta-arrow{transition:transform .25s ease}.product-card__cta:hover .product-card__cta-arrow{transform:translate(3px)}.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.reveal--visible{opacity:1;transform:translateY(0)}.resume{padding-bottom:80px}.resume-hero{padding:64px 24px 48px;text-align:center}.resume-hero__container{max-width:1100px;margin:0 auto}.resume-hero__name{font-size:clamp(2rem,5vw,3rem);font-weight:700;color:#f0f0ff;letter-spacing:-.03em;line-height:1.2;background:linear-gradient(135deg,#4f8fff,#8b5cf6);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.resume-hero__title{margin-top:8px;font-size:1.25rem;color:#8888a0;font-weight:400}.resume-hero__contacts{margin-top:24px;display:flex;flex-wrap:wrap;justify-content:center;gap:12px 20px}.resume-hero__contact-link{display:inline-flex;align-items:center;gap:4px;font-size:.9rem;color:#8888a0;transition:color .25s ease}.resume-hero__contact-link:hover{color:#4f8fff}.resume-hero__contact-link--location{cursor:default}.resume-hero__contact-link--location:hover{color:#8888a0}.resume-section{padding:40px 24px 0}.resume-section__container{max-width:1100px;margin:0 auto}.resume-section__title{font-size:1.5rem;font-weight:700;color:#f0f0ff;letter-spacing:-.02em;margin-bottom:24px;padding-bottom:12px;border-bottom:1px solid #1e1e2e}.resume-summary__text{font-size:1.05rem;color:#e4e4ef;line-height:1.8;max-width:800px}.resume-skills{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}@media(max-width:640px){.resume-skills{grid-template-columns:1fr}}.resume-skills__category{font-size:.85rem;font-weight:600;color:#4f8fff;text-transform:uppercase;letter-spacing:.06em;margin-bottom:12px}.resume-skills__pills{display:flex;flex-wrap:wrap;gap:8px}.resume-skills__pill{display:inline-block;padding:5px 14px;font-size:.8rem;font-weight:500;color:#e4e4ef;background:#12121a;border:1px solid #1e1e2e;border-radius:20px;transition:border-color .25s ease,background .25s ease}.resume-skills__pill:hover{border-color:#4f8fff;background:#4f8fff14}.timeline{position:relative;padding-left:32px}.timeline:before{content:"";position:absolute;left:7px;top:8px;bottom:8px;width:2px;background:#1e1e2e}.timeline__item{position:relative;padding-bottom:40px}.timeline__item:last-child{padding-bottom:0}.timeline__dot{position:absolute;left:-32px;top:6px;width:16px;height:16px;border-radius:50%;background:#0a0a0f;border:2px solid #4f8fff;z-index:1}.timeline__dot:after{content:"";position:absolute;top:3px;left:3px;width:6px;height:6px;border-radius:50%;background:#4f8fff}.timeline__content{background:#12121a;border:1px solid #1e1e2e;border-radius:12px;padding:24px;transition:border-color .25s ease}.timeline__content:hover{border-color:#2a2a3e}.timeline__header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.timeline__role{font-size:1.15rem;font-weight:700;color:#f0f0ff;letter-spacing:-.01em}.timeline__period{font-size:.85rem;color:#4f8fff;font-weight:500;white-space:nowrap}.timeline__company{margin-top:4px;font-size:.95rem;color:#8888a0}.timeline__description{margin-top:12px;font-size:.95rem;color:#e4e4ef;line-height:1.7}.timeline__highlights{margin-top:16px;list-style:none;display:flex;flex-direction:column;gap:8px}.timeline__highlight{position:relative;padding-left:18px;font-size:.9rem;color:#e4e4ef;line-height:1.6}.timeline__highlight:before{content:"";position:absolute;left:0;top:9px;width:6px;height:6px;border-radius:50%;background:#8b5cf6}.timeline__subprojects{margin-top:20px;padding-top:16px;border-top:1px solid #1e1e2e}.timeline__subprojects-label{font-size:.85rem;font-weight:600;color:#8888a0;text-transform:uppercase;letter-spacing:.04em;margin-bottom:12px}.timeline__subproject{background:#0a0a0f80;border:1px solid #1e1e2e;border-radius:12px;padding:16px;margin-bottom:12px}.timeline__subproject:last-child{margin-bottom:0}.timeline__subproject-name{font-size:.95rem;font-weight:600;color:#f0f0ff}.timeline__subproject-desc{margin-top:6px;font-size:.85rem;color:#8888a0;line-height:1.6}.timeline__subproject-tech{margin-top:10px;display:flex;flex-wrap:wrap;gap:6px}.timeline__subproject-tag{display:inline-block;padding:2px 10px;font-size:.7rem;font-weight:500;color:#22c55e;background:#22c55e1a;border-radius:12px}.resume-education__header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.resume-education__degree{font-size:1.1rem;font-weight:700;color:#f0f0ff}.resume-education__period{font-size:.85rem;color:#4f8fff;font-weight:500;white-space:nowrap}.resume-education__institution{margin-top:4px;font-size:.95rem;color:#8888a0}.resume-education__details{margin-top:8px;font-size:.9rem;color:#e4e4ef;line-height:1.6}.resume-languages{display:flex;flex-wrap:wrap;gap:16px}.resume-languages__item{display:flex;align-items:center;gap:8px;background:#12121a;border:1px solid #1e1e2e;border-radius:12px;padding:12px 20px}.resume-languages__name{font-size:.95rem;font-weight:600;color:#f0f0ff}.resume-languages__level{font-size:.85rem;color:#8888a0}.resume-languages__level:before{content:"—";margin-right:8px}.print-button{position:fixed;bottom:32px;right:32px;width:56px;height:56px;border-radius:50%;border:1px solid #1e1e2e;background:#12121a;color:#e4e4ef;font-size:1.4rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .25s ease,border-color .25s ease,transform .25s ease;z-index:5}.print-button:hover{background:#1a1a2e;border-color:#4f8fff;transform:translateY(-2px)}@media(max-width:640px){.resume-hero{padding:48px 16px 32px}.resume-section{padding:32px 16px 0}.timeline{padding-left:24px}.timeline:before{left:3px}.timeline__dot{left:-24px;width:12px;height:12px}.timeline__dot:after{top:2px;left:2px;width:4px;height:4px}.timeline__content{padding:16px}.timeline__header{flex-direction:column;gap:4px}.print-button{bottom:20px;right:20px;width:48px;height:48px;font-size:1.2rem}}@media print{body{background:#fff!important;color:#222!important}.header,.footer,.print-button{display:none!important}.resume{padding-bottom:0}.resume-hero{padding:0 0 16px}.resume-hero__name{background:none!important;-webkit-text-fill-color:#111!important;color:#111!important;font-size:1.8rem}.resume-hero__title{color:#444!important}.resume-hero__contact-link{color:#555!important;font-size:.8rem}.resume-section{padding:16px 0 0;break-inside:avoid}.resume-section__title{color:#111!important;border-bottom-color:#ddd!important;font-size:1.2rem;margin-bottom:12px;padding-bottom:6px}.resume-summary__text{color:#333!important;font-size:.9rem}.resume-skills__category{color:#333!important}.resume-skills__pill{background:#f5f5f5!important;border-color:#ddd!important;color:#333!important;font-size:.7rem;padding:2px 8px}.timeline:before{background:#ccc!important}.timeline__dot{border-color:#555!important;background:#fff!important}.timeline__dot:after{background:#555!important}.timeline__content{background:#fff!important;border-color:#ddd!important;padding:12px}.timeline__role{color:#111!important;font-size:1rem}.timeline__period{color:#555!important}.timeline__company{color:#666!important}.timeline__description{color:#333!important;font-size:.85rem}.timeline__highlight{color:#333!important;font-size:.8rem}.timeline__highlight:before{background:#888!important}.timeline__subproject{background:#fafafa!important;border-color:#ddd!important}.timeline__subproject-name{color:#111!important}.timeline__subproject-desc{color:#555!important}.timeline__subproject-tag{color:#333!important;background:#eee!important}.timeline__item{break-inside:avoid;padding-bottom:20px}.resume-education__degree{color:#111!important}.resume-education__period{color:#555!important}.resume-education__institution{color:#666!important}.resume-education__details{color:#333!important}.resume-languages__item{background:#f5f5f5!important;border-color:#ddd!important}.resume-languages__name{color:#111!important}.resume-languages__level{color:#555!important}.reveal{opacity:1!important;transform:none!important}}.products{padding:40px 24px 80px}.products__grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(2,1fr);gap:24px}@media(max-width:768px){.products__grid{grid-template-columns:1fr}}
