/* Real CRM recordings. HTML device frames; no live CRM access. */
.cinema-home .phone-scene { display:grid; grid-template-columns:1.15fr .85fr; align-items:center; gap:4vw; }
.cinema-home .phone-scene .scene-copy { max-width:100%; }
.cinema-home .phone-scene h2 { font-size:clamp(46px,5.7vw,92px); }
.cinema-home .phone-showcase { margin:0; justify-self:center; text-align:center; width:100%; max-width:350px; }
.motion-ready .cinema-home .phone-scene { display:grid; padding-top:24px; padding-bottom:88px; }
.motion-ready .cinema-home .phone-scene[aria-hidden="false"] { pointer-events:auto; }
.motion-ready .cinema-home .phone-scene .scene-copy { padding-bottom:0; }
.phone-device { position:relative; width:282px; max-width:100%; margin:auto; padding:7px; border:1px solid #88928b; border-radius:36px; background:#151a17; box-shadow:0 32px 70px #0006, inset 0 0 0 2px #434a45; }
.motion-ready .phone-device { width:min(300px,calc((var(--stage-h) - 160px)*.43)); }
.phone-hardware { position:relative; display:flex; align-items:center; justify-content:space-between; height:24px; padding:0 17px; color:#d6ddd7; font-size:8px; }
.phone-hardware i { position:absolute; width:28%; height:12px; border-radius:20px; background:#080c09; left:36%; }
.phone-display { display:block; border-radius:6px 6px 22px 22px; overflow:hidden; background:var(--paper); }
.phone-display img { width:100%; height:auto; }
.phone-chin { width:32%; height:3px; margin:7px auto 2px; background:#cad0cb; border-radius:5px; }
.phone-showcase figcaption { margin-top:17px; }
.phone-caption { display:block; color:#adb9ad; font-size:10px; line-height:1.5; max-width:250px; margin:10px auto 0; }
/* This full-screen panel already has inner spacing; offset the global anchor gap. */
.cinema-home .ongoing-section { --portal-space:clamp(28px,4vh,52px); grid-template-columns:minmax(340px,.85fr) minmax(0,1.35fr); align-items:center; gap:clamp(32px,4vw,76px); min-height:calc(100svh - var(--header)); scroll-margin-top:-16px; padding-block:var(--portal-space); padding-inline:max(var(--gutter),calc((100% - 1740px)/2)); }
.ongoing-copy { min-width:0; max-width:490px; }
.ongoing-copy h2 { margin:20px 0 18px; font-size:clamp(36px,3.2vw,54px); }
.ongoing-copy > p:not(.eyebrow) { margin:0; max-width:none; font-size:14px; line-height:1.7; }
.laptop-showcase { margin:0 auto; width:100%; max-width:1050px; min-width:0; text-align:center; }
.laptop-device { perspective:1600px; padding-bottom:22px; }
.laptop-lid { position:relative; margin:0 5%; padding:24px 10px 13px; border:1px solid #6e7770; border-radius:17px 17px 5px 5px; background:#252b27; box-shadow:inset 0 0 0 2px #454d47; }
.laptop-camera { position:absolute; width:5px; height:5px; border-radius:50%; top:10px; left:calc(50% - 2px); background:#77897b; box-shadow:0 0 0 2px #111812; }
.laptop-display { display:block; overflow:hidden; border:1px solid #151f18; border-radius:3px; background:#f4f5f2; }
.laptop-display img { width:100%; height:auto; aspect-ratio:1.5; }
.laptop-base { position:relative; height:20px; border-radius:2px 2px 50% 50% / 2px 2px 85% 85%; background:linear-gradient(#d4dad5,#9ca69f 40%,#68736b); box-shadow:0 17px 23px -14px #283a29a6; }
.laptop-base i { display:block; margin:0 auto; width:16%; height:7px; background:#727e74; border-radius:0 0 10px 10px; }
.laptop-showcase figcaption p { font-size:12px; color:var(--ink); }
.laptop-showcase figcaption > span { display:block; margin-top:6px; font-size:11px; color:#657266; }
.portal-benefits { display:grid; gap:13px; margin-top:22px; }
.portal-benefits article { border-top:1px solid #bbc9b9; padding-top:12px; }
.portal-benefits h3 { font-size:16px; line-height:1.3; font-weight:550; letter-spacing:-.015em; margin:0 0 5px; }
.portal-benefits p { font-size:13px; line-height:1.6; color:#536052; }
.portal-showcase-footer { display:grid; gap:6px; margin-top:24px; }
.portal-showcase-footer .solid-link { width:100%; }
.portal-links { display:flex; justify-content:space-between; gap:20px; }
.portal-links .line-link,.portal-links .cabinet-login { display:inline-flex; align-items:center; gap:8px; margin:0; padding:6px 0; min-height:40px; font-size:12px; border:0; }
.portal-links .line-link svg { width:16px; height:16px; }
.portal-showcase-footer .cabinet-note { margin:0; }
.cinema-home .equipment-photo.cold img { object-fit:cover; object-position:50% 50%; padding:0; }
/* Static accessible originals are the baseline. Clones and movement need JS. */
.logo-marquees { position:relative; padding-top:12px; }
.logo-ribbon { margin-top:16px; }
.logo-group { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.logo-clone { display:none; }
.logo-group li { border:1px solid var(--line); border-radius:3px; min-width:0; height:126px; aspect-ratio:auto; padding:23px; display:flex; align-items:center; justify-content:center; background:#fff; }
.logo-group li.dark { background:var(--forest); }
.logo-group img { width:100%; height:100%; object-fit:contain; }
.logo-group .partner-logo { padding:31px; }
.ribbon-pause { position:absolute; right:0; top:-38px; min-height:40px; border:0; border-bottom:1px solid var(--line); color:var(--muted); background:transparent; cursor:pointer; font-size:12px; padding:6px 2px 6px 12px; }
.ribbon-pause[hidden] { display:none; }
.logo-marquees.is-animated .logo-ribbon { overflow:hidden; mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent); }
.logo-marquees.is-animated .logo-track { display:flex; width:max-content; animation:logo-travel 44s linear infinite; animation-play-state:paused; }
.logo-marquees.is-animated .logo-group { display:flex; flex:none; gap:14px; padding-right:14px; }
.logo-marquees.is-animated .logo-group li { flex:none; width:clamp(175px,16vw,280px); }
.logo-marquees.is-animated .is-reversed .logo-track { animation-direction:reverse; }
.logo-marquees.is-animated.is-visible:not(.is-paused) .logo-ribbon:not(:hover) .logo-track { animation-play-state:running; }
.logo-marquees.is-animated .partner-logo { height:125px; }
@keyframes logo-travel { to { transform:translateX(-50%); } }
@media(min-width:1800px) { .logo-marquees.is-animated .logo-group li { width:calc((100vw - var(--gutter)*2)/6); } }
@media(min-width:1001px) {
  .laptop-showcase { max-width:min(1050px,calc((100svh - var(--header) - var(--portal-space)*2 - 122px)*1.43)); }
}
@media(min-width:1001px) and (max-height:800px) {
  .cinema-home .ongoing-section { --portal-space:24px; }
  .ongoing-copy h2 { font-size:36px; margin:16px 0; }
  .ongoing-copy > p:not(.eyebrow) { font-size:13px; line-height:1.6; }
  .portal-benefits { margin-top:18px; gap:10px; }
  .portal-benefits article { padding-top:10px; }
  .portal-showcase-footer { margin-top:18px; }
}
@media(max-width:1000px) {
  .cinema-home .ongoing-section { grid-template-columns:1fr; min-height:0; padding-block:64px; gap:38px; }
  .ongoing-copy { max-width:600px; width:100%; margin-inline:auto; }
  .laptop-showcase { max-width:800px; }
}
@media(max-width:900px) {
  .cinema-home .phone-scene h2 { font-size:48px; }
  .logo-group { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:650px) {
  .cinema-home .phone-scene,.motion-ready .cinema-home .phone-scene { grid-template-columns:1fr; gap:20px; padding:32px var(--gutter); }
  .motion-ready .cinema-home .phone-scene { align-content:start; padding-top:22px; padding-bottom:74px; gap:16px; }
  .cinema-home .phone-scene h2,.motion-ready .cinema-home .phone-scene h2 { font-size:34px; }
  .cinema-home .phone-scene .scene-description { font-size:12px; margin-top:12px; max-width:380px; }
  .cinema-home .phone-scene .eyebrow { font-size:9px; margin-bottom:12px; }
  .phone-device { width:240px; border-radius:28px; }
  .motion-ready .phone-device { width:min(190px,calc((var(--stage-h) - 295px)*.435)); }
  .phone-hardware { height:18px; padding-inline:9px; font-size:6px; }
  .phone-hardware i { height:9px; }
  .phone-caption { display:none; }
  .phone-showcase figcaption { margin-top:10px; }
  .ongoing-copy h2 { font-size:clamp(30px,9vw,39px); margin:23px 0; }
  .ongoing-copy > p:not(.eyebrow) { font-size:14px; margin-top:18px; }
  .cinema-home .ongoing-section { padding-block:58px; gap:32px; }
  .laptop-showcase { width:calc(100% + 20px); margin-inline:-10px; }
  .laptop-lid { padding:14px 5px 7px; border-radius:10px 10px 3px 3px; }
  .laptop-camera { top:6px; width:3px; height:3px; }
  .laptop-base { height:10px; }
  .laptop-base i { height:4px; }
  .laptop-device { padding-bottom:14px; }
  .laptop-showcase figcaption { padding:0 10px; }
  .laptop-showcase figcaption p { font-size:11px; }
  .laptop-showcase figcaption > span { font-size:10px; }
  .portal-benefits { gap:18px; }
  .portal-benefits article { padding-top:16px; }
  .portal-links .line-link,.portal-links .cabinet-login { min-height:44px; }
  .logo-group { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .logo-group li { height:95px; padding:16px; }
  .logo-group .partner-logo { padding:22px; }
  .logo-marquees.is-animated .logo-group li { width:170px; height:100px; }
  .logo-marquees.is-animated .logo-track { animation-duration:36s; }
}
@media(max-width:650px) and (max-height:710px) {
  .motion-ready .cinema-home .phone-scene { padding-top:16px; gap:10px; }
  .motion-ready .cinema-home .phone-scene h2 { font-size:28px; }
  .motion-ready .cinema-home .phone-scene .eyebrow { margin-bottom:8px; font-size:8px; }
  .motion-ready .cinema-home .phone-scene .scene-description { font-size:10px; line-height:1.5; margin-top:8px; }
  .motion-ready .phone-device { width:min(175px,calc((var(--stage-h) - 230px)*.435)); }
  .phone-device { padding:5px; }
}
@media(prefers-reduced-motion:reduce) {
  .logo-marquees .logo-track { animation:none!important; transform:none!important; }
}
@media print {
  .logo-clone,.ribbon-pause { display:none!important; }
  .logo-marquees.is-animated .logo-track { display:block; width:auto; transform:none; animation:none; }
  .logo-marquees.is-animated .logo-group { display:grid; padding:0; }
  .logo-marquees.is-animated .logo-group li { width:auto; }
}

.journey-ready .laptop-device { transform:perspective(1600px) translateY(var(--cabinet-lift,0px)) rotateX(var(--cabinet-turn,0deg)); transform-origin:center bottom; }
.journey-ready .laptop-showcase:focus-within .laptop-device { transform:none; }
@media(prefers-reduced-motion:reduce) { .laptop-device { transform:none!important; } }

/* A real interaction recording, with a still-image baseline and no mode tabs. */
.demo-screen { position:relative; cursor:pointer; }
.demo-screen .demo-poster { display:block; }
.phone-display { aspect-ratio:390/844; }
.laptop-display { aspect-ratio:1.5; }
.demo-screen video { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; opacity:0; pointer-events:none; }
.demo-screen.has-video:not(.is-static) video { opacity:1; }
.demo-screen:focus-visible { outline:3px solid var(--orange); outline-offset:4px; }
.demo-play-state { position:absolute; bottom:10px; right:10px; display:none; align-items:center; justify-content:center; width:30px; height:30px; border-radius:50%; background:#202a23dd; color:white; font-size:13px; }
.demo-screen[role="button"]:hover .demo-play-state,.demo-screen[role="button"]:focus-visible .demo-play-state,.demo-screen.is-paused .demo-play-state { display:flex; }
.demo-screen.is-static { cursor:default; }
.demo-screen.is-static .demo-play-state { display:none; }
.cinema-home .equipment-photo.cold { background:#909792; }
.cinema-home .extended-service { grid-template-columns:1fr 1fr 28px; }
@media(max-width:650px) {
  .cinema-home .extended-service { grid-template-columns:1fr 20px; }
  .cinema-home .extended-service p { grid-column:1; }
  .cinema-home .extended-service svg { grid-column:2; }
}
@media print { .demo-screen video,.demo-play-state { display:none!important; } }


/* Match the optical weight of compact badges to the wide wordmarks. */
.logo-group .partner-logo img { max-width:190px; }
.logo-group .partner-torgmash,.logo-group .partner-mkn { padding:20px; }
@media(max-width:650px) { .logo-group .partner-torgmash,.logo-group .partner-mkn { padding:13px 17px; } }

/* The open keyboard deck makes the silhouette read as a laptop. */
.laptop-device { perspective:1800px; padding-bottom:28px; }
.laptop-lid { margin:0 7%; border-radius:16px 16px 4px 4px; }
.laptop-hinge { height:7px; margin:0 8%; border-radius:0 0 5px 5px; background:linear-gradient(#121914,#535e57,#27362b); }
.laptop-deck { position:relative; width:100%; aspect-ratio:8.5; margin-top:-1px; clip-path:polygon(7% 0,93% 0,100% 100%,0 100%); background:linear-gradient(110deg,#b9c2bb,#e3e7e3 45%,#bac5be); border-top:1px solid #697970; }
.laptop-keyboard { position:absolute; top:8%; left:15%; width:70%; height:58%; border-radius:4px; padding:4px 7px; background:#758078; display:grid; grid-template-rows:repeat(5,1fr); gap:3px; transform:perspective(600px) rotateX(16deg); transform-origin:top; }
.laptop-keyboard span { display:block; background:repeating-linear-gradient(90deg,#29372e 0,#29372e 5.8%,#8d9990 5.8%,#8d9990 6.5%); border-radius:2px; }
.laptop-keyboard span:last-child { width:65%; margin:auto; height:100%; background:linear-gradient(90deg,#29372e 0 19%,#8d9990 19% 20%,#29372e 20% 80%,#8d9990 80% 81%,#29372e 81%); }
.laptop-trackpad { position:absolute; bottom:8%; left:38%; width:24%; height:25%; border:1px solid #929f96; border-radius:3px; background:#c8d1ca; }
.laptop-base { height:12px; border-top:1px solid #e8ede9; }
.laptop-base i { height:4px; width:14%; }
@media(max-width:650px) { .laptop-lid { margin-inline:5%; } .laptop-deck { clip-path:polygon(5% 0,95% 0,100% 100%,0 100%); aspect-ratio:7; } .laptop-keyboard { gap:2px; padding:3px; } .laptop-hinge { height:4px; margin-inline:6%; } .laptop-base { height:7px; } }

.cinema-home .equipment-photo { aspect-ratio:1.4; }
.cinema-home .equipment-photo.cold img { filter:none; }
