﻿/* Layout: scene containers and positioning systems */

.viewport {
      position: relative;
      width: 100%;
      height: var(--app-vh);
      overflow: hidden;
      background: #000;
    }

.scene {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      opacity: 0;
      transform: scale(1);
      transition: opacity var(--duration) var(--easing), transform var(--duration) var(--easing);
      will-change: opacity, transform;
      pointer-events: none;
      z-index: 1;
    }

.scene video {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      pointer-events: none;
    }

.scene[data-index="1"] video {
      object-position: center 12%;
    }

.scene[data-index="0"] video {
      object-position: center 8%;
    }

.scene[data-index="2"] video {
      object-position: center 10%;
    }

.scene .overlay {
      position: absolute;
      inset: 0;
      background: var(--overlay);
      pointer-events: none;
    }

.universe-scene .overlay {
      background: rgba(0, 0, 0, 0.5);
    }

.universe-scene {
      overflow-y: auto;
      overflow-x: hidden;
    }

.universe-layout {
      position: relative;
      z-index: 4;
      padding: clamp(24px, 3.4vh, 42px) clamp(20px, 4vw, 54px) clamp(24px, 5vh, 56px);
      display: flex;
      flex-direction: column;
      gap: clamp(16px, 2.4vh, 28px);
      min-height: 100%;
    }

.capital-scene__video {
      position: relative;
      min-height: calc(var(--app-vh) - 82px);
      margin-top: 82px;
      overflow: hidden;
    }

.capital-scene__video video {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      display: block;
      filter: brightness(1.3) contrast(1.03) !important;
    }

.capital-scene__video .overlay {
      position: absolute;
      inset: 0;
      background: transparent !important;
      pointer-events: none;
    }

.profile-layout {
      position: absolute;
      inset: 0;
      z-index: 4;
      display: grid;
      grid-template-columns: minmax(260px, 34vw) minmax(0, 1fr);
      gap: clamp(18px, 2.6vw, 44px);
      align-items: start;
      padding: clamp(22px, 3.2vw, 52px);
      padding-top: clamp(112px, 13vh, 156px);
    }

.fund-scene {
      overflow-y: auto;
      overflow-x: hidden;
      overscroll-behavior: contain;
      scrollbar-width: thin;
      scrollbar-color: rgba(255, 255, 255, 0.42) rgba(255, 255, 255, 0.12);
      background:
        radial-gradient(130% 110% at 12% 0%, rgba(206, 151, 73, 0.11) 0%, rgba(206, 151, 73, 0) 50%),
        radial-gradient(150% 140% at 100% 0%, rgba(175, 139, 84, 0.07) 0%, rgba(175, 139, 84, 0) 60%),
        linear-gradient(175deg, #fcfbf8 0%, #f7f3ec 38%, #f1e8db 68%, #ecdcc8 100%);
    }

.fund-scene__layout {
      position: relative;
      width: 100%;
      min-height: 100%;
      padding-top: 82px;
      padding-bottom: 20px;
      display: flex;
      flex-direction: column;
      gap: 0;
      z-index: 4;
    }

.fund-scene__video {
      position: relative;
      min-height: calc(var(--app-vh) - 82px);
      overflow: hidden;
      flex: 0 0 calc(var(--app-vh) - 82px);
    }

.fund-scene__video video {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center 8% !important;
    }

.fund-scene__video .overlay {
      background: rgba(0, 0, 0, 0.34);
    }

.academy-scene {
      overflow-y: auto;
      overflow-x: hidden;
      overscroll-behavior: contain;
      scrollbar-width: thin;
      scrollbar-color: rgba(255, 255, 255, 0.42) rgba(255, 255, 255, 0.12);
    }

.academy-scene__layout {
      position: relative;
      width: 100%;
      min-height: 100%;
      padding-top: 0;
      padding-bottom: 20px;
      display: flex;
      flex-direction: column;
      gap: 0;
      z-index: 4;
    }

.academy-scene__video {
      position: relative;
      min-height: var(--app-vh);
      overflow: hidden;
      flex: 0 0 var(--app-vh);
    }

.academy-scene__video video {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center 12% !important;
    }

.academy-scene__video .overlay {
      background:
        linear-gradient(180deg, rgba(248, 248, 248, 0.08) 0%, rgba(8, 12, 18, 0.24) 100%);
    }

.academy-scene .scene-global-footer {
      border-top-color: rgba(186, 135, 76, 0.36);
      background:
        radial-gradient(120% 140% at 8% 0%, rgba(232, 140, 34, 0.14) 0%, rgba(232, 140, 34, 0) 56%),
        radial-gradient(120% 160% at 100% 0%, rgba(102, 121, 142, 0.09) 0%, rgba(102, 121, 142, 0) 66%),
        linear-gradient(180deg, #f5f3ef 0%, #efebe5 100%);
      color: #23262b;
    }

.academy-scene .scene-global-footer__title {
      color: #9a5610;
    }

.academy-scene .scene-global-footer__left {
      margin-left: 96px;
    }

.academy-scene .scene-global-footer__right {
      margin-left: auto;
      margin-right: 44px;
    }

.academy-scene .scene-global-footer__links a,
    .academy-scene .scene-global-footer__social-title {
      color: #2f343a;
    }

.academy-scene .scene-global-footer__legal {
      color: rgba(36, 40, 45, 0.72);
    }

.academy-scene .scene-global-footer__search {
      border-color: rgba(142, 121, 100, 0.42);
      background: rgba(255, 255, 255, 0.9);
    }

.academy-scene .scene-global-footer__search input {
      background: rgba(255, 255, 255, 0.88);
      color: #23262b;
    }

.academy-scene .scene-global-footer__search input::placeholder {
      color: rgba(46, 51, 57, 0.56);
    }

.academy-scene .scene-global-footer__search button {
      background: #f0dfc8;
      color: #7a4209;
    }

.academy-scene .scene-global-footer__search button:hover {
      background: #ecd6b9;
    }

.academy-scene .scene-global-footer__btn {
      border-color: rgba(184, 139, 92, 0.52);
      background: #f2e1ca;
      color: #6d3d0c;
    }

.academy-scene .scene-global-footer__btn:hover {
      background: #ecd6b9;
    }

.fund-scene .fund-portfolio::before {
      background:
        linear-gradient(180deg, rgba(72, 45, 17, 0.24) 0%, rgba(72, 45, 17, 0.05) 45%, rgba(72, 45, 17, 0) 100%),
        linear-gradient(90deg, rgba(242, 173, 63, 0.28) 0%, rgba(242, 173, 63, 0) 55%);
    }

.fund-scene .fund-portfolio__title,
    .fund-scene .fund-exits__title,
    .fund-scene .fund-prior__title {
      color: #2f343a;
    }

.fund-scene .fund-portfolio__btn {
      border-color: rgba(142, 121, 100, 0.42);
      background: rgba(255, 255, 255, 0.88);
      color: #2f343a;
    }

.fund-scene .fund-portfolio__btn:hover {
      background: rgba(255, 255, 255, 0.98);
    }

.fund-scene .fund-portco-card__link,
    .fund-scene .fund-exits-card {
      border: 0;
      background: transparent;
    }

.fund-scene .fund-portco-card__plate,
    .fund-scene .fund-exits-card__plate,
    .fund-scene .fund-exits-card__plate--sportslab,
    .fund-scene .fund-exits-card__plate--uncharted,
    .fund-scene .fund-exits-card__plate--audigent,
    .fund-scene .fund-exits-card__plate--flow {
      border-color: rgba(136, 89, 30, 0.22);
      background:
        radial-gradient(circle at 30% 22%, rgba(255, 255, 255, 0.96) 0%, rgba(251, 246, 236, 0.95) 52%, rgba(244, 235, 219, 0.94) 100%);
    }

.fund-scene .fund-portco-card__plate.is-samba {
      border-color: rgba(29, 130, 119, 0.34);
      background: radial-gradient(circle at 28% 24%, #fcfffe 0%, #effaf8 56%, #deefeb 100%);
    }

.fund-scene .fund-portco-card__plate.is-renuble {
      border-color: rgba(61, 136, 76, 0.36);
      background: radial-gradient(circle at 28% 24%, #ffffff 0%, #f3fbf0 56%, #e1efdc 100%);
    }

.fund-scene .fund-portco-card__plate.is-filmhedge {
      border-color: rgba(111, 55, 80, 0.34);
      background: radial-gradient(circle at 28% 24%, #ffffff 0%, #faf2f6 56%, #eadde3 100%);
    }

.fund-scene .fund-portco-card__plate.is-infinite {
      border-color: rgba(73, 77, 86, 0.32);
      background: radial-gradient(circle at 28% 24%, #ffffff 0%, #f6f7f9 56%, #e5e8ed 100%);
    }

.fund-scene .fund-portco-card__plate.is-possip {
      border-color: rgba(84, 63, 156, 0.38);
      background: radial-gradient(circle at 28% 24%, #ffffff 0%, #f4f1ff 56%, #e5dff7 100%);
    }

.fund-scene .fund-portco-card__plate.is-moment {
      border-color: rgba(37, 112, 194, 0.38);
      background: radial-gradient(circle at 28% 24%, #ffffff 0%, #f0f7ff 56%, #dceaf7 100%);
    }

.fund-scene .fund-portco-card__plate.is-moment .fund-portco-card__wordmark {
      color: rgba(20, 50, 94, 0.96);
      letter-spacing: 0.06em;
    }

.fund-scene .fund-exits-card__plate--sportslab {
      border-color: rgba(30, 112, 103, 0.5);
      background: linear-gradient(165deg, #2f9d92 0%, #1f766f 100%);
    }

.fund-scene .fund-exits-card__plate--uncharted {
      border-color: rgba(177, 118, 22, 0.38);
      background: radial-gradient(circle at 28% 24%, #ffffff 0%, #fdf7eb 56%, #efe3ce 100%);
    }

.fund-scene .fund-exits-card__plate--audigent {
      border-color: rgba(57, 96, 165, 0.5);
      background: linear-gradient(165deg, #7f9fd7 0%, #4a6fb0 100%);
    }

.fund-scene .fund-exits-card__plate--flow {
      border-color: rgba(88, 82, 168, 0.52);
      background: linear-gradient(165deg, #8f8bd8 0%, #5e59b8 100%);
    }

.fund-scene .fund-exits-card__plate--zerogrocery {
      border-color: rgba(65, 140, 74, 0.36);
      background: radial-gradient(circle at 28% 24%, #ffffff 0%, #f1fbef 56%, #deedda 100%);
    }

.fund-scene .fund-portco-card__wordmark,
    .fund-scene .fund-portco-card__name,
    .fund-scene .fund-exits-card__name {
      color: #2f343a;
    }

.fund-scene .fund-exits-card__logo--sportslab,
    .fund-scene .fund-exits-card__logo--audigent,
    .fund-scene .fund-exits-card__logo--flow {
      filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.28));
    }

.fund-scene .fund-portco-card__industry,
    .fund-scene .fund-exits-card__industry {
      color: rgba(47, 52, 58, 0.72);
    }

.fund-scene .fund-exits::before,
    .fund-scene .fund-prior::before {
      background:
        linear-gradient(180deg, rgba(16, 22, 30, 0.16) 0px, rgba(16, 22, 30, 0.04) 1px, rgba(16, 22, 30, 0) 100%),
        radial-gradient(120% 70% at 50% 0%, rgba(231, 143, 39, 0.14) 0%, rgba(231, 143, 39, 0) 72%);
    }

.fund-scene .scene-global-footer {
      border-top-color: rgba(186, 135, 76, 0.36);
      background:
        radial-gradient(120% 140% at 8% 0%, rgba(206, 151, 73, 0.12) 0%, rgba(206, 151, 73, 0) 56%),
        radial-gradient(120% 160% at 100% 0%, rgba(175, 139, 84, 0.08) 0%, rgba(175, 139, 84, 0) 66%),
        linear-gradient(180deg, #f7f2ea 0%, #efe2d0 100%);
      color: #23262b;
    }

.fund-scene .scene-global-footer__title {
      color: #9a5610;
    }

.fund-scene .scene-global-footer__links a,
    .fund-scene .scene-global-footer__social-title {
      color: #2f343a;
    }

.fund-scene .scene-global-footer__legal {
      color: rgba(36, 40, 45, 0.72);
    }

.fund-scene .scene-global-footer__search {
      border-color: rgba(142, 121, 100, 0.42);
      background: rgba(255, 255, 255, 0.9);
    }

.fund-scene .scene-global-footer__search input {
      background: rgba(255, 255, 255, 0.88);
      color: #23262b;
    }

.fund-scene .scene-global-footer__search input::placeholder {
      color: rgba(46, 51, 57, 0.56);
    }

.fund-scene .scene-global-footer__search button {
      background: #f0dfc8;
      color: #7a4209;
    }

.fund-scene .scene-global-footer__search button:hover {
      background: #ecd6b9;
    }

.fund-scene .scene-global-footer__btn {
      border-color: rgba(184, 139, 92, 0.52);
      background: #f2e1ca;
      color: #6d3d0c;
    }

.fund-scene .scene-global-footer__btn:hover {
      background: #ecd6b9;
    }

.fund-scene .fund-portfolio__title,
    .fund-scene .fund-exits__title,
    .fund-scene .fund-prior__title {
      font-size: clamp(15px, 1.08vw, 19px);
      letter-spacing: 0.075em;
      font-weight: 700;
    }

.fund-scene .fund-portco-card__plate,
    .fund-scene .fund-exits-card__plate,
    .fund-scene .fund-exits-card__plate--sportslab,
    .fund-scene .fund-exits-card__plate--uncharted,
    .fund-scene .fund-exits-card__plate--audigent,
    .fund-scene .fund-exits-card__plate--flow {
      box-shadow:
        0 10px 22px rgba(54, 43, 27, 0.12),
        0 2px 5px rgba(255, 255, 255, 0.45) inset,
        0 -5px 10px rgba(133, 111, 78, 0.12) inset;
    }

.fund-scene .fund-portco-card__name,
    .fund-scene .fund-exits-card__name {
      font-size: clamp(16px, 1.14vw, 21px);
      font-weight: 800;
      letter-spacing: 0.01em;
      color: #1f2731;
    }

.fund-scene .fund-portco-card__industry,
    .fund-scene .fund-exits-card__industry {
      font-size: clamp(13px, 0.9vw, 15px);
      letter-spacing: 0.01em;
      color: rgba(31, 39, 49, 0.64);
    }

.media-scene {
      overflow-y: auto;
      overflow-x: hidden;
      background:
        radial-gradient(120% 140% at 12% 0%, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.86) 52%, rgba(255, 255, 255, 0.74) 100%),
        linear-gradient(160deg, #ffffff 0%, #fcf8f8 42%, #f8eeee 72%, #f4e3e3 100%);
    }

.media-scene__video {
      position: relative;
      height: calc(var(--app-vh) - 82px);
      min-height: calc(var(--app-vh) - 82px);
      margin-top: 82px;
      overflow: hidden;
    }

.media-scene .media-scene__video video {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center 8%;
      top: 0;
    }

.media-layout {
      position: relative;
      z-index: 4;
      min-height: 0;
      padding: clamp(26px, 3.2vh, 42px) clamp(20px, 4vw, 58px) clamp(26px, 6vh, 64px);
      display: flex;
      flex-direction: column;
      justify-content: flex-start;
      align-items: center;
      gap: 0;
      background:
        radial-gradient(120% 140% at 12% 0%, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.86) 52%, rgba(255, 255, 255, 0.74) 100%),
        linear-gradient(160deg, #ffffff 0%, #fcf8f8 42%, #f8eeee 72%, #f4e3e3 100%);
    }


