body,
body *:not(html):not(style):not(br):not(tr):not(code):not(i) {
    box-sizing: border-box;
    font-family: "Poppins", sans-serif !important;
    position: relative;
}

.bg-secondary {
    background-color: #09293b !important;
}

.bg-secondary:hover {
    background-color: #0b3a4e !important;
}

.letter-spacing-wide {
    letter-spacing: 0.05em;
}

.bg-transparent {
    background-color: transparent !important;
}

.h1-hero-header {
    font-size: 3rem !important;
}

.home-bg::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(
        0,
        0,
        0,
        0.7
    ); /* adjust 0.35 to make darker/lighter */
    z-index: -1;
}

/* Center content vertically and set up transitions */
.industry-overlay {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    transition: background 0.35s ease;
    padding: 10px;
    /* border-radius:1.5rem; */
}
.industry-title {
    transition: opacity 0.3s ease, transform 0.3s ease;
}
.industry-desc {
    transition: opacity 0.35s ease, transform 0.35s ease;
    opacity: 0;
    transform: translateY(8px);
}

/* Hover state: bg-primary overlay, hide title, show desc */
.overflow-hidden:hover .industry-overlay {
    background: #ff6900;
}
.overflow-hidden:hover .industry-title {
    opacity: 0;
    transform: translateY(-6px);
}
.overflow-hidden:hover .industry-desc {
    opacity: 1;
    transform: translateY(0);
}

/* CRITICAL: undo Bootstrap's visually-hidden on hover/focus so it can show */
.overflow-hidden:hover .industry-desc.visually-hidden,
.overflow-hidden:focus-within .industry-desc.visually-hidden {
    position: static !important;
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
    margin-top: 1rem !important;
    overflow: visible !important;
    clip: auto !important;
    clip-path: none !important;
    white-space: normal !important;
    display: block !important;
    visibility: visible !important;
}

/* Keep carousel side controls visible above cards */
.carousel-control-prev,
.carousel-control-next {
    width: 5%;
    opacity: 1 !important;
    z-index: 10;
}
.carousel-control-prev-icon,
.carousel-control-next-icon {
    background-size: 50%;
    padding: 1rem;
}

.secondary-bg {
    background-color: #09293b !important;
}

.btn-secondary {
    background-color: #09293b !important;
    border-color: #09293b !important;
}

.btn-secondary:hover {
    background-color: #0b3750 !important;
    border-color: #0b3750 !important;
}


@media screen and (max-width: 768px) {
    .h1-hero-header {
        font-size: 1.7rem !important;
    }
    .fs-3rem {
        font-size: 1.7rem !important;
    }
}