:root {
    color-scheme: light;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --ibe-blue: #0e226b;
    --ibe-blue-dark: #08143f;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    min-height: 100vh;
    background: #f8fafc;
    color: #0f172a;
}

::selection {
    background: #2563eb;
    color: white;
}

button,
a {
    transition: all 200ms ease;
}

    button:hover,
    a:hover {
        opacity: 0.92;
    }

.shadow-soft {
    box-shadow: 0 20px 45px rgba(15, 23, 42, 0.08);
}

.fade-in {
    animation: fadeInUp 0.8s ease both;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.scroll-smooth {
    scroll-behavior: smooth;
}

/* Hero carousel styles */
.hero-carousel {
    position: relative;
/*    overflow: hidden;*/
}
.carousel-slide{
    position: relative;
}

    .hero-carousel .carousel-slides img > .carousel-slide img {
        position: absolute;
        inset: 0;
        background-size: cover;
        background-position: center;
        opacity: 0;
        transform: scale(1.02);
        transition: opacity 1s ease-in-out, transform 1.2s ease;
    }

        .hero-carousel .carousel-slides > .carousel-slide.active {
            opacity: 1;
            transform: scale(1);
        }

    .hero-carousel .carousel-overlay {
        mix-blend-mode: normal;
    }

/* Make background carousel fill the section and be slightly dimmed for readability */
#hero-carousel {
    min-height: 420px;
}

    #hero-carousel .carousel-slide {
        filter: saturate(0.98) contrast(1.02);
        will-change: opacity, transform;
    }

.menu_active {
    color: var(--ibe-blue);
    position: relative;
}

    .menu_active::after {
        content: '';
        /* display: block; */
        position: absolute;
        width: 100%;
        height: 1px;
        background-color: var(--ibe-blue);
        bottom: -4px;
        left: 0;
        border-radius: 1rem;
    }

.submenu_active {
    background: #ced8e3b9;
    padding: .2rem;
    border-radius: .2rem;
}
