:root {
    --fold-brown: #8B5A2B;
    --grass-green: #4CAF50;
    --water-blue: #6EC3E6;
    --cream-bg: #F9F5E9;
    --dark-blue: #1E3A8A;
}

body {
    font-family: 'Montserrat', sans-serif;
    background-color: var(--cream-bg);
    padding-top: 0 !important;
    margin: 0 !important;
}

h1, h2, h3 {
    font-family: 'Playfair Display', serif;
}

.navbar {
    margin-bottom: 0 !important;
}

.btn-primary {
    background-color: var(--dark-blue);
    border: none;
}

.card {
    transition: transform 0.3s;
}

.card:hover {
    transform: translateY(-10px);
}

footer {
    background-color: var(--fold-brown);
    color: white;
    padding: 20px 0;
}

.subfooter {
    position: relative;
    width: 100%;
    padding: 60px 0;
    background: url('/site/static/images/footers.png') no-repeat center center;
    background-size: cover;
    color: white;
    overflow: hidden; /* Megakadályozza a vízszintes görgetést */
}

.subfooter-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
}

.subfooter .container {
    position: relative;
    z-index: 2;
}

.subfooter-title {
    font-size: 1.8rem;
    margin-bottom: 10px;
}

.hero-section {
    position: relative;
    height: calc(100vh - 56px); /* 56px a Bootstrap navbar magassága */
    min-height: 500px; /* Csökkentettük, mert a menü is "evesz" a képernyőből */
    background: url("/site/static/images/headers.png") no-repeat center center;
    background-size: cover;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding-top: 0 !important; /* Biztos, hogy nincs felesleges padding */
    border-radius: 0 0 24px 24px; /* 0 = felső sarkok, 24px = alsó sarkok */
    overflow: hidden; /* Kötelező a háttérkép kerekítéséhez! */
}

.hero-content {
    max-width: 1200px;
    padding-left: 35px;
    text-align: left;
    margin: 0; /* Az auto már nem kell */
}

.hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4); /* Sötét átfedés a szöveg olvashatóságához */
}

.hero-section h5 {
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5); /* Szöveg árnyék kontraszthoz */
}

.hero-section p {
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5); /* Szöveg árnyék kontraszthoz */
}

.hk, .mgk, .aik, .mk, .gtsz {
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 300px;
    border-radius: 8px;
}

.hk {
    background-image: url('/site/static/images/haztartasi_kut.png');
}

.mgk {
    background-image: url('/site/static/images/mezogazdasagi_ontozes.png');
}

.aik {
    background-image: url('/site/static/images/allat_itatas.png');
}

.mk {
    background-image: url('/site/static/images/monitoring_kut.png');
}

.gtsz {
    background-image: url('/site/static/images/geoszonda.png');
}

/* Mobil optimalizálás (max-width: 768px) */
@media (max-width: 768px) {
    /* Hero szekció */
    .hero-section h1 {
        font-size: 2.5rem;
    }

    .hero-section {
        min-height: 500px;
        height: auto;
        padding: 100px 0;
    }

    /* Szövegek és hivatkozások kisebb méretekhez */
    .hero-content {
        padding-left: 20px;
    }

    .subfooter-title {
        font-size: 1.4rem;
    }

    /* Menüpontok és navigációs sáv */
    .navbar {
        padding: 10px;
    }

    /* Képek és kártyák */
    .hk, .mgk, .aik, .mk, .gtsz {
        height: 200px;
    }

    .card {
        margin-bottom: 15px;
    }

    .card:hover {
        transform: translateY(-5px);
    }

    /* Szövegárnyékok */
    .hero-section h5, .hero-section p {
        text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4);
    }
}

/* Tablet optimalizálás (max-width: 1024px) */
@media (max-width: 1024px) {
    .hero-section h1 {
        font-size: 3rem;
    }

    .hero-section {
        min-height: 600px;
    }

    .hero-content {
        padding-left: 25px;
    }

    .subfooter-title {
        font-size: 1.6rem;
    }

    .hk, .mgk, .aik, .mk, .gtsz {
        height: 250px;
    }

    /* Kártyák */
    .card {
        margin-bottom: 20px;
    }

    /* Menüpontok és navigációs sáv */
    .navbar {
        padding: 15px;
    }
}

/* Nagy képernyők (asztali nézet) */
@media (min-width: 1025px) {
    .hero-section h1 {
        font-size: 4rem;
    }

    .hero-section {
        height: calc(100vh - 56px);
    }

    .subfooter-title {
        font-size: 1.8rem;
    }

    .hk, .mgk, .aik, .mk, .gtsz {
        height: 300px;
    }

}
