/* [PWR] LABS desktop v2
   Canon: Figma desktop frames at 1440 x 900. This layer intentionally contains
   no mobile rules; the 390 x 844 implementation remains owned by immersive.css. */

@media (min-width: 769px) {
  :root {
    --desktop-scale: 1;
    --desktop-canvas-top: 0px;
    --desktop-header-top: 50px;
  }

  html,
  body {
    width: 100%;
    height: 100%;
    min-height: 100%;
    overflow: hidden;
    overscroll-behavior: none;
    background: #000;
  }

  body.has-entered {
    min-height: 100%;
    overflow: hidden;
    font-size: 18px;
    line-height: 1.5;
  }

  .world-stage.is-interior-bg,
  .receptor-field,
  .interior-foot {
    display: none !important;
  }

  .interior:not(.interior--hidden):not([hidden]) {
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    overflow: hidden;
    background: #000;
  }

  .organelle-page,
  .organelle-page[data-organelle-page="chromosomes"],
  .organelle-page[data-organelle-page="nmaito"],
  .organelle-page[data-organelle-page="advising"],
  .organelle-page[data-organelle-page="work"] {
    position: absolute;
    inset: 0;
    width: 100%;
    max-width: none;
    height: 100%;
    margin: 0;
    overflow: hidden;
    background: #000;
  }

  [data-realism="hyper"] .organelle-page[data-organelle-page="nmaito"] {
    max-width: none;
    overflow: hidden;
  }

  .organelle-page.is-active {
    display: block;
  }

  #nucleus .organelle-page__inner--center,
  .work-page,
  .about-page,
  .organelle-page[data-organelle-page="chromosomes"] .organelle-page__inner,
  .advising-page {
    position: absolute;
    top: var(--desktop-canvas-top);
    left: 50%;
    display: block;
    width: 1440px;
    max-width: none;
    height: 900px;
    min-height: 900px;
    margin: 0;
    padding: 0;
    overflow: hidden;
    transform: translateX(-50%) scale(var(--desktop-scale));
    transform-origin: top center;
    background: #000;
  }

  /* Shared header chrome: 1440 x 65 at y=50. */
  .page-switch {
    top: var(--desktop-header-top);
    left: 50%;
    width: 560px;
    height: 65px;
    gap: 0;
    transform: translateX(-50%) scale(var(--desktop-scale));
    transform-origin: top center;
    font-family: "Roboto", sans-serif;
  }

  .page-switch__toggle {
    position: absolute;
    z-index: 4;
    top: 0;
    left: 50%;
    display: block;
    width: 168px;
    height: 65px;
    padding: 0;
    border: 0;
    background: transparent;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    transform: translateX(-50%);
  }

  .page-switch.is-open .page-switch__toggle {
    pointer-events: none;
  }

  .page-switch__toggle:focus {
    outline: none;
  }

  .page-switch__toggle:focus-visible {
    outline: 1px solid rgba(255, 255, 255, 0.72);
    outline-offset: -6px;
  }

  .page-switch__bio {
    width: 100%;
    height: 23px;
    font-size: 20px;
    font-weight: 400;
    line-height: 23px;
    letter-spacing: 0;
    text-align: center;
  }

  .page-switch__current {
    position: absolute;
    top: 29px;
    left: 50%;
    z-index: 2;
    display: block;
    height: 21px;
    color: #fff;
    font-family: "Roboto", sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 21px;
    letter-spacing: 0;
    opacity: 1;
    pointer-events: none;
    transform: translateX(-50%);
    transition: none;
    white-space: nowrap;
  }

  .page-switch__row {
    position: absolute;
    top: 29px;
    left: 0;
    display: grid;
    grid-template-columns: repeat(5, 68px);
    justify-content: center;
    width: 560px;
    height: 36px;
    column-gap: 24px;
    row-gap: 0;
    transform: none !important;
    transition: none;
  }

  .page-switch .page-switch__item {
    align-self: start;
    height: 21px;
    font-family: "Roboto", sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 21px;
    letter-spacing: 0;
    text-align: center;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.28s ease, color 0.2s ease;
  }

  .page-switch__item.is-active {
    font-weight: 500;
  }

  .page-switch.is-open .page-switch__item {
    opacity: 1;
    pointer-events: auto;
  }

  .page-switch:not(.is-open) .page-switch__item {
    transition: none;
  }

  .page-switch.is-open .page-switch__current {
    display: none;
    opacity: 0;
  }

  .page-switch__dot {
    top: 26px;
    width: 10px;
    height: 10px;
  }

  /* Shared social chrome: x=630/682/733/785, y=825, 25px icons. */
  .social-chrome,
  .cy-foot,
  .work-social,
  .about-social,
  .chromosomes-social,
  .advising-social {
    position: absolute !important;
    top: 825px !important;
    left: 50% !important;
    z-index: 310;
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 27px !important;
    width: 180px !important;
    height: 25px;
    margin: 0 !important;
    padding: 0 !important;
    transform: translateX(-50%) !important;
    color: #9aa0a6;
    opacity: 1 !important;
    visibility: visible !important;
    list-style: none;
  }

  .social-chrome li,
  .social-chrome a,
  .social-chrome svg {
    display: block;
  }

  .social-chrome li,
  .social-chrome a {
    width: 25px;
    height: 25px;
    color: inherit;
    opacity: 1;
  }

  .social-chrome svg {
    width: 25px;
    height: 25px;
  }

  /* Splash, frame 1. */
  body:not(.has-entered) .world-stage,
  body:not(.has-entered) .colony-ui,
  body:not(.has-entered) .colony-ui__anchor {
    width: 100%;
    height: 100%;
    min-height: 100%;
    overflow: hidden;
  }

  body:not(.has-entered) .colony-ui__copy {
    position: absolute;
    top: var(--desktop-canvas-top);
    left: 50%;
    display: block;
    width: 1440px;
    max-width: none;
    height: 900px;
    padding: 0;
    transform: translateX(-50%) scale(var(--desktop-scale));
    transform-origin: top center;
    filter: none;
  }

  body:not(.has-entered) .pls-splash {
    position: relative;
    inset: auto;
    display: block;
    width: 1440px;
    height: 900px;
    overflow: hidden;
  }

  .pls-wm {
    position: absolute;
    top: 240px;
    left: 50%;
    width: max-content;
    height: 107px;
    transform: translateX(-50%);
    animation: pls-wm-intro-desktop 1.8s var(--ease-out) both;
  }

  .pls-wm__base {
    font-size: 75px;
    line-height: 96px;
    letter-spacing: 0;
  }

  .pls-wm__base .pls-bk {
    top: -7px;
    font-size: 80px;
  }

  .pls-wm__base .pls-labs {
    letter-spacing: 0.04em;
  }

  .pls-dots {
    position: absolute;
    top: 392px;
    left: 50%;
    gap: 51px;
    margin: 0;
    transform: translateX(-50%);
  }

  .pls-dots i {
    width: 18px;
    height: 18px;
  }

  .pls-tag {
    position: absolute;
    top: 456px;
    left: 50%;
    width: 303px;
    height: 69px;
    margin: 0;
    transform: translateX(-50%);
    font-family: "Roboto", sans-serif;
    font-size: 23px;
    line-height: 34.5px;
    animation: pls-emerge-desktop 1.2s var(--ease-out) 3s both;
  }

  .pls-cta {
    position: absolute;
    top: 568px;
    left: 50%;
    width: 100px;
    height: 66px;
    margin: 0;
    padding: 0;
    transform: translateX(-50%);
    border-width: 3px;
    border-radius: 8px;
    font-size: 33px;
    animation: pls-emerge-desktop 1.1s var(--ease-out) 4.5s both, cta-hue 9s linear infinite;
  }

  .pls-cta__keys {
    gap: 0;
  }

  .pls-cta__ret {
    font-size: 1em;
  }

  @keyframes pls-wm-intro-desktop {
    from { transform: translateX(-50%) translateY(68px) scale(1.5); }
    to { transform: translateX(-50%) translateY(0) scale(1); }
  }

  @keyframes pls-emerge-desktop {
    from {
      opacity: 0;
      filter: blur(7px);
      transform: translateX(-50%) scale(0.965);
    }
    to {
      opacity: 1;
      filter: blur(0);
      transform: translateX(-50%) scale(1);
    }
  }

  /* Home, frame 2. */
  #nucleus .cy-sp {
    display: none;
  }

  #nucleus .cy-hero {
    position: static;
    display: block;
    width: auto;
    zoom: 1;
  }

  #nucleus .cy-logo {
    position: absolute;
    top: 150px;
    left: 50%;
    width: max-content;
    height: 64px;
    margin: 0;
    transform: translateX(-50%);
    font-size: 50px;
    line-height: 64px;
    letter-spacing: 0;
  }

  #nucleus .cy-logo .bk {
    top: -5px;
  }

  #nucleus .cy-logo .labs {
    letter-spacing: 0.04em;
  }

  #nucleus .cy-tag {
    position: absolute;
    top: 245px;
    left: 50%;
    width: 402px;
    height: 54px;
    margin: 0;
    transform: translateX(-50%);
    font-family: "Roboto", sans-serif;
    font-size: 18px;
    line-height: 27px;
  }

  #nucleus .cytoplasm-cross {
    position: absolute;
    top: 313px;
    left: 50%;
    width: 340px;
    max-width: none;
    margin: 0;
    transform: translateX(-50%);
    zoom: 1;
  }

  #nucleus .cy-headline {
    position: absolute;
    top: 711px;
    left: 0;
    width: 100%;
    height: 23px;
    margin: 0;
    font-family: "Roboto", sans-serif;
    font-size: 20px;
    line-height: 23px;
  }

  #nucleus .cy-pwr {
    position: absolute;
    top: 735px;
    left: 0;
    width: 100%;
    height: 42px;
    margin: 0;
    font-size: 33px;
    line-height: 42px;
  }

  #nucleus .cy-pwr .bk {
    top: -3px;
  }

  #nucleus .cy-foot {
    zoom: 1;
  }

  #nucleus .cy-backdrop {
    z-index: 320;
  }

  /* Work / Organelles, frame 6. */
  .work-head {
    position: absolute;
    top: 150px;
    left: 50%;
    width: 500px;
    transform: translateX(-50%);
  }

  .work-mark {
    height: 64px;
    font-size: 50px;
    line-height: 64px;
  }

  .work-intro {
    width: 500px;
    margin: 21px auto 0;
    font-family: "Roboto", sans-serif;
    font-size: 18px;
    line-height: 27px;
  }

  .work-surface {
    position: absolute;
    top: 310px;
    left: 50%;
    display: flex;
    flex-direction: column;
    gap: 14px;
    width: 500px;
    height: 479px;
    min-height: 0;
    margin: 0;
    padding: 19px 19px 20px;
    overflow-x: hidden;
    overflow-y: auto;
    transform: translateX(-50%);
    border-radius: 12px;
    scrollbar-width: none;
  }

  .work-surface::-webkit-scrollbar {
    display: none;
  }

  .work-eyebrow {
    flex: 0 0 21px;
    font-size: 18px;
    line-height: 21px;
  }

  .work-feature-head {
    flex: 0 0 46px;
    height: 46px;
  }

  .work-product-mark {
    font-size: 36px;
    line-height: 46px;
  }

  .work-status {
    min-height: 35px;
    padding: 7px 15px;
    font-size: 18px;
    line-height: 21px;
  }

  .work-feature-copy {
    flex: 0 0 auto;
    margin: 0;
    font-size: 18px;
    line-height: 27px;
  }

  .work-actions {
    flex: 0 0 41px;
    height: 41px;
    gap: 10px;
  }

  .work-action {
    min-height: 41px;
    padding: 10px 15px;
    font-size: 18px;
    line-height: 21px;
  }

  .work-action__outbound {
    width: 12px;
    margin-left: 6px;
    transform: none;
    font-size: 16px;
  }

  .work-divider {
    flex: 0 0 1px;
  }

  .work-set {
    flex: 0 0 225px;
    gap: 14px;
  }

  .work-row {
    flex: 0 0 54px;
    min-height: 54px;
  }

  .work-row__copy {
    gap: 0;
    font-size: 18px;
    line-height: 25.2px;
  }

  .work-row__mark {
    font-size: 18px;
    line-height: 25.2px;
  }

  .work-method,
  .work-founder {
    flex: 0 0 auto;
    font-size: 18px;
    line-height: 26px;
  }

  /* About / Genome, frame 3. */
  .about-portrait {
    position: absolute;
    top: 150px;
    left: 50%;
    width: 200px;
    height: 200px;
    margin: 0;
    transform: translateX(-50%);
  }

  .about-trio {
    position: absolute;
    top: 372px;
    left: 50%;
    height: 29px;
    margin: 0;
    transform: translateX(-50%);
    font-size: 20px;
    line-height: 29px;
  }

  .about-bio {
    position: absolute;
    top: 423px;
    left: 50%;
    width: 500px;
    height: 355px;
    margin: 0;
    padding: 0;
    transform: translateX(-50%);
    font-family: "Roboto", sans-serif;
    font-size: 18px;
    line-height: 27px;
    scrollbar-width: none;
  }

  .about-bio__content {
    width: 500px;
    max-width: none;
    margin: 0;
    padding-top: 11px;
  }

  .about-bio__content p {
    margin: 0 0 14px;
  }

  .about-bio__opening {
    margin-bottom: 14px !important;
  }

  .about-bio__opening + p {
    margin-bottom: 14px;
  }

  .about-domains {
    display: grid;
    gap: 14px;
    margin: 0 0 14px;
    line-height: 27px;
  }

  .about-domains + p {
    margin-bottom: 12px;
  }

  .about-divider,
  .about-name,
  .about-pronouns {
    font-size: 18px;
    line-height: 27px;
  }

  .about-divider {
    margin-bottom: 0 !important;
  }

  .about-divider + p,
  .about-name,
  .about-pronouns {
    margin-bottom: 0 !important;
  }

  .about-pronouns + .about-divider {
    margin-bottom: 12px !important;
  }

  .about-name,
  .about-statement,
  .about-qualities {
    font-size: 20px;
    line-height: 30px;
  }

  .about-desktop-break {
    display: inline;
  }

  .about-bio__content .about-origin {
    min-height: 108px;
    margin-bottom: 14px !important;
  }

  .about-dimension {
    min-height: 162px;
  }

  .about-disparate,
  .about-unified,
  .about-creations,
  .about-ethos,
  .about-closing {
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .about-disparate {
    width: 377px;
  }

  .about-unified {
    width: 344px;
  }

  .about-runway {
    min-height: 81px;
  }

  .about-qualities {
    position: relative;
    height: 143px;
    margin-bottom: 14px !important;
  }

  .about-qualities > strong {
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
  }

  .about-qualities > strong:nth-of-type(1) { top: 0; }
  .about-qualities > strong:nth-of-type(2) { top: 44px; }
  .about-qualities > strong:nth-of-type(3) { top: 113px; }

  .about-creations,
  .about-closing {
    width: 386px;
  }

  .about-ethos-group {
    height: 95px;
    margin-bottom: 12px !important;
  }

  .about-ethos {
    display: block;
    width: 391px;
    height: 54px;
    margin-bottom: 14px;
  }

  .about-mobile-break {
    display: none;
  }

  .about-stroma {
    display: block;
    height: 27px;
  }

  /* Chromosomes, frame 4. */
  .organelle-page[data-organelle-page="chromosomes"] .organelle-page__title {
    position: absolute;
    top: 150px;
    left: 50%;
    width: 389px;
    margin: 0;
    transform: translateX(-50%);
  }

  .chromosomes-wordmark {
    width: 389px;
    max-width: none;
  }

  .chromo-intro {
    position: absolute;
    top: 245px;
    left: 50%;
    width: 500px;
    max-width: none;
    margin: 0;
    transform: translateX(-50%);
    font-family: "Roboto", sans-serif;
    font-size: 18px;
    line-height: 26.1px;
  }

  .chromo-intro p {
    margin: 0;
  }

  .chromo-intro p + p {
    position: absolute;
    top: 96px;
    left: 0;
    width: 500px;
    margin: 0;
    font-size: 14px;
    line-height: 20.3px;
  }

  .chromo-terminal-period {
    display: none;
  }

  .chromo-scroll-cue {
    display: inline;
  }

  .chromo-desktop-break {
    display: inline;
  }

  .chromo-src {
    position: absolute;
    top: 398px;
    left: 50%;
    width: 360px;
    margin: 0;
    transform: translateX(-50%);
    font-family: "Roboto", sans-serif;
    font-size: 10px;
    line-height: 14.5px;
    letter-spacing: 0;
    white-space: nowrap;
  }

  .chromo-box {
    position: absolute;
    top: 423px;
    left: 50%;
    width: 500px;
    max-width: none;
    height: 356px;
    margin: 0;
    transform: translateX(-50%);
    border-radius: 12px;
  }

  .chromo-scroll {
    height: 355px;
    max-height: none;
    padding: 17px 19px 24px;
    scrollbar-width: none;
  }

  .chromo-scroll::-webkit-scrollbar {
    display: none;
  }

  .chromo-scroll .catalog-sect {
    margin: 0 0 14px;
    font-size: 18px;
    line-height: 21px;
    letter-spacing: 0;
  }

  .chromo-scroll .catalog-sect:not(:first-child) {
    margin-top: 20px;
  }

  .chromo-scroll .catalog-card {
    margin: 0 0 14px;
  }

  .chromo-scroll .catalog-rowlink {
    min-height: 64px;
    padding: 7px 0;
    gap: 20px;
  }

  .chromo-scroll .catalog-skill {
    width: 333px;
    max-width: 333px;
    font-family: "Roboto Mono", monospace;
    font-size: 18px;
    line-height: 25.2px;
    letter-spacing: 0;
  }

  .chromo-scroll .catalog-repo {
    min-height: 35px;
    padding: 7px 15px;
    border-radius: 999px;
    font-family: "Roboto", sans-serif;
    font-size: 18px;
    line-height: 21px;
  }

  /* Chaperone / Advising, frame 5. */
  .advising-page {
    font-family: "Roboto", sans-serif;
  }

  .advising-wordmark {
    top: 150px;
    width: max-content;
    font-size: 50px;
    line-height: 64px;
  }

  .advising-wordmark__bracket {
    transform: translateY(-5px);
  }

  .advising-intro {
    top: 225px;
    width: 500px;
    font-size: 18px;
    line-height: 27px;
  }

  .advising-intro__mobile {
    display: none;
  }

  .advising-intro__desktop {
    display: block;
    margin: 0;
  }

  .advising-intro__closing {
    position: absolute;
    top: 81px;
    left: 0;
    width: 500px;
    margin: 0 !important;
  }

  .advising-card {
    top: 343px;
    width: 500px;
    height: 309px;
    padding: 17px 19px 19px;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-width: none;
  }

  .advising-card::-webkit-scrollbar {
    display: none;
  }

  .advising-card h3 {
    position: static;
    margin: 0 0 6px;
    font-size: 18px;
    line-height: 21px;
  }

  .advising-offerings {
    position: static;
  }

  .advising-offering,
  .advising-offering:nth-child(1),
  .advising-offering:nth-child(2),
  .advising-offering:nth-child(3),
  .advising-offering:nth-child(4),
  .advising-offering:nth-child(5) {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    gap: 20px;
  }

  .advising-offering:nth-child(1),
  .advising-offering:nth-child(2) {
    min-height: 87px;
  }

  .advising-offering:nth-child(3),
  .advising-offering:nth-child(4) {
    min-height: 73px;
  }

  .advising-offering:nth-child(5) {
    min-height: 86px;
  }

  .advising-offering:not(:last-child)::after {
    top: auto;
    right: 0;
    bottom: 0;
  }

  .advising-offering__name {
    width: 345px;
    font-size: 18px;
    line-height: 25.2px;
  }

  .advising-offering__name--mobile {
    display: none;
  }

  .advising-offering__name--desktop {
    display: block;
  }

  .advising-offering__name--desktop strong {
    font-weight: 700;
  }

  .advising-offering__name--desktop em {
    font-style: italic;
  }

  .advising-offering__price {
    min-height: 35px;
    padding: 7px 15px;
    font-size: 18px;
    line-height: 21px;
  }

  .advising-primary-cta {
    top: 670px;
    left: 50%;
    width: 240px;
    height: 55px;
    font-size: 16px;
    line-height: 21px;
  }

  .advising-return {
    top: 735px;
    font-size: 14px;
    line-height: 16px;
  }

  .advising-disclaimer {
    top: 768px;
    font-size: 10px;
    line-height: 14.5px;
  }
}
