/* Review: retain palette and layout; give each material one semantic role. */
.projects-menu{max-height:calc(100dvh - 150px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--brand-primary) transparent}
.projects-menu .menu-subtitle{display:block;font-size:11px;font-weight:500;color:var(--brand-muted);padding:12px 14px 4px;border-top:var(--brand-border-width) solid var(--brand-border);margin-top:4px}
.mobile-furniture-projects{display:grid;gap:4px;padding:0 10px 12px 22px;border-bottom:var(--brand-border-width) solid var(--brand-border)}
.mobile-furniture-projects button{min-height:44px;padding:10px 12px;text-align:left;font-size:14px;border-radius:calc(var(--brand-radius-button) * 0.3333333333333333);color:var(--brand-white)}
.mobile-furniture-projects button:hover{background:var(--brand-surface-dark)}
.world-transition .journey-note,
.world-transition .journey-note.on-dark{
 background:var(--brand-glass-plum);color:var(--brand-white);
 border:var(--brand-border-width) solid var(--brand-border);box-shadow:var(--brand-shadow);
 backdrop-filter:var(--brand-glass-blur);-webkit-backdrop-filter:var(--brand-glass-blur);
}
.furniture-lead,.furniture-card{
 background:var(--brand-glass-white);color:var(--brand-plum);
 border:var(--brand-border-width) solid var(--brand-glass-edge-on-light);border-radius:var(--brand-radius);
 box-shadow:var(--brand-shadow);backdrop-filter:var(--brand-glass-blur);-webkit-backdrop-filter:var(--brand-glass-blur);
}
.furniture-card{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:var(--ds-box-spacing-base-13);padding:var(--ds-box-spacing-base-14);cursor:pointer}
.furniture-card>img{position:relative;inset:auto;width:100%;height:100%;min-height:0;border-radius:var(--brand-radius-photo);object-fit:cover}
.furniture-card:hover>img,.furniture-card:focus-visible>img{transform:none}
.furniture-card .project-card-label{position:relative;inset:auto;min-height:78px;padding:var(--ds-box-spacing-base-15);background:transparent}
.furniture-card:focus-visible{outline:3px solid var(--brand-primary);outline-offset:-4px}
.project-card-label .gallery-open{border-color:var(--brand-glass-edge-on-light)}
.project-gallery[open]{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);grid-template-rows:auto minmax(0,1fr) auto;gap:20px 28px}
.project-gallery{width:calc(100vw - 2 * var(--page-margin));height:min(84dvh,850px);max-height:calc(100dvh - 32px);padding:28px;background:var(--brand-glass-plum);border-radius:var(--brand-radius);color:var(--brand-white)}
.project-gallery .dialog-heading{grid-column:1/-1;position:static;display:block;padding:0 52px 0 0;pointer-events:auto;color:var(--brand-white);text-shadow:none}
.project-gallery #gallery-title{margin:0;font:var(--brand-heading-weight) clamp(25px,2.8vw,40px)/1.12 var(--brand-font);letter-spacing:-.04em}
.project-gallery .dialog-category{margin:10px 0 0;color:var(--brand-muted);font-size:13px;line-height:1.5}
.project-gallery .dialog-visual{position:relative;min-width:0;min-height:0;grid-column:1;grid-row:2}
.project-gallery .dialog-image{display:block;width:100%;height:100%;object-fit:contain}
.project-gallery .dialog-copy{grid-column:2;grid-row:2/4;overflow:auto;min-height:0;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--brand-primary) transparent;padding:0 10px 8px 0}
.project-gallery .dialog-copy p{font-size:16px;line-height:1.7;margin:0 0 18px;color:var(--brand-white)}
.project-gallery .dialog-footer{grid-column:1;grid-row:3;display:flex;align-items:center;gap:12px;min-width:0}
.project-gallery .dialog-thumbs{position:static;transform:none;min-width:0;max-width:100%;margin:0;padding:6px;background:var(--brand-surface-dark);border-color:var(--brand-border)}
.project-gallery .dialog-thumbs button{width:56px;height:44px;min-width:44px;opacity:.8}
.project-gallery .dialog-thumbs button[aria-pressed=true]{opacity:1}
.project-gallery .dialog-count{white-space:nowrap;font-size:12px;font-variant-numeric:tabular-nums;color:var(--brand-muted)}
.project-gallery .dialog-close{top:18px;right:18px;width:44px;height:44px;background:var(--brand-surface-dark);border:var(--brand-border-width) solid var(--brand-border)}
.project-gallery .dialog-arrow{display:grid!important;opacity:1;background:var(--brand-glass-plum);border-color:var(--brand-border);backdrop-filter:var(--brand-glass-blur)}
.project-gallery .dialog-arrow.previous{left:8px}.project-gallery .dialog-arrow.next{right:8px}
.project-gallery .dialog-arrow:disabled{opacity:.3;cursor:default}
.approach-image img{object-fit:cover;object-position:center}
.approach-image>span{background:var(--brand-glass-plum);color:var(--brand-white);border:var(--brand-border-width) solid var(--brand-border);border-radius:var(--brand-radius-photo);backdrop-filter:var(--brand-glass-blur);-webkit-backdrop-filter:var(--brand-glass-blur);letter-spacing:.03em;line-height:1.5}
@media(max-width:700px){
 .project-gallery{width:calc(100vw - 24px);height:calc(100dvh - 24px);max-height:none;padding:18px 14px}
 .project-gallery[open]{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(140px,35dvh) auto minmax(90px,1fr);gap:12px}
 .project-gallery #gallery-title{font-size:26px}
 .project-gallery .dialog-category{font-size:12px;margin-top:6px}
 .project-gallery .dialog-close{top:12px;right:12px}
 .project-gallery .dialog-copy{grid-column:1;grid-row:4;padding:2px 6px 0 0}
 .project-gallery .dialog-copy p{font-size:14px;line-height:1.6;margin-bottom:14px}
 .project-gallery .dialog-thumbs{gap:5px}.project-gallery .dialog-thumbs button{width:44px;height:44px}
 .furniture-card{padding:var(--ds-box-spacing-mobile-33);}.furniture-card .project-card-label{padding:var(--ds-box-spacing-mobile-34);min-height:86px}
}
@media(max-height:570px) and (min-width:701px){.project-gallery{height:calc(100dvh - 24px);padding:16px}.project-gallery[open]{gap:10px 20px}.project-gallery #gallery-title{font-size:24px}.project-gallery .dialog-category{margin-top:4px}.project-gallery .dialog-copy p{font-size:14px;line-height:1.6}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
 .world-transition .journey-note,.world-transition .journey-note.on-dark,.project-gallery,.approach-image>span{background:var(--brand-plum)}
 .furniture-lead,.furniture-card{background:var(--brand-paper)}
}
@media(prefers-reduced-transparency:reduce){
 .world-transition .journey-note,.world-transition .journey-note.on-dark,.project-gallery,.approach-image>span{background:var(--brand-plum);backdrop-filter:none;-webkit-backdrop-filter:none}
 .furniture-lead,.furniture-card{background:var(--brand-paper);backdrop-filter:none;-webkit-backdrop-filter:none}
}
