/* =============================================================
   PREMIUM UI POLISH — visual refinement without changing content
   ============================================================= */

html {
    scroll-behavior: smooth;
}

body {
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

::selection {
    background: #3f3023;
    color: #fffdf8;
}

main > section,
.site-footer {
    scroll-margin-top: 18px;
}

/* A subtle divider makes the white gallery sections read as distinct rooms. */
.featured-section,
.notable-series-section {
    position: relative;
    background-color: #fff;
    box-shadow: inset 0 1px 0 rgba(91, 72, 51, .12);
}

/* Keep keyboard navigation visible and consistent everywhere. */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline: 2px solid #a26c3c;
    outline-offset: 3px;
}

.main-nav a {
    position: relative;
    padding: 4px 0;
    transition: color 180ms ease, letter-spacing 180ms ease;
}

.main-nav a:hover,
.main-nav a:focus-visible {
    color: #9c6336;
    letter-spacing: .13em;
}

.main-nav a.is-active {
    color: #9c6336;
}

.main-nav a.is-active::after {
    width: 100%;
    opacity: 1;
}

.header-social a,
.footer-social a {
    transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.header-social a:hover,
.header-social a:focus-visible,
.footer-social a:hover,
.footer-social a:focus-visible {
    border-color: #9c6336;
    background: #9c6336;
    color: #fff;
    transform: translateY(-2px);
}

/* Refined, tactile actions without adding visual noise. */
.gallery-inquiry-button,
.series-inquiry-button,
.inquiry-submit {
    box-shadow: 0 8px 18px rgba(44, 31, 19, .12);
    transition: transform 180ms ease, box-shadow 180ms ease, background-color 180ms ease, color 180ms ease;
}

.gallery-inquiry-button:hover,
.gallery-inquiry-button:focus-visible,
.series-inquiry-button:hover,
.series-inquiry-button:focus-visible,
.inquiry-submit:hover,
.inquiry-submit:focus-visible {
    box-shadow: 0 13px 26px rgba(44, 31, 19, .18);
    transform: translateY(-2px);
}

.gallery-shelf-button {
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease, background-color 180ms ease;
}

.gallery-shelf-button:hover:not(:disabled),
.gallery-shelf-button:focus-visible:not(:disabled) {
    border-color: #a16a3c;
    box-shadow: 0 8px 18px rgba(48, 34, 20, .16);
    transform: translateY(-2px) scale(1.03);
}

.gallery-shelf-button:disabled {
    opacity: .38;
}

.gallery-pagination button {
    transition: width 180ms ease, transform 180ms ease, background-color 180ms ease;
}

.gallery-pagination button.is-active {
    width: 24px;
    border-radius: 999px;
}

.gallery-pagination button:hover,
.gallery-pagination button:focus-visible {
    transform: scale(1.15);
}

.artwork-card,
.series-card {
    -webkit-tap-highlight-color: transparent;
}

.artwork-card:focus-visible,
.series-card:focus-visible {
    outline: 2px solid #a26c3c;
    outline-offset: 7px;
}

.inquiry-modal-dialog {
    border: 1px solid rgba(101, 77, 53, .15);
}

.inquiry-field input,
.inquiry-field select,
.inquiry-field textarea {
    transition: border-color 160ms ease, box-shadow 160ms ease, background-color 160ms ease;
}

.inquiry-field input:hover,
.inquiry-field select:hover,
.inquiry-field textarea:hover {
    border-color: #b49a80;
}

.inquiry-field input:focus,
.inquiry-field select:focus,
.inquiry-field textarea:focus {
    box-shadow: 0 0 0 4px rgba(156, 99, 54, .11);
    background: #fff;
}

.back-to-top {
    backdrop-filter: blur(10px);
}

@media (max-width: 700px) {
    .gallery-pagination button.is-active {
        width: 20px;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    *,
    *::before,
    *::after {
        transition-duration: 1ms !important;
        animation-duration: 1ms !important;
        animation-iteration-count: 1 !important;
    }
}
