/* Material-first showroom and the photo-based room visualizer. */
.showroom-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);gap:48px;padding:44px 0 40px;align-items:center}
.showroom-intro{padding-block:12px}.showroom-intro h1 span{color:var(--green)}
.showroom-intro>p:not(.eyebrow){max-width:44ch;color:var(--muted);margin:24px 0 28px}
.showroom-actions{display:flex;flex-wrap:wrap;gap:12px}.showroom-actions .button{gap:18px}
.showroom-proof{display:flex;gap:20px;align-items:center;margin-top:35px;padding-top:24px;border-top:1px solid var(--line)}
.showroom-proof>span:first-child{flex:none;display:flex;align-items:baseline;gap:8px}.showroom-proof>span:last-child{max-width:24ch;color:var(--muted)}
.showroom-hero-image{position:relative;min-width:0;height:480px;overflow:hidden;background:var(--pale)}
.showroom-hero-image>img{width:100%;height:100%;object-position:58% center}
.showroom-image-label{position:absolute;top:20px;left:20px;padding:8px 12px;background:var(--paper)}
.showroom-try{position:absolute;bottom:20px;left:20px;right:20px;display:flex;gap:18px;align-items:center;background:var(--paper);padding:20px;transition:background .25s}
.showroom-try:hover{background:var(--pale)}.showroom-try>svg{margin-left:auto}.showroom-try>span:nth-child(2){display:flex;flex-direction:column;gap:4px}.showroom-try span span{color:var(--muted)}
.preview-icon{background:var(--green);color:var(--paper);height:48px;width:48px;display:grid;place-items:center;flex:none}
.compact-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:24px}
.showroom-types{padding:24px 0 0}.material-categories{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}
.material-category{padding:12px;border:1px solid var(--line);transition:background .3s,border-color .3s,transform .4s var(--ease-out)}
.material-category img{height:84px;width:100%}.material-category>span{display:flex;align-items:center;justify-content:space-between;padding-top:12px;gap:8px}
.material-category:hover{background:var(--pale);border-color:var(--green);transform:translateY(-3px)}
.showroom-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.showroom-grid .stone-image{aspect-ratio:1.15}
.stone-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;border-top:1px solid var(--line);padding-top:12px}
.stone-actions>a{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:8px;flex:1}
.stone-actions>a:hover{color:var(--green)}.stone-actions .stone-compare{max-width:44px;border:1px solid var(--line)}
.showroom-studio{display:grid;grid-template-columns:1.2fr 1fr;background:var(--pale)}
.studio-preview{position:relative;min-height:460px;overflow:hidden}.studio-preview>img{width:100%;height:100%;position:absolute;object-position:54% center}
.studio-preview-tag{position:absolute;top:24px;left:24px;background:var(--paper);padding:8px 12px;max-width:calc(100% - 48px)}
.studio-swatches{position:absolute;bottom:24px;left:24px;right:24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.studio-swatches a{background:var(--paper);padding:8px;transition:transform .3s}.studio-swatches a:hover{transform:translateY(-4px)}
.studio-swatches img{height:64px;width:100%;margin-bottom:8px}.studio-swatches span{display:block}
.studio-pitch{padding:48px}.studio-pitch>p:not(.eyebrow){margin-top:20px;color:var(--muted)}
.studio-pitch ol{padding-left:24px;margin:24px 0 30px}.studio-pitch li{padding:6px 0 6px 5px}
.application-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.application-card{overflow:hidden}
.application-card img{width:100%;aspect-ratio:1.45;transition:transform .7s var(--ease-out)}.application-card:hover img{transform:scale(1.025)}
.application-card span{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:18px}
.showroom-guide{border-block:1px solid var(--line);padding-block:36px;display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:32px}
.showroom-guide .eyebrow{margin-bottom:16px}.showroom-guide>div:not(:first-child){border-left:1px solid var(--line);padding-left:24px}
.showroom-guide p:not(.eyebrow){color:var(--muted);margin:16px 0 0}
.showroom-reading{padding-block:32px;display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:32px}
.visualizer-heading{padding:40px 0 30px;display:flex;align-items:flex-end;justify-content:space-between;gap:32px}
.visualizer-heading .eyebrow{margin-bottom:14px}.visualizer-heading>p{max-width:32ch;margin:0;color:var(--muted)}
.visualizer{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:start;padding-bottom:64px}
.visualizer-main{min-width:0}.visualizer-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.utility-button{min-height:44px;display:inline-flex;gap:12px;align-items:center;justify-content:center;padding:10px 14px;border:1px solid var(--line);background:transparent;transition:background .25s,border-color .25s}
.utility-button:hover{background:var(--pale);border-color:var(--green)}.utility-button[aria-pressed=true]{background:var(--green);color:var(--paper)}
.utility-button:disabled,.visualizer .button:disabled{opacity:.5;cursor:wait}
.room-stage{position:relative;aspect-ratio:1200/538;background:var(--pale);overflow:hidden}
.room-stage canvas,.room-fallback{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}
.room-stage:not([data-ready=true]) .room-fallback{display:block}.room-stage[data-ready=true] .room-fallback{display:none}
.room-stage-label{position:absolute;left:16px;bottom:16px;background:var(--paper);padding:8px 12px;max-width:calc(100% - 32px)}
.render-feedback{position:absolute;top:14px;right:14px;max-width:calc(100% - 28px);display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 14px;background:var(--paper);border:1px solid var(--line)}
.surface-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;padding:20px 0;border-bottom:1px solid var(--line)}
.surface-options{flex-wrap:wrap}.visualizer-adjustments{display:flex;gap:16px;align-items:center;flex-wrap:wrap;padding:20px 0}
.visualizer-adjustments>label{display:grid;grid-template-columns:1fr auto;gap:8px 20px;flex:1 1 220px;max-width:360px;margin-right:auto}
.visualizer-adjustments input{grid-column:1/-1;width:100%;accent-color:var(--green);cursor:pointer;min-height:24px;margin:0}
.visualizer-note{display:flex;align-items:flex-start;gap:12px;padding:18px;background:var(--pale);color:var(--muted)}
.visualizer-note p{margin:0}.note-marker{border:1px solid var(--muted);border-radius:50%;width:22px;height:22px;flex:none;display:grid;place-items:center;margin-top:2px}
.visualizer-save{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding-top:24px}
#visualizer-status{flex-basis:100%;overflow-wrap:anywhere;min-height:24px}
.visualizer-picker{background:#eeeee7;border:1px solid var(--line);padding:24px;min-width:0}
.picker-heading{display:flex;flex-direction:column;gap:4px;margin-bottom:20px}.picker-heading>span{color:var(--muted)}
.selected-stone{display:flex;align-items:center;gap:14px;border-block:1px solid var(--line);padding:18px 0;margin-bottom:18px}
.selected-stone>img{width:72px;height:82px;flex:none}.selected-stone>div{min-width:0}.selected-stone h3{margin:4px 0}.selected-stone p{margin:0;color:var(--muted)}
.visualizer-search,.material-select{display:block}.visualizer-search input,.material-select select{width:100%;min-height:46px;background:var(--paper);border:1px solid #a5ae9f;padding:10px 12px;margin-top:6px;min-width:0}
.visualizer-search{margin-bottom:14px}.material-select{display:flex;align-items:center;gap:12px}.material-select select{margin:0;flex:1}
#visualizer-count{margin:18px 0 10px;color:var(--muted)}
.swatch-library{max-height:310px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:12px;padding:3px}
.visualizer-swatch{position:relative;text-align:left;border:1px solid transparent;padding:5px;min-width:0;transition:border-color .25s,background .25s}
.visualizer-swatch>img{width:100%;height:70px;object-fit:cover}.visualizer-swatch>span:not(.swatch-check){display:block;padding:7px 0 0;overflow-wrap:anywhere}
.visualizer-swatch:hover{background:var(--paper);border-color:#a5ae9f}.visualizer-swatch[aria-pressed=true]{border:2px solid var(--green);padding:4px;background:var(--paper)}
.swatch-check{position:absolute;top:8px;right:8px;background:var(--green);color:var(--paper);width:24px;height:24px;border-radius:50%;display:none;place-items:center}
.visualizer-swatch[aria-pressed=true] .swatch-check{display:grid}.visualizer-picker>.button{width:100%;margin-top:24px;justify-content:space-between}.visualizer-picker>.text-link{margin-top:14px;display:flex;justify-content:space-between}
.visualizer-empty{padding:24px 0}.visualizer-empty p{margin-bottom:8px}
.visualizer :is(input,select):focus-visible{outline:2px solid var(--green);outline-offset:3px}
@media(min-width:1101px){.site-header nav{gap:24px}.site-header nav a{white-space:nowrap}}
@media(max-width:1250px) and (min-width:1101px){.site-header nav{gap:16px}.site-header{gap:14px}.site-header .wordmark{width:172px}}
@media(max-width:1100px){
  .showroom-hero{gap:28px;grid-template-columns:1fr 1fr}.showroom-hero-image{height:480px}.showroom-proof{flex-wrap:wrap;gap:8px}.showroom-proof>span:last-child{max-width:none}
  .showroom-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-pitch{padding:32px}.showroom-guide{grid-template-columns:1fr 1fr}
  .material-categories{gap:12px}.material-category{padding:8px}.material-category img{height:70px}
  .visualizer{grid-template-columns:minmax(0,1fr) 300px;gap:20px}.visualizer-picker{padding:18px}.visualizer-toolbar{align-items:stretch}.visualizer-heading{align-items:flex-start;flex-direction:column;gap:14px}.visualizer-heading>p{max-width:none}
}
@media(max-width:760px){
  .showroom-hero{grid-template-columns:1fr;padding-top:24px;gap:28px}.showroom-intro{padding:0}.showroom-intro .eyebrow{margin-bottom:20px}.showroom-intro>p:not(.eyebrow){margin:20px 0 24px}
  .showroom-actions{gap:10px}.showroom-actions .button{padding:14px 16px;gap:12px;flex:1 1 auto;justify-content:space-between}.showroom-proof{margin-top:24px;padding-top:18px}
  .showroom-hero-image{height:340px}.showroom-try{left:14px;right:14px;bottom:14px;padding:14px;gap:12px}.showroom-image-label{top:14px;left:14px}.preview-icon{display:none}
  .compact-heading{align-items:flex-start;flex-direction:column;gap:12px}.material-categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.material-category:last-child{grid-column:1/-1;display:flex;align-items:center;gap:18px}.material-category:last-child img{width:40%;height:64px}.material-category:last-child>span{flex:1;padding:0}
  .showroom-grid{gap:24px 16px}.showroom-grid .stone-image{aspect-ratio:1}.showroom-grid .stone-tag{left:8px;top:8px}.stone-actions{margin-top:12px}.stone-actions>a{gap:4px}.stone-actions .stone-compare{display:none}
  .showroom-studio{grid-template-columns:1fr}.studio-preview{min-height:330px}.studio-preview-tag{left:16px;top:16px}.studio-swatches{left:16px;right:16px;bottom:16px}.studio-swatches img{height:55px}.studio-swatches a{padding:6px}.studio-pitch{padding:28px 24px}
  .application-grid{grid-template-columns:1fr;gap:28px}.application-card img{aspect-ratio:1.6}.showroom-guide{grid-template-columns:1fr;gap:24px}.showroom-guide>div:not(:first-child){border-left:0;border-top:1px solid var(--line);padding:24px 0 0}
  .showroom-reading{flex-direction:column;align-items:flex-start;padding-block:28px;gap:16px}
  .visualizer-heading{padding-top:28px;gap:16px}.visualizer{display:flex;flex-direction:column;gap:0}.visualizer-main{display:contents}
  .visualizer-toolbar{order:0;width:100%;gap:10px}.visualizer-toolbar .filter-tabs{flex:1;flex-wrap:wrap}.room-tabs button{padding-inline:10px}.visualizer-toolbar>#original-toggle{width:100%}
  .room-stage{order:1;width:100%;position:sticky;top:0;z-index:20;box-shadow:0 4px 10px #292e2814}.room-stage-label{left:8px;bottom:8px;padding:4px 8px;max-width:calc(100% - 16px)}
  .surface-toolbar{order:2;width:100%;gap:8px;padding-block:16px}.surface-toolbar>span{width:100%}.surface-options button{padding:10px 12px}
  .visualizer-adjustments{order:3;width:100%;gap:12px}.visualizer-adjustments>label{max-width:none;flex-basis:100%;margin:0 0 4px}.visualizer-adjustments>button{flex:1}
  .visualizer-picker{order:4;width:100%;margin:0 0 20px;padding:20px}.picker-heading{flex-direction:row;align-items:baseline;justify-content:space-between;gap:12px}.selected-stone{margin-bottom:16px}.selected-stone>img{height:65px}
  .swatch-library{max-height:325px;gap:10px}.visualizer-swatch>img{height:85px}.visualizer-picker .text-link{scroll-margin-top:200px}.visualizer-picker :is(button,input,select){scroll-margin-top:200px}
  .visualizer-note{order:5}.visualizer-save{order:6;width:100%}.visualizer-save>.button,.visualizer-save>.utility-button{flex:1 1 100%;justify-content:center}
}
@media(max-width:360px){.showroom-grid{grid-template-columns:1fr}.showroom-hero-image{height:300px}.studio-swatches{gap:6px}.visualizer-picker{padding:16px}.picker-heading{flex-direction:column;gap:4px}}

/* A photographic viewpoint picker replaces the two plain room tabs. */
.scene-picker{margin-bottom:20px;min-width:0}
.scene-picker-heading{display:flex;justify-content:space-between;gap:16px;align-items:baseline;margin-bottom:12px}
.scene-picker-heading>span:last-child{color:var(--muted)}
.scene-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;padding:3px}
.scene-option{position:relative;min-width:0;padding:5px;border:1px solid var(--line);text-align:left;transition:background .25s,border-color .25s}
.scene-option>img{height:62px;width:100%;object-fit:cover}.scene-option>span:not(.scene-check){display:block;padding:8px 3px 3px}
.scene-option:hover{border-color:var(--green);background:var(--pale)}
.scene-option[aria-pressed=true]{border:2px solid var(--green);padding:4px;background:var(--pale)}
.scene-check{position:absolute;top:9px;right:9px;width:22px;height:22px;display:none;place-items:center;border-radius:50%;background:var(--green);color:var(--paper)}
.scene-option[aria-pressed=true] .scene-check{display:grid}
.visualizer-toolbar{min-height:44px}.visualizer-toolbar>#active-room-name{margin-right:auto}
@media(max-width:1250px) and (min-width:761px){.scene-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.scene-option>img{height:58px}.scene-option>span:not(.scene-check){min-height:50px}}
@media(max-width:760px){
 .scene-picker{order:0;width:100%;margin-bottom:14px}
 .scene-strip{display:flex;overflow:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scroll-snap-type:x proximity;padding-bottom:10px}
 .scene-option{flex:0 0 128px;scroll-snap-align:start}.scene-option>span:not(.scene-check){min-height:54px}
 .visualizer-toolbar{order:1;flex-wrap:nowrap;align-items:center}.visualizer-toolbar>#original-toggle{width:auto;flex:none;padding-inline:12px}
 .room-stage{order:2}.surface-toolbar{order:3}.visualizer-adjustments{order:4}.visualizer-picker{order:5}.visualizer-note{order:6}.visualizer-save{order:7}
 .render-feedback{top:8px;right:8px;padding:6px 10px;max-width:calc(100% - 16px)}
}
