/* Inner pages share the homepage photograph without blurring their content. */
body.ap-glass-page,
body:has(> .ap-page-scene) {
    background: #163b50;
    isolation: isolate;
    min-height: 100vh;
}
.ap-page-scene {
    position: fixed;
    inset: 0;
    z-index: -1;
    overflow: hidden;
    pointer-events: none;
    background: #163b50;
}
.ap-page-scene img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    filter: blur(14px);
    transform: scale(1.07);
}
.ap-page-scene::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(15,40,57,.48), rgba(33,82,109,.24) 45%, rgba(15,40,57,.38));
}
.ap-glass-content {
    position: relative;
    isolation: isolate;
    width: calc(100% - 48px);
    max-width: 1320px;
    margin: 28px auto 48px;
    border: 1px solid rgba(255,255,255,.5);
    border-radius: 28px;
    background: transparent;
    box-shadow: 0 20px 60px rgba(12,35,50,.18);
    /* No clipping: dropdowns, sticky filters, and dialogs remain usable. */
    min-width: 0;
}
.ap-glass-content::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    background: rgba(247,251,253,.82);
    backdrop-filter: blur(22px);
    -webkit-backdrop-filter: blur(22px);
    pointer-events: none;
    /* Filtering this layer preserves viewport positioning of child dialogs. */
}
.ap-glass-content > main {
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    background-color: transparent;
}
.ap-glass-content > section:first-of-type {
    border-top-left-radius: 27px;
    border-top-right-radius: 27px;
}
.ap-glass-content > section:last-of-type {
    border-bottom-left-radius: 27px;
    border-bottom-right-radius: 27px;
}
.ap-glass-content .ap-auth-backdrop { display: none; }
.ap-glass-content .bg-white,
.ap-glass-content .trips-search,
.ap-glass-content .trips-filters,
.ap-glass-content .trip-card {
    background-color: rgba(255,255,255,.78);
}
.ap-glass-content .tdd-list,
.ap-glass-content [role="dialog"] {
    background-color: #fff;
}
body.ap-glass-page #siteFooter {
    background-color: rgba(15,40,57,.88);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    .ap-glass-content::before { background: rgba(247,251,253,.94); }
}
@media (max-width: 767px) {
    .ap-glass-content { width: calc(100% - 24px); margin-top: 20px; margin-bottom: 28px; border-radius: 22px; }
    .ap-glass-content > section:first-of-type { border-top-left-radius: 21px; border-top-right-radius: 21px; }
    .ap-glass-content > section:last-of-type { border-bottom-left-radius: 21px; border-bottom-right-radius: 21px; }
    .ap-page-scene img { filter: blur(10px); }
}
