@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/assets/fonts/inter-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* A quiet language control that shares the site's approved palette. */
.language-switch{display:flex;align-items:center;gap:2px;flex-shrink:0;padding:3px;border:1px solid var(--line);border-radius:100px}
.language-switch a{display:grid;place-items:center;width:31px;min-height:34px;border-radius:100px;font-size:10px;letter-spacing:.035em;color:var(--muted);transition:background .2s,color .2s}
.language-switch a:hover{background:#edf0e8;color:var(--ink)}
.language-switch a[aria-current=true]{background:#e5ebdd;color:var(--ink);font-weight:600}
.language-switch a:focus-visible{outline:2px solid #647a57;outline-offset:2px}
.header-inner{gap:18px}.header .nav{gap:22px}.header .nav a{white-space:nowrap}
html:not([lang=tr]) :is(h1,h2,h3,.simple-list li,.reference-type strong){overflow-wrap:break-word;hyphens:auto}
html:not([lang=tr]) :is(.service-block,.studio-scope)>*{min-width:0}
html:not([lang=tr]) .hero h1{font-size:clamp(68px,7.5vw,117px)}
html:not([lang=tr]) .contact h2{font-size:clamp(44px,6.8vw,98px)}
@media(min-width:981px) and (max-width:1280px){.header-inner>.pill{display:none}.header .nav{gap:22px}.language-switch{margin-left:auto}}
@media(max-width:980px){.language-switch{margin-left:auto}.language-switch a{width:32px;min-height:38px}.header-inner{gap:14px}}
@media(max-width:600px){
 .header-inner{gap:10px}.language-switch{padding:2px;gap:0}.language-switch a{width:29px;min-height:38px;font-size:10px}
 html:not([lang=tr]) .hero h1{font-size:clamp(40px,11.8vw,69px);line-height:1.06}
 html:not([lang=tr]) .page-title{font-size:clamp(37px,10.4vw,62px)}
 html:not([lang=tr]) .contact h2{font-size:clamp(36px,10vw,58px);overflow-wrap:break-word}
 html:not([lang=tr]) .section-head{flex-wrap:wrap;align-items:flex-start}
 html:not([lang=tr]) .stage-caption{align-items:flex-start}.stage-caption>span{min-width:0}
 html:not([lang=tr]) .stage-caption a{white-space:normal;text-align:right;max-width:42%;flex-shrink:0}
 html:not([lang=tr]) .mobile-primary>a{font-size:28px}
}
@media(max-width:360px){.header .logo,.header .logo img{width:96px}.header-inner{gap:6px}.language-switch a{width:26px}}

/* Russian headings keep complete words and the same calm editorial rhythm. */
html[lang=ru] #main :is(h1,h2,h3){-webkit-hyphens:none;hyphens:none;word-break:normal}
html[lang=ru] .hero h1{font-size:clamp(62px,6.3vw,100px);overflow-wrap:normal}
@media(max-width:600px){
 html[lang=ru] .hero h1{font-size:clamp(32px,9vw,54px);line-height:1.08}
 html[lang=ru] .hero-stage .stage-label p{font-size:18px;max-width:245px}
}
