/* user.css - Janda branding overrides for Cassiopeia */

:root {
    --janda-green: #3d7727;
    --janda-green-dark: #2a5519;
}

/* === Menü-Items grün === */
.mod-menu .nav-item > .nav-link,
.mod-menu .nav-item > a,
.navbar-nav .nav-link,
.metismenu-item > a {
    color: var(--janda-green) !important;
}

.mod-menu .nav-item > .nav-link:hover,
.mod-menu .nav-item > .nav-link:focus,
.mod-menu .nav-item > a:hover,
.mod-menu .nav-item.active > .nav-link,
.mod-menu .nav-item.current > .nav-link {
    color: var(--janda-green-dark) !important;
}

/* === Artikel-Titel: grün und eine Stufe kleiner === */
.com-content-category-blog h2,
.com-content-category-blog h2 a,
.com-content-featured h2,
.com-content-featured h2 a,
.com-content-category-blog__article h2,
.com-content-category-blog__article h2 a,
.item-content h2,
.item-content h2 a,
.items-leading h2,
.items-leading h2 a,
.items-row h2,
.items-row h2 a,
.entry-title,
.entry-title a {
    color: var(--janda-green) !important;
    font-size: 1.5rem !important;
    line-height: 1.3 !important;
}

.com-content-category-blog h2 a:hover,
.com-content-featured h2 a:hover,
.entry-title a:hover {
    color: var(--janda-green-dark) !important;
}

/* === Login-Modul: Links grün === */
.mod-login a,
.mod-login__forgot-username,
.mod-login__forgot-password {
    color: var(--janda-green) !important;
}

.mod-login a:hover {
    color: var(--janda-green-dark) !important;
}

/* Konsistente Höhe für Zertifizierungs-Logos */

img.cert-logo { height: 70px; width: auto; margin: 0 8px 0 0; vertical-align: middle; }

/* === Header-Banner als Image im top-a-Modul === */
.header-banner-img {
    width: 100%;
    height: auto;
    display: block;
    margin: 0;
}
.header-banner-mod { padding: 0 !important; margin-bottom: 1rem; }

/* === Original Cassiopeia-Header (Logo+Brand) ausblenden, Banner-Modul übernimmt === */
.hide-original-header,
header.header.container-header {
    display: none !important;
}

/* Banner-Modul soll bis an die Container-Kanten reichen, ohne weiße Ränder */
.header-banner-mod {
    margin-left: calc(-1 * var(--gutter-x, 1.5rem) / 2) !important;
    margin-right: calc(-1 * var(--gutter-x, 1.5rem) / 2) !important;
    padding: 0 !important;
}

/* === Login-Button grün === */
.mod-login button[type="submit"],
.mod-login .btn-primary {
    background-color: var(--janda-green) !important;
    border-color: var(--janda-green) !important;
    color: #fff !important;
}

.mod-login button[type="submit"]:hover,
.mod-login button[type="submit"]:focus,
.mod-login .btn-primary:hover,
.mod-login .btn-primary:focus {
    background-color: var(--janda-green-dark) !important;
    border-color: var(--janda-green-dark) !important;
}

/* === Article-Body-Links grün === */
.com-content-article a:not(.btn),
.com-content-category-blog a:not(.btn),
.com-content-featured a:not(.btn),
.item-content a:not(.btn),
article a:not(.btn),
.mod-articles-categories a {
    color: var(--janda-green);
    text-decoration: none;
}

.com-content-article a:not(.btn):hover,
.com-content-category-blog a:not(.btn):hover,
.com-content-featured a:not(.btn):hover,
.item-content a:not(.btn):hover,
article a:not(.btn):hover {
    color: var(--janda-green-dark);
    text-decoration: underline;
}

/* Bei Artikel-Headlines (a in h2/h3) keine Underline beim Hover */
.com-content-category-blog h2 a:hover,
.com-content-featured h2 a:hover,
article h2 a:hover,
article h3 a:hover {
    text-decoration: none;
}

/* Article-Titles als Headlines NICHT zusätzlich underlinen */
.com-content-article h2 > a,
.com-content-article h3 > a {
    color: var(--janda-green);
}

/* === Hero-Teaser Softwarefabrik === */
.hero-teaser-mod { padding: 0 !important; margin: 1rem 0 1.5rem; }
.hero-teaser {
    background: linear-gradient(135deg, var(--janda-green) 0%, var(--janda-green-dark) 100%);
    color: #fff;
    padding: 1.25rem 2rem;
    border-radius: 4px;
    text-align: center;
}
.hero-teaser__title { color: #fff !important; margin: 0 0 0.4rem !important; font-size: 1.4rem !important; }
.hero-teaser__sub { color: rgba(255,255,255,0.92); font-size: 1rem; margin: 0; }
.hero-teaser__btn {
    display: inline-block; padding: 0.55rem 1.25rem;
    background: #fff; color: var(--janda-green) !important;
    text-decoration: none !important; border-radius: 3px; font-weight: 600;
    transition: transform .15s ease;
}
.hero-teaser__btn:hover { background: #f5f5f5; color: var(--janda-green-dark) !important; transform: translateY(-1px); }

/* === Footer === */
.janda-footer-mod { padding: 0 !important; }
.janda-footer {
    text-align: center; padding: 1.5rem 1rem;
    color: #555; font-size: 0.9rem;
    border-top: 1px solid #e5e5e5; margin-top: 2rem;
}
.janda-footer a,
.container-footer .janda-footer a,
footer .janda-footer a {
    color: #fff !important;
    text-decoration: none !important;
}
.janda-footer a:hover,
.container-footer .janda-footer a:hover,
footer .janda-footer a:hover {
    color: rgba(255,255,255,0.85) !important;
    text-decoration: underline !important;
}

/* === Cassiopeia-Footer-Container blau überschreiben === */
.footer,
.container-footer,
footer.container-footer {
    background-image: linear-gradient(135deg, var(--janda-green) 0%, var(--janda-green-dark) 100%) !important;
    background-color: var(--janda-green) !important;
    color: #fff !important;
    margin-top: 1em;
}
.janda-footer { color: #fff !important; }
.footer .grid-child,
.container-footer .grid-child {
    padding: 0 !important;
}

/* Hero-Teaser ist komplett klickbar */
a.hero-teaser-link,
a.hero-teaser-link:hover,
a.hero-teaser-link:focus {
    display: block;
    text-decoration: none !important;
    color: #fff !important;
}
a.hero-teaser-link .hero-teaser { transition: filter .15s ease; }
a.hero-teaser-link:hover .hero-teaser { filter: brightness(1.25); }
