/* Alternating cream, black, and photographic sections. */
.theme-dark {
    --paper: #111111;
    --ink: #f6f2e9;
    --muted: #bab8b1;
    --line: #3e3e3b;
    --accent: #c3cba7;
    background-color: var(--paper);
    color: var(--ink);
    color-scheme: dark;
}

.theme-dark :is(h1, h2, h3, a, button, summary) {
    color: inherit;
}

.theme-dark :is(.work-type-icon, .process-icon, .check-list .bi, .contact-channels > span) {
    color: var(--accent);
}

.theme-dark :is(.form-note, .contact-channels > p) {
    color: var(--muted);
}

.theme-dark .status {
    color: var(--accent);
}

.theme-dark :is(a, button, input, textarea, select, summary):focus-visible {
    outline-color: var(--accent);
}

.theme-dark .picture {
    background: #242424;
}

.theme-dark .inquiry :is(.form-control, .form-select) {
    border-bottom-color: #63635e;
}

.theme-dark .inquiry :is(.form-control, .form-select):focus {
    border-bottom-color: var(--ink);
}

.theme-dark .inquiry .form-select {
    --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23f6f2e9' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
}

.theme-dark .inquiry option {
    background: var(--paper);
    color: var(--ink);
}

.theme-dark .filters button.active {
    color: var(--ink);
    border-color: var(--accent);
}

.theme-dark .detail-price {
    border-color: var(--line);
}

.photo-interlude {
    height: min(70svh, 780px);
    min-height: 420px;
    padding: 0;
}

.photo-interlude::before {
    background: linear-gradient(180deg, #0000000a, #00000026);
}

.photo-interlude > .section-background {
    height: 100%;
    min-height: 0;
}

/* The original image stays available as a fallback on touch devices. */
@media (min-width: 992px) and (hover: hover) and (prefers-reduced-motion: no-preference) {
    .image-backdrop.image-fixed {

        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        background-attachment: fixed;
    }

    .image-fixed > .section-background {
        opacity: 0;
    }

    .home-hero.image-fixed {
        background-position: 60% center;
    }
}

.site-footer.theme-dark {
    margin: 0;
    padding: 28px 5% 0;
}

.site-footer.theme-dark .footer-bottom {
    border-color: var(--line);
}

.closing-banner {
    margin-bottom: 0;
}

.page-contact .contact-layout.theme-dark {
    padding-top: 85px;
    padding-bottom: 85px;
}

.page-work .project-story.theme-dark {
    padding-top: 60px;
    padding-bottom: 40px;
}

@media (max-width: 767px) {
    .photo-interlude {
        height: 58svh;
        min-height: 320px;
    }

    .page-contact .contact-layout.theme-dark {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .site-footer.theme-dark {
        padding-top: 18px;
    }
}
