
.hero {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 100px 5% 40px;
    background: radial-gradient(circle at center, #1a1a1a 0%, #000000 100%);
}

.hero-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    max-width: 1300px;
    gap: 2rem;
}

.hero-content { flex: 1.2; }

.hero-content h1 {
    font-size: clamp(2.2rem, 6vw, 4rem);
    line-height: 1.1;
    margin-bottom: 1.5rem;
    font-weight: 900;
    color: #fff;
    letter-spacing: -2px;
}

.hero-content p {
    font-size: clamp(1rem, 2vw, 1.2rem);
    margin-bottom: 2.5rem;
    color: #aaa;
    max-width: 500px;
}

.hero-btns { 
    display: flex; 
    gap: 1rem; 
    flex-wrap: wrap; 
}

#hero-visual-container {
    flex: 1;
    height: 50vh;
    min-height: 350px;
    display: flex;
    align-items: center;
    justify-content: center;
}

#printer-canvas { width: 100%; height: 100%; max-width: 600px; }

@media (max-width: 992px) {
    .hero-container { 
        flex-direction: column; 
        text-align: center;
        justify-content: center;
    }
    
    .hero-content { order: 2; width: 100%; }
    
    #hero-visual-container { 
        order: 1; 
        width: 100%;
        height: 35vh;
        min-height: 250px;
    }
    
    .hero-btns { justify-content: center; }
    
    .hero-content p { margin-left: auto; margin-right: auto; }
}
