:root {
  --hotel-primary: #5b3a29;
  --hotel-foreground: #2b211c;
  --hotel-muted: #b9aaa0;
  --hotel-background: #fbfaf9;
  --hotel-button-radius: 4px;
}
* { box-sizing: border-box; }
body { margin: 0; font-family: Georgia, 'Times New Roman', serif; color: var(--hotel-foreground); background: var(--hotel-background); line-height: 1.5; }
a { color: inherit; }
.test-banner { background: #fff3c4; color: #3d2e00; padding: 10px 16px; text-align: center; font-family: system-ui, sans-serif; font-size: 14px; }
.site-header, .engine-header { background: var(--hotel-primary); color: #fff; padding: 16px; display: flex; flex-wrap: wrap; gap: 16px; align-items: center; justify-content: space-between; }
.site-header .flex { display: flex; flex-wrap: wrap; gap: 16px; align-items: center; justify-content: space-between; }
.site-header nav, .site-header .flex { width: 100%; }
.site-logo, .engine-name { font-weight: bold; letter-spacing: 0.15em; text-transform: uppercase; text-decoration: none; }
.site-nav { display: flex; flex-wrap: wrap; gap: 16px; }
.site-nav a { text-decoration: none; }
.site-button { display: inline-block; padding: 10px 18px; border-radius: var(--hotel-button-radius); background: #fff; color: var(--hotel-primary); font-family: system-ui, sans-serif; font-weight: 600; text-decoration: none; border: 1px solid var(--hotel-primary); }
.hero-banner { background: var(--hotel-primary); color: #fff; padding: 64px 16px; text-align: center; }
.hero-banner h1 { letter-spacing: 0.15em; text-transform: uppercase; margin: 0 0 12px; }
.hero-subtitle { font-style: italic; margin: 0 0 24px; }
.site-section, .engine-step, .test-notes { max-width: 720px; margin: 0 auto; padding: 32px 16px; }
.test-notes { font-family: system-ui, sans-serif; font-size: 14px; border-top: 1px solid var(--hotel-muted); }
.room { border: 1px solid var(--hotel-muted); border-radius: 8px; padding: 16px; margin-bottom: 16px; }
.flow-list li { margin-bottom: 12px; }
.site-footer, .engine-footer { background: var(--hotel-foreground); color: var(--hotel-muted); padding: 32px 16px; }
.engine-footer p, .site-footer p { max-width: 720px; margin: 8px auto; }
