@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/montserrat-cyrillic-400-normal.woff2') format('woff2');unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/montserrat-latin-400-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/montserrat-cyrillic-600-normal.woff2') format('woff2');unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/montserrat-latin-600-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'PT Serif';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/pt-serif-cyrillic-700-normal.woff2') format('woff2');unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'PT Serif';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/pt-serif-latin-700-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  color-scheme:dark;
  --ink:#1e1b19;
  --graphite:#2b2622;
  --bone:#f7f4ef;
  --amber:#c8894a;
  --amber-hot:#d9a06a;
  --muted:#b5aaa1;
  --font-body:Montserrat,Arial,sans-serif;
  --font-display:'PT Serif',Georgia,serif;
  --page-width:1280px;
  --gutter:clamp(24px,4.45vw,72px);
  --ease:cubic-bezier(.16,1,.3,1);
}
*,*::before,*::after{box-sizing:border-box}
html{min-width:320px;scroll-behavior:smooth;scrollbar-color:var(--amber) var(--ink)}
body{margin:0;background:var(--ink);color:var(--bone);font-family:var(--font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none;text-underline-offset:5px}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible{outline:2px solid var(--amber-hot);outline-offset:7px}
img{display:block;max-width:100%}
svg{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
p,h1,figure{margin:0}
::selection{background:var(--amber);color:var(--ink)}
.page{max-width:calc(var(--page-width) + var(--gutter)*2);min-height:100svh;margin-inline:auto;padding-inline:var(--gutter);display:flex;flex-direction:column}
.skip-link{position:fixed;z-index:10;left:24px;top:16px;padding:12px 18px;background:var(--bone);color:var(--ink);transform:translateY(-200%)}
.skip-link:focus{transform:translateY(0)}
.header{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-block:32px 24px;animation:arrive .85s var(--ease) both}
.brand{display:flex;align-items:center;gap:25px;width:fit-content}
.brand img{width:142px;height:42px;object-fit:contain}
.brand-caption{max-width:160px;color:var(--muted);font-size:13px;line-height:1.55}
.header-contact{display:flex;align-items:center;gap:15px;font-size:14px;font-weight:600;transition:color .2s ease}
.header-contact svg{width:19px;height:19px;color:var(--amber);transition:transform .25s var(--ease)}
.header-contact:hover{color:var(--amber-hot)}
.header-contact:hover svg{transform:translateX(4px)}
.hero{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);align-items:center;gap:clamp(40px,6.5vw,100px);flex:1;padding-block:28px 34px}
.message{padding-block:12px 28px}
h1{font-family:var(--font-display);font-size:clamp(64px,6.7vw,96px);font-weight:700;letter-spacing:-.035em;line-height:1.06}
h1 span{display:block;animation:arrive .95s var(--ease) both}
h1 span:nth-child(2){animation-delay:75ms}
.accent{color:var(--amber)}
.notice{margin-top:34px;max-width:510px}
.notice-title{font-size:clamp(16px,1.25vw,18px);line-height:1.7;animation:arrive .95s 140ms var(--ease) both}
.notice-text{margin-top:9px;color:var(--muted);font-size:clamp(16px,1.25vw,18px);line-height:1.75;animation:arrive .95s 190ms var(--ease) both}
.contact{margin-top:42px}
.contact-intro{font-size:15px;color:var(--muted);animation:arrive .95s 240ms var(--ease) both}
.button{display:flex;align-items:center;justify-content:center;gap:14px;width:fit-content;min-height:58px;margin-top:17px;padding:16px 22px;background:var(--amber);color:var(--ink);border-radius:4px;font-size:16px;font-weight:600;line-height:1.4;transition:background .2s ease,transform .2s var(--ease);animation:arrive .95s 280ms var(--ease) both}
.button svg{width:20px;height:20px}
.button .button-arrow{margin-left:14px;transition:transform .25s var(--ease)}
.button:hover{background:var(--amber-hot);transform:translateY(-2px)}
.button:hover .button-arrow{transform:translateX(4px)}
.button:active{transform:translateY(0)}
.contact-links{display:flex;align-items:center;flex-wrap:wrap;gap:14px 26px;margin-top:23px}
.contact-links a{display:inline-flex;align-items:center;gap:7px;min-height:36px;font-size:13px;transition:color .2s ease;animation:arrive .95s 330ms var(--ease) both}
.contact-links a:nth-child(2){animation-delay:370ms}
.contact-links svg{width:15px;height:15px;color:var(--amber);transition:transform .25s var(--ease)}
.contact-links a:hover{color:var(--amber-hot)}
.contact-links a:hover svg{transform:translate(2px,-2px)}
.portrait{width:100%;max-width:510px;justify-self:end;animation:portrait-arrive 1.3s 90ms var(--ease) both}
.portrait picture{display:block;overflow:hidden;background:var(--graphite);border-radius:12px}
.portrait-image{width:100%;height:min(64vh,640px);min-height:470px;object-fit:cover;object-position:50% 20%;filter:grayscale(.3) contrast(1.05)}
.portrait figcaption{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding-top:15px;animation:arrive 1s 350ms var(--ease) both}
.portrait-name{font-size:14px;font-weight:600;white-space:nowrap}
.portrait-description{max-width:180px;text-align:right;color:var(--muted);font-size:13px;line-height:1.7}
.footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:16px 26px;color:var(--muted);font-size:13px}
@keyframes arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes portrait-arrive{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(min-width:1500px){.hero{gap:110px}.portrait-image{height:min(67vh,690px)}h1{font-size:100px}}
@media(max-width:1100px){.brand-caption{display:block}.hero{gap:42px;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}h1{font-size:clamp(58px,7.2vw,78px)}.portrait-image{height:550px;min-height:0}.notice{margin-top:27px}.contact{margin-top:30px}.contact-links{gap:6px 20px}.portrait figcaption{flex-direction:column;gap:3px}.portrait-description{text-align:left;max-width:none}}
@media(max-width:800px){.header{padding-block:26px 18px}.brand img{width:128px;height:38px}.header-contact{font-size:13px;gap:10px}.hero{gap:30px;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);padding-block:34px 40px}h1{font-size:56px}.notice-title,.notice-text{font-size:16px}.desktop-break{display:none}.contact-intro{font-size:14px}.button{font-size:14px;padding:15px 16px;gap:10px}.button .button-arrow{margin-left:5px}.portrait-image{height:495px;object-position:50% 15%}.portrait-name{font-size:13px}.portrait-description{font-size:13px}.footer{font-size:13px}}
@media(max-width:650px){:root{--gutter:24px}.header{padding-block:25px 19px;gap:16px}.brand{gap:18px}.brand-caption{max-width:145px}.brand img{width:120px;height:36px}.header-contact{display:none}.header-contact svg{width:16px;height:16px}.hero{grid-template-columns:minmax(0,1fr);gap:38px;padding-block:29px 28px}.message{padding-block:0}h1{font-size:clamp(54px,14vw,76px);line-height:1.08;letter-spacing:-.035em}.notice{margin-top:24px;max-width:440px}.notice-title,.notice-text{font-size:16px}.notice-text{margin-top:8px;line-height:1.7}.contact{margin-top:29px}.contact-intro{font-size:14px}.button{min-height:56px;margin-top:15px;padding:16px 19px;font-size:15px;gap:13px}.button .button-arrow{margin-left:9px}.contact-links{gap:8px 21px;margin-top:16px}.contact-links a{font-size:13px;min-height:38px}.portrait{max-width:none}.portrait picture{border-radius:10px}.portrait-image{height:auto;min-height:0;max-height:500px;aspect-ratio:1.06;object-position:50% 22%}.portrait figcaption{flex-direction:row;gap:15px;padding-top:13px}.portrait-name{font-size:13px}.portrait-description{max-width:155px;text-align:right;font-size:13px}.footer{align-items:flex-start;padding-block:8px 24px;font-size:13px;gap:18px}.footer p:last-child{max-width:160px;text-align:right}}
@media(max-width:360px){:root{--gutter:20px}.header-contact{font-size:13px}.header-contact svg{display:none}.brand img{width:108px;height:32px}h1{font-size:52px}.contact-links{gap:4px 13px}.contact-links a{font-size:13px}.portrait figcaption{flex-direction:column;gap:3px}.portrait-description{text-align:left;max-width:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
