/* Roberto Chello — performance/light visual pass */

/* Global chrome: keep the glass look, reduce GPU cost. */
.rcx-sitebar {
  background: rgba(5, 8, 13, .92);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

/* Homepage: preserve identity, reduce continuous visual weight. */
.rcx-preloader { transition: opacity .28s ease, visibility .28s ease; }
.rcx-hero__canvas { opacity: .72; }
.rcx-hero__status i { box-shadow: 0 0 8px rgba(117,240,173,.65); }
.rcx-flow {
  background: rgba(7,13,21,.82);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
}
.rcx-flow__line { box-shadow: 0 0 5px rgba(89,220,255,.22); }
.rcx-section { padding: clamp(4.25rem, 7vw, 6.75rem) 0; }
.rcx-section__head { margin-bottom: 2.4rem; }
.rcx-domain { min-height: 275px; }
.rcx-domain::after { width: 240px; height: 240px; opacity: .65; }
.rcx-domain:hover::after { transform: none; border-color: rgba(89,220,255,.2); }
.rcx-work { background: rgba(5,8,13,.98); }
.rcx-work-grid { perspective: none; }
.rcx-project {
  min-height: 350px;
  transform-style: flat;
  transition: border-color .2s ease, background .2s ease, transform .2s ease;
}
.rcx-project:hover { transform: translateY(-3px); }
.rcx-project__sheen { display: none; }
.rcx-stack-item { min-height: 135px; }
.rcx-finale { min-height: 58vh; }
.rcx-finale::before {
  width: min(68vw, 820px);
  box-shadow: none;
  border-color: rgba(89,220,255,.11);
}
.rcx-finale__inner { padding: 5.5rem 0; }

/* Native reveal replaces GSAP reveal work. */
.rcx-reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity .5s ease, transform .5s cubic-bezier(.2,.7,.2,1);
}
.rcx-reveal.is-visible {
  opacity: 1;
  transform: none;
}

/* Scroll-linked hero response uses simple values computed by lightweight JS. */
.rcx-hero__title {
  transform: translateY(var(--rcx-title-y, 0px)) scale(var(--rcx-title-scale, 1));
  opacity: var(--rcx-title-opacity, 1);
}
.rcx-hero__subtitle,
.rcx-hero__actions {
  transform: translateY(var(--rcx-detail-y, 0px));
  opacity: var(--rcx-detail-opacity, 1);
}
.rcx-marquee.is-paused .rcx-marquee__track { animation-play-state: paused; }

/* Skip painting below-the-fold homepage regions until needed. */
.rcx-domains,
.rcx-work,
.rcx-stack,
.rcx-process,
.rcx-finale {
  content-visibility: auto;
  contain-intrinsic-size: 900px;
}

/* Internal pages: same design, less visual mass. */
.rcx-page--inner {
  background: radial-gradient(circle at 82% 0%, rgba(38,139,180,.075), transparent 24rem), #05080d;
}
.rcx-page--inner .portfolio-home { padding-bottom: clamp(4rem, 7vw, 6rem); }
.rcx-page--inner .hero-impact {
  min-height: min(570px, 70vh);
  padding: clamp(2rem, 5vw, 4.5rem);
}
.rcx-page--inner .hero-impact::after {
  width: min(40vw, 500px);
  height: min(40vw, 500px);
  border-color: rgba(89,220,255,.12);
  box-shadow: none;
}
.rcx-page--inner .impact-strip > div { min-height: 150px; }
.rcx-page--inner .section-clean,
.rcx-page--inner .process-block,
.rcx-page--inner .tech-wall,
.rcx-page--inner .cta-impact { margin: clamp(3rem, 6vw, 5rem) 0; }
.rcx-page--inner .focus-card,
.rcx-page--inner .project-showcase-card,
.rcx-page--inner .stack-groups > div {
  background: rgba(8,15,23,.78);
  transition: background .18s ease, border-color .18s ease;
}
.rcx-page--inner .focus-card:hover,
.rcx-page--inner .project-showcase-card:hover,
.rcx-page--inner .stack-groups > div:hover {
  background: rgba(11,20,30,.9);
  border-color: rgba(89,220,255,.22);
}
.rcx-page--inner .focus-card { min-height: 215px; }
.rcx-page--inner .project-showcase-card { min-height: 275px; }
.rcx-page--inner .process-list > div { min-height: 190px; }
.rcx-page--inner .cta-impact {
  padding: clamp(2.5rem, 5vw, 4.5rem);
  background: #08111a;
  border-color: rgba(89,220,255,.16);
}
.rcx-page--inner .project-header { padding: clamp(3rem, 7vw, 6rem) 0 3rem; }
.rcx-page--inner .project-content { padding: clamp(2.5rem, 5vw, 4.5rem) 0 clamp(4rem, 7vw, 6rem); }
.rcx-page--inner .rcx-generic-page { padding: clamp(3rem, 6vw, 5rem) 0 clamp(4rem, 7vw, 6rem); }

@media (max-width: 820px) {
  .rcx-sitebar {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
  .rcx-page--inner .hero-impact { padding-top: 4rem; padding-bottom: 4rem; }
  .rcx-project:hover { transform: none; }
}

@media (max-width: 560px) {
  .rcx-section { padding: 3.75rem 0; }
  .rcx-domain { min-height: 255px; }
  .rcx-project { min-height: 305px; }
  .rcx-finale { min-height: 50vh; }
  .rcx-finale__inner { padding: 4.25rem 0; }
  .rcx-page--inner .hero-impact { padding: 3.5rem 1.5rem; }
  .rcx-page--inner .impact-strip > div { min-height: 135px; }
}

@media (prefers-reduced-motion: reduce) {
  .rcx-hero__title,
  .rcx-hero__subtitle,
  .rcx-hero__actions,
  .rcx-reveal {
    transform: none !important;
    opacity: 1 !important;
    transition: none !important;
  }
}
