/* Dual Forge / conceptual product and research visual system.
   Text, links, menus and product state remain authored HTML. */
.project-visual--cinematic{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(125deg,#171c24,#0b0e13);border:1px solid rgba(225,184,111,.2)}
.project-visual--cinematic::after{content:"";position:absolute;inset:48% 0 0;z-index:1;pointer-events:none;background:linear-gradient(transparent,rgba(4,8,13,.84))}
.project-visual--cinematic img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.94) contrast(1.05);transition:transform .45s ease}
.project-card:hover .project-visual--cinematic img{transform:scale(1.03)}
.project-visual--cinematic figcaption{position:absolute;z-index:2;bottom:13px;left:17px;right:17px;color:#e4be81;font:.57rem/1.4 var(--mono);letter-spacing:.06em;text-shadow:0 1px 10px rgba(0,0,0,.9)}
.project-card--large .project-visual--cinematic{flex:1;min-height:250px;margin:0 29px 0;box-shadow:0 13px 36px rgba(0,0,0,.22)}
.project-card--small .project-visual--cinematic{position:relative;min-width:0;min-height:210px;margin:20px 18px 20px -10px}
.project-card--small .project-visual--cinematic img{object-position:50%}
.project-card--small .project-visual--cinematic figcaption{font-size:.49rem}
.project-detail-visual{position:relative;overflow:hidden;isolation:isolate;margin:-28px -30px 20px;height:175px;border-bottom:1px solid rgba(223,184,117,.21);background:#0b1119}
.project-detail-visual img{display:block;width:100%;height:100%;object-fit:cover;filter:contrast(1.04) saturate(.89);transition:transform .4s ease}
.project-detail:hover .project-detail-visual img{transform:scale(1.035)}
.project-detail-visual::after{content:"";position:absolute;inset:52% 0 0;background:linear-gradient(transparent,rgba(10,14,19,.82));pointer-events:none}
.project-detail-visual figcaption{position:absolute;z-index:2;bottom:10px;left:16px;font:.52rem var(--mono);color:#d5b985;letter-spacing:.055em}
.project-directory .project-detail{min-height:410px}
.project-directory .project-detail h3{margin-top:16px}
.research-cinematic-hero.page-hero{padding-top:84px;padding-bottom:87px}
.research-cinematic-hero .page-hero-inner{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(28px,4vw,58px)}
.research-cinematic-hero h1{font-size:clamp(3rem,5.3vw,5.65rem);max-width:820px}
.research-cinematic-hero p{max-width:790px}
.research-cinematic-visual{position:relative;overflow:hidden;isolation:isolate;margin:0;aspect-ratio:1.07/1;border:1px solid rgba(223,184,117,.36);background:#090e15;box-shadow:0 28px 72px rgba(0,0,0,.34),0 0 45px rgba(215,148,71,.065)}
.research-cinematic-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:52% 50%;filter:contrast(1.04) saturate(.93)}
.research-cinematic-visual::after{content:"";pointer-events:none;position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(5,9,14,.79))}
.research-cinematic-visual figcaption{position:absolute;z-index:2;bottom:17px;left:20px;right:20px;color:#e0bc81;font:.62rem/1.5 var(--mono);letter-spacing:.06em}
@media(max-width:1120px){.research-cinematic-hero .page-hero-inner{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:26px}.research-cinematic-hero h1{font-size:clamp(2.9rem,5vw,4.7rem)}}
@media(max-width:980px){
.project-card--small .project-visual--cinematic{min-height:155px}
.research-cinematic-hero .page-hero-inner{grid-template-columns:minmax(0,1fr)}
.research-cinematic-visual{aspect-ratio:1.7/1;max-width:900px;width:100%}
}
@media(max-width:780px){
.project-card--small .project-visual--cinematic{display:block;position:relative;margin:0 20px 24px;min-height:170px;aspect-ratio:1.75/1}
.project-card--small{display:flex;flex-direction:column}
.project-card--small .project-info{padding-bottom:15px}
.project-card--small .project-visual--cinematic img{object-position:center}
.project-card--large .project-visual--cinematic{min-height:220px}
.research-cinematic-hero.page-hero{padding-top:65px;padding-bottom:75px}
}
@media(max-width:560px){
.project-card--large .project-visual--cinematic{min-height:190px;margin:0 16px}
.project-card--small .project-visual--cinematic{min-height:135px;margin:0 17px 18px;aspect-ratio:1.55/1}
.project-detail-visual{margin:-28px -30px 17px;height:160px}
.research-cinematic-hero h1{font-size:clamp(2.8rem,11vw,4.4rem)}
.research-cinematic-visual{aspect-ratio:1.18/1}
.research-cinematic-visual figcaption{font-size:.54rem;bottom:12px;left:13px}
}
@media(prefers-reduced-motion:reduce){
.project-card .project-visual--cinematic img,.project-detail-visual img{transition:none}
.project-card:hover .project-visual--cinematic img,.project-detail:hover .project-detail-visual img{transform:none}
}
