/* =========================================================
   JOOMLA 6 / CASSIOPEIA
   CUSTOM STYLE
   ========================================================= */


/* =========================
   SEITENBREITE
   ========================= */

.container-header,
.container-banner,
.container-topbar,
.container-below-top,
.container-main,
.container-component,
.grid-child,
.container-nav {
    max-width: 960px !important;
    margin: 0 auto;
}


/* =========================
   BODY
   ========================= */

body {
    background: #ffffff;
    overflow-x: hidden;
    font-family: Arial, Helvetica, sans-serif;
}


/* =========================
   HEADER
   ========================= */

.container-header {
    background: #ffffff;
    border-bottom: 1px solid #dddddd;
    box-shadow: none;

    padding-top: 0 !important;
    padding-bottom: 0 !important;

    margin-top: 0 !important;
    margin-bottom: 0 !important;

    min-height: auto !important;
}


/* =========================
   NAVIGATION
   ========================= */

.container-nav {
    margin-top: 0 !important;
    margin-bottom: 0 !important;

    padding-top: 0 !important;
    padding-bottom: 0 !important;

    min-height: auto !important;
}


/* =========================
   MENÜ
   ========================= */

.container-header .mod-menu {
    display: flex;

    justify-content: center;

    gap: 20px;

    margin: 0 !important;
    padding: 0 !important;
}


/* MENÜPUNKTE */

.container-header .mod-menu li {
    list-style: none;
}

.container-header .mod-menu a,
.container-header .mod-menu li a {
    color: #b31722 !important;

    text-decoration: none;

    padding: 4px 10px !important;

    font-size: 17px;
    font-weight: 600;

    transition: 0.3s;
}


/* HOVER */

.container-header .mod-menu a:hover,
.container-header .mod-menu li a:hover {
    color: #7d1018 !important;
}


/* AKTIVER MENÜPUNKT */

.container-header .mod-menu .current a,
.container-header .mod-menu .active a {
    color: #7d1018 !important;
}

/* ÜBERSCHRIFTEN */

h1,
h2,
h3,
h4,
.page-header h1 {
    color: #b31722;
}

/* =========================
   HERO / BANNER
   ========================= */

.hero {
    width: 960px;
    height: 330px;

    margin: 0 auto;

    position: relative;

    background: url('/images/banner.jpg') center center no-repeat;

    background-size: cover;
}


/* OVERLAY */

.hero::before {
    content: "";

    position: absolute;

    inset: 0;

    background: rgba(0,0,0,0.35);
}


/* =========================
   TEXT ÜBER DEM BILD
   ========================= */

.hero-overlay {
    position: absolute;

    top: 50%;
    left: 40px;

    transform: translateY(-50%);

    color: white;

    z-index: 2;
}


/* ÜBERSCHRIFT */

.hero-overlay h1 {
    font-size: 42px;

    margin-bottom: 10px;

    font-weight: 700;
}


/* UNTERTEXT */

.hero-overlay p {
    font-size: 20px;

    margin: 0;
}


/* =========================
   CONTENT
   ========================= */

.container-component,
.container-main,
main {
    margin-top: 0 !important;
    padding-top: 5px !important;
}


/* =========================
   LINKS
   ========================= */

a {
    color: #b31722;
}

a:hover {
    color: #7d1018;
}

/* MITARBEITER GRID */

.mitarbeiter-grid {
    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));

    gap: 30px;

    margin-top: 30px;
}


/* BOX */

.mitarbeiter-box {
    text-align: center;
}


/* BILDER */

.mitarbeiter-box img {
    width: 200px;
    height: 236px;

    object-fit: cover;
}

/* =========================================================
   FOOTER
   ========================================================= */

.footer {
    background: #b31722;

    padding: 10px 0;

    margin-top: 30px;

    text-align: center;
}


/* LINKS */

.footer a {
    color: white !important;

    text-decoration: none;

    font-size: 14px;

    padding: 0 10px;
}

/* HOVER */

.footer a:hover {
    color: #f0d0d3 !important;
}
