:root { --blue:var(--color-pricing-blue); --ui-ease:cubic-bezier(.22,1,.36,1); }
.navigation { transition:opacity 300ms ease,transform 380ms var(--ui-ease); }
.navigation.is-hidden { opacity:0; transform:translateY(-100%); pointer-events:none; }
.navigation-content { min-height:88px; }
.desktop-links { gap:18px; }
.desktop-links>a,.desktop-links>button { padding:8px 12px; border-radius:9px; font-weight:500; text-transform:none; transition:background-color 240ms ease,color 240ms ease; }
.desktop-links [aria-current=page] { background:color-mix(in srgb, var(--color-gallery-white) 8%, transparent); }
.projects-trigger { display:flex; align-items:center; gap:10px; }
.nav-chevron { width:6px; height:6px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:translateY(-2px) rotate(45deg); transition:transform 200ms ease; }
.projects-trigger[aria-expanded=true] .nav-chevron { transform:translateY(2px) rotate(225deg); }
.projects-dropdown { position:absolute; right:auto; top:82px; width:410px; max-width:calc(100vw - 40px); padding:18px; background:var(--color-gallery-white); color:var(--color-ink); border:1px solid var(--color-hairline-silver); border-radius:18px; box-shadow:0 16px 50px color-mix(in srgb, var(--color-ink) 13%, transparent); opacity:0; transform:translateY(-7px) scale(.985); transform-origin:top left; pointer-events:none; transition:opacity 240ms ease,transform 300ms cubic-bezier(.4,0,.2,1); }
.projects-dropdown[hidden] { display:none; }
.projects-dropdown.is-open { opacity:1; transform:none; pointer-events:auto; transition-duration:320ms,400ms; transition-timing-function:ease,var(--ui-ease); }
.projects-dropdown>p { margin:0 10px 13px; font-size:12px; font-weight:500; color:var(--color-slate); }
.project-menu-card { display:flex; align-items:center; gap:22px; padding:10px; border-radius:12px; transition:background-color 240ms ease; }
.project-menu-card img { width:112px; height:76px; object-fit:cover; border-radius:8px; background:var(--color-control-gray); }
.project-menu-card>span { flex:1; min-width:0; }
.project-menu-card strong { display:block; font:500 22px/1.2 var(--display); color:var(--color-ink); }
.project-menu-card small { display:block; font-size:13px; color:var(--color-slate); margin-top:6px; }
.mobile-page-links { display:flex; flex-direction:column; }
.mobile-page-links>a,.mobile-projects-trigger { font:400 28px/1.2 var(--display); padding:18px 0; border-bottom:1px solid var(--color-hairline-silver); }
.mobile-projects-trigger { display:flex; align-items:center; justify-content:space-between; width:100%; text-align:left; }
.mobile-projects-trigger[aria-expanded=true] .nav-chevron { transform:translateY(2px) rotate(225deg); }
.mobile-project-panel { display:grid; grid-template-rows:0fr; opacity:0; visibility:hidden; transition:grid-template-rows 360ms cubic-bezier(.4,0,.2,1),opacity 220ms ease,visibility 0s 360ms; }
.mobile-project-panel>div { overflow:hidden; min-height:0; }
.mobile-project-panel.is-open { grid-template-rows:1fr; opacity:1; visibility:visible; transition-duration:440ms,300ms,0s; transition-delay:0s; transition-timing-function:var(--ui-ease),ease,linear; }
.mobile-project-panel .project-menu-card { margin:12px 0; background:var(--color-studio-mist); }
.scene-description { width:580px; }
#hero .scene-description { width:640px; }
.scene-description h1,.scene-description h2 { font:400 36px/1.12 var(--display); text-transform:none; letter-spacing:-.035em; text-wrap:balance; }
.scene-description p { font-size:19px; font-weight:500; line-height:1.5; max-width:560px; color:var(--color-studio-mist); }
.trust-logos { gap:22px; margin:18px 0 0; flex-wrap:nowrap; }
.partner-more { font:500 29px/1 var(--display); letter-spacing:-.055em; color:var(--color-gallery-white); }
.action { font-weight:500; font-size:15px; min-height:48px; border-radius:11px; transition:background-color 280ms ease,border-color 280ms ease,color 280ms ease,transform 140ms ease; }
.action:active,.social-links a:active,.project-menu-card:active { transform:scale(.98); }
.purchase-section { display:grid; grid-template-columns:1.1fr 1fr; gap:10vw; padding:110px var(--gutter); background:var(--color-studio-mist); color:var(--color-ink); }
.purchase-section h2 { font:400 44px/1.12 var(--display); letter-spacing:-.035em; margin:16px 0; }
.purchase-section p:not(.eyebrow) { color:var(--color-slate); font-size:18px; line-height:1.6; max-width:480px; }
.purchase-offer { border-left:1px solid var(--color-hairline-silver); padding-left:50px; display:flex; align-items:flex-start; flex-direction:column; justify-content:center; }
.purchase-offer>span { font-size:14px; font-weight:500; margin-bottom:12px; }
.purchase-offer>strong { font:400 40px/1.2 var(--display); letter-spacing:-.04em; }
.purchase-offer .action { margin-top:30px; padding:0 32px; }
.inner-page { background:var(--color-gallery-white); color:var(--color-ink); }
.inner-page .navigation,.navigation.on-light { color:var(--color-ink); background:color-mix(in srgb, var(--color-gallery-white) 94%, transparent); backdrop-filter:blur(14px); border-bottom:1px solid var(--color-control-gray); }
.inner-page .navigation::before,.navigation.on-light::before { display:none; }
.inner-page .navigation>.navigation-content>.brand-logo img,.navigation.on-light>.navigation-content>.brand-logo img { content:url('/figure/assets/rstk-logo-dark.svg'); }
.inner-page .desktop-links [aria-current=page] { background:var(--color-control-gray); }
.page-main { max-width:1440px; margin:auto; padding:166px var(--gutter) 88px; min-height:calc(100svh - 300px); }
.page-intro { max-width:930px; margin-bottom:76px; }
.eyebrow { font-size:12px; font-weight:500; letter-spacing:.07em; text-transform:uppercase; color:var(--color-slate); }
.page-intro h1 { font:400 clamp(42px,5vw,66px)/1.06 var(--display); letter-spacing:-.05em; margin:24px 0; text-wrap:balance; }
.page-lead { font:400 22px/1.5 var(--body); color:var(--color-ink); max-width:810px; }
.info-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; margin:100px 0; }
.info-grid article { padding-top:24px; border-top:1px solid var(--color-hairline-silver); }
.info-index { color:var(--color-slate); font-size:13px; }
.info-grid h2 { font:500 25px/1.2 var(--display); letter-spacing:-.035em; margin:28px 0 18px; }
.info-grid p { color:var(--color-slate); font-size:17px; line-height:1.6; max-width:360px; }
.page-note { display:flex; justify-content:space-between; align-items:center; gap:40px; padding:40px 0 0; border-top:1px solid var(--color-hairline-silver); }
.page-note p { font-size:18px; line-height:1.6; max-width:660px; color:var(--color-ink); }
.team-strips { display:flex; align-items:flex-start; gap:10px; }
.team-member { flex:1; min-width:0; }
.team-member-ceo { flex-grow:2.3; }
.team-member>.team-card { height:460px; }
.team-member>.social-links { margin-top:16px; flex-wrap:nowrap; gap:10px; }
.team-member>.social-links a { flex:1; padding:12px 8px; font-size:13px; }
.team-card { position:relative; min-width:0; flex:1; border-radius:14px; overflow:hidden; background:var(--color-control-gray); }
.team-card-ceo { color:var(--color-gallery-white); background:var(--color-ink); }
.portrait-placeholder { position:absolute; inset:0; display:grid; place-items:center; background:linear-gradient(140deg,var(--color-ink),var(--color-ink)); }
.portrait-placeholder>span { font:300 106px/1 var(--display); letter-spacing:-.075em; opacity:.14; transform:translateY(-26px); }
.member-info { position:absolute; inset:auto 0 0; padding:26px; background:linear-gradient(transparent,color-mix(in srgb, var(--color-ink) 60%, transparent)); }
.member-role { font-size:12px; font-weight:500; margin-bottom:10px; color:var(--color-control-gray); }
.member-info h2 { font:500 28px/1.2 var(--display); letter-spacing:-.03em; white-space:nowrap; }
.empty-number { position:absolute; left:20px; top:20px; color:var(--color-steel); font-size:12px; }
.social-links { display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
.social-links a { display:inline-flex; gap:9px; align-items:center; justify-content:center; padding:12px 17px; border:1px solid var(--color-hairline-silver); border-radius:11px; font-size:14px; color:var(--color-ink); transition:color 240ms ease,background-color 240ms ease,border-color 240ms ease,transform 150ms ease; }
.contact-icon { display:block; width:18px; height:18px; flex:0 0 18px; fill:currentColor; stroke:none; }
.team-contact { margin-top:84px; padding-top:42px; border-top:1px solid var(--color-hairline-silver); display:flex; align-items:center; justify-content:space-between; gap:28px; }
.team-contact h2 { font:500 26px/1.2 var(--display); letter-spacing:-.03em; margin-bottom:12px; }
.team-contact p { color:var(--color-slate); font-size:17px; line-height:1.5; }
.company-statement { display:grid; grid-template-columns:1fr 1fr; gap:100px; padding:50px 0 90px; }
.company-statement h2 { font:400 36px/1.15 var(--display); letter-spacing:-.035em; }
.company-statement p { max-width:510px; font-size:20px; line-height:1.6; color:var(--color-slate); }
.company-project { display:grid; grid-template-columns:1fr 1.2fr; align-items:center; gap:70px; border-top:1px solid var(--color-hairline-silver); padding-top:60px; }
.company-project h2 { font:400 40px/1.1 var(--display); margin:20px 0; letter-spacing:-.04em; }
.company-project p:not(.eyebrow) { font-size:18px; line-height:1.6; color:var(--color-slate); max-width:440px; margin-bottom:26px; }
.company-project-photo img { display:block; width:100%; height:auto; border-radius:14px; }
.site-footer-top { display:flex; align-items:center; justify-content:space-between; gap:40px; }
.footer { padding:60px var(--gutter) 32px; background:var(--color-studio-mist); color:var(--color-ink); }
.footer-page-links { display:flex; flex-wrap:wrap; gap:24px; font-size:14px; font-weight:500; }
.site-footer-contact { margin-top:40px; display:flex; align-items:center; justify-content:space-between; gap:30px; }
.phone-link { display:inline-flex; align-items:center; gap:11px; transition:color 240ms ease; font:400 23px/1.4 var(--display); letter-spacing:-.04em; }
.footer-bottom { margin-top:48px; padding-top:22px; border-top:1px solid var(--color-hairline-silver); font-size:12px; }
.js .reveal { opacity:0; transform:translateY(12px); transition:opacity 600ms ease,transform 650ms var(--ui-ease); }
.js .reveal.is-visible { opacity:1; transform:none; }
@media(hover:hover) and (pointer:fine) {
  .desktop-links>a:hover,.desktop-links>button:hover { opacity:1; color:var(--color-gallery-white); background:var(--blue); }
  .project-menu-card:hover { background:var(--color-paper-frost); }
  .scene .action:hover,.action-dark:hover { background:var(--blue); border-color:var(--blue); color:var(--color-gallery-white); }
  .social-links a:hover { color:var(--color-gallery-white); background:var(--blue); border-color:var(--blue); }
  .footer-page-links a:hover,.phone-link:hover { color:var(--blue); }
}
@media(max-width:1000px) and (min-width:801px) { .desktop-links { gap:0; } .desktop-links>a,.desktop-links>button { padding:8px 9px; font-size:13px; } .trust-logos { gap:14px; } .member-info { padding:20px; } .member-info h2 { font-size:23px; } }
@media(max-width:800px) {
  .navigation-content { min-height:74px; }
  .desktop-links { display:none; }
  .scene { min-height:660px; }
  #hero .scene-description,.scene-description { width:100%; max-width:100%; }
  .scene-description h1,.scene-description h2 { font-size:28px; line-height:1.15; }
  .scene-description p { font-size:17px; line-height:1.5; max-width:460px; }
  .trust-logos { gap:10px; margin-top:14px; }
  .partner-forum { width:42px; } .partner-atlas { width:48px; } .partner-mayak { width:62px; } .partner-brusnika { width:66px; } .partner-atom { width:28px; } .partner-more { font-size:24px; }
  .action { font-size:14px; min-height:44px; }
  .purchase-section { grid-template-columns:1fr; gap:36px; padding:64px var(--gutter); }
  .purchase-section h2 { font-size:34px; }
  .purchase-section p:not(.eyebrow) { font-size:17px; }
  .purchase-offer { border-left:0; border-top:1px solid var(--color-hairline-silver); padding:30px 0 0; }
  .purchase-offer>strong { font-size:32px; }
  .page-main { padding:124px var(--gutter) 60px; }
  .page-intro { margin-bottom:42px; }
  .page-intro h1 { font-size:42px; margin:20px 0; }
  .page-lead { font-size:19px; }
  .info-grid { grid-template-columns:1fr; gap:36px; margin:54px 0; }
  .info-grid h2 { margin-top:18px; font-size:26px; }
  .info-grid p { max-width:100%; }
  .page-note { align-items:flex-start; flex-direction:column; gap:24px; }
  .team-strips { gap:7px; }
  .team-member>.team-card { height:390px; }
  .team-member>.social-links { flex-wrap:wrap; gap:8px; }
  .team-member>.social-links a { justify-content:flex-start; min-width:125px; }
  .team-member-ceo { flex-grow:4.5; }
  .team-card { border-radius:10px; }
  .member-info { padding:20px 16px; }
  .member-info h2 { font-size:22px; white-space:normal; max-width:210px; }
  .member-role { font-size:11px; max-width:150px; line-height:1.5; }
  .empty-number { left:50%; transform:translateX(-50%); top:16px; font-size:10px; }
  .portrait-placeholder>span { font-size:80px; }
  .team-contact { flex-direction:column; align-items:flex-start; margin-top:48px; padding-top:32px; }
  .company-statement { grid-template-columns:1fr; gap:26px; padding:20px 0 54px; }
  .company-statement h2 { font-size:32px; }
  .company-statement p { font-size:18px; }
  .company-project { grid-template-columns:1fr; gap:32px; padding-top:40px; }
  .site-footer-top,.site-footer-contact { flex-direction:column; align-items:flex-start; gap:28px; }
  .footer-page-links { gap:18px 24px; }
  .footer { padding-top:44px; }
  .footer-bottom { gap:14px; margin-top:36px; }
}
@media(max-width:359px) { .trust-logos { gap:7px; } .partner-forum { width:36px; } .partner-atlas { width:40px; } .partner-mayak { width:54px; } .partner-brusnika { width:56px; } .partner-atom { width:24px; } .partner-more { font-size:22px; } .scene-description h1,.scene-description h2 { font-size:25px; } .scene-description p { font-size:16px; } .page-intro h1 { font-size:36px; } .member-info h2 { font-size:20px; } }
@media(prefers-reduced-motion:reduce) { .js .reveal { opacity:1; transform:none; } }
html.keyboard-input .projects-dropdown,html.keyboard-input .mobile-project-panel { transition:none; }

@media(min-width:801px) { .page-team .page-main { padding-top:140px; } .page-team .page-intro { margin-bottom:44px; } .page-team .page-intro h1 { font-size:56px; margin:18px 0; } .page-team .page-lead { font-size:20px; } .page-team .team-member>.team-card { height:360px; } }

.member-given { white-space:nowrap; }
@media(prefers-reduced-motion:reduce) { .projects-dropdown,.mobile-project-panel,.nav-chevron { transition:none; } }
