:root{--space-4: .25rem;--space-8: .5rem;--space-12: .75rem;--space-24: 1.5rem;--space-40: 2.5rem;--space-52: 3.25rem;--space-120: 7.5rem;--radius-4: .25rem;--radius-8: .5rem;--radius-12: .75rem;--radius-24: 1.5rem;--radius-40: 2.5rem;--radius-image: var(--radius-24);--container-width: 75rem;--container-gutter: var(--space-24);--bg-page: #ffffff;--bg-tint-gray: #00081b08;--pattern-dot-color: rgb(0 0 0 / 5%);--pattern-dot-radius: .075rem;--pattern-step: 1.2rem;--reveal-shift: 1rem;--reveal-duration: .6s;--reveal-stagger: 80ms;--reveal-easing: cubic-bezier(.22, .61, .36, 1);--project-dim-opacity: .2;--project-dim-duration: .3s;--noise-opacity: .05;--noise-tile: 4rem;--text-main: #8c8d8f;--text-headings: #1f1f1f;--text-accent: #1f1f1f;--bg-chip-blue: #dee9ff;--ui-button-bg: #ffffff;--ui-button-text: #1f1f1f;--ui-button-bg-hover: #f7f7f8;--ui-border: #1f1f1f;--status-online: #22c35d;--font-sans: "Inter", system-ui, sans-serif;--font-serif: "Prata", Georgia, serif;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--shadow-chip: 0 0 6px rgb(0 0 0 / 10%);--shadow-header: 0 0 24px rgb(0 0 0 / 10%);--shadow-menu: 0 0 12px rgb(0 0 0 / 10%);--shadow-icon-button: 0 0 12px rgb(0 0 0 / 15%);--header-height: 3.125rem;--header-offset: var(--space-40);--header-avatar-size: 1.625rem;--burger-size: 2.75rem;--section-gap: var(--space-120);--contacts-avatar-size: 6rem;--underline-style: wavy;--underline-style-emoji: dotted;--underline-thickness: 1px;--underline-offset: .1875rem;--text-h1-size: 2rem;--text-h1-line: 1.1;--text-h1-tracking: -.02em;--text-h2-weight: var(--font-weight-medium);--text-h2-size: 1.5rem;--text-h2-line: 1.15;--text-h2-tracking: -.04em;--text-body-m-size: 1rem;--text-body-m-line: 1.625rem;--text-body-m-tracking: -.01em;--text-body-s-size: .875rem;--text-body-s-line: 1.2;--text-body-s-tracking: -.015em;--text-ui-nav-size: 1rem;--text-ui-nav-line: 1.125rem;--text-ui-nav-tracking: -.01em;--text-ui-chip-size: .875rem;--text-ui-chip-size-mobile: .75rem;--text-ui-chip-line: 1.25rem;--text-ui-chip-tracking: -.01em;--text-ui-link-size: 1rem;--text-ui-link-line: 1.625rem;--text-ui-button-size: 1rem;--text-ui-button-line: 1.625rem;--text-ui-button-tracking: -.01em}@media(max-width:1023.98px){:root{--container-width: 38.75rem}}@media(max-width:767.98px){:root{--container-gutter: 1.875rem;--section-gap: var(--space-52);--header-height: var(--burger-size);--header-offset: var(--space-24);--contacts-avatar-size: 5.5rem;--radius-image: var(--radius-12);--text-h1-size: 1.5rem;--text-h2-size: 1.25rem;--text-body-m-size: .875rem;--text-body-m-line: 1.5rem;--text-body-m-tracking: -.015em;--text-body-s-size: .75rem;--text-ui-nav-size: .875rem;--text-ui-chip-size: var(--text-ui-chip-size-mobile);--text-ui-link-size: .875rem;--text-ui-link-line: 1.125rem;--text-ui-button-size: .875rem;--text-ui-button-line: 1;--text-ui-button-tracking: 0}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-offset) * 2 + var(--header-height))}@media(max-width:767.98px){html{scroll-padding-top:var(--space-24)}}body{margin:0;background-color:var(--bg-page);background-image:radial-gradient(circle,var(--pattern-dot-color) var(--pattern-dot-radius),transparent calc(var(--pattern-dot-radius) + .5px));background-size:var(--pattern-step) var(--pattern-step);background-position:calc(50% + var(--pattern-step) / 2) 0;color:var(--text-main);font-family:var(--font-sans);font-size:var(--text-body-m-size);line-height:var(--text-body-m-line);letter-spacing:var(--text-body-m-tracking);-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}img,picture,svg{display:block;max-width:100%}@media(min-width:768px){.mobile-only{display:none!important}}@media(max-width:767.98px){.mobile-hidden{display:none!important}}body:after{content:"";position:fixed;inset:0;z-index:1000;pointer-events:none;background-image:url(/noise.png);background-size:var(--noise-tile) var(--noise-tile);image-rendering:pixelated;opacity:var(--noise-opacity)}@media print{body:after{display:none}}.container{width:100%;max-width:calc(var(--container-width) + 2 * var(--container-gutter));margin-inline:auto;padding-inline:var(--container-gutter)}.text-h1{font-family:var(--font-serif);font-weight:var(--font-weight-regular);font-size:var(--text-h1-size);line-height:var(--text-h1-line);letter-spacing:var(--text-h1-tracking);color:var(--text-headings)}.text-h2{font-family:var(--font-sans);font-weight:var(--text-h2-weight);font-size:var(--text-h2-size);line-height:var(--text-h2-line);letter-spacing:var(--text-h2-tracking);color:var(--text-headings)}.text-body-m{font-size:var(--text-body-m-size);line-height:var(--text-body-m-line);letter-spacing:var(--text-body-m-tracking)}.text-body-s{font-size:var(--text-body-s-size);line-height:var(--text-body-s-line);letter-spacing:var(--text-body-s-tracking)}.text-ui-chip{font-size:var(--text-ui-chip-size);line-height:var(--text-ui-chip-line);letter-spacing:var(--text-ui-chip-tracking)}.text-ui-button{font-size:var(--text-ui-button-size);line-height:var(--text-ui-button-line);letter-spacing:var(--text-ui-button-tracking);font-weight:var(--font-weight-semibold)}.text-ui-nav{font-size:var(--text-ui-nav-size);line-height:var(--text-ui-nav-line);letter-spacing:var(--text-ui-nav-tracking)}.text-ui-link{font-size:var(--text-ui-link-size);line-height:var(--text-ui-link-line)}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-12);padding:var(--space-12) var(--space-24);border-radius:var(--radius-40);background:var(--ui-button-bg);box-shadow:var(--shadow-header);color:var(--ui-button-text);text-decoration:none;white-space:nowrap}@media(hover:hover){.button:hover{background:var(--ui-button-bg-hover);box-shadow:none}}.button__icon{width:var(--space-24);height:var(--space-24)}@media(max-width:767.98px){.button{height:3rem;padding-block:0}}.chip{display:inline-block;padding:var(--space-4) var(--space-8);border:1px solid transparent;border-radius:var(--radius-8);background:var(--bg-chip-blue);box-shadow:var(--shadow-chip);color:var(--text-headings);font-size:var(--text-ui-chip-size);line-height:var(--text-ui-chip-line);letter-spacing:var(--text-ui-chip-tracking)}:is(p,li) span{color:var(--text-accent);text-decoration-line:underline;text-decoration-style:var(--underline-style);text-decoration-thickness:var(--underline-thickness);text-underline-offset:var(--underline-offset)}:is(p,li) .emoji+span{text-decoration-style:var(--underline-style-emoji)}:is(p,li) .separator{margin-inline:var(--space-4);color:inherit;text-decoration:none}.site-header[data-astro-cid-3ef6ksr2]{position:sticky;top:var(--header-offset);z-index:100;width:fit-content;margin:var(--header-offset) auto 0}.site-header__nav[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:var(--space-24);height:var(--header-height);padding:var(--space-12) var(--space-24);border-radius:var(--radius-40);background:var(--bg-page);box-shadow:var(--shadow-header)}.site-header__avatar[data-astro-cid-3ef6ksr2]{width:var(--header-avatar-size);height:auto;aspect-ratio:1;border-radius:50%}.site-header__home[data-astro-cid-3ef6ksr2]{display:flex;flex-shrink:0;border-radius:50%}.site-header__list[data-astro-cid-3ef6ksr2]{display:flex;gap:var(--space-24);margin:0;padding:0;list-style:none}.site-header__link[data-astro-cid-3ef6ksr2]{display:block;color:var(--text-main);text-decoration:none}@media(hover:hover){.site-header__link[data-astro-cid-3ef6ksr2]:hover{color:var(--text-headings)}}.site-header__burger[data-astro-cid-3ef6ksr2],.site-header--crumbs[data-astro-cid-3ef6ksr2] .site-header__nav--main[data-astro-cid-3ef6ksr2]{display:none}.site-header__crumbs[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:var(--space-24);margin:0;padding:0;list-style:none}.site-header__crumb[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:var(--space-24)}.site-header__crumb[data-astro-cid-3ef6ksr2]+.site-header__crumb[data-astro-cid-3ef6ksr2]:before{content:"/";color:var(--text-main)}.site-header__crumb-link[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:var(--space-8)}.site-header__crumb-current[data-astro-cid-3ef6ksr2]{color:var(--text-headings);text-decoration:none}@media(max-width:767.98px){.site-header[data-astro-cid-3ef6ksr2]{position:static;width:100%;max-width:calc(var(--container-width) + 2 * var(--container-gutter));padding-inline:var(--container-gutter)}.site-header__nav[data-astro-cid-3ef6ksr2]{position:relative;justify-content:space-between;padding:0;border-radius:0;background:none;box-shadow:none}.site-header__nav--crumbs[data-astro-cid-3ef6ksr2]{display:none}.site-header--crumbs[data-astro-cid-3ef6ksr2] .site-header__nav--main[data-astro-cid-3ef6ksr2]{display:flex}.site-header__burger[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:center;width:var(--burger-size);height:var(--burger-size);margin:0;padding:0;border:0;background:none;color:var(--text-main);cursor:pointer}.site-header__burger-icon[data-astro-cid-3ef6ksr2]{width:100%;height:.5625rem;background:linear-gradient(currentColor 0 0) top / 100% 1px no-repeat,linear-gradient(currentColor 0 0) center / 100% 1px no-repeat,linear-gradient(currentColor 0 0) bottom / 100% 1px no-repeat}.site-header__list[data-astro-cid-3ef6ksr2]{position:absolute;top:calc(100% + var(--space-8));right:0;display:none;flex-direction:column;align-items:center;gap:var(--space-12);padding:var(--space-24);border-radius:var(--radius-12);background:var(--bg-page);box-shadow:var(--shadow-menu);text-align:center;white-space:nowrap}.site-header__nav[data-astro-cid-3ef6ksr2][data-open] .site-header__list[data-astro-cid-3ef6ksr2]{display:flex}}.contacts[data-astro-cid-7qny6o5v]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"title links" "telegram city";row-gap:var(--space-8)}@media(min-width:1024px){.contacts[data-astro-cid-7qny6o5v] .contacts__side[data-astro-cid-7qny6o5v]{grid-area:1 / 2 / 3 / 3}}.contacts__side[data-astro-cid-7qny6o5v]{grid-area:side;justify-self:end;display:grid;grid-template-rows:subgrid;justify-items:center}.contacts__title[data-astro-cid-7qny6o5v]{grid-area:title}.contacts__links[data-astro-cid-7qny6o5v]{grid-area:links;display:flex;flex-direction:column;gap:var(--space-8);margin:0;padding:0;list-style:none}.contacts__link[data-astro-cid-7qny6o5v]{color:var(--text-main);text-decoration:none}.contacts__avatar[data-astro-cid-7qny6o5v]{width:var(--contacts-avatar-size);height:auto;aspect-ratio:1;border-radius:var(--radius-8)}.contacts__telegram[data-astro-cid-7qny6o5v]{grid-area:telegram;justify-self:start}.contacts__city[data-astro-cid-7qny6o5v]{grid-area:city;align-self:end;color:var(--text-main)}@media(max-width:1023.98px){.contacts[data-astro-cid-7qny6o5v]{grid-template-columns:12.5rem minmax(0,1fr) auto;grid-template-areas:"title links side" "telegram city side";column-gap:var(--space-40)}}@media(max-width:767.98px){.contacts[data-astro-cid-7qny6o5v]{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title avatar" "links avatar" "city avatar" "telegram telegram" "cv cv";grid-template-rows:auto auto 1fr auto auto}.contacts__side[data-astro-cid-7qny6o5v]{display:contents}.contacts__avatar[data-astro-cid-7qny6o5v]{grid-area:avatar}.contacts__links[data-astro-cid-7qny6o5v]{margin-top:var(--space-4)}.contacts__city[data-astro-cid-7qny6o5v]{align-self:start;margin-top:var(--space-4)}.contacts__telegram[data-astro-cid-7qny6o5v]{justify-self:stretch;margin-top:calc(var(--space-12) + var(--space-4))}.contacts__cv[data-astro-cid-7qny6o5v]{grid-area:cv;justify-self:stretch;margin-top:var(--space-4)}}
