.futuro-hero { display:grid; grid-template-columns:1fr 1fr; align-items:center; }
.futuro-hero::before { pointer-events:none; }
.hero-copy { position:relative; z-index:1; padding:40px; }
.eyebrow { color:var(--accent); font-size:.76rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.hero-copy .logo { padding:8px 0; }
.hero-description { color:var(--hero-text); font-size:1.2rem; line-height:1.65; }
.futuro-hero>img { width:100%; height:100%; min-height:340px; object-fit:cover; }
.explore-button { display:inline-block; padding:12px 18px; margin-top:10px; border-radius:10px; background:var(--accent); color:var(--bg); font-weight:700; text-decoration:none; }
.intro-panel { margin:28px 0; padding:28px 34px; border-radius:var(--radius-md); background:var(--panel); line-height:1.75; }
.intro-panel h2 { margin:0 0 12px; }
.intro-panel h2:not(:first-child) { margin-top:24px; }
.intro-panel p:last-child { margin-bottom:0; }
.intro-panel .eyebrow { color:var(--text-soft); }
.intro-panel a { color:#173f55; text-underline-offset:3px; }
.viewer-section,.render-section { margin:36px 0; color:var(--hero-text); scroll-margin-top:20px; }
.section-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.section-heading h2 { margin:8px 0; font-size:1.85rem; }
.section-heading a { color:var(--accent); }
.viewer-instructions,.viewer-caption { color:var(--hero-muted); line-height:1.65; }
.viewer-section iframe { width:100%; height:780px; border:1px solid var(--panel-edge); border-radius:20px; background:#f2f3ef; }
.viewer-caption { font-size:.88rem; }
.render-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:20px; }
.render-grid figure { margin:0; overflow:hidden; border:1px solid var(--panel-edge); border-radius:18px; background:#102331; }
.render-grid img { display:block; width:100%; aspect-ratio:4/3; object-fit:contain; background:#f2f3ef; }
.render-grid figcaption { padding:18px; line-height:1.6; font-size:.92rem; }
.render-grid strong { display:block; color:var(--accent); margin-bottom:4px; }
@media(max-width:700px) { .futuro-hero { grid-template-columns:1fr; } .hero-copy { padding:28px; } .futuro-hero>img { min-height:0; max-height:310px; } .intro-panel { padding:24px; } .section-heading { align-items:flex-start; flex-direction:column; gap:8px; } .render-grid { grid-template-columns:1fr; } }
@media(max-width:620px) { .viewer-section iframe { height:1100px; } }
