/* Wireframe-Modus: keine Schatten, keine Rundungen, keine Farben – nur Linien/Rahmen/Outlines */
/* Global reset to monochrome, square, no effects */
html {
    scroll-behavior: smooth;
}

* {
    box-shadow: none !important;
    text-shadow: none !important;
    border-radius: 0 !important;
}

html,
body {
    background: #fff !important;
    color: #000 !important;
}

a {
    color: #000 !important;
    text-decoration: underline;
}

/* Remove Bootstrap background color utilities */
[class^="bg-"],
[class*=" bg-"] {
    background: #fff !important;
}

/* Force all text utilities to black */
.text-muted,
.text-secondary,
.text-primary,
.text-success,
.text-danger,
.text-warning,
.text-info,
.lead,
.text-muted-small {
    color: #000 !important;
}

/* Layout spacing remains for readability */
section {
    padding: 4rem 0;
    border-top: 1px solid #000;
}

/* Container/Row/Cols without outlines (clean wireframe) */
.container {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

/* Cards as simple boxes */
.card {
    border: 1px solid #000 !important;
    background: #fff !important;
}

.card-body {
    background: #fff !important;
}

.card-title,
.card-text {
    color: #000 !important;
}

/* Icons monochrome and sized */
.icon-card i,
i[class^="bi-"] {
    font-size: 2rem;
    color: #000 !important;
}

/* Images as framed placeholders */
img,
.card-img-top,
.img-fluid {
    border: 1px solid #000 !important;
    filter: grayscale(100%);
    background: #fff !important;
}

/* Buttons as simple outlined boxes */
.btn {
    background: #cccccc !important;
    color: #000 !important;
    border: 1px solid #000 !important;
    box-shadow: none !important;
}

.btn:hover,
.btn:focus {
    background: #e9ecef !important;
    color: #000 !important;
}

/* Navbar (wireframe) */
.wireframe-nav {
    background: #fff !important;
    border-bottom: 1px solid #000;
}

.wireframe-nav .navbar-brand img {
    height: 60px;
    width: auto;
    border: none !important;
    filter: none;
}

.wireframe-nav .navbar-brand,
.wireframe-nav .nav-link {
    color: #000 !important;
}

.wireframe-nav .nav-link {
    padding: .5rem 1rem;
}

.wireframe-nav .nav-link:hover,
.wireframe-nav .nav-link:focus {
    background: #f5f5f5 !important;
    color: #000 !important;
}

.wireframe-nav .navbar-toggler {
    border: 1px solid #000 !important;
}

.wireframe-nav .dropdown-menu {
    border: 1px solid #000 !important;
    background: #fff !important;
}

.wireframe-nav .dropdown-item {
    color: #000 !important;
}

.wireframe-nav .dropdown-item:hover,
.wireframe-nav .dropdown-item:focus {
    background: #f5f5f5 !important;
    color: #000 !important;
}

/* Topbar (wireframe) */
.wireframe-topbar {
    background: #e9ecef !important;
    border-bottom: 1px solid #000;
}

.wireframe-topbar .container {
    padding-top: 0;
    padding-bottom: 0;
}

.wireframe-topbar .nav-link {
    color: #000 !important;
    font-size: 0.85rem;
    text-decoration: none;
}

.wireframe-topbar .nav-link:hover {
    text-decoration: underline;
}

/* Typography minor helper */
.text-muted-small {
    font-size: .95rem;
}

/* Accordion Wireframe Overrides */
.accordion-item {
    border: 1px solid #000 !important;
    background-color: #fff !important;
}

.accordion-button:not(.collapsed) {
    background-color: #e9ecef !important;
    color: #000 !important;
    box-shadow: none !important;
}

.accordion-button:focus {
    border-color: #000 !important;
    box-shadow: none !important;
}

.accordion-button::after {
    filter: brightness(0);
}

/* Hero / Jahreslosung Selection Style */
#hero {
    min-height: 66.66vh;
    display: flex;
    align-items: center;
    padding: 0;
    border-top: none;
    background: #fff;
}

.hero-slide-img {
    background-size: cover;
    background-position: center;
    position: relative;
    filter: grayscale(100%) brightness(1.05);
}

.hero-slide-img::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(rgba(245, 245, 245, 0.92), rgba(245, 245, 245, 0.92));
}

.hero-slide-lighter::after {
    background: linear-gradient(rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.96)) !important;
}

.hero-slide-lighter {
    filter: grayscale(100%) brightness(1.15) !important;
}

#heroCarousel .carousel-item {
    transition: opacity 1.2s ease-in-out;
}

#jahreslosung {
    background: #f5f5f5 !important;
    /* Neutraler Hintergrund */
    padding-top: 0;
    padding-bottom: 4rem;
    border-top: none;
}

#jahreslosung>.container>.row {
    margin-top: -100px;
    /* Hineinragen in die Sektion darüber */
    position: relative;
    z-index: 10;
}

#jahreslosung .card,
#jahreslosung img {
    border: 2px solid #000 !important;
    /* Etwas stärkerer Rahmen für den Overlap-Effekt */
}

/* Reusable Info-Tooltip Component */
.info-tooltip-container {
    position: absolute;
    bottom: 8px;
    right: 8px;
}

.info-tooltip-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    background-color: #ffeb3b;
    /* Gelber Kreis */
    border: 1px solid #000;
    border-radius: 50% !important;
    /* Trotz Global Reset für Tooltips Rundung */
    font-size: 12px;
    color: #000;
    cursor: help;
    font-weight: bold;
    font-family: serif;
}

/* Footer Styles */
.wireframe-footer {
    background: #f8f9fa !important;
    padding: 5rem 0 2rem;
    border-top: 1px solid #000;
}

.footer-icon-circle {
    width: 60px;
    height: 60px;
    background: #eef2ff;
    /* Very light blue-gray for the circle */
    border: 1px solid #000;
    border-radius: 50% !important;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.footer-icon-circle svg {
    width: 28px;
    height: 28px;
    color: #4338ca;
    /* Indigo icon color from image */
}

.wireframe-footer .footer-bottom {
    border-top: 1px solid #dee2e6;
    margin-top: 3rem;
    padding-top: 2rem;
}

.wireframe-footer .footer-logo img {
    height: 40px;
    border: none !important;
}

.footer-links a {
    color: #000 !important;
    text-decoration: none;
    font-weight: 500;
}

.footer-links a:hover {
    text-decoration: underline;
}