/* Only the opt-in desktop controller owns these rules. Removing its class and
   wrappers restores the existing phone/tablet/reduced-motion layout exactly. */
@media (min-width: 1025px) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  html.ca-native-desktop {
    scroll-behavior: auto;
    overflow-anchor: none;
  }

  .ca-native-desktop #sluzby {
    height: var(--ca-service-range);
    min-height: 0;
    margin-bottom: 0;
    overflow: visible;
    clip-path: none;
    background: #080b0d;
  }

  .ca-native-desktop #sluzby::before {
    display: none;
  }

  .ca-desktop-service-viewport {
    position: sticky;
    top: 0;
    height: var(--ca-stage-h);
    overflow: hidden;
    isolation: isolate;
    background: #111214;
  }

  .ca-native-desktop #svcStage {
    position: relative;
    top: 0;
    height: var(--ca-stage-h);
    overflow: hidden;
  }

  .ca-native-desktop .svc-card {
    transition: none;
    will-change: transform;
  }

  .ca-native-desktop .svc-theme {
    /* These layers are viewport-sized even though their scroll range is not. */
    height: calc(var(--ca-stage-h) + var(--svc-feather));
    will-change: transform;
  }

  .ca-native-desktop #svcHandoff {
    will-change: opacity;
  }

  .ca-native-desktop #projekty {
    /* The last viewport of Services is real overlapping document space.
       Projects rises over its sticky last card without becoming fixed. */
    position: relative;
    margin-top: calc(-1 * var(--ca-stage-h));
    z-index: 3;
    transform: none;
    border-radius: 0;
  }

  .ca-desktop-outro {
    background: #fbfcfb;
  }

  .ca-desktop-outro::after {
    /* A real content-box tail, not padding: a sticky child's containing
       bounds exclude its parent's bottom padding in Chromium/WebKit. */
    content: "";
    display: block;
    height: var(--ca-footer-h, 0px);
    pointer-events: none;
    background: #0b0d10;
  }

  .ca-native-desktop .ca-desktop-outro > #referencie {
    position: sticky;
    top: var(--ca-references-top, 0px);
    z-index: 4;
    min-height: var(--ca-stage-h);
    margin: 0;
    transform: none;
    will-change: auto;
  }

  .ca-native-desktop .ca-desktop-outro > #contactCover {
    display: block;
    position: sticky;
    top: var(--ca-contact-top, 0px);
    z-index: 5;
    margin: 0;
    background: #0b0d10;
  }

  .ca-native-desktop .ca-desktop-outro #kontakt {
    position: relative;
    inset: auto;
    min-height: var(--ca-stage-h);
    height: auto;
    transform: none;
    clip-path: none;
    border-radius: 0;
  }

  .ca-native-desktop body > .site-footer {
    position: relative;
    z-index: 6;
    margin-top: calc(-1 * var(--ca-footer-h, 0px));
    transform: none;
  }

  .ca-native-desktop body > .site-footer::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -64px;
    height: 64px;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(11, 13, 16, 0), #0b0d10);
  }
}
