/* Shared visual values for the homepage and About. */
:root {
  --font-family: Manrope, sans-serif;
  --type-body: 18px;
  --type-quote: 22px;
  --type-heading: 24px;
  --type-case-title: 34px;
  --type-case-title-mobile: 28px;
  --type-case-heading: 22px;
  --type-heading-compact: 22px;
  --type-small: 16px;
  --type-helper: 14px;
  --type-prompt: 12px;
  --type-menu-max: 27.6px;
  /* Closed portfolio line-height scale: 1.15, 1.4, 1.6, 1.8, 2. */
  --line-copy: 1.8;
  --line-prose: 1.8;
  --line-compact: 1.4;
  --line-helper: 1.4;
  --line-contact: 1.6;
  --line-identity: 1.6;
  --line-menu: 1.15;
  --line-spacious: 2;
  --weight-body: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --weight-extrabold: 800;
  --word-spacing-body: 1px;
  --tracking-body: .18px;
  --tracking-heading: .24px;
  --color-canvas: #FFFFFF;
  --color-ink: #232522;
  --color-about-teaser: #FFFFFF;
  --color-case-surface: #F8F8F8;
  --color-surface: #F5F5F7;
  --color-inverse: #1D1D1F;
  --color-inverse-muted: #A5A5A5;
  --border-subtle: #E0E0E0;
  --border-inverse: #6A6A6B;
  --color-muted: #7F8182;
  --color-disabled: #A7A8A7;
  --color-hover: #F2F2F2;
  --color-pressed: #E8E8E8;
  --color-inverse-hover: #2B2B2C;
  --color-inverse-pressed: #2F2F31;
  /* Opaque HEX; secondary text is shared on canvas and subtle surfaces. */
  --color-work-placeholder: #E5E5E7;
  --color-muted-on-placeholder: #77797A;
  --color-disabled-on-surface: #A1A2A2;
  --border-subtle-on-surface: #D8D8D9;
  --border-subtle-on-inverse: #1A1A1B;
  --border-control-hover: #C6C6C6;
  --border-control-pressed: #D2D2D2;
  --border-control-hover-pressed: #BFBFBF;
  --border-inverse-control-hover: #959596;
  --border-inverse-control-pressed: #767677;
  --width-page: 944px;
  --width-prose: 624px;
  --width-mobile: 600px;
  --gutter-page: 20px;
  --width-brief: 320px;
  --width-brief-label-ru: 140px;
  --height-brief-field: 56px;
  --gap-brief-manual: 9px;
  --height-control: 50px;
  --height-control-spacious: 54px;
  --size-target: 44px;
  --size-work-logo: 28px;
  --width-work-logo-wide: 34px;
  --size-icon: 24px;
  --size-menu-glyph: 28px;
  --offset-menu-glyph: 0px;
  --inset-menu-top: 104px;
  --gap-menu-items: 24px;
  --size-status: 12px;
  --size-avatar: 58px;
  --size-avatar-mobile: 72px;
  --size-recommendation-avatar: 54px;
  --gap-recommendation-indicators: 14px;
  --width-recommendation-active: 60px;
  --width-back-mobile: 74px;
  --height-about-photo-desktop: 460px;
  --height-about-photo-mobile: 338px;
  --offset-about-photo-background: 20px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-7: 28px;
  --space-8: 32px;
  --space-10: 40px;
  --radius-artwork: 4px;
  --radius-placeholder: 16px;
  --radius-control: 8px;
  --radius-field: 4px;
  --radius-panel: 40px;
  --radius-pill: 100px;
  --focus-width: 2px;
  --focus-offset-control: 4px;
  --focus-offset-link: 6px;
  --focus-offset-field: 2px;
  --focus-offset-tool: 3px;
  --radius-focus-link: 2px;
  --duration-control: .18s;
  --duration-underline: .3s;
  --duration-reading-reveal: 1.1s;
  --delay-reading-step: .24s;
  --offset-reading-reveal: 8px;
  --ease-reading-reveal: cubic-bezier(.37,0,.63,1);
  --overlap-recede: .025;
  --overlap-flatten-start: .75;
  --ease-out: cubic-bezier(.22,1,.36,1);
}

@font-face{font-family:Manrope;src:url('manrope.woff2?v=a30ddcd34970') format('woff2');font-style:normal;font-weight:400 800;font-display:swap}
:root{--canvas:var(--color-canvas);--ink:var(--color-ink);--content-width:var(--width-page);--ease:var(--ease-out);--scene-height:100svh;--scene-offset:0px;--scroll-travel:180px;--header-top:43px;--intro-content-height:370px;--intro-shift:0px}
*{box-sizing:border-box}
body{margin:0;min-width:var(--content-width);min-height:100svh;background:var(--canvas);color:var(--ink);font-family:var(--font-family);word-spacing:var(--word-spacing-body);-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased}
button,input,select,textarea{word-spacing:inherit}
/* One body role for the homepage, work descriptions and reading pages. */
.ui-body-copy,.introduction,.work-copy,.about-prose{font-size:var(--type-body);font-weight:var(--weight-body);line-height:var(--line-copy);letter-spacing:normal;word-spacing:var(--word-spacing-body)}
a{color:inherit;text-decoration:none}
/* Shared type recipes; page rules own geometry and responsive variants. */
.ui-title,.about-title h1,.footer h2{font:var(--weight-semibold) var(--type-heading)/var(--line-prose) var(--font-family);letter-spacing:var(--tracking-heading)}
.ui-strong-label,.introduction h1,.work-copy h3,.about-sections>section>h2{font:var(--weight-bold) var(--type-body)/var(--line-copy) var(--font-family);letter-spacing:normal}
/* Main case sections have their own hierarchy; nested carousel headings retain their component recipe. */
.ui-case-heading,.article-sections>section>h2{font:var(--weight-bold) var(--type-case-heading)/var(--line-prose) var(--font-family);letter-spacing:normal}
.ui-control-label,.agent-button,.work-details,.ui-back,.work-availability{font:var(--weight-body) var(--type-body)/var(--line-copy) var(--font-family);letter-spacing:var(--tracking-body);word-spacing:var(--word-spacing-body)}
/* Optional structured article copy; existing paragraph/section geometry stays shared. */
.prose-subheading{margin:0;font:var(--weight-bold) var(--type-body)/var(--line-copy) var(--font-family);letter-spacing:normal}
.prose-list{margin:0;padding-inline-start:var(--space-6)}
.prose-list li+li{margin-block-start:var(--space-2)}
.prose-list strong{font-weight:var(--weight-bold)}
.article-source-link{text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.prose-recommendations{align-self:center;width:min(var(--width-page),calc(100vw - var(--gutter-page) * 2))}
@media(max-width:767px), (max-width:1023px) and (pointer:coarse){
.prose-recommendations{width:100vw}
}
/* One ring recipe, with component-owned offset/color/corner variants. */
:where(a,button,textarea):is(:focus-visible,[data-ui-state="focus"]),:where(select,summary,[tabindex]):focus-visible{outline:var(--focus-width) solid var(--ui-focus-color,currentColor);outline-offset:var(--ui-focus-offset,var(--focus-offset-link));border-radius:var(--ui-focus-radius,var(--radius-focus-link))}
.header{position:absolute;inset:var(--header-top) 0 auto;width:var(--content-width);margin:0 auto;display:flex;align-items:center;justify-content:space-between;font-size:var(--type-body);line-height:var(--line-compact);font-weight:var(--weight-semibold)}
.header nav{display:flex;align-items:center;gap:var(--space-8)}
.header nav a.mobile-only{display:none}
.menu-toggle{--ui-focus-offset:var(--focus-offset-field);--ui-focus-radius:var(--radius-control);display:none;place-items:center;flex:none;width:var(--size-target);height:var(--size-target);margin:0;padding:0;border:0;background:transparent;color:var(--ink);cursor:pointer}
.menu-glyph{display:block;width:var(--size-menu-glyph);height:var(--size-menu-glyph);pointer-events:none}
.menu-stroke{transform-box:view-box;transform-origin:50% 50%;transition:transform .2s ease-in-out,opacity .2s ease-in-out}
.menu-stroke-top{transform:translateY(-4px) rotate(0deg)}
.menu-stroke-bottom{transform:translateY(4px) rotate(0deg)}
.menu-toggle[data-menu-icon="close"] .menu-stroke-top{transform:translateY(0) rotate(45deg)}
.menu-toggle[data-menu-icon="close"] .menu-stroke-bottom{transform:translateY(0) rotate(-45deg)}
.menu-toggle[data-icon-instant="true"] .menu-stroke{transition:none}
.header a{position:relative;display:block}
.header nav a::after,.footer-link-label::after{content:'';position:absolute;bottom:-5px;left:0;height:1px;width:100%;background:var(--link-underline-color,var(--border-subtle));transform:scaleX(0);transform-origin:right;transition:transform var(--duration-underline) var(--ease)}
.header nav a:is(:hover,[data-ui-state="hover"])::after,.header nav a:is(:focus-visible,[data-ui-state="focus"])::after{transform:scaleX(1);transform-origin:left}
.header nav a[aria-current="page"][aria-disabled="true"]{color:var(--color-disabled);cursor:default;pointer-events:none}
.header nav a[aria-current="page"]::after{display:none}
.agent-button,.work-details,.ui-back{--ui-focus-offset:var(--focus-offset-control);--ui-focus-radius:var(--radius-pill);display:inline-flex;align-items:center;height:var(--height-control);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);background:transparent;color:var(--ink);transition:background-color var(--duration-control) ease,border-color var(--duration-control) ease}
.agent-button,.work-details{appearance:none;cursor:pointer;align-self:flex-start;gap:var(--space-3);margin-top:4px;padding:var(--space-2) var(--space-6);white-space:nowrap}
.ui-back{justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-6) var(--space-2) var(--space-5)}
.ui-back img{display:block;flex:none}
.ui-back:is(:hover,[data-ui-state="hover"]){background:var(--color-hover);border-color:var(--border-control-hover)}
.ui-back:is(:active,[data-ui-state="pressed"]){background:var(--color-pressed);border-color:var(--border-control-pressed)}
.ui-back:is(:hover,[data-ui-state="hover"]):is(:active,[data-ui-state="pressed"]){border-color:var(--border-control-hover-pressed)}
.agent-button--light{--agent-hover-background:var(--color-hover);--agent-hover-border:var(--border-control-hover);--agent-pressed-background:var(--color-pressed);--agent-pressed-border:var(--border-control-pressed);--agent-hover-pressed-border:var(--border-control-hover-pressed)}
.agent-control{display:flex;flex-direction:column;align-items:flex-start;width:fit-content;max-width:100%;font-weight:var(--weight-body)}
.work-details{border-color:var(--work-border,var(--border-subtle));--ui-focus-color:var(--ink);width:159px;margin-top:0;justify-content:center}
.work-details span{width:109px}
a.work-details{text-decoration:none}
/* Mirror Back: shared icon, 8px gap and reversed 24px/20px label/icon insets. */
.ui-project-link{width:auto;gap:var(--space-2);padding:var(--space-2) var(--space-5) var(--space-2) var(--space-6)}
.ui-project-link span{width:auto}
.ui-project-link img{display:block;flex:none;width:var(--size-icon);height:var(--size-icon);transform:rotate(180deg)}
/* Individual translate keeps the right arrow's rotation and button geometry intact. */
.ui-back{--arrow-offset:-4px}
.ui-project-link{--arrow-offset:4px}
@media(min-width:768px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  :is(.ui-back,.ui-project-link)>img{transition:translate .28s cubic-bezier(.22,1,.36,1)}
  :is(.ui-back,.ui-project-link):not([aria-disabled="true"]):not(:disabled):is(:hover,[data-ui-state="hover"])>img{translate:var(--arrow-offset) 0}
}
.ds-preview[data-state="reduced-motion"] :is(.ui-back,.ui-project-link)>img{transition:none;translate:none}

.work-details:disabled,.work-details:disabled:is(:hover,[data-ui-state="hover"]),.work-details:disabled:is(:active,[data-ui-state="pressed"]){color:var(--work-disabled,var(--color-disabled));background:transparent;border-color:var(--work-border,var(--border-subtle));cursor:default}
.agent-button-label{position:relative;flex:none;width:105px;text-align:left}
.agent-button-label>span{display:block;transition:opacity .32s cubic-bezier(.4,0,.2,1),visibility 0s linear;transition-delay:var(--agent-label-delay,0s),var(--agent-visibility-delay,0s)}
.agent-button-idle{--agent-label-delay:.36s}
.agent-button-label>.agent-button-copied{position:absolute;inset:0 auto 0 -6px;display:flex;align-items:center;gap:var(--space-2);width:109px;opacity:0;visibility:hidden;--agent-label-delay:0s;--agent-visibility-delay:.32s}
.agent-button-copied>img{display:block;flex:none;width:var(--size-icon);height:var(--size-icon)}
.agent-button-copied>span{flex:none;width:77px}
.agent-button:lang(ru){gap:var(--space-4)}
.agent-button:lang(ru) .agent-button-label{width:var(--width-brief-label-ru)}
.agent-button:lang(ru) .agent-button-copied{width:max-content}
.agent-button:lang(ru) .agent-button-copied>span{width:auto}
.agent-button.is-copied .agent-button-idle{opacity:0;--agent-label-delay:0s}
.agent-button.is-copied .agent-button-copied{opacity:1;visibility:visible;--agent-label-delay:.36s;--agent-visibility-delay:0s}
.agent-button-logos{display:flex;align-items:center;gap:6px;flex:none}
.agent-button-logos picture{display:block;flex:none}
.agent-button-logos img{display:block;flex:none}
.agent-logo-copilot{position:relative;display:block;flex:none;width:var(--size-icon);height:var(--size-icon);overflow:hidden}
.agent-logo-copilot img{position:absolute;left:.9672px;top:.9864px}
.work-details:is(:hover,[data-ui-state="hover"]){background:var(--color-hover);border-color:var(--border-control-hover)}
.agent-button:not(:disabled)[data-ui-state="hover"]{background:var(--agent-hover-background);border-color:var(--agent-hover-border)}
@media(min-width:768px) and (hover:hover) and (pointer:fine){
.agent-button:not(:disabled):hover{background:var(--agent-hover-background);border-color:var(--agent-hover-border)}
}
.agent-button:not(:disabled):is(:active,[data-ui-state="pressed"]){background:var(--agent-pressed-background);border-color:var(--agent-pressed-border)}
.agent-button:not(:disabled)[data-ui-state="hover"]:is(:active,[data-ui-state="pressed"]){border-color:var(--agent-hover-pressed-border)}
@media(min-width:768px) and (hover:hover) and (pointer:fine){
.agent-button:not(:disabled):hover:is(:active,[data-ui-state="pressed"]){border-color:var(--agent-hover-pressed-border)}
}
.work-details:not(:disabled):is(:active,[data-ui-state="pressed"]){background:var(--color-pressed);border-color:var(--border-control-pressed)}
.work-details:not(:disabled):is(:hover,[data-ui-state="hover"]):is(:active,[data-ui-state="pressed"]){border-color:var(--border-control-hover-pressed)}
/* Manual copy uses the same mounted header/icons, with the compact Figma field. */
[data-agent-control].is-manual-copy{align-items:flex-start;gap:var(--gap-brief-manual);width:min(var(--width-brief),100%);max-width:100%}
[data-agent-control].is-manual-copy>.agent-button{position:relative;align-self:flex-start;height:auto;min-height:0;margin:0;padding:0;border:0;border-radius:var(--radius-field);background:transparent;cursor:default;opacity:1;-webkit-text-fill-color:currentColor}
.is-manual-copy .agent-button--light .agent-button-logos>img:nth-child(4){order:1}
.agent-copy-fallback{--brief-muted:var(--color-muted);--brief-field-border:var(--border-subtle);display:flex;flex-direction:column;gap:var(--gap-brief-manual);width:100%;font-size:var(--type-helper);font-weight:var(--weight-body);line-height:var(--line-helper);letter-spacing:normal;color:var(--brief-muted)}
.agent-copy-fallback[hidden]{display:none}
.agent-copy-fallback label{display:block;min-height:24px}
.agent-copy-fallback textarea{--ui-focus-offset:var(--focus-offset-field);--ui-focus-radius:var(--radius-field);--ui-focus-color:var(--ink);display:block;width:100%;height:var(--height-brief-field);min-height:var(--height-brief-field);padding:8px 10px 8px 14px;border:1px solid var(--brief-field-border);border-radius:var(--radius-field);background:transparent;color:var(--brief-muted);font:var(--weight-body) var(--type-prompt)/var(--line-helper) var(--font-family);letter-spacing:normal;overflow-wrap:anywhere;resize:none;overflow:hidden}
.agent-profile-link{text-decoration:underline;text-underline-offset:4px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(prefers-reduced-motion:reduce){
.agent-button,.work-details,.agent-button-label>span,.header nav a::after{transition:none}
}
@media(max-width:767px), (max-width:1023px) and (pointer:coarse){
body{min-width:0}
.header{inset:calc(23px + env(safe-area-inset-top)) 10px auto var(--gutter-page);width:auto;max-width:none;min-height:var(--size-target);margin:0;font-size:var(--type-body);line-height:var(--line-identity);z-index:3}
.menu-toggle{display:grid}
.menu-glyph{position:relative;top:var(--offset-menu-glyph)}
.header.menu-animating .menu-toggle{transition:none}
.nav-pending .menu-toggle{opacity:0}
html.mobile-menu-open{overflow:hidden}
body.mobile-menu-open{position:fixed;inset-inline:0;top:var(--menu-scroll-y);width:var(--menu-page-width,100%)}
.header nav{display:none;position:fixed;inset:0;height:100dvh;min-height:100svh;padding:calc(var(--inset-menu-top) + env(safe-area-inset-top)) var(--space-8) calc(var(--space-6) * 2 + env(safe-area-inset-bottom));background:var(--canvas);gap:var(--gap-menu-items);align-items:center;justify-content:flex-start;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;z-index:2}
.header.menu-open nav{display:flex}
.header.menu-open{position:fixed;inset:auto var(--menu-header-right,10px) auto var(--menu-header-left,var(--gutter-page));top:var(--menu-header-top,23px);width:auto;height:var(--menu-header-height,var(--size-target));min-height:var(--menu-header-height,var(--size-target));z-index:10}
.header.menu-open>.identity{position:absolute;left:var(--menu-identity-left,0px);top:var(--menu-identity-top,8px);opacity:var(--menu-identity-opacity,1)!important;transform:scale(var(--menu-identity-scale,1))!important;transform-origin:top left}
.header.menu-open .menu-toggle{position:absolute;top:var(--menu-toggle-top,0px);right:var(--menu-toggle-right,0px);width:var(--menu-toggle-width,var(--size-target));height:var(--menu-toggle-height,var(--size-target));margin:0;transform:none!important;z-index:3}
.header.menu-open .menu-glyph{width:calc(var(--size-menu-glyph) * var(--menu-icon-scale,1));height:calc(var(--size-menu-glyph) * var(--menu-icon-scale,1))}
.header nav a{display:flex;flex-shrink:0;align-items:center;justify-content:center;min-height:var(--size-target);padding:calc(var(--space-2) / 2) 0;font-size:var(--type-menu-max);line-height:var(--line-compact);text-align:center}
.header nav a.mobile-only{display:flex}
.header nav a.desktop-only{display:none}
.header nav a::after{display:none}
.header nav a{--ui-focus-offset:0px;--ui-focus-radius:var(--radius-control)}
html:is(:not(.navigation-js),.mobile-navigation-fallback) .header{flex-wrap:wrap;gap:var(--space-2);right:var(--gutter-page)}
html:is(:not(.navigation-js),.mobile-navigation-fallback) .menu-toggle{display:none}
html:is(:not(.navigation-js),.mobile-navigation-fallback) .header nav{display:flex;position:static;inset:auto;width:100%;height:auto;min-height:0;padding:0;background:none;flex-direction:row;flex-wrap:wrap;gap:var(--space-2) var(--space-4);justify-content:flex-start;overflow:visible;z-index:auto}
html:is(:not(.navigation-js),.mobile-navigation-fallback) .header nav a{min-height:var(--size-target);padding:4px 0;font-size:var(--type-small)}
.agent-button,.work-details{height:var(--height-control-spacious);padding-top:10px;padding-bottom:10px}
.agent-button{margin-top:8px;padding-inline:clamp(8px,calc((100vw - 303px) / 2),24px)}
}
@media(prefers-reduced-motion:reduce){
.menu-toggle,.menu-stroke{transition:none!important}
.nav-pending .menu-toggle{opacity:1}
}
.footer{--footer-heading-height:clamp(48px,calc((var(--scene-height) - 440px) * .24 + 80px),138px);--footer-group-gap:clamp(8px,calc((var(--scene-height) - 440px) * .14),42px);--footer-copy-height:58px;--footer-center-shift:18px;--footer-content-height:calc(var(--footer-copy-height) + 35px * 3 + var(--space-7) * 2 + var(--height-control-spacious) + var(--footer-group-gap) * 2);position:relative;z-index:var(--footer-layer,8);display:flex;flex-direction:column;align-items:center;--footer-top-space:max(8px,calc((var(--scene-height) - var(--footer-content-height)) / 2 + var(--footer-center-shift) - var(--footer-heading-height)));gap:0;padding-top:var(--footer-top-space);height:var(--scene-height);min-height:0;overflow:auto;border-radius:var(--footer-radius,var(--radius-panel)) var(--footer-radius,var(--radius-panel)) 0 0;background:var(--color-inverse);color:var(--color-canvas)}
.footer-inner{display:contents}
.footer-native-overlap .works-screen:last-of-type{position:sticky;top:var(--footer-last-top,0px)}
.footer h2{display:flex;align-items:center;justify-content:center;flex:none;width:var(--content-width);max-width:100%;height:var(--footer-heading-height);margin:0;text-align:center}
.footer h2:focus{outline:none}
.footer-content{display:flex;flex-direction:column;align-items:center;flex:none;gap:var(--footer-group-gap);width:calc(100% - var(--gutter-page) * 2);max-width:464px;padding-bottom:var(--scene-safe-bottom,env(safe-area-inset-bottom))}
.footer-description{width:100%;min-height:58px;margin:0;font-size:var(--type-body);font-weight:var(--weight-body);line-height:var(--line-contact);letter-spacing:var(--tracking-body);text-align:center;text-wrap:pretty;overflow-wrap:break-word}
.footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:35px;gap:var(--space-7) var(--space-4);width:100%;max-width:304px;font-size:var(--type-body);font-weight:var(--weight-semibold);line-height:var(--line-contact);letter-spacing:var(--tracking-body);text-align:center}
.footer-links a{justify-self:stretch}
.footer-link-label{position:relative;display:inline-block}
.footer-link-label{--link-underline-color:var(--border-inverse)}
.footer-links a:is(:focus-visible,[data-ui-state="focus"]) .footer-link-label::after{transform:scaleX(1);transform-origin:left}
.footer-agent{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);width:100%;color:var(--color-canvas)}
.footer-agent-button{--agent-hover-background:var(--color-inverse-hover);--agent-hover-border:var(--border-inverse-control-hover);--agent-pressed-background:var(--color-inverse-pressed);--agent-pressed-border:var(--border-inverse-control-pressed);--agent-hover-pressed-border:var(--border-inverse-control-hover);align-self:center;height:var(--height-control-spacious);margin:0;padding:10px var(--space-6);border-color:var(--border-inverse);color:var(--color-canvas)}
.footer-logo-copilot{position:relative;display:block;flex:none;width:var(--size-icon);height:var(--size-icon)}
.footer-logo-copilot img{position:absolute;left:.9672px;top:.9864px}
.footer-agent .agent-copy-fallback{--brief-muted:var(--color-inverse-muted);--brief-field-border:var(--border-inverse)}
.footer-agent .agent-copy-fallback textarea{--ui-focus-color:var(--color-canvas)}
@media(hover:hover) and (pointer:fine){
.footer-links a:is(:hover,[data-ui-state="hover"]) .footer-link-label::after{transform:scaleX(1);transform-origin:left}
}
@media(max-width:767px), (max-width:1023px) and (pointer:coarse){
.footer{display:block;height:auto;min-height:100lvh;overflow:visible;padding-top:0;--footer-heading-height:clamp(48px,calc((var(--scene-height) - 440px) * .24 + 80px),140px);--footer-group-gap:clamp(8px,calc((var(--scene-height) - 360px) * .2142857143),60px);--footer-copy-height:87px;--footer-center-shift:clamp(0px,calc((var(--scene-height) - 480px) * .1515625),48.5px)}
.footer-inner{position:sticky;top:0;display:flex;flex-direction:column;align-items:center;gap:0;padding-top:var(--footer-top-space);min-height:var(--scene-height)}
.footer-content{max-width:400px}
.footer-links{max-width:332px;column-gap:var(--space-2)}
.footer-description{min-height:87px}
}
@media(max-width:350px){
.footer-agent-button{padding-inline:clamp(8px,calc((100vw - 303px) / 2),24px)}
}
@media(max-width:767px), (max-width:1023px) and (pointer:coarse){
.agent-button:lang(ru){padding-inline:clamp(5px,calc((100vw - 342px) / 2),24px)}
}
@media(max-width:359px){
.agent-button:lang(ru){gap:var(--space-2);padding-inline:5px}
.agent-button:lang(ru) .agent-button-logos{gap:0}
.agent-button:lang(ru) .agent-button-copied{left:-4px;gap:0}
}
@media(prefers-reduced-motion:reduce){
.footer-link-label::after{transition:none}
}

/* Works company identities retain native colors and SVG aspect ratios. */
.work-company-title{display:flex;align-items:center;gap:var(--space-2)}
.work-company-title>span{min-width:0}
.work-company-logo{display:block;flex:none;width:var(--size-work-logo);height:var(--size-work-logo);object-fit:contain}
.work-company-logo-wide{width:var(--width-work-logo-wide)}

:root { color-scheme: light; }
:root[data-color-scheme="dark"] {
    color-scheme: dark;
    --color-canvas: #171819;
    --color-ink: #EDEEEB;
    --color-about-teaser: #171819;
    --color-case-surface: #202123;
    --color-surface: #202123;
    --color-inverse: #101112;
    --color-inverse-muted: #A5A5A5;
    --color-muted: #A5A7A8;
    --color-disabled: #777A7B;
    --color-hover: #27292A;
    --color-pressed: #303334;
    --color-inverse-hover: #242628;
    --color-inverse-pressed: #2C2F31;
    --color-work-placeholder: #2B2D30;
    --color-muted-on-placeholder: #B3B5B6;
    --color-disabled-on-surface: #7D8082;
    --border-subtle: #414447;
    --border-subtle-on-surface: #484B4E;
    --border-subtle-on-inverse: #333638;
    --border-inverse: #55595D;
    --border-control-hover: #696E72;
    --border-control-pressed: #7A8084;
    --border-control-hover-pressed: #8A9094;
    --border-inverse-control-hover: #7B8186;
    --border-inverse-control-pressed: #92999E;
  }
:root[data-color-scheme="dark"] .ds-page { --ds-color-secondary: var(--color-muted); }
:root[data-color-scheme="dark"] .ds-preview[data-kind~="dark"] { color: var(--color-ink); }
:root[data-color-scheme="dark"] .recommendations-dot-track { background: var(--color-disabled); }
:root[data-color-scheme="dark"] .footer, :root[data-color-scheme="dark"] .footer-agent, :root[data-color-scheme="dark"] .footer-agent-button { color: var(--color-ink); }
:root[data-color-scheme="dark"] .footer-agent .agent-copy-fallback textarea { --ui-focus-color: var(--color-ink); }
:root[data-color-scheme="dark"] .agent-button--light .agent-button-copied > img, :root[data-color-scheme="dark"] .agent-button--light img[src*="brief-openai.svg"], :root[data-color-scheme="dark"] .agent-button--light img[src*="brief-cursor.svg"], :root[data-color-scheme="dark"] .ui-back img, :root[data-color-scheme="dark"] .ui-project-link img { filter: invert(1); }
@media (prefers-color-scheme: dark) {
:root:not([data-color-scheme="light"]) {
    color-scheme: dark;
    --color-canvas: #171819;
    --color-ink: #EDEEEB;
    --color-about-teaser: #171819;
    --color-case-surface: #202123;
    --color-surface: #202123;
    --color-inverse: #101112;
    --color-inverse-muted: #A5A5A5;
    --color-muted: #A5A7A8;
    --color-disabled: #777A7B;
    --color-hover: #27292A;
    --color-pressed: #303334;
    --color-inverse-hover: #242628;
    --color-inverse-pressed: #2C2F31;
    --color-work-placeholder: #2B2D30;
    --color-muted-on-placeholder: #B3B5B6;
    --color-disabled-on-surface: #7D8082;
    --border-subtle: #414447;
    --border-subtle-on-surface: #484B4E;
    --border-subtle-on-inverse: #333638;
    --border-inverse: #55595D;
    --border-control-hover: #696E72;
    --border-control-pressed: #7A8084;
    --border-control-hover-pressed: #8A9094;
    --border-inverse-control-hover: #7B8186;
    --border-inverse-control-pressed: #92999E;
  }
:root:not([data-color-scheme="light"]) .ds-page { --ds-color-secondary: var(--color-muted); }
:root:not([data-color-scheme="light"]) .ds-preview[data-kind~="dark"] { color: var(--color-ink); }
:root:not([data-color-scheme="light"]) .recommendations-dot-track { background: var(--color-disabled); }
:root:not([data-color-scheme="light"]) .footer, :root:not([data-color-scheme="light"]) .footer-agent, :root:not([data-color-scheme="light"]) .footer-agent-button { color: var(--color-ink); }
:root:not([data-color-scheme="light"]) .footer-agent .agent-copy-fallback textarea { --ui-focus-color: var(--color-ink); }
:root:not([data-color-scheme="light"]) .agent-button--light .agent-button-copied > img, :root:not([data-color-scheme="light"]) .agent-button--light img[src*="brief-openai.svg"], :root:not([data-color-scheme="light"]) .agent-button--light img[src*="brief-cursor.svg"], :root:not([data-color-scheme="light"]) .ui-back img, :root:not([data-color-scheme="light"]) .ui-project-link img { filter: invert(1); }
}
