@import 'background.css';
@import 'content.css';
@import 'menu.css';
@import 'news.css';

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root {
    --foreground: #fafafa;
    --background: #d2e0fb;
    --main: #1e4f9e;
    --main-hover: #3171d8;
    --second: #dd2c44;
    --second-hover: #d86372;
    --third: #ffe6e6;
    --gradient: linear-gradient(90deg, var(--main), var(--main-hover));
    --gradient-second: linear-gradient(90deg, var(--second), var(--second-hover));
    --gradient-success: linear-gradient(135deg, #28a745, #20c997);
}

html {
    scroll-behavior: smooth;
}

body {
    display: flex;
    flex-direction: column;
    background-color: var(--foreground);
    margin: 0;
    padding: 0;
    min-height: 100vh;
    position: relative;
    max-width: 100%;
}

main {
    flex: 1;
    padding-bottom: 75px;
}

footer {
    min-height: 75px;
    height: auto;
    padding: 1rem 1.5rem;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 0.4rem 1.2rem;
    color: white;
    background-color: var(--main) !important;
}

footer a {
    text-decoration: underline !important;
    text-underline-offset: 0.2em !important;
}

a {
    text-decoration: none;
}

p, li {
    font-size: 16px;
    text-align: justify;
}

@media (max-width: 500px) {
    p, li {
        font-size: 14px;
    }
}

.highlight {
    font-weight: bold;
    color: var(--second-hover);
}

.gradient-bg {
    background: var(--gradient) !important;
}

.gradient-bg-second {
    background: var(--gradient-second) !important;
}

.gradient-text {
    font-weight: bold;
    background: var(--gradient);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.gradient-text-second {
    font-weight: bold;
    background: var(--gradient-second);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.rounded-circle {
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--gradient);
}

.btn {
    border: none;
    position: relative;
    overflow: hidden;
    font-weight: bold;
    transition: all 0.3s ease;
    color: var(--foreground);
    background: var(--gradient);
}

.btn-success {
    background: var(--gradient-success);
}

#home .card-body {
    border: none;
    background: transparent;
}

#home .home-badge-section {
    margin-top: 1rem;
    padding-top: 1.25rem;
}

@media (max-width: 991.98px) {
    p, li {
        text-align: left;
    }

    #home .home-feature-row {
        flex-direction: column;
        align-items: stretch !important;
    }

    #home .home-feature-row .btn {
        width: 100%;
    }

    #home h5.fs-5,
    #home .badge.fs-5,
    #home #news-list .fs-5,
    #home p.fs-5 {
        font-size: 1rem !important;
    }
}

@media (hover: hover) {
    .btn:hover {
        filter: brightness(1.1);
        transform: translateY(-2px);
        color: var(--foreground);
        box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15) !important;
    }
}
