/* Local layout and interaction corrections. */
html { scroll-padding-top: 6rem; }
html.site-scroll-locked { overflow: hidden !important; overscroll-behavior: none; }
.site-scroll-locked body { position: fixed !important; top: var(--locked-scroll-top, 0) !important; left: 0; right: 0; width: 100%; overflow: hidden !important; }
[data-site-dialog] { overscroll-behavior: contain; }
[data-site-dialog].hidden, [data-site-dialog].d-none, [hidden] { display: none !important; }
[data-site-dialog] > :first-child { min-width: 0; }
.site-price { white-space: nowrap; flex-shrink: 0; }
.site-independent-grid { align-items: start !important; }
.site-independent-card { height: auto !important; align-self: start !important; }
.site-independent-card .card { height: auto !important; }
select { text-indent: 0; }
@media (max-width: 640px) {
  [data-site-dialog] { max-height: 100dvh; overflow-y: auto; padding: .75rem !important; align-items: flex-start !important; }
  [data-site-dialog] > :first-child { margin-block: auto; max-height: calc(100dvh - 1.5rem) !important; overflow-y: auto; }
}
.policy-page .site-policy-main { padding: 2rem 1.25rem 3rem !important; width: 100% !important; max-width: 1120px !important; margin: 0 auto !important; min-height: 55vh !important; }
.policy-page .site-policy-shell { padding-block: 0 !important; margin-block: 0 !important; min-height: 0 !important; background: transparent !important; box-shadow: none !important; border: 0 !important; max-width: 100% !important; width: 100% !important; }
.policy-page .site-policy-main > :first-child { margin-top: 0 !important; }
.policy-page .site-policy-main header { padding-top: 0 !important; margin-top: 0 !important; }
.confirmation-page { min-height: 100vh; display: flex; flex-direction: column; }
.confirmation-page > .site-confirmation-main { flex: 1; min-height: calc(100svh - var(--site-header-height, 80px)) !important; padding: 2rem 1.25rem !important; display: flex; align-items: center; justify-content: center; }
.confirmation-page .site-confirmation-shell { padding-block: 0 !important; margin-block: 0 !important; min-height: 0 !important; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto !important; } }


.site-buy-button{margin-top:16px;background:var(--accent-bauhaus-blue);color:#fff;border:1px solid var(--accent-bauhaus-blue);padding:11px 16px;font-weight:600;border-radius:6px;width:100%}.site-buy-button:hover{background:#19399f;color:white}
#enquiries .atelier-overlay{background:linear-gradient(transparent,#132039ee 50%);padding-top:70px !important}#enquiries .atelier-overlay p{color:#fff !important;line-height:1.6}#enquiries .atelier-overlay h3{color:white !important}
.site-mobile-comparison{display:none}
@media(max-width:767px){.site-comparison-table{display:none}.site-mobile-comparison{display:grid;gap:20px}.site-mobile-comparison article{border:1px solid var(--border-subtle);background:white;border-radius:12px;padding:20px;min-width:0}.site-mobile-comparison h3{font-size:20px;line-height:1.35}.site-mobile-comparison img{width:100%;height:180px !important;object-fit:contain !important}.site-mobile-comparison dl{margin-top:20px}.site-mobile-comparison dt{font-size:12px;color:var(--text-secondary);margin-top:16px}.site-mobile-comparison dd{font-size:14px;line-height:1.55;margin:4px 0 0;overflow-wrap:anywhere}}



#enquiries .atelier-media{min-height:340px;height:auto}#enquiries .atelier-image{height:340px !important}

/* Keep comparison controls readable in every selection and pointer state. */
#compare .js-select-col {
    min-width: 76px;
    min-height: 32px;
    padding: 5px 10px !important;
    border: 1px solid var(--accent-bauhaus-blue) !important;
    border-radius: 6px;
    background-color: #fff !important;
    color: var(--accent-bauhaus-blue) !important;
    font-weight: 600;
    line-height: 1.4;
    transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}
#compare .js-select-col:hover,
#compare .js-select-col:focus-visible,
#compare .is-focused .js-select-col {
    background-color: var(--accent-bauhaus-blue) !important;
    border-color: var(--accent-bauhaus-blue) !important;
    color: #fff !important;
}
#compare .is-focused .js-select-col:hover {
    background-color: #19399f !important;
    border-color: #19399f !important;
    color: #fff !important;
}
#compare .js-select-col:focus-visible {
    outline: 2px solid var(--accent-bauhaus-blue);
    outline-offset: 3px;
    box-shadow: none;
}
#compare thead .compare-col.is-dimmed { opacity: 1 !important; }
#compare .compare-table thead th > div { gap: 10px; flex-wrap: wrap; }

