html {scroll-behavior:auto;touch-action:pan-y pinch-zoom}
body.presentation {margin:0;overflow-x:clip;overflow-anchor:none;background:#fff;color:#161f84}
.intro-track {height:300svh;position:relative}
.intro-sticky {position:sticky;top:0;height:100svh;overflow:clip;background:#fff}
.intro-canvas,.page-canvas {position:relative;transform-origin:0 0;width:1200px;height:600px;--ox:0px;--btm:852px}
.intro-canvas>.layer,.intro-scene {position:absolute;inset:0;overflow:clip}
.intro-canvas>.s1 {z-index:1}
.intro-canvas>.outcome {z-index:2}
.intro-canvas>.s3 {z-index:3}
.flow-pages {position:relative;z-index:3}
.flow-page {position:sticky;top:var(--sticky-top,0px);background:#fff;overflow:clip;min-height:100svh}
.page-canvas>.layer {opacity:1;pointer-events:auto}
.page-canvas #swingScene {opacity:1;pointer-events:auto}
.page-canvas .s4-inner {height:740px}
.page-canvas .s4-clip {overflow:visible}
.desktop .sys-head {top:50px;font-size:270px}
.desktop .sys-rows {top:333px}
.desktop .sys-vline {display:none}
.desktop .srow {height:63px}
.desktop .srow.open {height:134px}
.desktop .srow .word {font-size:29px}
.desktop .srow .desc {font-family:Inter,sans-serif;font-size:16px;line-height:20px;top:52px;width:430px;text-transform:none}
.desktop .sys-cta {top:671px;left:90px}
.desktop .sys-cta-shadow {top:675px;left:100px}
.desktop .sys-video {transform:none;top:-14px}
.srow,.m-srow {cursor:pointer}
.srow:focus-visible,.m-srow:focus-visible {outline:3px solid #00e67e;outline-offset:-5px}
.m-sdesc {font-size:15px;line-height:18px;top:111px;text-transform:none}
.m-sbig {font-size:98px}
.m-srow.open {height:204px}
.m-sblocks {top:695px}
#swingScene .chto,#swingScene .m-chto {opacity:1;transform:none}
.desktop #swingScene .monkey {transform-origin:50% 50%}
.desktop #swingScene .tent img {width:auto;height:auto}
.desktop #swingScene .tent1 {left:0;top:0;width:427.477px;height:357.105px;transform-origin:0 0;transform:matrix(-.922073424,-.387014985,-.387014985,.922073424,461.36969,152.57555)}
.desktop #swingScene .tent2 {left:0;top:0;width:345.521px;height:288.641px;transform-origin:0 0;transform:matrix(-.922097325,.386957973,-.386957973,-.922097325,379.95190,425.98157)}
.desktop #swingScene .tent3 {left:0;top:0;width:339.038px;height:285.047px;transform-origin:0 0;transform:matrix(-.033371482,.999442995,-.999442995,-.033371482,524.31104,78.44978)}
.below-wrap,.m-below-wrap {position:relative;z-index:5;background:#161f84;margin:0;overflow:clip}
.below,.m-below {transform-origin:0 0}
.fixnav {height:75px;pointer-events:none;z-index:15}
.fixnav nav {top:38px;pointer-events:auto;display:flex;align-items:center}
.fixnav a {display:block;padding:8px 0;line-height:20px}
.presentation-button {border:0;background:#161f84;color:#fff;box-shadow:6px 4px 0 #00e67e;border-radius:7px;font-family:'Druk Wide Cyr',sans-serif;font-weight:700;font-size:18px;letter-spacing:-.07em;text-transform:uppercase;text-decoration:none;display:flex;align-items:center;justify-content:center;cursor:pointer;min-height:44px;padding:8px 16px;line-height:1.3;text-align:center}
.presentation-button.secondary {background:white;color:#161f84;box-shadow:6px 4px 0 #161f84}
.presentation-button:focus-visible,a:focus-visible,button:focus-visible {outline:3px solid currentColor;outline-offset:5px}
.outcome {background:#00e67e;opacity:0;pointer-events:none}
.outcome-state {position:absolute;inset:0;visibility:hidden}
.outcome-state.is-active {visibility:visible}
.outcome-day {position:absolute;left:76px;top:99px;margin:0;font:700 50px 'Druk Wide Cyr',sans-serif;text-transform:uppercase}
.outcome-title {position:absolute;left:76px;top:176px;width:484px;height:291px;object-fit:fill}
.cancelled .outcome-title {left:66px;width:411px}
.outcome-monkey {position:absolute;left:525px;top:29px;width:701px;height:579px;object-fit:contain}
.cancelled .outcome-monkey {left:548px;top:41px;height:567px}
.outcome-cta {position:absolute;left:76px;top:498px;width:276px;height:48px;box-shadow:7px 4px 0 #fff;z-index:2;font-size:20px}
.outcome-tag {position:absolute;background:#fff;color:#00c96e;font:700 16px 'Druk Wide Cyr',sans-serif;text-transform:uppercase;padding:7px 9px;white-space:nowrap;opacity:0}
.soldout .tag-one {left:943px;top:147px}
.soldout .tag-two {left:623px;top:443px}
.soldout .tag-three {left:858px;top:505px}
.cancelled .tag-one {left:974px;top:155px}
.cancelled .tag-two {left:741px;top:308px}
.cancelled .tag-three {left:628px;top:452px}
.outcome.is-running .is-active .outcome-tag {animation:tagIn .55s ease both,tagFloat 2.4s ease-in-out .55s infinite alternate}
.outcome.is-running .is-active .tag-two {animation-delay:.18s,.73s}
.outcome.is-running .is-active .tag-three {animation-delay:.36s,.91s}
@keyframes tagIn {from{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}
@keyframes tagFloat {from{transform:translateY(0)}to{transform:translateY(-5px)}}
.technology-screen {position:absolute;inset:0;background:#fff;overflow:clip;color:#161f84}
.tech-eyebrow {position:absolute;left:90px;top:91px;font:700 30px 'Druk Wide Cyr',sans-serif;text-transform:uppercase;margin:0}
.tech-numbers {position:absolute;left:90px;top:131.195px;margin:0;line-height:0}
.tech-numbers img {display:block}
.tech-market-figure {position:absolute;left:413px;top:16px;width:1008px;height:584px;overflow:hidden;transform:scaleX(-1);pointer-events:none}
.tech-market-figure img {position:absolute;left:-.202px;top:0;width:1043.784px;height:584px;max-width:none}
.tech-robot-side {position:absolute;left:1187.621px;top:53px;width:158px;height:334px;overflow:hidden;transform:scaleX(-1);pointer-events:none}
.tech-robot-side img {position:absolute;left:0;top:0;width:613.546px;height:334px;max-width:none}
.tech-robot-top {position:absolute;left:1006px;top:-135px;width:243.352px;height:247.96px;display:flex;align-items:center;justify-content:center;pointer-events:none}
.tech-robot-crop {position:relative;flex:none;width:185.422px;height:169.817px;overflow:hidden;rotate:-122.95deg;scale:-1 1}
.tech-robot-crop img {position:absolute;left:.779px;top:.866px;width:199.124px;height:168.951px;max-width:none}
.tech-content {position:absolute;left:87px;top:358px;width:500px;font-family:Inter,sans-serif;letter-spacing:-.06em}
.tech-content h3 {font-size:23px;line-height:30px;font-weight:700;margin:0 0 10px}
.tech-content p {width:483px;font-size:15px;line-height:20px;margin:0}
.tech-cta {position:absolute;left:85px;top:527px;width:164px;height:39px;min-height:0;padding:0;background:transparent;box-shadow:none;font-size:15px;line-height:18px;isolation:isolate;white-space:nowrap}
.tech-cta::before {content:'';position:absolute;left:3px;top:3px;width:163px;height:39px;border-radius:7px;background:#00e67e;z-index:-2}
.tech-cta::after {content:'';position:absolute;inset:0;border-radius:7px;background:#161f84;z-index:-1}
.tech-launch-shadow {position:absolute;left:632px;top:540px;pointer-events:none}
.tech-launch-figure {position:absolute;left:638px;top:31px;width:562px;height:562px;object-fit:cover;pointer-events:none}
.tech-launch-title {position:absolute;left:85px;top:49px;margin:0;font:400 302.869px/normal 'Roboto Flex',sans-serif;letter-spacing:-3.02869px;font-variation-settings:'GRAD' 53,'XOPQ' 96,'XTRA' 468,'YOPQ' 79,'YTAS' 750,'YTDE' -199,'YTFI' 738,'YTLC' 514,'YTUC' 712,'wdth' 25,'opsz' 144;text-transform:uppercase;color:#00e67e;text-shadow:5px 3px 0 #161f84;white-space:nowrap}
.tech-launch .tech-content p {width:466px}
.mobile .intro-canvas,.mobile .page-canvas {width:393px;height:852px}
.mobile .intro-sticky {background:var(--scene-background,#fff)}
.mobile .m-burger {position:fixed;left:auto;right:20px;top:24px;width:40px;height:32px;padding:5px;border:0;border-radius:4px;background:#fff;z-index:30;opacity:1}
.mobile .outcome-day {left:31px;top:30px;font-size:45px}
.mobile .outcome-title {left:31px;top:92px;width:334px;height:201px}
.mobile .cancelled .outcome-title {left:31px;top:87px;width:331px;height:218px}
.mobile .outcome-monkey {left:-177px;top:288px;width:684px;height:565px}
.mobile .cancelled .outcome-monkey {left:-145px;top:304px;width:701px;height:567px}
.mobile .outcome-cta {left:31px;top:769px;width:326px;height:48px}
.mobile .soldout .tag-one {left:231px;top:370px}
.mobile .soldout .tag-two {left:1px;top:592px}
.mobile .soldout .tag-three {left:74px;top:688px}
.mobile .cancelled .tag-one {left:116px;top:678px}
.mobile .cancelled .tag-two {left:180px;top:349px}
.mobile .cancelled .tag-three {left:14px;top:588px}
.mobile .tech-eyebrow {left:36px;top:22px;width:328px;font-size:30px;line-height:36px}
.mobile .tech-numbers {left:32px;top:108.913px}
.mobile .tech-market-figure {left:-279px;top:346px;width:905px;height:506px}
.mobile .tech-market-figure img {left:0;width:905px;height:506px;object-fit:cover}
.mobile .tech-content {left:32px;top:291px;width:349px}
.mobile .tech-content p {width:349px;font-size:14px;line-height:20px}
.mobile .tech-cta {left:32px;top:768px;width:325.276px;height:43.776px}
.mobile .tech-cta::before {left:6.207px;top:3.367px;width:322.793px;height:43.776px}
.mobile .tech-launch-title {left:27px;top:0;font-size:220.87px;letter-spacing:-2.2087px}
.mobile .tech-launch .tech-content {left:27px;top:235px;width:338px}
.mobile .tech-launch .tech-content p {width:338px}
.mobile .tech-launch-figure {left:-40.42px;top:384px;width:448.417px;height:448.417px}
.mobile .tech-launch-shadow {left:-45.2px;top:790.13px}
.mobile .tech-launch .tech-cta {top:783px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.outcome .is-active .outcome-tag{opacity:1}}

/* Keep each screen in place until the next one slides over it. */
.flow-page {position:sticky}
.below > .case-section,.m-below > .case-section {position:relative;top:auto}
.below > .s7,.m-below > .m7 {position:relative;margin-top:0;overflow:clip}
.intro-canvas>.outcome {overflow:visible}
.outcome-state {bottom:calc(-1 * var(--scene-bottom,0px))}
.outcome .outcome-monkey {top:auto;bottom:-2px;object-position:center bottom}

/* Keep the animated ticket frame visible outside its design canvas. */
.desktop .intro-canvas > .s1,.mobile .intro-canvas > .s1 {overflow:visible}
.desktop .video-box {
 left:var(--desktop-ticket-left,221.3px);top:var(--desktop-ticket-top,0px);
 width:var(--desktop-ticket-width,1308.7px);height:var(--desktop-ticket-height,784.777px)
}
.mobile .m-tickets {
 left:var(--ticket-left,-327px);top:var(--ticket-top,42.9px);
 transform:scale(var(--ticket-scale,1));transform-origin:0 0
}
/* Let the chain video reach the viewport edges beyond the centered design canvas. */
.intro-canvas > .s3 {overflow:visible}
.intro-canvas > .s3::before {
 content:'';position:absolute;z-index:-1;background:#000;
 left:var(--intro-view-left,0px);top:var(--intro-view-top,0px);
 width:var(--intro-view-width,1200px);height:var(--intro-view-height,600px)
}
.desktop .s3-video,.desktop .s3-grad {
 left:var(--intro-view-left,0px);top:var(--intro-view-top,0px);
 width:var(--intro-view-width,1200px);height:var(--intro-view-height,600px)
}
.desktop .s3-video video,.mobile .m-chain video,.sys-video video {object-fit:fill}
.mobile .m-chain {
 width:var(--chain-length,950px);height:var(--chain-cross,393px);
 left:var(--chain-left,-278.5px);top:var(--chain-top,340.5px)
}
.mobile .m-chain-veil {height:var(--btm,852px)}
.mobile .m-chain-veil > div {width:var(--btm,852px)}

.desktop .sys-head,.desktop .sys-rows,.desktop .sys-cta {left:var(--system-left,90px)}
.desktop .sys-cta-shadow {left:calc(var(--system-left,90px) + 10px)}

/* Give the calls to action room before the next screen slides over them. */
.desktop .cta2-btn {top:470px}
.desktop .cta2-shadow {top:474px}
.mobile #system .m-btn2 {top:calc(var(--btm,852px) - 117px)}
.mobile #system .m-btn2-sh {top:calc(var(--btm,852px) - 110.93px)}
.mobile #swing .m-btn {top:calc(var(--btm,852px) - 117px)}
.mobile #swing .m-btn-shadow {top:calc(var(--btm,852px) - 110.93px)}

/* Mobile: the intro fills the live viewport, so hiding the URL bar uncovers no strip. */
.mobile .intro-sticky {height:100dvh}
.mobile .outcome-cta {top:calc(var(--btm,852px) - 83px)}

/* Artwork reaches the viewport edges, without being cut by the design canvas. */
.technology-screen,.tech-market-figure {overflow:visible}
.mobile .page-canvas > .layer {overflow:visible}
.mobile .tech-market-figure img {object-fit:contain}

/* Mobile spacing is expressed in real pixels, compensated for canvas scaling. */
.mobile :is(.m-logo,.m-bolshe,.m-reklama,.m-reshenie,.m-t1,.m-chip-analiz,.m-chip-reklama,.m-sys-head,.m-sys-rows,.m-peresyad,.outcome-day,.outcome-title) {left:var(--content-left,24px)}
.mobile :is(.m-bolshe,.m-reklama,.m-reshenie,.m-t1,.m-sys-head,.m-sys-rows,.m-peresyad) {width:var(--content-width,345px)}
.mobile .m-t2 {left:var(--content-left);right:auto;width:var(--content-width);text-align:right}
.mobile .m-burger {right:24px;width:44px;height:44px;padding:8px}
.mobile .m-reshenie {height:calc(var(--content-width) * .629)}
.mobile .m-peresyad {height:calc(var(--content-width) * .935)}
.mobile .m-peresyad > img {width:100%;height:auto}
.mobile .m-peresyad img.m-peresyad-word {left:1.1%;top:21.72%;width:100.8%;height:auto}
.mobile .outcome-title {width:var(--content-width);height:auto}
.mobile .m-srow {min-height:var(--ui-touch)}
.mobile .m-sdesc,.mobile .m-sword {width:calc(var(--content-width) - 66px)}

.mobile :is(.m-btn,.m-btn2,.presentation-button:not(.tech-cta),.case-actions > *,.m7-btn,.case-filters button) {
 box-sizing:border-box;display:flex;align-items:center;justify-content:center;
 height:var(--ui-control-height,52px);min-height:var(--ui-control-height,52px);
 width:calc(var(--content-width,345px) - var(--ui-shadow,4px));
 padding:0 var(--ui-padding,16px);border:0;
 border-radius:var(--ui-radius,8px);background:#161f84;color:#fff;
 box-shadow:var(--ui-shadow,4px) var(--ui-shadow,4px) 0 #00e67e;
 font:700 var(--ui-font-size,18px)/var(--ui-line-height,24px) 'Druk Wide Cyr',sans-serif;
 letter-spacing:-.055em;text-transform:uppercase;text-align:center;text-decoration:none;
 cursor:pointer;white-space:normal;
}
.mobile :is(.m-btn,.m-btn2,.presentation-button:not(.tech-cta),.m7-btn) {left:var(--content-left)}
.mobile .s1 .m-btn,.mobile .s3 .m-btn,.mobile #system .m-btn2,.mobile #swing .m-btn,
.mobile .outcome-cta {
 top:calc(var(--viewport-bottom,852px) - var(--ui-control-height) - var(--ui-gap) - var(--ui-shadow));
}
.mobile :is(.m-btn-shadow,.m-btn2-sh,.m7-follow-sh,.m7-contact-sh) {display:none}
.mobile .case-more {border:0!important}
.mobile :is(.m-btn,.m-btn2,.presentation-button:not(.tech-cta),.case-actions > *,.m7-btn,.case-filters button):focus-visible {outline:3px solid #00e67e;outline-offset:4px}
.mobile .case-mobile {padding:var(--ui-gap) var(--content-left);min-height:0}
.mobile .case-mobile .m6-head {position:relative;left:0;top:auto;width:var(--content-width)}
.mobile .case-mobile .case-filters {position:relative;left:auto;right:auto;top:auto;width:100%;gap:12px;margin:var(--ui-gap) 0}
.mobile .case-mobile .case-filters button {justify-content:flex-start;text-align:left;font:700 var(--ui-font-size)/var(--ui-line-height) 'Druk Wide Cyr',sans-serif;min-height:var(--ui-control-height);padding:0 var(--ui-padding);width:calc(var(--content-width) - var(--ui-shadow))}
.mobile .case-mobile .case-actions {gap:16px;margin-top:var(--ui-gap);padding-bottom:var(--ui-shadow)}
.mobile .m7 {height:auto;min-height:0;padding:var(--ui-gap) var(--content-left) calc(var(--ui-gap) * 3);display:flex;flex-direction:column;gap:var(--ui-gap)}
.mobile .m7 :is(.m7-h1,.m7-h2,.m7-note,.m7-mail,.m7-btn) {position:relative;left:auto!important;top:auto!important;width:var(--content-width);margin:0;transform:none}
.mobile .m7 .m7-btn {width:calc(var(--content-width) - var(--ui-shadow))}
.mobile .m7-h2 {margin-top:var(--ui-gap)!important}
.mobile .m7-note {font-size:var(--ui-body-font);line-height:var(--ui-line-height);letter-spacing:-.025em}
.mobile .m7-mail {font-size:var(--ui-font-size);line-height:var(--ui-line-height);overflow-wrap:anywhere}
.mobile .m7-btn span {position:static;font:inherit;letter-spacing:inherit;color:inherit}

.mobile .cancelled .outcome-title {left:var(--content-left);width:var(--content-width);height:auto}

/* Desktop action controls share type, spacing and clear interactive states. */
.desktop :is(.cta-btn,.sys-cta,.cta2-btn,.presentation-button,.case-actions > *,.s7-btn) {
 box-sizing:border-box;display:flex;align-items:center;justify-content:center;
 height:var(--control-height,48px);min-height:var(--control-height,48px);min-width:250px;padding:0 24px;
 border:0;border-radius:7px;background:#161f84;color:#fff;
 box-shadow:6px 4px 0 #00e67e;
 font:700 var(--control-font,18px)/24px 'Druk Wide Cyr',sans-serif;letter-spacing:-.055em;
 text-align:center;text-decoration:none;text-transform:uppercase;white-space:nowrap;cursor:pointer;
 transition:background-color .15s ease,color .15s ease,box-shadow .15s ease;
}
.desktop :is(.cta-shadow,.sys-cta-shadow,.cta2-shadow,.s7-follow-sh,.s7-contact-sh) {display:none}
.desktop .tech-cta::before,.desktop .tech-cta::after {display:none}
.desktop .s7-btn span {position:static;font:inherit;letter-spacing:inherit;color:inherit}
.desktop :is(.outcome-cta,.case-contact,.s7-follow,.s7-contact,.case-more) {box-shadow:6px 4px 0 #fff}
.desktop :is(.cta-btn,.sys-cta,.cta2-btn,.presentation-button,.case-actions > *,.s7-btn):focus-visible {outline:3px solid #00e67e;outline-offset:7px}
.desktop .case-filters {gap:4px}
.desktop .case-filters button {min-height:var(--filter-height,44px);border-radius:4px}

.desktop .case-section {padding-top:var(--cases-grid-top,490px)}

/* Hide the floating menu whenever it would cover visible mobile content. */
.mobile .m-burger.is-obscuring-content {visibility:hidden;pointer-events:none}

/* The source frame's right edge becomes its upper edge after rotation. */
.mobile .m-tickets canvas {
 -webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 160px),rgba(0,0,0,.65) calc(100% - 96px),rgba(0,0,0,.12) calc(100% - 32px),transparent 100%);
 mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 160px),rgba(0,0,0,.65) calc(100% - 96px),rgba(0,0,0,.12) calc(100% - 32px),transparent 100%);
}

/* Case categories are collapsed until the visitor opens the filter panel. */
.case-filter-toggle {
 box-sizing:border-box;display:flex;align-items:center;justify-content:center;
 min-height:var(--control-height,48px);width:337px;padding:12px 16px;
 border:0;border-radius:7px;list-style:none;
 background:#161f84;color:#fff;box-shadow:4px 4px 0 #00e67e;cursor:pointer;
 font:700 var(--control-font,18px)/24px 'Druk Wide Cyr',sans-serif;
 letter-spacing:-.055em;text-align:center;text-transform:uppercase;
}
.case-filter-toggle::-webkit-details-marker {display:none}
.case-filter-toggle:focus-visible {outline:3px solid #00e67e;outline-offset:5px}
.desktop .case-section {padding-top:134px}
.desktop .case-section .case-filter-panel {position:relative;min-height:264px;margin:0 0 24px 347px}
.desktop .case-section .case-filters {position:static;margin:16px 0 0}
.mobile .case-mobile .case-filter-panel {margin:var(--ui-gap) 0}
.mobile .case-mobile .case-filter-toggle {
 width:calc(var(--content-width) - var(--ui-shadow));min-height:var(--ui-control-height);
 padding:calc(var(--ui-padding) * .75) var(--ui-padding);border-radius:var(--ui-radius);
 font-size:var(--ui-font-size);line-height:var(--ui-line-height);
 box-shadow:var(--ui-shadow) var(--ui-shadow) 0 #00e67e;
}
.mobile .case-mobile .case-filters {margin:var(--ui-gap) 0 0}

/* Keep the mobile captions comfortably above the fixed bottom call to action. */
.mobile .outcome-tag {--tag-ceiling:calc(var(--viewport-bottom) - var(--ui-control-height) - var(--ui-gap) * 2 - var(--ui-shadow) - 44px)}
.mobile .soldout .tag-one {top:min(370px,var(--tag-ceiling))}
.mobile .soldout .tag-two {top:min(500px,var(--tag-ceiling))}
.mobile .soldout .tag-three {top:min(605px,var(--tag-ceiling))}
.mobile .cancelled .tag-one {top:min(585px,var(--tag-ceiling))}
.mobile .cancelled .tag-two {top:min(349px,var(--tag-ceiling))}
.mobile .cancelled .tag-three {top:min(505px,var(--tag-ceiling))}

/* Buttons use a solid fill and offset shadow, without a contour in any state. */

/* Mobile outcome titles keep their intrinsic proportions. */
.mobile .outcome-title {width:var(--content-width);height:auto;object-fit:contain}
.mobile .soldout .outcome-title {aspect-ratio:334 / 200.816}
.mobile .cancelled .outcome-title {aspect-ratio:338 / 223.283}

/* Home headline: a stable slot keeps the composition still during word changes. */
.hero-word {position:absolute;left:87px;top:423px;margin:0;font:700 31.5px/1.2 'Druk Wide Cyr',sans-serif;text-transform:uppercase;white-space:nowrap;overflow:hidden;z-index:2}
.hero-word span {display:block}
.desktop .s1 .cta-btn {top:510px}
.desktop .s1 .cta-shadow {top:514px}
.mobile .hero-word {left:var(--content-left,24px);top:341px;width:var(--content-width,345px);height:50px;display:flex;align-items:center;justify-content:center;background:#161f84;color:#fff}
.mobile .hero-word span {font-size:28px;line-height:1.2}
.mobile .hero-word span[data-word="1"] {font-size:35px}
.mobile .hero-word span[data-word="2"] {font-size:33px}
/* Both technology steps share a screen and aligned columns. */
.tech-combined .tech-eyebrow {left:90px;top:90px}
.tech-combined .tech-numbers {left:90px;top:127px}
.tech-combined .tech-launch-title {left:611px;top:70px;font-size:274.87px;letter-spacing:-2.7487px}
.tech-combined .tech-content {left:90px;top:358px;width:483px}
.tech-combined .tech-launch-column .tech-content {left:611px;width:466px}
.tech-combined .tech-launch-column .tech-content p {width:466px}
.tech-combined .tech-cta {left:90px;top:527px}
.mobile .tech-combined .tech-eyebrow {left:32px;top:22px;width:329px}
.mobile .tech-combined .tech-numbers {left:32px;top:103px}
.mobile .tech-combined .tech-content {left:32px;top:278px;width:329px}
.mobile .tech-combined .tech-content p {width:329px;font-size:14px;line-height:20px}
.mobile .tech-combined .tech-launch-title {left:32px;top:418px;font-size:220.87px;letter-spacing:-2.2087px}
.mobile .tech-combined .tech-launch-column .tech-content {left:32px;top:649px;width:329px}
.mobile .tech-combined .tech-launch-column .tech-content p {width:329px}

/* Review adjustments: equal mobile headline widths and desktop calls to action. */
.mobile .m-reklama {text-shadow:4px 4px 0 #161f84}
.desktop #swing .cta2-btn {top:550px}
.desktop #swing .cta2-shadow {top:554px}
.desktop .s7-contact {background:#00e67e;color:#161f84}
.desktop .s7-contact:hover {background:#10ed92;color:#161f84}

/* Large heading shadows use the home headline as their size reference. */
.desktop {--heading-shadow-x:5px;--heading-shadow-y:3px}
.mobile {--heading-shadow-x:4px;--heading-shadow-y:4px}
.presentation :is(.h-rf,.m-reklama,.sys-head,.m-sys-head,.tech-launch-title) {
 text-shadow:var(--heading-shadow-x) var(--heading-shadow-y) 0 #161f84;
}
.presentation :is(.s6-head,.m6-head,.s7-head,.m7-h1,.m7-h2) {
 text-shadow:var(--heading-shadow-x) var(--heading-shadow-y) 0 #000;
}
.presentation :is(.tech-numbers img,.s2-word,.m-peresyad-word) {
 filter:drop-shadow(var(--heading-shadow-x) var(--heading-shadow-y) 0 #161f84);
}
.presentation .outcome-title {filter:drop-shadow(var(--heading-shadow-x) var(--heading-shadow-y) 0 #fff)}

/* Use optical sizing with the condensed display face. */
.mobile :is(.m-reklama,.m-sys-head,.m-sbig,.tech-launch-title,.m6-head,.m7-h1,.m7-h2) {
 font-kerning:normal;font-optical-sizing:auto;font-feature-settings:normal;letter-spacing:0;
}
/* Technology content follows its text height and uses the same 24px screen gutter. */
.mobile .tech-combined {box-sizing:border-box;display:flex;flex-direction:column;gap:16px;padding:22px var(--content-left);}
.mobile .tech-combined .tech-eyebrow {position:static;width:var(--content-width);margin:0;}
.mobile .tech-combined .tech-column {display:flex;flex-direction:column;gap:14px;}
.mobile .tech-combined .tech-numbers {position:static;margin:0;}
.mobile .tech-combined .tech-content,
.mobile .tech-combined .tech-launch-column .tech-content {position:static;width:var(--content-width);}
.mobile .tech-combined .tech-content p,
.mobile .tech-combined .tech-launch-column .tech-content p {width:100%;}
.mobile .tech-combined .tech-launch-title {position:static;margin:12px 0 0;line-height:.82;letter-spacing:0;}
.mobile .tech-combined .tech-content h3 {white-space:normal;}

.loader button {padding:12px 20px;border:0;border-radius:8px;background:#161f84;color:#fff;font:600 16px sans-serif;cursor:pointer}

/* Accordion text reserves its own height at every mobile width. */
.mobile .m-srow.open {height:var(--row-open-height,204px)}
.mobile .m-sbig {line-height:1}
.mobile .m-sdesc {top:112px}

/* Display headings reserve a predictable line box before the next block. */
.desktop .sys-head,.desktop .tech-launch-title {line-height:1}
.desktop #swing .cta2-btn {top:min(550px,calc(600px - var(--control-height,48px) - 12px))}

/* Both technology steps fit the live viewport; density follows actual text height. */
.mobile .tech-combined {--tech-density:1;--tech-scale:1;gap:calc(12px * var(--tech-density) / var(--tech-scale));padding-block:calc(12px * var(--tech-density) / var(--tech-scale))}
.mobile .tech-combined .tech-column {flex-shrink:0;gap:calc(10px * var(--tech-density) / var(--tech-scale))}
.mobile .tech-combined .tech-eyebrow {flex-shrink:0;font-size:calc(28px * var(--tech-density) / var(--tech-scale));line-height:1.12}
.mobile .tech-combined .tech-numbers img {height:calc(135px * var(--tech-density) / var(--tech-scale));width:auto;max-width:var(--content-width);object-fit:contain;object-position:left}
.mobile .tech-combined .tech-launch-title {margin:0;line-height:.82}
.mobile .tech-combined .tech-content h3 {font-size:calc(20px * var(--tech-density) / var(--tech-scale));line-height:1.2;margin-bottom:calc(7px * var(--tech-density) / var(--tech-scale))}
.mobile .tech-combined .tech-content p,.mobile .tech-combined .tech-launch-column .tech-content p {font-size:calc(14px * var(--tech-density) / var(--tech-scale));line-height:1.35}
/* Explicit axes also apply when an older HTML shell is returned by the host. */
.mobile .m-reklama {font-variation-settings:"wght" 400,"GRAD" 57,"XOPQ" 99,"XTRA" 468,"YOPQ" 79,"YTAS" 750,"YTDE" -203,"YTFI" 738,"YTLC" 514,"YTUC" 712,"wdth" 28,"opsz" 144}

/* Every presentation section occupies one live viewport. */
.mobile .m-swing-art {position:absolute;inset:0;transform-origin:0 0}
.mobile .m-srow {transition:none}

/* Mobile swing composition from Figma 859:585, with joined rope extensions. */
.mobile .m-swing-composition {position:absolute;inset:0;transform-origin:0 0}
.mobile #swing .m-peresyad {left:14px;top:19px;width:367px;height:343.148px;transform:none}
.mobile #swing .m-peresyad > img {width:374px;height:343.148px;max-width:none}
.mobile #swing .m-tent1 {left:-128.98px;top:322.99px;width:375.42px;height:335.01px}
.mobile #swing .m-tent1 > div {width:308.831px;height:229.595px}
.mobile #swing .m-tent2 {left:-74.28px;top:587.37px;width:240.36px;height:202.01px}
.mobile #swing .m-tent2 > div {width:236.941px;height:197.935px}
.mobile #swing .m-tent3 {left:90.63px;top:335.52px;width:346.62px;height:384.42px}
.mobile #swing .m-tent3 > div {width:328.572px;height:276.247px}
.mobile .m-swing-joined {position:absolute;left:-69.78px;top:276.32px;width:590.362px;height:627.399px;transform-origin:50% 0;animation:mswingjoined 3.6s ease-in-out infinite alternate}
.mobile .m-swing-main {position:absolute;left:0;top:67.61px;width:590.362px;height:559.789px;display:flex;align-items:center;justify-content:center}
.mobile .m-swing-main > div {position:relative;width:575.097px;height:543.614px;transform:rotate(1.63deg)}
.mobile .m-swing-main img {display:block;width:100%;height:100%;object-fit:cover}
.mobile .m-rope-extension {position:absolute;width:157.479px;height:50.487px;display:flex;align-items:center;justify-content:center}
.mobile .m-rope-lower {left:116.73px;top:37.11px}
.mobile .m-rope-upper {left:117.88px;top:0}
.mobile .m-rope-extension > div {position:relative;width:156.229px;height:46.051px;overflow:hidden;transform:rotate(1.63deg)}
.mobile .m-rope-extension img {position:absolute;max-width:none;width:368.11%;height:1248.82%;left:-65.31%;top:-34.18%}
@keyframes mswingjoined {from {transform:rotate(-.8deg)} to {transform:rotate(.8deg)}}
@media (prefers-reduced-motion:reduce) {.mobile .m-swing-joined {animation:none}}

/* Reuse the clean word layer instead of the original Figma outline. */
.mobile #swing .m-peresyad > img.m-peresyad-word {left:4.07066px;top:74.5367px;width:370px;height:234px}

/* Figma 859:1977: action buttons, separate from navigation and filters. */
.presentation:is(.desktop,.mobile) .ya-button {
 --button-surface:#fff;--button-fill:#161f84;--button-text:#fff;
 --button-hover:#00e67e;--button-hover-text:#161f84;--button-shadow:#161f84;
 background:var(--button-fill);color:var(--button-text);border:0;
 box-shadow:6px 4px 0 -1px var(--button-surface),6px 4px 0 0 var(--button-fill);
 transition:background-color .15s ease,color .15s ease,box-shadow .15s ease;
}
.presentation :is(#s3,.s3) .ya-button {--button-surface:#000}
.presentation .outcome .ya-button {--button-surface:#00e67e;--button-hover:#fff}
.presentation :is(.case-section,.about-section) .ya-button {--button-surface:#161f84}
.presentation :is(.case-section,.about-section) .ya-primary {
 --button-fill:#fff;--button-text:#161f84;--button-hover-text:#fff;--button-shadow:#fff;
}
.presentation:is(.desktop,.mobile) .ya-secondary {
 --button-fill:var(--button-surface);--button-text:#161f84;
 --button-hover:var(--button-surface);--button-hover-text:var(--button-text);--button-shadow:var(--button-text);
 border:.5px solid var(--button-text);box-shadow:none!important;isolation:isolate;
}
.presentation :is(#s3,.s3,.outcome,.case-section,.about-section) .ya-secondary {--button-text:#fff}
.presentation:is(.desktop,.mobile) .ya-button span {color:inherit}
.presentation:is(.desktop,.mobile) .ya-button::before,.presentation:is(.desktop,.mobile) .ya-button::after {display:none}
@media (hover:hover) and (pointer:fine) {
 .presentation:is(.desktop,.mobile) .ya-button:hover {
  background:var(--button-hover);color:var(--button-hover-text);
  box-shadow:6px 4px 0 var(--button-shadow);
 }
}
.presentation:is(.desktop,.mobile) .ya-button:active {
 background:var(--button-hover);color:var(--button-hover-text);
 box-shadow:4px 2px 0 var(--button-shadow);
}
.presentation:is(.desktop,.mobile) .ya-button:focus-visible {outline:3px solid currentColor;outline-offset:6px}
/* Hover uses the button's own offset layer; keep the focus ring for keyboard navigation. */
@media (hover:hover) and (pointer:fine) {
 .presentation:is(.desktop,.mobile) .ya-button:hover {outline:none}
}

/* Category selection follows the same primary / secondary button hierarchy. */
.desktop .case-filters {gap:10px}
.desktop .case-filters .ya-button {width:337px;min-height:var(--filter-height,44px);padding:8px 16px;border-radius:7px;text-align:center}

/* Desktop content clears the shared navigation even on wide, short screens. */
.desktop .sys-head {left:var(--system-left,90px);top:calc(50px + var(--system-top-offset,0px))}
.desktop .sys-rows {top:calc(333px + var(--system-top-offset,0px))}
.desktop .sys-cta {top:calc(671px + var(--system-top-offset,0px))}
.desktop .tech-combined .tech-launch-title {line-height:normal}

/* Both ticket animations use the same crop and color, including the still fallback. */
.desktop .video-box canvas,.mobile .m-tickets canvas {filter:none;background:#fff url('assets/tickets-hands/poster-v3.webp?v=20261022-easter1') center/100% 100% no-repeat}
.mobile .m-tickets canvas {height:568.48px}

/* Keep vertical intro swipes in the section controller; normal pages still pan. */
.intro-track {touch-action:pan-x pinch-zoom}

/* System copy overlays the illustration without an opaque row panel. */
.presentation .srow,.presentation .m-srow {background:transparent}
/* Compact category controls; preserve full-width touch targets on mobile. */
.desktop .case-filters .ya-button {width:300px;min-height:var(--filter-height,44px);font-size:16px;padding:6px 12px}
.desktop .case-filter-toggle {width:300px;font-size:16px;padding:8px 12px}
.desktop .case-filters {gap:8px}
.mobile .case-mobile .case-filters {gap:8px}
.mobile .case-mobile .case-filters button,.mobile .case-mobile .case-filter-toggle {
 height:calc(var(--ui-control-height) * .85);min-height:calc(var(--ui-touch));
 font-size:calc(var(--ui-font-size) * .89);line-height:calc(var(--ui-line-height) * .85);
 padding:0 calc(var(--ui-padding) * .75);
}

/* Secondary controls: Figma 859:1977, contour offset in all states. */
.presentation:is(.desktop,.mobile) .ya-secondary {position:relative}
.presentation:is(.desktop,.mobile) .ya-secondary::before {
 display:block;content:'';position:absolute;inset:-.5px;
 background:var(--button-fill);border:.5px solid var(--button-text);
 border-radius:inherit;z-index:-1;pointer-events:none;
}
.presentation:is(.desktop,.mobile) .ya-secondary::after {
 display:block;content:'';position:absolute;inset:-.5px 6px -.5px 0;
 border:1px solid var(--button-text);border-radius:9px;
 transform:translate(10.73px,4px);z-index:-2;pointer-events:none;
 transition:background-color .15s,transform .15s;
}
@media (hover:hover) and (pointer:fine) {
 .presentation:is(.desktop,.mobile) .ya-secondary:hover::after {background:var(--button-text)}
}
.presentation:is(.desktop,.mobile) .ya-secondary:active::after {background:var(--button-text);transform:translate(8.73px,2px)}
.presentation .hero-cases,.presentation .about-button {
 box-sizing:border-box;display:flex;align-items:center;justify-content:center;
 min-height:48px;padding:12px 24px;border-radius:7px;
 font:700 18px/24px 'Druk Wide Cyr',sans-serif;letter-spacing:-.07em;
 text-transform:uppercase;text-decoration:none;text-align:center;cursor:pointer;
}
.desktop .s1 .hero-cases {position:absolute;left:365px;top:510px;width:190px;height:48px}
.mobile .s1 .m-btn {width:calc((var(--content-width) - 24px) * .58)}
.mobile .s1 .hero-cases {position:absolute;left:calc(var(--content-left) + (var(--content-width) - 24px) * .58 + 18px);top:calc(var(--btm,852px) - 81px);width:calc((var(--content-width) - 24px) * .42);min-height:var(--ui-control-height);height:var(--ui-control-height);padding:0 8px;font-size:var(--ui-font-size);line-height:var(--ui-line-height);border-radius:var(--ui-radius)}
.presentation:is(.desktop,.mobile) .about-section {
 position:relative;height:auto;min-height:0;background:#161f84;color:#fff;
 padding:80px 90px 72px;box-sizing:border-box;overflow:visible;
}
.about-heading {margin:0 0 36px;font:700 80px/1 'Druk Wide Cyr',sans-serif;text-transform:uppercase;letter-spacing:-.06em}
.about-intro {display:grid;grid-template-columns:1fr 1fr;gap:0 44px}
.about-intro h3 {grid-column:1/-1;margin:0 0 20px;font:700 26px/1.3 'Druk Wide Cyr',sans-serif;text-transform:uppercase;letter-spacing:-.04em}
.about-intro p,.about-projects {margin:0;font:400 20px/1.5 'Roboto Flex',Arial,sans-serif}
.about-stats {display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px;margin:44px 0}
.about-stats dt {font:700 72px/1 'Druk Wide Cyr',sans-serif;letter-spacing:-.05em;color:#00e67e}
.about-stats dd {margin:12px 0 0;font:400 18px/1.4 'Roboto Flex',Arial,sans-serif}
.about-actions {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:40px;scroll-margin-top:90px}
.about-actions p {margin:18px 0 0;font:400 16px/1.4 'Roboto Flex',Arial,sans-serif}
.about-mail {display:inline-block;margin-top:28px;color:#fff;font:400 20px/1.4 'Roboto Flex',Arial,sans-serif}
.presentation:is(.desktop,.mobile) .case-filters .ya-secondary[aria-pressed="true"] {border-width:2px;text-decoration:underline;text-underline-offset:4px}
.mobile.presentation .about-section {padding:calc(var(--ui-gap) * 2) var(--content-left) calc(var(--ui-gap) * 2)}
.mobile .about-heading {font-size:48px;margin-bottom:var(--ui-gap)}
.mobile .about-intro {display:block}
.mobile .about-intro h3 {font-size:calc(var(--ui-body-font) * 1.2);line-height:1.4}
.mobile .about-intro p,.mobile .about-projects {font-size:var(--ui-body-font);line-height:1.5;margin-top:16px}
.mobile .about-stats {grid-template-columns:1fr 1fr;gap:24px;margin:32px 0}
.mobile .about-stats > div:first-child {grid-column:1/-1}
.mobile .about-stats dt {font-size:48px}
.mobile .about-stats dd {font-size:var(--ui-body-font)}
.mobile .about-actions {grid-template-columns:1fr;gap:var(--ui-gap);margin-top:32px}
.mobile .about-button {min-height:var(--ui-control-height);font-size:var(--ui-font-size);line-height:var(--ui-line-height);padding:12px 8px}
.mobile .about-actions p {font-size:var(--ui-body-font);margin-top:12px}
.mobile .about-mail {font-size:var(--ui-body-font)}

/* Footer shares the below-content canvas and contact destination. */
.site-footer {position:relative;padding:48px 90px 40px;color:#fff;background:#161f84;border-top:1px solid #ffffff40;font:400 14px/1.5 'Roboto Flex',Arial,sans-serif}
.footer-top {display:grid;grid-template-columns:auto 1fr 245px;align-items:center;gap:40px;padding-bottom:36px}
.footer-brand {font:700 42px/1 'Druk Wide Cyr',sans-serif;letter-spacing:-.07em;text-decoration:none}
.footer-nav {display:flex;flex-wrap:wrap;gap:12px 24px}
.site-footer a {color:inherit;text-decoration:none}
.site-footer a:not(.ya-button):hover {text-decoration:underline;text-underline-offset:4px}
.site-footer a:focus-visible {outline:2px solid currentColor;outline-offset:5px}
.presentation .site-footer .ya-button {--button-surface:#161f84;--button-fill:#fff;--button-text:#161f84;--button-hover-text:#fff;--button-shadow:#fff}
.footer-bottom {display:grid;grid-template-columns:1fr 1fr auto;gap:40px;padding-top:28px;border-top:1px solid #ffffff25;align-items:start}
.footer-legal p {margin:0}
.footer-legal p:nth-child(n+3) {font-size:11px;line-height:1.5}
.footer-links {display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.footer-copyright {margin:0;white-space:nowrap}
.mobile .site-footer {padding:calc(var(--ui-gap) * 1.5) var(--content-left);font-size:calc(var(--ui-body-font) - 2px)}
.mobile .footer-top,.mobile .footer-bottom {grid-template-columns:1fr;gap:var(--ui-gap)}
.mobile .footer-top {padding-bottom:var(--ui-gap)}
.mobile .footer-nav {gap:12px 24px}
.mobile .footer-contact {width:100%;min-height:var(--ui-control-height);font-size:var(--ui-font-size)}
.mobile .footer-bottom {padding-top:var(--ui-gap)}
.mobile .footer-brand {font-size:36px}
.footer-brand {display:inline-flex;align-items:center;justify-content:flex-start;line-height:0}
.footer-brand img {display:block;width:76px;height:auto}
.mobile .footer-brand img {width:64px}

/* Visible service descriptions before About, shared by both layouts. */
.services-section {position:relative;box-sizing:border-box;padding:80px 90px 72px;background:#161f84;color:#fff}
.services-heading {margin:0 0 28px;font:700 80px/1 'Druk Wide Cyr',sans-serif;text-transform:uppercase;letter-spacing:-.06em}
.services-intro {max-width:750px;margin:0 0 44px;font:400 24px/1.4 'Roboto Flex',Arial,sans-serif}
.services-list {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 44px;margin:0;padding:0;list-style:none}
.services-list li {border-top:1px solid #ffffff60;padding-top:20px}
.services-list h3 {margin:0 0 14px;font:700 22px/1.3 'Druk Wide Cyr',sans-serif;text-transform:uppercase;letter-spacing:-.035em}
.services-list p {margin:0;font:400 20px/1.5 'Roboto Flex',Arial,sans-serif}
.mobile .services-section {padding:calc(var(--ui-gap) * 2) var(--content-left)}
.mobile .services-heading {font-size:48px;margin-bottom:var(--ui-gap)}
.mobile .services-intro {font-size:var(--ui-body-font);margin-bottom:32px}
.mobile .services-list {grid-template-columns:1fr;gap:28px}
.mobile .services-list h3 {font-size:18px;line-height:1.4}
.mobile .services-list p {font-size:var(--ui-body-font)}

/* Section titles follow the same condensed display treatment as Cases. */
.presentation :is(.services-heading,.about-heading) {
 font-family:'Roboto Flex',sans-serif;font-size:294.906px;font-weight:400;
 line-height:1;letter-spacing:0;white-space:nowrap;color:#10ed92;
 text-shadow:var(--heading-shadow-x) var(--heading-shadow-y) 0 #000;
 font-variation-settings:"wght" 400,"GRAD" 53,"XOPQ" 96,"XTRA" 468,"YOPQ" 79,"YTAS" 750,"YTDE" -199,"YTFI" 738,"YTLC" 514,"YTUC" 712,"wdth" 25,"opsz" 144;
 font-kerning:normal;font-optical-sizing:auto;font-feature-settings:normal;
}
.mobile :is(.services-heading,.about-heading) {width:var(--content-width)}

/* Soften the left edge of the hands video against the white hero. */
.desktop .video-box canvas {
 -webkit-mask-image:linear-gradient(to right,transparent 0,#000 140px,#000 100%);
 mask-image:linear-gradient(to right,transparent 0,#000 140px,#000 100%);
}

/* Semantic headings retain the established artwork and animation geometry. */
.hero-heading {position:absolute;inset:0;margin:0;font:inherit;pointer-events:none}
.hero-heading > span {display:block}
.presentation :is(.sys-head,.m-sys-head) {font-weight:400}
.presentation :is(.s3-reshenie,.m-reshenie) {margin:0;line-height:0}

/* Revised Services / About: Figma 3769:356, 3769:468, 3764:24, 3764:26. */
.services-list {gap:20px 44px}
.services-list li:not(.service-strategy) {display:flex;align-items:center;min-height:128px;padding:20px 0}
.services-list li h3 {
 margin:0;font:339 100px/1 'Roboto Flex',sans-serif;letter-spacing:0;
 font-variation-settings:"wght" 339,"GRAD" 150,"XOPQ" 96,"XTRA" 468,"YOPQ" 79,"YTAS" 750,"YTDE" -199,"YTFI" 738,"YTLC" 514,"YTUC" 712,"wdth" 29,"opsz" 113;
}
.desktop .about-stats {display:flex;justify-content:space-between;gap:32px}
.about-stats dt {font-family:'Roboto Flex',sans-serif;font-weight:700;letter-spacing:0;text-shadow:5px 3px 0 #000}
.mobile .about-intro h3 {font-size:27.2px;line-height:1.15}
.mobile .services-list {gap:0}
.mobile .services-list .service-strategy {padding-bottom:24px}
.mobile .services-list li:not(.service-strategy) {min-height:128px;padding:26px 0 24px}
.mobile .services-list li h3 {position:relative;font-size:79px;line-height:1;margin:0;max-width:100%}
.mobile .service-title-art {display:block;max-width:100%;height:auto}
.mobile .service-title-text {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.presentation .about-heading {line-height:.8}
.mobile .about-heading {line-height:.86}
.mobile .about-intro p:first-of-type {margin-top:0}

/* Service accordion: expanded items use the strategy typography. */
.services-list {align-items:start;row-gap:24px}
.presentation .services-list li {display:block;min-height:0;padding:20px 0 24px}
.service-details {width:100%}
.service-details summary {cursor:pointer;list-style:none}
.service-details summary::-webkit-details-marker {display:none}
.service-details summary:focus-visible {outline:3px solid #00e67e;outline-offset:6px}
.presentation .services-list .service-details[open] h3 {
 position:static;margin:0 0 14px;font:700 22px/1.3 'Druk Wide Cyr',sans-serif;
 letter-spacing:-.035em;font-variation-settings:normal;
}
.service-details[open] .service-title-art {display:none}
.mobile .service-details[open] .service-title-text {position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;white-space:normal}
.mobile .services-list .service-details[open] h3 {font-size:18px;line-height:1.4}
.desktop .tech-combined .tech-numbers {top:127px}
.desktop .tech-combined .tech-launch-art {left:614.12px;top:126px;font-size:0;line-height:0}
.desktop .tech-combined .tech-launch-art img {display:block}
.desktop .tech-combined .tech-content {left:88px;top:339px}
.desktop .tech-combined .tech-launch-column .tech-content {left:611px}
.desktop .tech-combined .tech-content h3 {font:700 25.5px/30px 'Druk Wide Cyr',sans-serif;text-transform:uppercase;letter-spacing:-.51px;margin-bottom:13px}
.desktop .tech-combined .tech-content p {letter-spacing:-.9px}
.desktop .tech-combined .tech-numbers img {filter:none}
.mobile .tech-combined .tech-numbers img {filter:none}
.mobile .tech-combined {padding-inline:32px;gap:calc(22px * var(--tech-density) / var(--tech-scale))}
.mobile .tech-combined .tech-content,.mobile .tech-combined .tech-launch-column .tech-content {width:329px;max-width:100%}
.mobile .tech-combined .tech-column {gap:calc(12px * var(--tech-density) / var(--tech-scale))}

/* Mobile technology subtitles, Figma 3722:36. */
.mobile .tech-combined .tech-content h3 {
 font-family:'Druk Wide Cyr',sans-serif;font-weight:700;text-transform:uppercase;
 font-size:calc(22px * var(--tech-density) / var(--tech-scale));
 line-height:calc(30px * var(--tech-density) / var(--tech-scale));
 letter-spacing:-.06em;margin-bottom:calc(10px * var(--tech-density) / var(--tech-scale));
}

/* Align the expanded system copy with its heading. */
.mobile .m-sbig,.mobile .m-sword,.mobile .m-sdesc {left:66.15px}
/* Keep the numbers artwork in normal flow without positional offsets. */
.mobile .tech-combined .tech-numbers {position:static;left:auto;top:auto;margin:0;flex-shrink:0}
.mobile .tech-combined .tech-numbers img {
 position:static;height:calc(135px * var(--tech-density) / var(--tech-scale));
 width:auto;max-width:100%;transform:none;image-rendering:auto;
}
/* About statistics, Figma 3769:649 and 3769:645. */
.desktop .about-stats {display:grid;grid-template-columns:346px 191px 1fr;gap:0;margin:64px 0 44px}
.presentation .about-stats dt {
 font-family:'Roboto Flex',sans-serif;font-weight:339;font-size:200px;line-height:.72;
 letter-spacing:0;white-space:nowrap;text-shadow:5px 3px 0 #000;
 font-variation-settings:"wght" 339,"GRAD" 150,"XOPQ" 96,"XTRA" 468,"YOPQ" 79,"YTAS" 750,"YTDE" -199,"YTFI" 738,"YTLC" 514,"YTUC" 712,"wdth" 29,"opsz" 113;
}
.desktop .about-stats dd {margin:8px 0 0;font-size:20px;line-height:22.4px}
.mobile .about-stats {display:grid;grid-template-columns:1fr 1fr;gap:40px 24px;margin:32px 8px}
.mobile .about-stats > div:first-child {grid-column:auto}
.mobile .about-stats > div:last-child {grid-column:1/-1}
.mobile .about-stats dt {font-size:150px}
.mobile .about-stats dd {margin:8px 0 0;font-size:16px;line-height:22.4px}

/* Technology display words share the approved heading font and shadow. */
.presentation :is(.tech-numbers,.tech-launch-title) {
 font-family:'Roboto Flex',sans-serif;font-weight:400;color:#00e67e;
 font-variation-settings:"wght" 400,"GRAD" 53,"XOPQ" 96,"XTRA" 468,"YOPQ" 79,"YTAS" 750,"YTDE" -199,"YTFI" 738,"YTLC" 514,"YTUC" 712,"wdth" 25,"opsz" 144;
 text-transform:uppercase;letter-spacing:0;white-space:nowrap;
 text-shadow:var(--heading-shadow-x) var(--heading-shadow-y) 0 #161f84;
 font-kerning:normal;font-optical-sizing:auto;filter:none;
}
.desktop .tech-combined .tech-numbers {font-size:274.87px;line-height:.82}
.mobile .tech-combined .tech-numbers {
 position:static;width:auto;height:auto;margin:0;
 font-size:calc(170px * var(--tech-density) / var(--tech-scale));line-height:.82;
}

/* The desktop design trims the Ц descender above the subtitle. */
.desktop .tech-combined .tech-numbers {
 height:205px;overflow:hidden;padding:0;
}

/* Desktop outlined titles exported from Figma 3722:2. */
.desktop .tech-combined .tech-outline-art {margin:0;padding:0;overflow:visible;font-size:0;line-height:0;text-shadow:none;filter:none}
.desktop .tech-combined .tech-numbers.tech-outline-art {left:90px;top:127px;width:287.098px;height:212.416px}
.desktop .tech-combined .tech-launch-art.tech-outline-art {left:614.12px;top:126px;width:385.449px;height:198.249px}
.desktop .tech-combined .tech-outline-art img {display:block;max-width:none;filter:none;transform:none}

/* Desktop hover cues and explanations for the chain on screen three. */
.desktop .chip-tooltip {
 position:absolute;right:0;bottom:calc(100% + 20px);width:300px;
 box-sizing:border-box;padding:16px 20px;border:1px solid #ffffff40;border-radius:12px;
 background:#161f84;color:#fff;box-shadow:0 8px 24px #0004;
 font:400 18px/1.4 'Roboto Flex',Arial,sans-serif;text-transform:none;white-space:normal;
 visibility:hidden;opacity:0;transition:opacity .15s ease,visibility .15s ease;
}
.desktop .chip-analiz .chip-tooltip {bottom:calc(100% + 45px)}
.desktop .chip-reklama .chip-tooltip {bottom:calc(100% + 70px)}
.desktop .chip-profit .chip-tooltip {bottom:calc(100% + 95px)}
.desktop .chip-tooltip {pointer-events:none}
.desktop .chip:focus-visible {outline:2px solid #10ed92;outline-offset:5px;z-index:5}
.desktop .chip:focus-visible .chip-tooltip {visibility:visible;opacity:1}
.desktop .service-details summary:focus-visible h3 {text-decoration:underline;text-underline-offset:.12em;text-decoration-thickness:.04em}
@media (hover:hover) and (pointer:fine) {
 .desktop .service-details summary:hover h3 {text-decoration:underline;text-underline-offset:.12em;text-decoration-thickness:.04em}
 .desktop .chip {cursor:help}
 .desktop .chip:hover {z-index:5}
 .desktop .chip:hover .chip-tooltip {visibility:visible;opacity:1}
}
