/* --------------------------------------------------
   GLOBAL SITE BACKGROUND
   Light grey with subtle texture
-------------------------------------------------- */

/* ===============================
   DEFAULT SITE BACKGROUND
   =============================== */

body {
    background-color: #ffffff; /* white everywhere */
    background-image: none;
    color: #333;
    font-family: "Segoe UI", Roboto, sans-serif;
}


/* --------------------------------------------------
   CARDS & CONTAINERS
   Keep content readable by adding white backgrounds
-------------------------------------------------- */

.card,
.bg-white,
.page-content,
.main-content {
    background-color: #ffffff; /* solid white */
    padding: 1rem;
    border-radius: 8px;
    /* no transparency, no blur */
}

/* Let Bootstrap manage container layout, just maybe tweak spacing if needed */
.container {
    /* optional: only spacing, no background/rounding */
    padding-top: 1rem;
    padding-bottom: 1rem;
}



/* --------------------------------------------------
   NAVBAR - make it contrast against light grey
-------------------------------------------------- */

.navbar,
.navbar-nav .nav-link,
.nav-link {
    background-color: #ffffffdd !important;
    backdrop-filter: blur(4px);
    border-bottom: 1px solid #dcdcdc;
}

    /* Make hover feel soft */
    .nav-link:hover {
        background-color: #efefef !important;
        border-radius: 4px;
    }
    .nav-link .bi-cart3 {
        color: #0099cc;
    }


/* --------------------------------------------------
   PAGE TITLES
-------------------------------------------------- */

h1, h2, h3 {
    color: #444;
}

/* --------------------------------------------------
   MOBILE TUNING
-------------------------------------------------- */

@media (max-width: 768px) {
    body {
        background-size: 250px 250px;
    }

    .card,
    .container {
        padding: 0.75rem;
    }
}

/* ===============================
   IMAGE CLEANUP – NO BORDERS
   =============================== */

img {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}


/* --------------------------------------------------
   BUTTON IMPROVEMENTS
-------------------------------------------------- */

.btn {
    border-radius: 6px;
}

.btn-primary {
    background-color: #444;
    border-color: #444;
}

    .btn-primary:hover {
        background-color: #222;
        border-color: #222;
    }

/* PayPal button container spacing */
#paypal-button-container {
    margin-top: 20px;
}
/* === LARGE IMAGE / MODAL FIXES ======================= */

/* If you're using a Bootstrap modal with id="imageModal" */
#imageModal .modal-content {
    background-color: transparent !important;
    backdrop-filter: none !important;
    box-shadow: none !important;
    border: none !important;
}

#imageModal img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
    opacity: 1 !important;
    filter: none !important;
}

/* If you used a custom overlay like #imageOverlay */
#imageOverlay {
    background-color: rgba(0, 0, 0, 0.85); /* darken only the background */
}

    #imageOverlay img {
        display: block;
        max-width: 95vw;
        max-height: 95vh;
        height: auto;
        margin: 0 auto;
        opacity: 1 !important;
        filter: none !important;
    }

/* Make sure generic container/card styles don't dim modal content */
.modal-content .container,
.modal-content .card {
    background-color: transparent !important;
    backdrop-filter: none !important;
    padding: 0 !important;
    box-shadow: none !important;
}
footer.border-top {
    border-top: none !important;
}
/* Make the footer behave normally at the end of the content */
.footer {
    position: static !important; /* no fixed/absolute */
    bottom: auto !important;
    width: 100%;
    white-space: normal;
    line-height: 1.5;
    margin-top: 2rem; /* space above footer */
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    background-color: transparent; /* or #fff if you want a bar */
}

/* Remove any extra bottom margin reserved for a fixed footer */
body {
    margin-bottom: 0 !important;
}
/* Keep QR images nicely sized on small screens */
img[alt="Zelle QR Code"] {
    max-width: 100%;
    height: auto;
}
/* ===== Start Page ===== */
.start-hero {
    min-height: calc(100vh - 110px); /* leaves space for navbar/footer */
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    /* light, warm background similar to the card */
    background: #efe1d8;
}

.start-content {
    text-align: center;
    padding: 3rem 1rem;
    max-width: 720px;
    z-index: 2;
}

.start-title {
    font-size: clamp(2.2rem, 4vw, 3.2rem);
    margin-bottom: 0.75rem;
    letter-spacing: 0.5px;
    color: #2b2b2b;
}

.start-subtitle {
    font-size: clamp(1.05rem, 1.6vw, 1.25rem);
    color: #4b4b4b;
    margin-bottom: 1.75rem;
}

.start-cta {
    padding: 0.85rem 1.4rem;
    border-radius: 12px;
    font-weight: 600;
}

/* Hills at bottom */
.start-hills {
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 38vh;
    z-index: 1;
    pointer-events: none;
}

.start-hills-svg {
    width: 100%;
    height: 100%;
    display: block;
}
/* ================================
   GALLERY – REMOVE CARD BORDERS
   ================================ */

/* Gallery index cards */
.gallery-page .card,
.gallery-page .card-img-top,
.gallery-page .card-body {
    border: none !important;
    box-shadow: none !important;
}

/* Remove any accidental outlines */
.gallery-page img {
    outline: none !important;
}
/* Gallery tiles: no border, no shadow */
body.gallery-page .card {
    border: none !important;
    box-shadow: none !important;
}

/* If you also want the image to have zero border and look clean */
body.gallery-page .card-img-top {
    border: none !important;
    box-shadow: none !important;
}
.gallery-label {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Optional: remove any “focus outline” around the clickable image */
body.gallery-page a:focus {
    outline: none !important;
    box-shadow: none !important;
}
@media (max-width: 576px) {
    .navbar .nav-link {
        padding: .25rem .5rem;
    }
}
