:root {
    /* Cores Oficiais Gertech */
    --primary-blue: #0061a8; 
    --accent-blue: #00c2ee;  
    --dark-bg: #1e3a5a;
    --text-dark: #1e293b;
    --text-muted: #64748b;
}

body { 
    font-family: 'Poppins', sans-serif; 
    color: var(--text-dark);
    line-height: 1.6;
}

/* 1. Header e Logo */
.top-bar-gertech {
    background-color: var(--primary-blue) !important;
    border-bottom: 4px solid var(--accent-blue) !important;
}

.top-logo { 
    height: 55px; 
    transition: transform 0.3s ease;
}

/* 2. Carrossel (IMAGEM LIMPA E SEM SOMBRA ESQUERDA) */
#servicesCarousel .carousel-item { 
    height: 480px; 
    background-color: #000; 
}

#servicesCarousel img { 
    height: 100%; 
    width: 100%;
    object-fit: cover; 
    /* Imagem nítida, apenas levemente escurecida para o branco do texto aparecer */
    filter: brightness(0.85); 
}

/* Removido o overlay ::after conforme solicitado */

.carousel-caption { 
    bottom: 20%; 
    text-align: left; 
    left: 8%; 
    max-width: 800px; 
    z-index: 10;
}

.carousel-caption h2 {
    font-weight: 800;
    font-size: 3.5rem;
    color: #ffffff;
    /* Sombra de texto reforçada para ler sobre a imagem limpa */
    text-shadow: 0 4px 12px rgba(0,0,0,0.8);
    margin-bottom: 1rem;
    line-height: 1.1;
}

.carousel-caption p {
    font-size: 1.3rem;
    color: #ffffff;
    text-shadow: 0 2px 8px rgba(0,0,0,0.8);
    font-weight: 400;
}

/* 3. Ajustes de Fonte para Telemóvel (Responsividade) */
@media (max-width: 768px) {
    #servicesCarousel .carousel-item { 
        height: 350px; /* Reduz altura no telemóvel */
    }

    .carousel-caption {
        left: 5%;
        bottom: 15%;
        width: 90%;
    }

    .carousel-caption h2 {
        font-size: 1.8rem; /* Fonte menor para não ocupar o ecrã todo */
        margin-bottom: 0.5rem;
    }

    .carousel-caption p {
        font-size: 1rem;
        line-height: 1.3;
    }

    .btn-gertech {
        padding: 8px 20px;
        font-size: 0.9rem;
    }

    .section-title {
        font-size: 1.5rem;
    }
}

/* 4. Títulos de Seção */
.section-title {
    font-weight: 700;
    color: var(--primary-blue);
    position: relative;
    padding-bottom: 15px;
}

.section-title::after {
    content: '';
    position: absolute;
    left: 0; bottom: 0;
    width: 50px; height: 4px;
    background: linear-gradient(to right, var(--accent-blue), var(--primary-blue));
    border-radius: 10px;
}

/* 5. Botões Flat */
.btn-gertech, .btn-primary {
    background-color: var(--primary-blue) !important;
    border: none !important;
    color: white !important;
    border-radius: 50px;
    padding: 12px 30px;
    font-weight: 600;
    box-shadow: none !important;
}

.btn-gertech:hover {
    background-color: var(--accent-blue) !important;
}

/* Parceiros */
.partner-logo { 
    max-height: 45px; 
    filter: grayscale(100%); 
    opacity: 0.6;
}
/* --- Estilo de Promoção Gertech (Versão Extra Grande) --- */
.badge-promo-home {
    position: absolute !important;
    top: 35px !important;    /* Um pouco mais afastado do topo */
    right: 35px !important;  /* Um pouco mais afastado da borda */
    z-index: 100 !important;

    background: linear-gradient(45deg, #e60000, #8b0000) !important;
    color: #ffffff !important;
    
    /* Tamanho Aumentado */
    padding: 18px 45px !important;  /* Aumentei a largura e altura */
    font-size: 1.4rem !important;    /* Fonte maior e mais imponente */
    font-weight: 900 !important;    /* Peso máximo da fonte */
    line-height: 1 !important;
    
    text-transform: uppercase;
    letter-spacing: 2.5px;          /* Espaçamento elegante entre letras */
    border: 3px solid #ffffff !important;
    border-radius: 10px !important;
    box-shadow: 0 12px 35px rgba(0,0,0,0.7) !important;
    
    display: flex !important;
    align-items: center;
    justify-content: center;
    white-space: nowrap;            /* Garante que o texto não quebre linha */
    
    animation: promoFadeIn 0.8s cubic-bezier(0.17, 0.67, 0.83, 0.67);
}

.badge-promo-home i {
    font-size: 1.7rem;              /* Ícone acompanhando o aumento */
    margin-right: 15px;
}

@keyframes promoFadeIn {
    from { 
        opacity: 0; 
        transform: translateX(120px) scale(0.8); 
    }
    to { 
        opacity: 1; 
        transform: translateX(0) scale(1); 
    }
}

/* Ajuste para Telemóveis (Mantendo legível mas sem tapar o rosto da imagem) */
@media (max-width: 768px) {
    .badge-promo-home {
        top: 15px !important;
        right: 15px !important;
        padding: 12px 25px !important;
        font-size: 1rem !important;
    }
    .badge-promo-home i {
        font-size: 1.2rem;
    }
}