/* Figure v7: full-frame product stories, restrained type and editorial rows. */
.navigation,.navigation.on-light,.inner-page .navigation { border:0; box-shadow:none; }
.navigation-content { padding-top:24px; padding-bottom:24px; }
.desktop-links>a,.desktop-links>button { font-weight:400; border-radius:4px; }
.desktop-links [aria-current=page],.inner-page .desktop-links [aria-current=page] { background:transparent; text-decoration:underline; text-underline-offset:5px; text-decoration-thickness:1px; }
.scene-description h1,.scene-description h2 { font-weight:400; letter-spacing:-.035em; }
.scene-description p { font:300 19px/1.5 var(--display); letter-spacing:-.025em; }
.scene:not(.has-media) .scene-description p { color:var(--color-ink); }
.scene:not(.has-media) .action { color:var(--color-ink); border-color:var(--color-ink); }
.scene-description { gap:20px; }
.trust-logos { margin-top:18px; }
.page-main { max-width:none; padding:0; margin:0; }
.story-stage { min-height:680px; }
.story-stage .scene-description { width:520px; }
.story-stage .scene-inner { padding-bottom:64px; }
.story-masthead { position:absolute; top:48px; left:var(--gutter); right:var(--gutter); font:400 clamp(64px,8.5vw,144px)/1 var(--display); letter-spacing:-.04em; word-spacing:.1em; text-transform:uppercase; }
.story-opening .story-masthead { top:160px; }
.story-right .scene-description { margin-left:auto; }
.story-right .scene-content { flex-wrap:wrap; }
.story-right .scene-content>.action { margin-left:calc(100% - 520px); }
.story-right .scene-content { gap:24px; }
.story-product-image { position:absolute; left:var(--gutter); top:26%; width:51%; height:55%; object-fit:contain; object-position:center; mix-blend-mode:multiply; }
.story-with-product .scene-description { width:38%; }
.story-with-product .scene-content>.action { margin-left:62%; }
.story-with-product .scene-content { flex-direction:column; align-items:flex-start; }
.story-with-product .scene-description { margin-left:62%; }
.story-with-product .scene-inner { align-items:center; padding-top:180px; }
.story-with-product.has-media .story-product-image { visibility:hidden; }
.scene.has-media .story-masthead { color:var(--color-gallery-white); }
.inner-page .navigation:not(.on-light) { color:var(--color-gallery-white); background:transparent; backdrop-filter:none; }
.inner-page .navigation:not(.on-light)::before { display:block; }
.inner-page .navigation:not(.on-light)>.navigation-content>.brand-logo img { content:url('/figure/assets/rstk-logo-light.svg'); }

/* Wide, open rows follow the reference company's values layout. */
.editorial-section { padding:128px var(--gutter) 140px; background:var(--color-gallery-white); }
.editorial-heading { margin-bottom:72px; }
.editorial-heading .eyebrow { margin-bottom:24px; }
.editorial-heading h2 { max-width:820px; font:400 clamp(32px,3.6vw,56px)/1.16 var(--display); letter-spacing:-.04em; text-wrap:balance; }
.editorial-row { display:grid; grid-template-columns:70px minmax(0,1fr) minmax(0,1fr); gap:36px; padding:46px 0 52px; border-top:1px solid var(--color-hairline-silver); align-items:baseline; }
.row-number { font:400 18px/1.3 var(--display); color:var(--color-slate); }
.editorial-row h3 { margin:0; font:400 clamp(24px,2.45vw,38px)/1.2 var(--display); letter-spacing:-.035em; }
.editorial-row>p { font:300 19px/1.6 var(--display); letter-spacing:-.025em; max-width:470px; }
.editorial-note { margin:52px 0 0 auto; max-width:calc((100% - 142px)/2); font:300 15px/1.6 var(--display); color:var(--color-slate); }

.footer-editorial .footer-contact h2 { font-weight:400; }
.footer-editorial .contact-start { margin-top:24px; }

.team-section { padding:108px var(--gutter) 128px; }
.team-section .editorial-heading { margin-bottom:48px; }
.team-member>.team-card { height:clamp(360px,36vw,540px); border-radius:4px; }
.team-member { border-radius:4px; }
.member-info h3 { margin:0; font:400 30px/1.2 var(--display); letter-spacing:-.035em; width:340px; max-width:100%; }
.member-role { font-weight:300; font-family:var(--display); }

/* Fade the composition as a whole. No parallax, bounce or forced scrolling. */
.js .story-masthead { opacity:0; transition:opacity 800ms var(--ui-ease); }
.js .scene.is-visible .story-masthead { opacity:1; }
.js .scene-description,.js .scene-content>.action { transform:translateY(6px); transition:opacity 700ms ease,transform 850ms var(--ui-ease),color 350ms ease,border-color 350ms ease; }
.js .scene.is-visible .scene-description,.js .scene.is-visible .scene-content>.action { transform:none; }
.js .reveal { transform:translateY(8px); transition:opacity 650ms ease,transform 800ms var(--ui-ease); }
.js .reveal.is-visible { transform:none; }
@media(hover:hover) and (pointer:fine) {
  .desktop-links>a:hover,.desktop-links>button:hover { background:transparent; color:var(--color-apple-blue); }
  .scene .action:hover { color:var(--color-gallery-white); background:var(--color-pricing-blue); border-color:var(--color-pricing-blue); }
}
@media(max-width:1000px) and (min-width:801px) {
  .story-with-product .scene-description { width:44%; margin-left:56%; }
  .story-with-product .scene-content>.action { margin-left:56%; }
  .story-product-image { width:46%; }
  .story-with-product .scene-description h2 { font-size:32px; }
  .editorial-row { gap:28px; grid-template-columns:42px minmax(0,1fr) minmax(0,1fr); }

}
@media(max-width:800px) {
  .navigation-content { padding-top:16px; padding-bottom:16px; }
  .scene-description h1,.scene-description h2 { font-size:29px; line-height:1.16; }
  .scene-description p { font-size:17px; font-weight:300; line-height:1.5; }
  .scene-description { gap:18px; }
  .story-stage { min-height:660px; }
  .story-stage .scene-description { width:100%; }
  .story-stage .scene-inner { padding-bottom:40px; }
  .story-masthead { top:40px; font-size:clamp(36px,8.4vw,70px); letter-spacing:-.055em; }
  .story-opening .story-masthead { top:130px; }
  .story-right .scene-description,.story-right .scene-content>.action { margin-left:0; }
  .story-with-product .scene-inner { align-items:flex-end; padding-top:100px; }
  .story-with-product .scene-description { width:100%; margin-left:0; }
  .story-with-product .scene-content>.action { margin-left:0; }
  .story-product-image { width:calc(100% - 2 * var(--gutter)); height:38%; top:17%; }
  .story-with-product { min-height:760px; }
  .editorial-section { padding:80px var(--gutter) 88px; }
  .editorial-heading { margin-bottom:44px; }
  .editorial-heading h2 { font-size:32px; }
  .editorial-heading .eyebrow { margin-bottom:20px; }
  .editorial-row { grid-template-columns:26px minmax(0,1fr); gap:16px 20px; padding:30px 0 40px; }
  .row-number { font-size:14px; }
  .editorial-row h3 { font-size:25px; }
  .editorial-row>p { grid-column:2; font-size:17px; }
  .editorial-note { margin-top:24px; max-width:none; padding-left:46px; font-size:14px; }
  .team-section { padding:76px var(--gutter) 88px; }
  .team-strips { gap:6px; }
  .team-member>.team-card { height:370px; }
  .member-info { padding:17px; }
  .member-info h3 { font-size:23px; }
  .member-role { font-size:10px; line-height:1.5; }
}
@media(prefers-reduced-motion:reduce) {
  .js .story-masthead,.js .scene-description,.js .scene-content>.action,.js .reveal { opacity:1; transform:none; transition:none; }
}
html.keyboard-input .reveal,html.keyboard-input .scene-description,html.keyboard-input .scene-content>.action,html.keyboard-input .story-masthead { transition:none; transform:none; }
@media(max-width:800px) {
  #company .story-masthead { font-size:clamp(72px,20vw,100px); }
  #technology-intro .story-masthead,#company-product .story-masthead { font-size:clamp(54px,15vw,96px); }
  #team .story-masthead,#company-team .story-masthead { font-size:clamp(45px,12vw,78px); }
}
/* A single hairline follows the section under the pointer. */
.desktop-links { position:relative; }
.desktop-links [aria-current=page],.inner-page .desktop-links [aria-current=page] { text-decoration:none; }
.nav-underline { position:absolute; bottom:4px; left:0; height:1px; background:currentColor; pointer-events:none; opacity:0; transition:transform 380ms var(--ui-ease),width 380ms var(--ui-ease),opacity 180ms ease; }
.nav-underline.is-visible { opacity:1; }
.footer-link-label { position:relative; width:fit-content; flex:none!important; }
.footer-link-label::after { content:''; position:absolute; left:0; right:0; bottom:-4px; height:1px; background:currentColor; transform:scaleX(0); transform-origin:right; transition:transform 380ms var(--ui-ease); }
@media(hover:hover) and (pointer:fine) {
  .numbered-links a:hover .footer-link-label::after { transform:scaleX(1); transform-origin:left; }
}
.numbered-links a:focus-visible .footer-link-label::after { transform:scaleX(1); }
html.keyboard-input .nav-underline,html.keyboard-input .footer-link-label::after { transition:none; }
@media(prefers-reduced-motion:reduce) { .nav-underline,.footer-link-label::after { transition:none; } }
/* Figure uses regular 400 type and 1px rules; retain the roomier Russian headings. */
.scene-description p,.editorial-row>p { font:400 17px/1.6 var(--body); letter-spacing:-.01em; }
.action { font-weight:400; border-width:1px; }
.desktop-links>a,.desktop-links>button { font-weight:400; letter-spacing:.02em; }
@media(max-width:800px) {
  .scene-description p,.editorial-row>p { font-size:16px; }
}

/* Conversion buttons fill gradually; entrance motion never overrides this layer. */
.action,.preorder-submit,.footer-editorial .contact-start button,.cookie-accept,.cookie-reject { position:relative; isolation:isolate; overflow:hidden; user-select:none; }
.action::after,.preorder-submit::after,.footer-editorial .contact-start button::after,.cookie-accept::after,.cookie-reject::after { content:''; position:absolute; z-index:-1; inset:0; background:var(--color-pricing-blue); transform:scaleX(0); transform-origin:left; transition:transform 480ms cubic-bezier(.22,1,.36,1); border-radius:inherit; pointer-events:none; }
@media(hover:hover) and (pointer:fine) {
  .scene .action:hover,.scene:not(.has-media) .action:hover { background:transparent; color:var(--color-gallery-white); border-color:var(--color-pricing-blue); }
  .preorder-submit:hover:not(:disabled) { background:var(--color-gallery-white); color:var(--color-gallery-white); border-color:var(--color-pricing-blue); }
  .footer-editorial .contact-start button:hover:not(:disabled) { background:var(--color-ink); }
  .action:hover::after,.preorder-submit:hover:not(:disabled)::after,.footer-editorial .contact-start button:hover:not(:disabled)::after,.cookie-accept:hover::after,.cookie-reject:hover::after { transform:scaleX(1); }
  .cookie-reject:hover { color:var(--color-gallery-white); }
}
.action:focus-visible::after,.preorder-submit:focus-visible::after,.contact-start button:focus-visible::after { transform:scaleX(1); }
.action:focus-visible,.preorder-submit:focus-visible { color:var(--color-gallery-white)!important; }
.preorder-submit { transition:color 350ms ease,border-color 350ms ease; }
.footer-editorial .footer-bottom { border:0; }

/* Native scrolling supplies a quiet reading interval for each operator step. */
.workflow { background:var(--color-gallery-white); padding:100px var(--gutter); }
.workflow-pin { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:10%; align-items:center; }
.workflow h2 { align-self:start; margin:8px 0 0; font:400 clamp(32px,3.6vw,54px)/1.18 var(--display); letter-spacing:-.04em; }
.workflow-content { position:relative; min-width:0; }
.workflow-steps { position:relative; list-style:none; margin:0; padding:0; }
.workflow-steps::before,.workflow-steps::after { content:''; position:absolute; left:5px; top:12px; width:1px; height:calc(100% - 148px); background:var(--color-hairline-silver); transform-origin:top; }
.workflow-steps::after { background:var(--color-ink); transform:scaleY(var(--line-progress,1)); }
.workflow-step { position:relative; min-height:160px; padding-left:42px; }
.workflow-dot { position:absolute; z-index:1; top:8px; left:1px; width:9px; height:9px; border:1px solid var(--color-steel); background:var(--color-gallery-white); border-radius:50%; }
.workflow-dot::after { content:''; position:absolute; inset:1px; border-radius:inherit; background:var(--color-ink); opacity:var(--step-reveal,1); }
.workflow-copy { opacity:var(--step-reveal,1); transform:translateY(calc((1 - var(--step-reveal,1))*12px)); }
.workflow-number { display:block; margin-bottom:9px; color:var(--color-slate); font:400 12px/1.3 var(--body); font-variant-numeric:tabular-nums; }
.workflow h3 { margin:0 0 12px; font:400 clamp(23px,2.1vw,31px)/1.2 var(--display); letter-spacing:-.035em; }
.workflow-step p { max-width:380px; font:400 17px/1.5 var(--body); color:var(--color-slate); }
.workflow-note { padding-left:42px; margin-top:12px; max-width:450px; font:400 13px/1.5 var(--body); color:var(--color-slate); opacity:var(--note-reveal,1); }
.workflow.is-scroll-story { height:340svh; padding-top:0; padding-bottom:0; }
.is-scroll-story .workflow-pin { position:sticky; top:0; min-height:100svh; padding:100px 0 70px; }
@media(max-width:800px) {
  .workflow { padding:80px var(--gutter); }
  .workflow-pin { grid-template-columns:1fr; gap:38px; }
  .workflow h2 { font-size:32px; max-width:360px; }
  .workflow-step { min-height:128px; padding-left:30px; }
  .workflow-steps::before,.workflow-steps::after { height:calc(100% - 116px); }
  .workflow-step p { font-size:15px; }
  .workflow h3 { font-size:24px; margin-bottom:8px; }
  .workflow-note { padding-left:30px; font-size:12px; margin-top:4px; }
  .is-scroll-story .workflow-pin { align-content:center; padding:50px 0 34px; }
}
@media(prefers-reduced-motion:reduce),(max-height:620px) {
  .workflow.is-scroll-story { height:auto; padding-top:80px; padding-bottom:80px; }
  .is-scroll-story .workflow-pin { position:static; min-height:0; padding:0; }
  .workflow-copy,.workflow-note,.workflow-dot::after { opacity:1; transform:none; }
  .workflow-steps::after { transform:scaleY(1); }
}
@media(prefers-reduced-motion:reduce) { .action::after,.preorder-submit::after,.contact-start button::after,.cookie-accept::after,.cookie-reject::after { transition:none; } }
html.keyboard-input .workflow-copy,html.keyboard-input .workflow-note,html.keyboard-input .workflow-dot::after { opacity:1; transform:none; }
html.keyboard-input .workflow-steps::after { transform:scaleY(1); }

html.keyboard-input .action::after,html.keyboard-input .preorder-submit::after,html.keyboard-input .contact-start button::after { transition:none; }
.company-overview .scene-inner { align-items:center; padding-top:140px; padding-bottom:100px; }
.company-overview .scene-content { align-items:flex-end; }
#company.company-overview .scene-description { width:82%; max-width:940px; gap:28px; }
.company-overview .scene-description h1 { font-size:clamp(48px,6.5vw,92px); line-height:1.1; letter-spacing:-.055em; }
.company-overview .scene-description p { max-width:560px; font-size:18px; line-height:1.6; }
.preorder-context-copy [data-product-price] { text-transform:lowercase; }
@media(max-width:800px) {
  .company-overview .scene-inner { align-items:center; padding-top:130px; padding-bottom:80px; }
  #company.company-overview .scene-description { width:100%; gap:24px; }
  .company-overview .scene-description h1 { font-size:clamp(35px,7.9vw,60px); }
  .company-overview .scene-description p { font-size:16px; }
  .company-overview .scene-content { align-items:flex-start; gap:32px; }
}
