@import url(https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@500;700&family=Inter:wght@400;500;600;700;800&display=swap);:root{--font-body:"Inter","Segoe UI",sans-serif;--font-display:"Inter","Segoe UI",sans-serif;--font-mono:"IBM Plex Mono","SFMono-Regular",monospace;--main-bg:#070f1b;--main-text:#e8eef9;--accent:#4f7cff;--label-blue:#9ab4ff;--surface-bg:#0f1a2b;--surface-elevated:#18263d;--border-color:#97b1e13b;--muted-text:#9fb2cf;--shadow-soft:0 12px 30px #0208105c;--hover-border:#2d5bff61;--hover-shadow:0 16px 28px #1a34621f;--content-max:1080px}[data-theme=light]{--main-bg:#f5f7fb;--main-text:#0b1628;--accent:#1f4fe0;--label-blue:#2248bd;--surface-bg:#fff;--surface-elevated:#f7f9fe;--border-color:#11254329;--muted-text:#3f516c;--shadow-soft:0 8px 20px #12263f0f;--hover-border:#1f4fe052;--hover-shadow:0 10px 20px #11284914}*{box-sizing:border-box}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#070f1b;color:#e8eef9;font-family:Inter,Segoe UI,sans-serif;margin:0;padding:0}.App,body,html{background:var(--main-bg);color:var(--main-text);font-family:var(--font-body)}.App{display:flex;flex-direction:column;min-height:100vh;overflow:hidden;position:relative;transition:background .3s,color .3s}@keyframes fade-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes soft-fade{0%{opacity:0}to{opacity:1}}.App:before{background:radial-gradient(54rem 24rem at 50% -10%,#2d5bff1f,#0000 72%),linear-gradient(180deg,#0000,#2d5bff08 72%,#0000);content:"";inset:0;pointer-events:none;position:fixed;z-index:0}[data-theme=light] .App:before{background:radial-gradient(54rem 24rem at 50% -10%,#2f63f512,#0000 72%),linear-gradient(180deg,#0000,rgba(47,99,245,.015) 72%,#0000)}.App>*{position:relative;z-index:1}.footer{border-top:1px solid var(--border-color);color:var(--muted-text);font-size:.86rem;letter-spacing:.04em;margin-top:auto;padding:56px 1rem 30px;text-align:center;text-transform:uppercase}a{color:inherit;font-family:var(--font-body);text-decoration:underline;text-underline-offset:3px;transition:color .2s}a:hover{color:var(--accent)}.about-section,.footer,.hero-section,.projects-section,.team-section{animation:fade-up .68s cubic-bezier(.2,.7,.2,1) forwards;opacity:0}.hero-section{animation-delay:.06s}.about-section{animation-delay:.16s}.projects-section{animation-delay:.24s}.team-section{animation-delay:.32s}.footer{animation-delay:.4s}@media (prefers-reduced-motion:reduce){.App *,.App :after,.App :before{animation:none!important;transition:none!important}}.hero-section{color:var(--main-text);margin:0 auto;max-width:var(--content-max);padding:150px 2rem 86px;text-align:left}.hero-title{animation:fade-up .7s cubic-bezier(.2,.7,.2,1) .15s forwards;color:var(--main-text);font-family:var(--font-display);font-size:clamp(2.35rem,6vw,4.9rem);font-weight:800;letter-spacing:-.045em;line-height:1.03;margin:0;max-width:17ch;opacity:0}.hero-title .accent{color:var(--accent)}.hero-title-thin{animation:fade-up .66s cubic-bezier(.2,.7,.2,1) .26s forwards;font-family:var(--font-display);font-size:clamp(1.15rem,2.5vw,1.7rem);font-weight:500;letter-spacing:-.01em;margin:.75rem 0 0}.hero-desc,.hero-title-thin{color:var(--muted-text);opacity:0}.hero-desc{animation:soft-fade .8s ease .36s forwards;font-size:clamp(1rem,1.35vw,1.16rem);line-height:1.78;margin:1.5rem 0 0;max-width:52ch}@media (max-width:700px){.hero-section{max-width:100%;padding:96px 1rem 46px}.hero-title{letter-spacing:-.03em;max-width:100%}.hero-title-thin{margin-top:.55rem}.hero-desc{margin-top:1.15rem;max-width:100%}}.about-section{color:var(--main-text);margin:0 auto;max-width:var(--content-max);padding:18px 2rem 76px;text-align:left}.section-heading{color:var(--label-blue);font-family:var(--font-mono);font-size:.79rem;font-weight:700;letter-spacing:.16em;margin:0 0 1.2rem;text-transform:uppercase}.about-desc{color:var(--muted-text);font-size:clamp(1rem,1.28vw,1.12rem);line-height:1.88;margin:0;max-width:58ch}.about-contact{color:var(--main-text);font-size:.95rem;letter-spacing:.01em;margin-top:2.1rem}.about-email{color:var(--accent);font-family:var(--font-body);font-weight:600;margin-left:.45rem;text-decoration:none}.about-email:hover{text-decoration:underline;text-underline-offset:3px}@media (max-width:700px){.about-section{max-width:100%;padding:6px 1rem 46px}.about-contact{font-size:.93rem;margin-top:1.55rem}}.projects-section{color:var(--main-text);padding:0 0 68px}.projects-inner{margin:0 auto;max-width:var(--content-max);padding:0 2rem}.projects-title{color:var(--label-blue);font-family:var(--font-mono);font-size:.79rem;font-weight:700;letter-spacing:.16em;margin:0 0 1.2rem;text-transform:uppercase}.project-entry{animation:fade-up .56s cubic-bezier(.2,.7,.2,1) forwards;background:var(--surface-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-soft);margin-bottom:1rem;opacity:0;padding:1.32rem 1.16rem;transition:transform .2s,border-color .2s,box-shadow .2s}.project-entry:hover{border-color:var(--hover-border);box-shadow:var(--hover-shadow);transform:translateY(-2px)}.project-entry:first-child{animation-delay:.15s}.project-entry:nth-child(2){animation-delay:.21s}.project-entry:nth-child(3){animation-delay:.27s}.project-entry:nth-child(4){animation-delay:.33s}.project-entry:nth-child(5){animation-delay:.39s}.project-entry:nth-child(6){animation-delay:.45s}.project-entry:nth-child(7){animation-delay:.51s}.project-entry-title{color:var(--main-text);font-family:var(--font-display);font-size:1rem;font-weight:700;letter-spacing:-.01em;line-height:1.5;margin:0}.project-entry-desc{color:var(--muted-text);font-family:var(--font-body);font-size:.95rem;font-weight:400;line-height:1.74;margin:.62rem 0 .95rem}.project-entry-desc ul{margin-bottom:.4rem;margin-top:.4rem}.project-tags{display:flex;flex-wrap:wrap;gap:.4rem}.project-tag{background:var(--surface-elevated);border:1px solid var(--border-color);border-radius:8px;color:var(--main-text);font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.03em;padding:.22rem .56rem;text-transform:uppercase}@media (max-width:700px){.projects-section{padding-bottom:42px}.projects-inner{padding:0 1rem}.project-entry{margin-bottom:.84rem;padding:1rem .86rem}.project-entry-title{font-size:.94rem}.project-entry-desc{font-size:.91rem}}.request-cv-form{align-items:stretch;background:var(--surface-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-soft);color:var(--main-text);display:flex;flex-direction:column;margin:40px auto;max-width:430px;min-width:320px;padding:26px 24px}.request-cv-form h3{color:var(--main-text);font-size:1.02rem;font-weight:700;letter-spacing:-.01em;margin:0 0 14px;text-align:center}.request-cv-form input,.request-cv-form textarea{background:var(--surface-elevated);border:1px solid var(--border-color);border-radius:8px;box-sizing:border-box;color:var(--main-text);font-family:var(--font-body);font-size:.94rem;margin-bottom:12px;padding:10px 12px;width:100%}.request-cv-form input::placeholder,.request-cv-form textarea::placeholder{color:var(--muted-text)}.request-cv-form textarea{min-height:86px;resize:vertical}.request-cv-form button{background:var(--surface-elevated);border:1px solid var(--border-color);border-radius:8px;color:var(--main-text);cursor:pointer;font-family:var(--font-mono);font-size:.86rem;font-weight:600;letter-spacing:.04em;margin-bottom:0;margin-top:6px;padding:10px 16px;text-transform:uppercase;transition:background .2s,color .2s,border-color .2s}.request-cv-form .send-btn{background:var(--accent);border:1px solid var(--accent);color:#fff;margin-right:10px}.request-cv-form .send-btn:hover{background:#1d43cc;border-color:#1d43cc;color:#fff}.request-cv-form .cancel-btn{border:1px solid var(--border-color)}.request-cv-form .error-message{color:#dc2626;font-size:.9rem;margin-bottom:10px;text-align:center}[data-theme=light] .request-cv-form{background:#fff}[data-theme=light] .request-cv-form input,[data-theme=light] .request-cv-form textarea{background:#f7f9fe}.request-cv-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#09101f85;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;transition:background .2s;width:100vw;z-index:1000}.request-cv-modal-overlay .request-cv-form{box-shadow:0 20px 44px #050c1859;margin:0}.team-section{color:var(--main-text);margin:0 auto;max-width:var(--content-max);padding:0 2rem 74px}.team-title{color:var(--label-blue);font-family:var(--font-mono);font-size:.79rem;font-weight:700;letter-spacing:.16em;margin:0 0 1.2rem;text-transform:uppercase}.team-grid{grid-gap:1rem;align-items:stretch;display:grid;gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr))}.team-card{align-items:center;animation:fade-up .56s cubic-bezier(.2,.7,.2,1) forwards;background:var(--surface-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-soft);color:var(--main-text);display:flex;flex-direction:column;height:100%;justify-content:flex-start;min-height:306px;opacity:0;padding:1.4rem 1rem 1.2rem;text-align:center;transition:transform .2s,border-color .2s,box-shadow .2s}.team-card:hover{border-color:var(--hover-border);box-shadow:var(--hover-shadow);transform:translateY(-2px)}.team-card:first-child{animation-delay:.14s}.team-card:nth-child(2){animation-delay:.22s}.team-card:nth-child(3){animation-delay:.3s}.team-photo{background:var(--surface-elevated);border:2px solid var(--accent);border-radius:50%;height:78px;margin-bottom:.95rem;object-fit:cover;width:78px}.team-name{color:var(--main-text);font-family:var(--font-display);font-size:.98rem;font-weight:700;letter-spacing:-.01em;line-height:1.38;margin:0}.team-role{color:var(--muted-text);font-size:.9rem;line-height:1.58;margin:.64rem 0 1rem;text-align:center}.team-resume-link{align-items:center;background:#0000;border:none;color:var(--accent);cursor:pointer;display:inline-flex;font-family:var(--font-mono);font-size:.82rem;font-weight:600;gap:.3rem;letter-spacing:.05em;margin-top:auto;padding:0;text-decoration:none;text-transform:uppercase}.team-resume-link:hover{text-decoration:underline;text-underline-offset:3px}@media (max-width:980px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.team-section{max-width:100%;padding:0 1rem 40px}.team-grid{gap:.85rem;grid-template-columns:1fr}.team-card{min-height:0}}[data-theme=light] .team-card{background:#fff}[data-theme=light] .team-photo{background:#f7f9fe}.theme-toggle-container{align-items:center;background:var(--surface-bg);border:1px solid var(--border-color);border-radius:999px;box-shadow:var(--shadow-soft);display:flex;gap:.65rem;padding:.3rem .55rem;position:fixed;right:26px;top:20px;z-index:1000}.theme-icon{color:var(--main-text);font-size:1.05rem;opacity:.9;-webkit-user-select:none;user-select:none}.theme-switch{display:inline-block;height:24px;position:relative;width:48px}.theme-switch input{height:0;opacity:0;width:0}.slider{background-color:#1f3660;border:1px solid var(--border-color);border-radius:34px;cursor:pointer;inset:0;position:absolute;transition:background .3s}.slider:before{background:#fff;border-radius:50%;bottom:2px;content:"";height:18px;left:3px;position:absolute;transition:transform .3s;width:18px}.theme-switch input:checked+.slider{background-color:#3f6dff}.theme-switch input:checked+.slider:before{transform:translateX(23px)}@media (max-width:700px){.theme-toggle-container{gap:.5rem;padding:.22rem .45rem;right:12px;top:12px}.theme-icon{font-size:.93rem}}[data-theme=light] .slider{background-color:#dce6ff}[data-theme=light] .theme-switch input:checked+.slider{background-color:#2f63f5}
/*# sourceMappingURL=main.ceee9bd3.css.map*/