/* Hero — variant style2 (imagem de fundo única, sem slider) */

.gpc-hero-banner.style2 {
    --hb-navy: #0a1a33;
    --hb-text: #eef3fb;
    --hb-text-muted: rgba(238, 243, 251, 0.72);
    --hb-line: rgba(238, 243, 251, 0.18);

    position: relative;
    width: 100%;
    min-height: 100vh;
    overflow: hidden;
    background: var(--hb-navy);
    color: var(--hb-text);
    display: flex;
}

/* ---------- Fundo ---------- */

.gpc-hero-banner.style2 .gpc-hero-banner__media {
    position: absolute;
    inset: 0;
}

.gpc-hero-banner.style2 .gpc-hero-banner__bg {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* gradiente da esquerda (texto legível) + vinheta no fundo */
.gpc-hero-banner.style2 .gpc-hero-banner__overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, var(--hb-navy) 0%, rgba(10, 26, 51, 0.88) 30%, rgba(10, 26, 51, 0.35) 62%, rgba(10, 26, 51, 0) 100%),
        linear-gradient(180deg, rgba(10, 26, 51, 0) 60%, var(--hb-navy) 100%);
}

/* ---------- Layout ---------- */

.gpc-hero-banner.style2 .gpc-hero-banner__inner {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: var(--max-content-width);
    margin: 0 auto;
    padding: 0 var(--content-padding);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.gpc-hero-banner.style2 .gpc-hero-banner__content {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    max-width: 640px;
    padding: 6rem 0 3rem;
}

/* ---------- Texto ---------- */

.gpc-hero-banner.style2 .gpc-hero-banner__eyebrow {
    margin: 0 0 1.25rem;
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--hb-text-muted);
}

.gpc-hero-banner.style2 .gpc-hero-banner__title {
    margin: 0 0 1.5rem;
    font-family: var(--gpc-hero-title-font, inherit);
    font-weight: 400;
    line-height: 0.95;
    letter-spacing: -0.01em;
    font-size: clamp(3.5rem, 9vw, 7rem);
    color: var(--hb-text);
    text-transform: none;
}

.gpc-hero-banner.style2 .gpc-hero-banner__title-line {
    display: block;
}

.gpc-hero-banner.style2 .gpc-hero-banner__title-line--accent {
    font-style: italic;
    font-weight: 400;
}

.gpc-hero-banner.style2 .gpc-hero-banner__description {
    margin: 0 0 2.25rem;
    max-width: 46ch;
    font-size: 1.05rem;
    line-height: 1.6;
    color: var(--hb-text-muted);
}

/* ---------- Botões ---------- */

.gpc-hero-banner.style2 .gpc-hero-banner__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.gpc-hero-banner.style2 .gpc-hero-banner__btn {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem 1.75rem;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    text-decoration: none;
    border: 1px solid var(--hb-text);
    transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

.gpc-hero-banner.style2 .gpc-hero-banner__btn--primary {
    background: var(--hb-text);
    color: var(--hb-navy);
}

.gpc-hero-banner.style2 .gpc-hero-banner__btn--primary:hover {
    background: transparent;
    color: var(--hb-text);
}

.gpc-hero-banner.style2 .gpc-hero-banner__btn--secondary {
    background: transparent;
    color: var(--hb-text);
    border-color: var(--hb-line);
}

.gpc-hero-banner.style2 .gpc-hero-banner__btn--secondary:hover {
    background: var(--hb-text);
    color: var(--hb-navy);
    border-color: var(--hb-text);
}

.gpc-hero-banner.style2 .gpc-hero-banner__icon {
    flex-shrink: 0;
}

/* ---------- Barra inferior ---------- */

.gpc-hero-banner.style2 .gpc-hero-banner__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1.25rem 0 1.75rem;
    border-top: 1px solid var(--hb-line);
    font-size: 0.68rem;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--hb-text-muted);
}

.gpc-hero-banner.style2 .gpc-hero-banner__footer-link {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    color: inherit;
    text-decoration: none;
    transition: color 0.3s ease;
}

.gpc-hero-banner.style2 .gpc-hero-banner__footer-link:hover {
    color: var(--hb-text);
}

/* ---------- Responsivo ---------- */

@media (max-width: 767px) {
    .gpc-hero-banner.style2 {
        min-height: 85vh;
    }

    .gpc-hero-banner.style2 .gpc-hero-banner__inner {
        padding: 0 var(--content-padding);;
    }

    
    .gpc-hero-banner.style2 .gpc-hero-banner__overlay {
        background: linear-gradient(180deg, rgba(10, 26, 51, 0.55) 0%, rgba(10, 26, 51, 0.85) 60%, var(--hb-navy) 100%);
    }

    .gpc-hero-banner.style2 .gpc-hero-banner__content {
        justify-content: flex-end;
        padding-top: 8rem;
    }

    .gpc-hero-banner.style2 .gpc-hero-banner__btn {
        padding: 0.9rem 1.25rem;
    }
}
