/* Scope every rule to Ultimate; no shared product geometry or palette edits. */
.ultimate-intro{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;color:#35362e;font-size:16px;margin:0 0 24px}
.ultimate-intro span{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:#6b5527}
.ultimate-families{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ultimate-family,.ultimate-option{background:#262622;color:#e8e4d9;border:1px solid #57564c;text-align:left;cursor:pointer;font:inherit;overflow-wrap:anywhere}
.ultimate-family{display:flex;flex-direction:column;gap:9px;padding:17px;min-height:145px}
.ultimate-family strong{font-family:Georgia,serif;font-size:19px;font-weight:400}
.ultimate-family span{font-size:12px;line-height:1.6;color:#d0cec2}
.ultimate-family small{font-size:10px;line-height:1.5;color:#d9c89c;margin-top:auto}
.ultimate-family.active,.ultimate-option.active{border-color:#d3b566;background:#343229;box-shadow:inset 0 0 0 1px #d3b566}
.ultimate-options{display:flex;flex-wrap:wrap;gap:8px}
.ultimate-finish-option{display:flex;flex-direction:column;align-items:stretch;gap:8px;width:132px;flex:0 0 132px;text-align:center;padding:10px!important}
.ultimate-finish-sample{display:flex;align-items:center;justify-content:center;width:100%;height:72px;border:1px solid #ffffff40;background:#ddd9ce;color:#343229;font-size:11px;background-size:cover;background-position:center}
.ultimate-finish-option small{font-size:10px;line-height:1.45;color:#d0cec2}
.ultimate-material-pending{padding:12px;border:1px solid #95865d;background:#f8f3e4;font-size:12px;line-height:1.6}
@media(max-width:540px){.ultimate-option.ultimate-finish-option{width:calc(50% - 4px);flex:0 0 calc(50% - 4px);min-width:0;max-width:calc(50% - 4px)}.ultimate-finish-sample{height:80px}}
.ultimate-option{padding:11px 13px;font-size:12px;min-height:44px;line-height:1.45;max-width:100%}
.ultimate-family:focus-visible,.ultimate-option:focus-visible,.ultimate-side button:focus-visible,.ultimate-save:focus-visible,.ultimate-source a:focus-visible{outline:3px solid #e6c676;outline-offset:3px}
.ultimate-group{margin-top:25px}
.ultimate-note,.ultimate-source{color:#56574b;font-size:12px;line-height:1.8}
.ultimate-source{margin-top:24px}.ultimate-source a{color:#6b5527;text-underline-offset:4px}
.ultimate-layout #mode-switch{display:none}.ultimate-layout .preview-controls{display:none}
.ultimate-layout .preview-card{position:static;align-self:start}
.window-stage.ultimate-stage{display:block;min-height:0;height:auto;padding:0;background:#eeece4}
.ultimate-stage .product-render{position:relative;inset:auto;display:block;width:100%;height:auto}
.ultimate-pending-preview{padding:38px 32px;text-align:center;color:#272820;width:100%;box-sizing:border-box}
.ultimate-pending-preview .eyebrow{color:#64552c;margin:0 0 18px}
.ultimate-pending-preview h3{font:400 clamp(27px,3vw,39px)/1.15 Georgia,serif;margin:0 0 15px;color:#272820}
.ultimate-configuration{font-size:14px;margin:0 0 10px}.ultimate-material{font-size:11px;color:#58594e;margin:0 0 28px}
.ultimate-side{display:inline-flex;border:1px solid #8e8b7b;margin-bottom:14px}
.ultimate-side button{padding:11px 20px;min-height:44px;border:0;background:transparent;color:#404136;font:inherit;font-size:11px;cursor:pointer}
.ultimate-side button[aria-pressed=true]{background:#303129;color:#f6f1e4}
.ultimate-finish{font-family:Georgia,serif;font-size:20px;line-height:1.45;margin:0 0 28px;overflow-wrap:anywhere}
.ultimate-visual-status{border-top:1px solid #cbc8b9;border-bottom:1px solid #cbc8b9;padding:24px 10px;margin:0 auto 28px;max-width:420px}
.ultimate-visual-status strong{font-size:11px;text-transform:uppercase;letter-spacing:.14em}.ultimate-visual-status p,.ultimate-quote-note{font-size:12px;line-height:1.8;color:#55574b}
.ultimate-price{font-size:17px;letter-spacing:.15em;margin:0 0 10px}
.ultimate-quote-note{max-width:380px;margin:0 auto 22px}
.ultimate-save{font:inherit;font-size:11px;letter-spacing:.08em;min-height:46px;padding:13px 24px;background:#303129;color:#f6f1e4;border:1px solid #303129;cursor:pointer}
.ultimate-save-status{display:block;font-size:12px;min-height:18px;margin-top:12px}
.ultimate-details{font:inherit;font-size:12px;text-decoration:underline;text-underline-offset:4px;border:0;background:transparent;color:#434638;cursor:pointer;min-height:44px;padding:10px}
.ultimate-details:focus-visible{outline:3px solid #8c7136;outline-offset:2px}
.ultimate-summary[hidden]{display:none!important}
.ultimate-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ultimate-summary dd{overflow-wrap:anywhere}
/* INTERIOR | EXTERIOR SIDE BY SIDE (owner decision 2026-09-25). Two equal
   columns that fall to one column when the preview is too narrow to read both.
   Each column keeps its own title, finish line, preview and notes, so a side
   whose view is pending says so in its own column instead of leaving a gap. */
.ultimate-preview-sides{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start;margin-top:6px}
.ultimate-preview-side{min-width:0;display:flex;flex-direction:column}
.ultimate-side-title{font:400 15px/1.2 Georgia,serif;letter-spacing:.14em;text-transform:uppercase;color:#4a4a3e;margin:0 0 6px;padding-bottom:6px;border-bottom:1px solid rgba(64,65,54,.24)}
.ultimate-preview-side .ultimate-finish{margin:0 0 4px}
.ultimate-preview-side .ultimate-visual-status{margin-top:14px}
@media(max-width:700px){.ultimate-preview-sides{grid-template-columns:1fr}}
.ultimate-product-visual{height:420px;max-height:52vh;display:flex;justify-content:center;margin:14px auto;isolation:isolate}
.ultimate-product-svg{display:block;width:100%;height:100%;filter:drop-shadow(1px 3px 3px #0002)}
.ultimate-reference-note{font-size:11px;line-height:1.6;color:#56574b}
.ultimate-limitations{font-size:11px;line-height:1.7;text-align:left;max-width:440px;margin:15px auto 25px;color:#56574b}
.ultimate-limitations summary{cursor:pointer;min-height:30px;text-align:center;text-decoration:underline;text-underline-offset:3px}
.ultimate-limitations ul{padding-left:20px}
@media(max-width:540px){.ultimate-families{grid-template-columns:1fr}.ultimate-family{min-height:0;padding:15px}.ultimate-pending-preview{padding:28px 19px}.ultimate-summary{grid-template-columns:1fr!important}.ultimate-option{flex-grow:1}}

/* Screen and Marvin factory casing are information, not choices: a plain list
   with no pressed state, no swatch and no selectable affordance. */
.ultimate-info-group h3{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ultimate-info-flag{font:400 9px/1 var(--sans,inherit);letter-spacing:.18em;text-transform:uppercase;color:#b9b3a3}
.ultimate-info-list{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 8px;padding:0}
.ultimate-info-list li{border:1px dashed #57564c;background:#211f1b;color:#cdc8bb;padding:9px 12px;font-size:12px;line-height:1.4}
