/* Full graphite video frame: no segmentation of hair or shoulders. */
body[data-theme="dark"]{--wine:#8e2434;--wine-soft:#c76575;--wine-deep:#6f1828}
.hero-wide{isolation:isolate;background:var(--bg)}
body[data-theme="dark"] .hero-wide .hero-photo{background:transparent}
body[data-theme="dark"] .hero-text::before{background:radial-gradient(circle,rgba(142,36,52,.08),transparent 65%)}
body[data-theme="dark"] .hero-wide .hero-photo :is(.portrait-forward,.portrait-motion-video){mask-image:radial-gradient(ellipse 40% 53% at 50% 42%,#000 62%,rgba(0,0,0,.88) 74%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 40% 53% at 50% 42%,#000 62%,rgba(0,0,0,.88) 74%,transparent 100%)}
body[data-theme="dark"] .hero-wide .hero-photo::after{display:block;background:linear-gradient(0deg,var(--bg),transparent 18%)}
.hero-ambience{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:2;mask-image:linear-gradient(90deg,transparent 34%,#000 51%,#000 88%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent 34%,#000 51%,#000 88%,transparent)}
.hero-ambience svg{position:absolute;right:max(-60px,calc((100vw - 1360px)/2 + 40px));top:-20px;width:980px;height:100%;overflow:visible}
.ambience-ring{fill:none;stroke:#b74960;stroke-width:2;opacity:.85;transform-origin:640px 370px;filter:drop-shadow(0 0 5px rgba(169,50,76,.5))}
.ambience-ring-outer{stroke:#a9b7c1;stroke-width:1.3;opacity:.5;stroke-dasharray:260 240 110 530;animation:ambient-orbit 24s linear infinite reverse}
.ambience-ring-inner{stroke-dasharray:180 180 70 430;animation:ambient-orbit 18s linear infinite}
.ambience-wave{fill:none;stroke:#b8445d;stroke-width:18;opacity:.2;filter:blur(12px);transform-origin:640px 370px;animation:ambient-wave 9s ease-in-out infinite}
.ambience-signal{fill:none;stroke:#e78191;stroke-width:3.5;stroke-dasharray:110 1964;opacity:.9;filter:drop-shadow(0 0 7px rgba(206,77,99,.7));animation:ambient-signal 10s linear infinite}
.hero-wide.motion-paused .hero-ambience *{animation-play-state:paused!important}
@keyframes ambient-orbit{to{transform:rotate(360deg)}}
@keyframes ambient-wave{0%,100%{opacity:.14;transform:scale(.94)}50%{opacity:.38;transform:scale(1.05)}}
@keyframes ambient-signal{to{stroke-dashoffset:-2074}}
body[data-theme="dark"] .hero-wide .portrait-motion-video{position:absolute;inset:auto;left:auto;right:max(40px,calc((100vw - 1360px)/2 + 24px));top:0;bottom:auto;width:auto;height:112%;max-width:none;object-fit:contain;object-position:right top;opacity:0;pointer-events:none;transition:opacity .18s ease}
body[data-theme="dark"] .hero-wide.has-live-portrait .portrait-forward{opacity:0;transition:opacity .18s ease}
body[data-theme="dark"] .hero-wide.has-live-portrait .portrait-motion-video{opacity:1}
@media(min-width:601px) and (max-width:920px){body[data-theme="dark"] .hero-wide .portrait-motion-video{right:-12px;height:100%}.hero-ambience{mask-image:linear-gradient(90deg,transparent 30%,#000 63%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent 30%,#000 63%,transparent)}.hero-ambience svg{right:-205px}}
@media(max-width:600px){.hero-ambience{top:auto;bottom:0;height:470px;mask-image:linear-gradient(0deg,transparent,#000 15%,#000 88%,transparent);-webkit-mask-image:linear-gradient(0deg,transparent,#000 15%,#000 88%,transparent)}.hero-ambience svg{width:650px;right:-30px;top:-35px;height:530px}.ambience-ring{opacity:.8}.ambience-ring-outer{opacity:.45}.ambience-signal{opacity:.85}body[data-theme="dark"] .hero-wide .portrait-motion-video{inset:0;width:100%;height:112%;max-width:100%;object-fit:contain;object-position:center top}}
@media(prefers-reduced-motion:reduce){.hero-ambience *{animation:none!important}.hero-wide .portrait-motion-video{transition:none}}
@media(max-width:600px){#ring-body-clearance{transform:translateY(-120px)}}
