/* 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; } }


#catalog .js-filter-btn:hover,#catalog .js-filter-btn:focus-visible {background:#34464D !important;color:white !important;border-color:#34464D !important}
#moodboard .grid > *,#moodboard .flex > * {min-width:0}
#moodboard h3,#moodboard h4,#moodboard p,#moodboard span {overflow-wrap:anywhere}
@media(max-width:640px){#moodboard [class*="absolute"] h3,#moodboard [class*="absolute"] p {font-size:11px;line-height:1.35}#moodboard [class*="grid-cols-3"]{grid-template-columns:1fr}#moodboard .js-summary-bed,#moodboard .js-summary-storage,#moodboard .js-summary-accent {white-space:normal}}


.js-preview-board p {white-space:normal !important;overflow:visible !important;text-overflow:clip !important;overflow-wrap:anywhere}.js-preview-board .grid > div {align-items:flex-start}@media(max-width:480px){.js-preview-board > .grid{grid-template-columns:1fr !important}}


.site-scroll-locked #cookieConsentBanner:not([data-site-dialog]),.site-scroll-locked #site-cookie-banner {visibility:hidden}



/* One content column and one set of gutters on every policy page. */
.policy-page .site-policy-main {max-width:1080px !important}
.policy-page .site-policy-main .site-policy-shell {padding-inline:0 !important; min-width:0; box-sizing:border-box}
.policy-page .site-policy-main .policy-text-body {width:100% !important;max-width:none !important;overflow-wrap:break-word;word-break:normal}
@media(max-width:767px){
 .policy-page .site-policy-main {padding:24px 16px 40px !important;max-width:100% !important}
 .policy-page .site-policy-main h1 {font-size:22px;line-height:1.35}
 .policy-page .site-policy-main .policy-text-body {font-size:16px;line-height:1.7 !important}
 .policy-page .site-policy-main table {max-width:100%;overflow-wrap:anywhere}
}

