/* Bootstrap 3/4 compatibility shims for view_frontend migration */

.form-group {
    margin-bottom: 1rem;
}

.img-responsive {
    max-width: 100%;
    height: auto;
}

.hidden {
    display: none !important;
}

.hidden-xs {
    display: none !important;
}

@media (min-width: 576px) {
    .hidden-xs {
        display: block !important;
    }
}

.hidden-sm {
    display: none !important;
}

@media (min-width: 768px) {
    .hidden-sm {
        display: block !important;
    }
}

.hidden-md {
    display: none !important;
}

@media (min-width: 992px) {
    .hidden-md {
        display: block !important;
    }
}

.hidden-lg {
    display: block !important;
}

@media (min-width: 992px) {
    .hidden-lg {
        display: none !important;
    }
}

/* BS3 panel accordion - keep visual structure */
.panel-group .panel {
    margin-bottom: 0;
    border-radius: 4px;
}

.panel-heading {
    padding: 10px 15px;
    border-bottom: 1px solid transparent;
}

.panel-body {
    padding: 15px;
}

.panel-collapse.collapse:not(.show) {
    display: none;
}

.panel-collapse.collapse.show {
    display: block;
}

/* BS3 close button fallback */
.close {
    float: right;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
    color: #000;
    text-shadow: 0 1px 0 #fff;
    opacity: 0.5;
    background: transparent;
    border: 0;
    padding: 0;
}

.close:hover {
    opacity: 0.75;
}

.popover-content {
    /* alias for templates not yet migrated */
}

.popover-content:not(:empty) {
    padding: var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);
}

/* Off-canvas menu above fixed navbar */
.archidex-navbarnav-burger .off-canvas {
    z-index: 1040;
}

.archidex-navbarnav-burger .off-canvas__menu {
    z-index: 1041;
}

/* Fixed navbar — match body offset to actual nav height */
#archidex-nav.navbar.fixed-top {
    padding-top: 20px;
    padding-bottom: 20px;
}

@media (max-width: 767px) {
    #archidex-nav.navbar.fixed-top {
        padding: 10px;
    }
}

#archidex-nav .container-fluid {
    justify-content: flex-start;
    padding-left: 15px;
    padding-right: 15px;
}

#archidex-nav #navbar {
    min-height: 40px;
}

