/**
 * Faixa verde de título/descrição — mesma altura e responsivo da home (index.html).
 */
.header-section {
    background: linear-gradient(135deg, #1a4720 0%, #238636 35%, #2ea043 70%, #3fb950 100%);
    color: white;
    padding: 3rem 0;
    margin-bottom: 1.5rem;
    position: relative;
    overflow: hidden;
    box-shadow: 0 4px 24px rgba(46, 160, 67, 0.25);
    /* Mesma tipografia “chrome” da top-bar (--rr-font-ui-sans definido em top-bar.css) */
    font-family: var(
        --rr-font-ui-sans,
        system-ui,
        -apple-system,
        BlinkMacSystemFont,
        'Segoe UI',
        Roboto,
        'Helvetica Neue',
        Arial,
        sans-serif
    );
}

.header-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grid" width="10" height="10" patternUnits="userSpaceOnUse"><path d="M 10 0 L 0 0 0 10" fill="none" stroke="rgba(255,255,255,0.08)" stroke-width="0.5"/></pattern></defs><rect width="100" height="100" fill="url(%23grid)"/></svg>');
    opacity: 1;
}

.header-section .container {
    position: relative;
    z-index: 1;
}

@media (max-width: 991.98px) {
    .header-section {
        padding: 2rem 0;
    }

    .header-section h1,
    .header-section h2 {
        font-size: 1.8rem;
    }
}

@media (max-width: 767.98px) {
    .header-section {
        padding: 1.5rem 0;
        text-align: center;
    }

    .header-section h1,
    .header-section h2 {
        font-size: 1.5rem;
        margin-bottom: 0.5rem;
    }

    .header-section p {
        font-size: 0.9rem;
        margin-bottom: 1rem;
    }

    .header-section .btn {
        width: 100%;
        margin-top: 1rem;
    }
}

@media (max-width: 575.98px) {
    .header-section {
        padding: 1rem 0;
    }

    .header-section h1,
    .header-section h2 {
        font-size: 1.3rem;
    }

    .header-section p {
        font-size: 0.8rem;
    }
}

@media (max-width: 767.98px) and (orientation: landscape) {
    .header-section {
        padding: 1rem 0;
    }

    .header-section h1,
    .header-section h2 {
        font-size: 1.4rem;
    }
}

/* Ícone de rádio com pulso — igual ao index.html */
.header-section .radio-wave {
    position: relative;
    display: inline-block;
}

.header-section .radio-wave::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 20px;
    border: 2px solid rgba(255, 255, 255, 0.85);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    animation: header-radio-pulse 2s infinite;
}

@keyframes header-radio-pulse {
    0% {
        transform: translate(-50%, -50%) scale(1);
        opacity: 1;
    }
    100% {
        transform: translate(-50%, -50%) scale(2);
        opacity: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .header-section .radio-wave::after {
        animation: none;
    }
}
