/* Independent plate / future twin / alpha human / native UI. */
.human-studio-v1 #hero { background: #f6f4ed; }
.human-studio-v1 [data-nc-header] .nc-header .nc-brand img.linceo-drop-only { width: 32px; height: 42px; max-width: none; }
.human-studio-v1 #hero #hero-frame { height: 100svh; min-height: 680px; }
.human-studio-v1 #hero #hero-frame .hero-immersive-module { background: #c96936; }
.human-studio-v1 #hero #hero-frame .film,
.human-studio-v1 #hero #hero-frame.hero-video-ready .film { background: transparent; inset: 0; width: 100%; height: 100%; z-index: 0; }
.human-studio-v1 #hero .studio-background {
  --studio-cycle: 18s;
  position: absolute; inset: 0; overflow: hidden; z-index: 0; pointer-events: none;
  /* The orange plateau protects the copy; brighter light opens behind the portrait. */
  background: linear-gradient(102deg,#b64e13 0%,#b95720 30%,#d88668 51%,#f0d7b0 67%,#d0e7d9 81%,#73cccc 100%);
}
.human-studio-v1 #hero .studio-background::before,
.human-studio-v1 #hero .studio-background::after {
  content: ''; position: absolute; inset: -3%; pointer-events: none;
  /* Only compositor opacity/translation animates: gradients stay smooth and fixed. */
  will-change: opacity, transform;
}
.human-studio-v1 #hero .studio-background::before {
  background: linear-gradient(106deg,#b95212 0%,#c26028 31%,#e5a282 53%,#fae4bf 69%,#dcecdf 83%,#92d9d3 100%);
  opacity: .08; animation: studio-light-warm var(--studio-cycle) ease-in-out infinite;
}
.human-studio-v1 #hero .studio-background::after {
  background: linear-gradient(98deg,#b34b14 0%,#bd5a28 32%,#df957c 50%,#e9dfbd 64%,#bee5d9 79%,#55c4c9 100%);
  opacity: .18; animation: studio-light-balance var(--studio-cycle) ease-in-out infinite;
}
@keyframes studio-light-warm {
  0%,100% { opacity: .08; transform: translate3d(-.55%,.2%,0); }
  50% { opacity: .38; transform: translate3d(.55%,-.2%,0); }
}
@keyframes studio-light-balance {
  0%,100% { opacity: .18; transform: translate3d(.35%,0,0); }
  25% { opacity: .07; transform: translate3d(0,.2%,0); }
  75% { opacity: .31; transform: translate3d(-.35%,-.2%,0); }
}
.human-studio-v1 #hero .studio-readability { position: absolute; inset: 0; z-index: 1; pointer-events: none; }
.human-studio-v1 #hero .studio-twin-slot { position: absolute; inset: 0; z-index: 1; pointer-events: none; }
.human-studio-v1 #hero .studio-twin-canvas { position: absolute; pointer-events: none; }
.human-studio-v1 .studio-twin-debug { position: absolute; right: 12px; bottom: 12px; z-index: 20; width: 250px; max-height: 70%; overflow: auto; padding: 14px; border-radius: 8px; background: rgba(15,27,29,.94); color: #fff; font: 12px/1.5 monospace; pointer-events: auto; }
.studio-twin-debug label { display: flex; gap: 8px; align-items: center; justify-content: space-between; margin: 7px 0; }
.studio-twin-debug input[type=range] { width: 110px; }
.studio-twin-debug output { display: block; white-space: pre-line; margin-top: 9px; }
.studio-twin-debug button,.studio-twin-debug select { font: inherit; padding: 4px; color: #142428; background: #fff; border: 0; border-radius: 3px; }
.human-studio-v1 #hero #hero-frame .studio-human,
.human-studio-v1 #hero #hero-frame .studio-poster {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; object-position: center bottom;
  z-index: 2; pointer-events: none; transform: none; filter: none; mask: none; -webkit-mask: none; }
.human-studio-v1 #hero #hero-frame .studio-human { opacity: 0; visibility: visible; }
.human-studio-v1 #hero #hero-frame .studio-human.is-playing { opacity: 1; }
.human-studio-v1 #hero .studio-poster.is-covered { visibility: hidden; }
.human-studio-v1 #hero .hero-copy,
.human-studio-v1 #hero .hero-scroll-cue { z-index: 4; }
.human-studio-v1 #hero #hero-frame .hero-subtitle { font-family: 'DM Sans Hero',Arial,sans-serif; font-size: clamp(23px,2vw,29px); line-height: 1.25; letter-spacing: -.035em; margin-bottom: 17px; }
.human-studio-v1 #hero #hero-frame .hero-subtitle > span { font: inherit; letter-spacing: inherit; }
.human-studio-v1 #hero #hero-frame .hero-subtitle-rotator { display: grid; }
.human-studio-v1 #hero #hero-frame .hero-subtitle-rotator > span { grid-area: 1 / 1; display: block; }
.human-studio-v1 #hero #hero-frame .hero-subtitle-turn > span {
  transform-origin: left center; backface-visibility: hidden;
  transition: none; will-change: transform, opacity;
}
.human-studio-v1 #hero .studio-background.is-paused::before,
.human-studio-v1 #hero .studio-background.is-paused::after { animation-play-state: paused; }
@media(min-width:981px) {
  .human-studio-v1 #hero #hero-frame .hero-copy { top: 47%; }
  .human-studio-v1 [data-nc-header] .nc-header .nc-header-bar { height: 86px; }
  .human-studio-v1 [data-nc-header] .nc-header .nc-header-left,
  .human-studio-v1 [data-nc-header] .nc-header .nc-header-actions { min-height: 54px; }
  .human-studio-v1 [data-nc-header] .nc-header .nc-header-actions { padding-top: 4px; padding-bottom: 4px; }
  .human-studio-v1 [data-nc-header] .nc-header .nc-start { height: 40px; min-height: 40px; padding-top: 8px; padding-bottom: 8px; }
  .human-studio-v1 [data-nc-header] .nc-header .nc-nav-trigger { padding-top: 12px; padding-bottom: 12px; }
  .human-studio-v1 [data-nc-header] .nc-header .nc-language-trigger { height: 44px; }
  .human-studio-v1 [data-nc-header] .nc-header .nc-brand img.linceo-drop-only { width: 28px; height: 36px; }
}
@media(max-width:980px) {
  .human-studio-v1 #hero #hero-frame { height: max(850px,100svh); }
  .human-studio-v1 #hero #hero-frame .hero-actions a { height: 48px; min-height: 48px; padding-block: 6px; box-sizing: border-box; }
  .human-studio-v1 #hero #hero-frame .primary-cta span[aria-hidden] { width: 32px; height: 32px; }
  .human-studio-v1 #hero #hero-frame .studio-human,
  .human-studio-v1 #hero #hero-frame .studio-poster { top: 65px; height: 43%; object-position: center bottom; mask-image: linear-gradient(#000 87%,transparent); -webkit-mask-image: linear-gradient(#000 87%,transparent); }
  .human-studio-v1 #hero .studio-twin-slot { top: 65px; bottom: auto; height: 43%; mask-image: linear-gradient(#000 87%,transparent); -webkit-mask-image: linear-gradient(#000 87%,transparent); }
  .human-studio-v1 #hero #hero-frame .hero-copy { top: 49%; }
  /* Static protection only where portrait layouts place text below the woman. */
  .human-studio-v1 #hero .studio-readability {
    background: linear-gradient(180deg,transparent 24%,rgba(90,40,17,.16) 36%,rgba(90,40,17,.64) 48%,rgba(90,40,17,.68) 100%);
  }
}
@media(max-width:600px) {
  .human-studio-v1 #hero #hero-frame { min-height: 860px; }
  .human-studio-v1 #hero #hero-frame .studio-human,
  .human-studio-v1 #hero #hero-frame .studio-poster { height: 32%; }
  .human-studio-v1 #hero .studio-twin-slot { height: 32%; }
  .human-studio-v1 #hero #hero-frame .hero-copy { top: 41%; }
}
@media(prefers-reduced-motion:reduce) {
  .human-studio-v1 #hero #hero-frame .hero-subtitle-turn > span { will-change: auto; }
  .human-studio-v1 #hero .studio-background::before,
  .human-studio-v1 #hero .studio-background::after { animation: none; transform: none; will-change: auto; }
}
