
.hero { background:#adc9dc; }
.chroma-scene.hero-visual { inset:0; height:100%; max-height:none; filter:none; transform:none; }
.chroma-world { width:100%; height:100%; }
.hero::after { background:linear-gradient(180deg,#cce5ed08 0%,#d7e8ec16 44%,#9ebbc922 61%,#03234c7a 83%,#021d40ed 100%); }
.hero-grain { opacity:.035; }
.chroma-person { transform-origin:54% 90%; }
body.is-ready .chroma-person { animation:chroma-materialise 2.1s cubic-bezier(.22,1,.36,1) both; }
body.is-ready .chroma-light { animation:chroma-light-arrive 4s ease-out both; }
body.is-ready .chroma-waves { animation:chroma-wave-arrive 3.6s ease-out both; }
.cinema-frame { position:absolute; inset:15px; pointer-events:none; border:1px solid #e1fbff22; }
.cinema-frame i { position:absolute; width:26px; height:26px; border-color:#efffff88; border-style:solid; }
.cinema-frame i:nth-child(1) { left:-1px; top:-1px; border-width:1px 0 0 1px; }
.cinema-frame i:nth-child(2) { right:-1px; top:-1px; border-width:1px 1px 0 0; }
.cinema-frame i:nth-child(3) { left:-1px; bottom:-1px; border-width:0 0 1px 1px; }
.cinema-frame i:nth-child(4) { right:-1px; bottom:-1px; border-width:0 1px 1px 0; }
@keyframes chroma-materialise { from { opacity:.1; transform:scale(1.065) translateY(15px); } to { opacity:1; transform:none; } }
@keyframes chroma-light-arrive { from { opacity:.1; transform:translateX(80px); } to { opacity:1; transform:none; } }
@keyframes chroma-wave-arrive { from { opacity:0; stroke-dasharray:2000; stroke-dashoffset:2000; } to { opacity:.34; stroke-dasharray:2000; stroke-dashoffset:0; } }
@media(max-width:700px) {
  .chroma-world { width:185%; max-width:none; margin-left:-47%; }
  .chroma-person { opacity:.82; }
  .cinema-frame { inset:8px; }
  .hero::after { background:linear-gradient(180deg,#d8eaf010,#d9e9ee4d 45%,#587f9b3d 66%,#021d40ee 91%); }
}
@media(prefers-reduced-motion:reduce) {
  body.is-ready .chroma-person,body.is-ready .chroma-light,body.is-ready .chroma-waves { animation:none; }
  .chroma-scene { transition:none; }
}

/* The new background was explicitly supplied for use by the user. */
.hero-profile { width:100%; height:100%; display:block; object-fit:cover; object-position:50% 42%; }
.chroma-ambient { position:absolute; inset:0; background:radial-gradient(ellipse at 90% 15%,#d9ffdf50,transparent 60%); opacity:.6; pointer-events:none; }
body.is-ready .hero-profile { animation:profile-arrival 5s cubic-bezier(.16,1,.3,1) both; }
body.is-ready .chroma-ambient { animation:ambient-arrival 4s ease-out both; }
@keyframes profile-arrival { from { transform:scale(1.035); filter:brightness(.9); } to { transform:scale(1); filter:brightness(1); } }
@keyframes ambient-arrival { from { opacity:0; } to { opacity:.6; } }
@media(max-width:700px) { .hero-profile { object-position:51% 50%; } }
@media(prefers-reduced-motion:reduce) { body.is-ready .hero-profile,body.is-ready .chroma-ambient { animation:none; } }
