.home-3d { display:grid; grid-template-columns:minmax(0, 1.5fr) minmax(0, 1fr); gap:0; margin-top:26px; margin-bottom:26px; border:1px solid rgba(255,255,255,.14); background:#0b1a2b; }
.home-3d-picture { display:block; position:relative; overflow:hidden; width:100%; background:#07111f; min-height:260px; aspect-ratio:16/9; align-self:stretch; }
.home-3d-picture img { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.home-3d-canvas { position:absolute; inset:0; z-index:1; display:block; width:100%; height:100%; opacity:0; transition:opacity .6s ease; pointer-events:none; }
.home-3d-canvas.is-live { opacity:1; }
@media (hover: hover) and (pointer: fine) { .home-3d-canvas { pointer-events:auto; cursor:grab; } .home-3d-canvas:active { cursor:grabbing; } }
.home-3d-picture:hover img { transform:scale(1.025); }
.home-3d-open { position:absolute; left:14px; bottom:14px; z-index:2; padding:7px 13px; border-radius:999px; background:rgba(7,17,31,.86); color:#fff; font-size:.88rem; font-weight:600; }
.home-3d-text { display:flex; flex-direction:column; justify-content:center; padding:26px 28px; }
.home-3d-text .eyebrow { margin:0 0 8px; }
.home-3d-text h2 { margin:0 0 10px; color:#fff; font-size:clamp(1.5rem, 2.3vw, 2.05rem); line-height:1.12; }
.home-3d-text p { margin:0 0 14px; }
.home-3d-note { color:#a9b9c6; font-size:.84rem; line-height:1.4; }
.home-3d-text .hero-actions { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:8px; margin:0 0 14px; }
.home-3d-text .hero-actions .button { padding:6px 12px; text-align:center; line-height:1.2; }
.home-3d-text .hero-actions .button.secondary { font-size:.92rem; }
@media (max-width: 400px) { .home-3d-text .hero-actions { grid-template-columns:1fr; } }
@media (prefers-reduced-motion: reduce) { .home-3d-picture img, .home-3d-canvas { transition:none; } .home-3d-picture:hover img { transform:none; } }
@media (max-width: 860px) { .home-3d { grid-template-columns:1fr; } .home-3d-picture { min-height:0; aspect-ratio:16/9; } .home-3d-text { padding:18px 16px; } }
