.room-site {
  --u1-ink:var(--ink); --u1-paper:var(--paper); --u1-muted:var(--muted); --u1-surface:var(--stone); --u1-line:var(--rule);
  --u1-brand:var(--bottle); --u1-brand-hover:#233b2e; --u1-on-brand:var(--paper); --u1-font:'Instrument Sans',sans-serif;
  --u1-room-photo:240px; --u1-room-desktop:620px; --u1-room-gap:24px;
}
.room-site .editorial-header { min-height:76px; border:0; gap:16px; }
.room-site .editorial-brand { display:inline-flex; align-items:center; gap:8px; }
.u1-room-mark { color:var(--bottle); flex:none; }
.room-site .u1-nav-cta { margin-left:auto; }
.room-site .u1-room-hero { display:grid; grid-template-columns:1fr; grid-template-areas:'heading' 'photo' 'start'; gap:24px; margin:0; padding:24px 0 0; }
.u1-room-heading { grid-area:heading; }
.room-site .u1-room-heading h1 { font-size:40px; line-height:1.08; margin:0; max-width:16ch; }
.u1-room-heading p { margin:16px 0 0; font-size:16px; line-height:1.5; max-width:46ch; }
.room-hero-actions { display:flex; flex-wrap:wrap; gap:var(--s3); margin-top:var(--s4); }
.room-offer-line { font-weight:600; }
html:not([data-room-session="signed-in"]) [data-credit-needed] { display:none!important; }
.room-site .u1-room-hero .hero-photo { grid-area:photo; margin:0; min-width:0; align-self:stretch; }
.room-site .u1-room-hero .room-plate { aspect-ratio:auto; height:var(--u1-room-photo); border-radius:20px; overflow:hidden; }
.room-site .u1-room-hero .hero-photo figcaption { margin-top:8px; color:var(--muted); font-size:14px; }
.room-site .u1-room-start { grid-area:start; min-width:0; }
.room-site .u1-upload-zone { display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:152px; padding:24px; gap:8px; background:var(--stone); color:var(--ink); border:1px solid transparent; border-radius:20px; text-align:center; cursor:pointer; }
.u1-upload-zone svg { color:var(--bottle); }
.u1-upload-zone strong { font-size:18px; font-weight:600; }
.u1-upload-zone span { font-size:16px; }
.u1-upload-zone small { font-size:14px; color:var(--muted); }
.u1-upload-zone:hover,.u1-upload-zone[data-dragging=true] { border-color:var(--bottle); background:var(--paper); }
.u1-room-samples { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.room-site .u1-room-sample { display:flex; flex-direction:column; align-items:flex-start; gap:8px; padding:0; border:0; background:transparent; font-size:14px; text-align:left; cursor:pointer; }
.u1-room-sample img { width:100%; height:76px; object-fit:cover; border-radius:12px; }
.u1-room-sample:hover img { outline:2px solid var(--bottle); outline-offset:2px; }
.u1-sample-label { margin:16px 0 8px; }
.u1-room-start [data-u1-hero-status]:empty { display:none; }
.room-site .button:not(.button-secondary) { background:var(--u1-brand); color:var(--u1-on-brand); border-color:var(--u1-brand); }
.room-site .button:not(.button-secondary):hover { background:var(--u1-brand-hover); }
.room-site .tool-finish .button { width:100%; min-height:48px; border-radius:12px; }
.room-site .room-tool { scroll-margin-top:96px; }
.room-site .room-faq { max-width:none; }
.room-site .u1-faq-item { border:0; }
.room-site .u1-faq-item summary { font-size:16px; }
.room-site .room-viewer [data-gallery-close] { font-size:24px; }
.room-site .room-plans>section { border:0; background:var(--stone); border-radius:20px; padding:24px; }
@media(max-width:420px) {
  .room-site .editorial-brand { font-size:15px; gap:6px; white-space:nowrap; }
  .room-site .u1-room-mark { width:20px; height:20px; }
  .room-site .u1-nav-cta { font-size:13px; padding-inline:12px; white-space:nowrap; }
  .room-site .editorial-header { gap:8px; }
  .room-site .menu-toggle { min-width:44px; font-size:13px; }
}
@media(min-width:1024px) {
  .room-site .u1-room-hero { grid-template-columns:1.2fr 1fr; grid-template-areas:'photo heading' 'photo start'; gap:24px 48px; padding-block:32px; }
  .room-site .u1-room-heading { align-self:end; }
  .room-site .u1-room-heading h1 { font-size:56px; }
  .room-site .u1-room-heading p { font-size:18px; }
  .room-site .u1-room-hero .room-plate { height:calc(100% - 28px); min-height:var(--u1-room-desktop); }
  .room-site .u1-room-hero .hero-photo img { object-fit:cover; }
}

.room-site .tool-step,.room-site .recovery-details,.room-site .editorial-footer { border:0; }
.room-site p { max-width:65ch; }

.room-site .room-guide-directory { border:0; }
