.hero-wrapper {
    min-height: 95vh;
    padding-top: 80px;
    display: grid;
    grid-template-columns: 45% 55%;
    background-color: transparent;
}

.hero-text-area {
    z-index: 5;
    display: flex;
    align-items: center;
    padding: 0 3.5rem;
    background-color: transparent;
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" preserveAspectRatio="none"><path d="M0,0 L100,0 L100,85 Q75,100 0,85 L0,0 Z" fill="white"/></svg>');
    mask-size: 100% 100%;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" preserveAspectRatio="none"><path d="M0,0 L100,0 L100,85 Q75,100 0,85 L0,0 Z" fill="white"/></svg>');
    -webkit-mask-size: 100% 100%;
}

.hero-content {
    max-width: 560px;
    padding-bottom: 3rem;
}

.hero-logo {
    color: var(--accent-color);
    font-size: 1.18rem;
    font-weight: 900;
    letter-spacing: .2em;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

.hero-content h1 {
    margin: .8rem 0 1.25rem;
    font-size: clamp(3.2rem, 5.4vw, 6.2rem);
    font-weight: 850;
    line-height: .9;
    letter-spacing: -.055em;
    text-wrap: balance;
}

.hero-content p {
    color: var(--text-secondary);
    font-size: 1.12rem;
    line-height: 1.72;
    margin-bottom: 2rem;
}

.hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .85rem;
}

/* Botões */
.hm-btn, .cta-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
    border: 0;
    border-radius: 5px;
    padding: .95rem 1.55rem;
    color: #fff;
    background: linear-gradient(to bottom, var(--accent-color), #a82828);
    font-size: .98rem;
    font-weight: 800;
    box-shadow: 0 14px 32px #cc333338;
    transition: transform .2s ease, filter .2s ease, box-shadow .2s ease;
}

.hm-btn:hover, .cta-button:hover {
    transform: translateY(-2px) scale(1.02);
    filter: brightness(1.08);
    box-shadow: 0 18px 45px #cc333357;
    color: #fff;
}

.hm-btn.secondary {
    color: var(--text-primary);
    background: #1a1a1ac2;
    border: 1px solid var(--border-red);
    box-shadow: none;
}

/* Collage */
.hero-bg-collage {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    min-height: 100%;
    overflow: hidden;
}

.hero-panel {
    position: relative;
    min-height: 100%;
    background-size: cover;
    background-position: center;
    filter: brightness(.86) saturate(1.1);
    transition: transform .45s ease, filter .45s ease;
}

.hero-panel:before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(0,0,0,.5), transparent 28%), linear-gradient(to top, var(--dark-bg), transparent 32%);
}

.hero-panel:hover {
    transform: scale(1.05);
    filter: brightness(1.06) saturate(1.18);
    z-index: 2;
}

@media(max-width: 1040px) {
    .hero-wrapper {
        grid-template-columns: 1fr;
        min-height: auto;
    }
    .hero-text-area {
        padding: 5rem 1.5rem 4rem;
        mask-image: none;
        -webkit-mask-image: none;
        text-align: center;
        justify-content: center;
    }
    .hero-actions { justify-content: center; }
    .hero-bg-collage { height: 330px; }
}

@media(max-width: 640px) {
    .hero-content h1 { font-size: 3rem; }
    .hero-bg-collage { height: 250px; }
}
