/*
 * Host-theme compatibility layer.
 *
 * This file intentionally stays outside Tailwind's cascade layers and is
 * loaded after the theme and Elementor styles. `revert-layer` restores the
 * value supplied by the plugin's Tailwind utility layer when one exists,
 * while removing host-theme defaults such as `.elementor-kit-7 h2`.
 */

.stadt-app,
.stadt-app *,
.stadt-app *::before,
.stadt-app *::after {
    box-sizing: border-box;
}

.stadt-app a {
    color: #000;
    text-decoration: none;
}

.stadt-app a.underline,
.stadt-app a[class~="underline"] {
    text-decoration: underline;
}

.stadt-app a:hover,
.stadt-app a:focus {
    color: #000;
}

.stadt-app button,
.stadt-app input,
.stadt-app select,
.stadt-app textarea {
    color: revert-layer;
    font: revert-layer;
    letter-spacing: revert-layer;
    line-height: revert-layer;
    text-transform: revert-layer;
}

.stadt-app button,
.stadt-app input[type="button"],
.stadt-app input[type="submit"],
.stadt-app input[type="reset"] {
    appearance: revert-layer;
    background-color: revert-layer;
    border: revert-layer;
    border-radius: revert-layer;
    box-shadow: revert-layer;
    margin: revert-layer;
    padding: revert-layer;
}

.stadt-app select,
.stadt-app input,
.stadt-app textarea {
    appearance: revert-layer;
    background-color: revert-layer;
    border: revert-layer;
    border-radius: revert-layer;
    box-shadow: revert-layer;
    margin: revert-layer;
    padding: revert-layer;
}

.stadt-app button.sr-only,
.stadt-app input.sr-only {
    border: 0;
    margin: -1px;
    padding: 0;
}

.stadt-app h1,
.stadt-app h2,
.stadt-app h3,
.stadt-app h4,
.stadt-app h5,
.stadt-app h6 {
    color: revert-layer;
    font-family: revert-layer;
    font-size: revert-layer;
    font-weight: revert-layer;
    line-height: revert-layer;
    margin: revert-layer;
}

.stadt-app p,
.stadt-app figure,
.stadt-app blockquote,
.stadt-app address {
    margin: revert-layer;
}

.stadt-app img,
.stadt-app svg,
.stadt-app video {
    display: block;
    max-width: 100%;
    vertical-align: revert-layer;
}

.stadt-app img {
    height: auto;
}

.stadt-app .stadt-app-poi-slider-slide {
    height: 100%;
}

.stadt-app hr {
    box-sizing: revert-layer;
    height: revert-layer;
    overflow: revert-layer;
}

.stadt-app ::placeholder {
    color: revert-layer;
    opacity: revert-layer;
}

/* Elementor's text/shortcode widgets can run wpautop over the shortcode
 * output. That turns template whitespace into <br> elements and can wrap the
 * hidden submit controls in a paragraph. Keep those generated nodes out of
 * the filter grid. */
.stadt-app form br {
    display: none !important;
}

.stadt-app form > p {
    display: contents;
}

.stadt-app nav.stadt-app-pagination br {
    display: none !important;
}

.stadt-app nav.stadt-app-pagination > p {
    display: contents;
}

.stadt-app form > label {
    display: block;
    position: relative;
}

.stadt-app form > label > select,
.stadt-app form > label > input:not([type="hidden"]) {
    display: block;
    width: 100%;
    box-sizing: border-box;
    appearance: none;
    background: #fff;
    border: 4px solid rgba(235, 235, 235, 1);
    border-radius: 0;
    color: #000;
    font-family: inherit;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    min-height: 64px;
    padding: 16px 80px 16px 30px;
}

.stadt-app .stadt-app-poi-slider button {
    appearance: none;
    border: 0;
    border-radius: 9999px;
    display: block;
    font: inherit;
    margin: revert-layer;
    padding: 0;
    width: 8px;
    height: 8px;
}

.stadt-app .stadt-app-poi-slider button[class~="bg-neutral-900"] {
    background-color: #171717;
}

.stadt-app .stadt-app-poi-slider button[class~="bg-neutral-200"] {
    background-color: #e5e5e5;
}
