/* site.css — Bootstrap overrides & global resets for premium white theme */

html {
    font-size: 16px;
    position: relative;
    min-height: 100%;
}

body {
    margin-bottom: 0; /* Remove Bootstrap's 60px bottom margin */
    background-color: #ffffff;
    color: #333333;
}

/* Remove Bootstrap's default blue focus rings — use our own elegant ones */
.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-check-input:focus {
    box-shadow: 0 0 0 3px rgba(199, 164, 106, 0.25);
    outline: none;
}

/* Ensure Bootstrap container doesn't conflict */
.container-fluid.px-0 {
    padding: 0 !important;
}

/* Bootstrap's .modal conflicts with our custom .modal — override display logic */
.modal {
    display: none !important;
    position: fixed !important;
    inset: 0 !important;
    background: rgba(0,0,0,0.5) !important;
    z-index: 4000 !important;
    align-items: center !important;
    justify-content: center !important;
    backdrop-filter: blur(4px) !important;
    padding: 1rem !important;
}

.modal.active {
    display: flex !important;
}

/* Remove Bootstrap's default padding from containers inside our sections */
.container {
    padding-right: 2rem;
    padding-left: 2rem;
}

/* Subcategory modal styles (gallery data) */
.subcategory-section {
    margin-bottom: 1.5rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid #e9e7e2;
}

.subcategory-section:last-child {
    border-bottom: none;
}

.pricing-row {
    display: flex;
    justify-content: space-between;
    padding: 0.6rem 0;
    border-bottom: 1px dashed #e9e7e2;
    font-size: 0.88rem;
    color: #333333;
}

.pricing-row:last-child { border-bottom: none; }
.pricing-row span { color: #555555; }
.pricing-row strong { color: #171717; font-weight: 600; }

/* Gallery category modal show state */
.gallery-modal { display: none; }
.gallery-modal.show,
.gallery-modal.active { display: flex; }
