:root { --vm-nav-height: 145px; --vm-catalogue-toolbar-height: 110px; }
/* Clip horizontal decoration without creating an ancestor scroll container. */
#projects { overflow: visible; overflow: clip; }
.catalogue-toolbar, .interior-search-bar {
  position: sticky;
  top: var(--vm-nav-height);
  z-index: 8;
  box-shadow: 0 8px 18px -14px #102c2570;
}
.catalogue-toolbar { background: #f1eee5; padding-block: 16px; }
.wishlist-card { top: calc(var(--vm-nav-height) + var(--vm-catalogue-toolbar-height) + 18px); }
.interior-search-bar { background: #e8eade; padding: 14px 7%; border-block: 1px solid #183c312b; margin: 24px 0; }
.interior-search-row { display: flex; align-items: end; gap: 16px; }
.interior-search-field { display: flex; flex: 1; flex-direction: column; gap: 8px; font-size: 10px; letter-spacing: 1.5px; text-transform: uppercase; }
.interior-search-field input { width: 100%; min-height: 46px; padding: 12px 14px; border: 1px solid #183c3140; background: #faf8f2; font-size: 14px; letter-spacing: 0; text-transform: none; }
.collection-search-clear { background: none; color: inherit; border: 0; border-bottom: 1px solid #183c3150; padding: 12px 4px; min-height: 44px; font-size: 12px; }
.interior-search-help { font-size: 11px; line-height: 1.5; margin: 9px 0 0; color: #53614f; }
.interior-search-notice { margin: 10px 0 0; font-size: 12px; line-height: 1.5; }
.interior-search-notice button { margin-inline-start: 12px; }
.caption-architecture { font-family: Arial, sans-serif; font-size: 11px; line-height: 1.6; display: block; margin-top: 7px; color: #53614f; }
.architecture-look-search { display: flex; flex-direction: column; gap: 9px; font-size: 10px; letter-spacing: 1px; margin: 22px 0 16px; }
.architecture-look-search input { padding: 13px; min-height: 46px; width: 100%; font-size: 14px; border: 1px solid #183c3140; background: #faf8f2; }
input[type="search"]:focus-visible { outline: 2px solid #183c31; outline-offset: 3px; }
@media (max-width: 800px) {
  :root { --vm-nav-height: 110px; }
  .catalogue-toolbar { grid-template-columns: minmax(0,1fr) auto; gap: 10px 14px; padding-block: 12px; }
  .catalogue-toolbar label:first-child { grid-column: 1 / -1; }
  .catalogue-toolbar .catalogue-refresh { grid-column: auto; }
  .catalogue-toolbar input, .catalogue-toolbar select, .interior-search-field input, .architecture-look-search input, .architecture-browser-filters input { font-size: 16px; }
  .catalogue-toolbar label { gap: 5px; font-size: 9px; }
  .interior-search-bar { padding: 12px 6%; }
  .interior-search-help { font-size: 10px; }
  .interior-search-row { gap: 10px; }
}
@media (max-height: 540px) and (orientation: landscape) {
  .catalogue-toolbar { grid-template-columns: minmax(150px,1fr) minmax(120px,.6fr) auto; gap: 10px; }
  .catalogue-toolbar label:first-child { grid-column: auto; }
  .interior-search-help { display: none; }
}

.dialog-architecture-references { padding: 18px 0; border-block: 1px solid #183c3130; margin: 24px 0; }
.dialog-architecture-references h4 { font-size: 12px; letter-spacing: 1px; font-weight: 400; margin: 0 0 14px; }
.dialog-architecture-references p { font-size: 13px; line-height: 1.6; margin: 10px 0; }
.dialog-architecture-references a { display: block; }
