body {
    height: 100vh;
    display: flex;
    flex-direction: column;
    overflow: hidden; 
}

.hero {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.hero .container { display: block; }

h1 {
    font-size: clamp(44px, 9vw, 140px); 
    font-weight: 700;
    line-height: 0.9;
    letter-spacing: -0.04em;
    margin-bottom: 30px;
}

.subtitle {
    font-size: clamp(15px, 1.2vw, 19px); 
    color: #888;
    line-height: 1.4;
}

@media (max-width: 768px) {
    body { height: auto; overflow-y: auto; }
    .hero { padding: 120px 0 60px; min-height: 60vh; }
    h1 { font-size: 44px; letter-spacing: -1.5px; }
}