/* Redmoon / photographic direction, October 2026. Native images, no upscaling. */
.cinematic.hero{background:#13090d;min-height:800px}
.hero-scene{background:#13090d}
.hero-scene[data-scene="1"]{background:#230c13}
.hero-scene[data-scene="2"]{background:#100b0e}
.scene-visual{position:absolute;left:41%;right:5%;top:21%;bottom:22%;overflow:hidden;border-radius:4px;isolation:isolate}
.scene-visual picture{display:block;width:100%;height:100%}
.scene-image{width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;transform-origin:60% 50%}
.scene-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#13090d80,transparent 24%);pointer-events:none}
.scene-frame-line{position:absolute;inset:18px;border:1px solid #fff3;pointer-events:none}
.cinematic .scene-shade{display:none}
.cinematic .scene-copy,.hero-scene[data-scene="1"] .scene-copy,.hero-scene[data-scene="2"] .scene-copy{top:30%;bottom:auto;left:0;right:0;text-align:left;padding-left:var(--side);padding-right:0;z-index:2}
.cinematic .scene-title,.hero-scene[data-scene="1"] .scene-title,.hero-scene[data-scene="2"] .scene-title{font-size:clamp(50px,5.15vw,96px);font-weight:600;line-height:1.04;letter-spacing:-.04em;max-width:60%}
.cinematic .scene-copy p,.hero-scene[data-scene="1"] .scene-copy p{font-size:clamp(14px,1.1vw,18px);max-width:36ch;margin:28px 0 0;line-height:1.65}
.scene-title em,.scene-title .red{color:#ff4266}
.cinematic .hero-cta{bottom:125px}
.cinematic .hero-bottom{bottom:24px;padding-top:14px;border-top:1px solid #ffffff26;margin-inline:var(--side);padding-inline:0;width:auto}
.cinematic .hero-media-note{right:5%;bottom:calc(22% - 26px);font-size:10px}
.scene-selector button{transition:color .2s}.scene-selector button:hover{color:#ff4266}
.hero-cta .button,.contact-invitation .button{transition:background .25s,transform .25s}
.hero-cta .button:hover,.contact-invitation .button:hover{transform:translateY(-3px)}
.text-link .icon,.contact-channel>.icon,.footer-top .icon{transition:transform .3s var(--ease)}
.text-link:hover .icon,.contact-channel:hover>.icon{transform:translateX(5px)}
.footer-top:hover .icon{transform:translateY(-4px)}
.solution-list a{position:relative;transition:color .2s}
.solution-list a::after{content:"";position:absolute;inset:auto 0 -1px;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.solution-list a:hover::after{transform:scaleX(1)}
.solution-image,.structure-panel figure{overflow:hidden}
.process-steps article{transition:border-color .3s}
.process-steps article:hover{border-color:#ff4266}
.header.bankai-top #navigation.is-open a{animation:nav-link-arrive .4s both cubic-bezier(.16,1,.3,1)}
.header.bankai-top #navigation.is-open a:nth-child(2){animation-delay:40ms}
.header.bankai-top #navigation.is-open a:nth-child(3){animation-delay:80ms}
.header.bankai-top #navigation.is-open a:nth-child(4){animation-delay:120ms}
@keyframes nav-link-arrive{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
@media(min-width:1700px){.scene-visual{left:39%;top:20%;bottom:21%}.cinematic .scene-copy{top:29%}.cinematic .hero-cta{bottom:145px}}
@media(min-width:761px) and (max-width:1100px){.scene-visual{left:35%;top:24%;bottom:25%}.cinematic .scene-copy,.hero-scene[data-scene="1"] .scene-copy,.hero-scene[data-scene="2"] .scene-copy{top:32%}.cinematic .scene-title,.hero-scene[data-scene="1"] .scene-title,.hero-scene[data-scene="2"] .scene-title{font-size:clamp(46px,6vw,64px)}}
@media(max-width:760px){
 .cinematic.hero{min-height:880px;height:100svh}
 .cinematic .scene-copy,.hero-scene[data-scene="1"] .scene-copy,.hero-scene[data-scene="2"] .scene-copy{top:128px;bottom:auto;padding-inline:20px}
 .cinematic .scene-title,.hero-scene[data-scene="1"] .scene-title,.hero-scene[data-scene="2"] .scene-title{font-size:clamp(38px,10.5vw,64px);line-height:1.02;max-width:100%}
 .cinematic .scene-copy p,.hero-scene[data-scene="1"] .scene-copy p{font-size:13px;line-height:1.6;max-width:34ch;margin-top:18px}
 .scene-visual{left:20px;right:20px;top:390px;bottom:244px;border-radius:3px}
 .scene-visual::after{display:none}.scene-frame-line{inset:10px}
 .scene-image{object-position:center}
 .cinematic .hero-cta{bottom:125px;gap:9px}
 .cinematic .hero-media-note{bottom:222px;left:auto;right:20px;font-size:9px}
 .cinematic .hero-bottom{margin-inline:20px;padding-top:0;bottom:15px;gap:6px;border:0}
 .cinematic .hero-bottom .scene-selector{gap:14px}
 .cinematic .hero-bottom .scene-selector button{padding-block:8px 11px}
 .cinematic .hero-playback{justify-content:space-between}.cinematic .motion-control{min-height:36px}
}
@media(max-width:370px){.cinematic .scene-title,.hero-scene[data-scene="1"] .scene-title,.hero-scene[data-scene="2"] .scene-title{font-size:36px}.cinematic .scene-copy p{font-size:12px}.scene-visual{top:365px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.header.bankai-top #navigation.is-open a{animation:none}*,*::before,*::after{transition-duration:.01ms!important}.hero-cta .button:hover,.contact-invitation .button:hover{transform:none}}
body.motion-paused .header.bankai-top #navigation.is-open a{animation:none}
