/* HomeFront: warm architectural surfaces and purposeful brand color. */
:root {
  --bg: #faf3e8;
  --panel: #f1e3dc;
  --text: #43234b;
  --muted: #6b565e;
  --accent: #44224d;
  --ink: #fffcf7;
  --line: #dcc8cd;
  --surface: #fffcf7;
  --plum-deep: #43234b;
  --rose-warm: #985061;
  --gold-warm: #f3be62;
  --gold-ink: #87501f;
  --focus-light: #8f5b24;
  --on-plum: #fff5e8;
  --on-plum-muted: #ead8de;
}
body { background-color: var(--bg); }
header { background: var(--surface); box-shadow: 0 0 0 100vmax var(--surface); }
.hero h1 span { color: var(--rose-warm); }
.hero-facts, .scroll-link, .note { color: var(--muted); }
.hero-photo figcaption span:first-child { color: #934e43; }
.statement>p span { color: #8c6170; }
.button { background: var(--accent); color: var(--ink); }
.button:hover { background: #63356c; }
.button.secondary { color: var(--text); border-color: #98788d; }
.button.secondary:hover { background: #f1e3e7; }
a:focus-visible, button:focus-visible, input:focus-visible,
textarea:focus-visible, select:focus-visible { outline-color: var(--focus-light); }
.task-strip { background: var(--plum-deep); color: var(--on-plum); }
.task-strip>span { color: var(--on-plum-muted); }
.task-strip a { color: var(--on-plum); }
.task-strip a:hover { color: var(--gold-warm); }
.task-strip :focus-visible { outline-color: var(--gold-warm); }
.community, .resources-preview, .demo-section {
  background: var(--surface); box-shadow: 0 0 0 100vmax var(--surface);
}
#housing {
  --text: var(--on-plum); --muted: var(--on-plum-muted);
  --accent: var(--gold-warm); --ink: var(--plum-deep); --line: #88678c;
  background: var(--plum-deep); box-shadow: 0 0 0 100vmax var(--plum-deep);
}
#housing .step-number, #housing .text-action { color: var(--gold-warm); }
#housing .note { color: var(--on-plum-muted); }
#housing .steps>a:hover { background: #5d365f; }
#housing :focus-visible { outline-color: var(--gold-warm); }
.partner-section { background: #eed6d3; box-shadow: 0 0 0 100vmax #eed6d3; }
.partner-section p { color: #68434f; }
.partner-section .button.secondary { border-color: #875c73; }
.contact {
  --text: var(--on-plum); --muted: var(--on-plum-muted);
  background: var(--plum-deep); box-shadow: 0 0 0 100vmax var(--plum-deep);
}
.contact h2, .contact .phone { color: var(--on-plum); }
.contact .button { background: var(--gold-warm); color: var(--plum-deep); }
.contact .button:hover { background: #ffd18a; color: var(--plum-deep); }
.contact .phone:hover { color: var(--gold-warm); }
.contact :focus-visible { outline-color: var(--gold-warm); }
footer { background: #2e1935; box-shadow: 0 0 0 100vmax #2e1935; color: var(--on-plum); }
footer p, footer .disclosure { color: #e7d5dc; }
footer a:hover { color: var(--gold-warm); }
footer :focus-visible { outline-color: var(--gold-warm); }
.resource-page { background: var(--surface); box-shadow: 0 0 0 100vmax var(--surface); }
.resource-search-panel {
  --text: var(--on-plum); --muted: var(--on-plum-muted);
  color: var(--on-plum); background: var(--plum-deep);
  box-shadow: 0 0 0 100vmax var(--plum-deep);
}
.resource-search-panel h1 { color: var(--on-plum); }
.resource-search-panel .search-field { color: var(--on-plum-muted); }
.resource-search-panel .search-field input { color: var(--plum-deep); background: var(--surface); border-color: var(--surface); }
.resource-search-panel .search-field input::placeholder { color: #6b565e; opacity: 1; }
.resource-search-panel .filters button { color: var(--on-plum); border-color: #b697b8; }
.resource-search-panel .filters button:hover { background: #68416c; }
.resource-search-panel .filters button[aria-pressed=true] { color: var(--plum-deep); background: var(--gold-warm); border-color: var(--gold-warm); }
.resource-search-panel .filters button[aria-pressed=true]:hover { background: #ffd18a; }
.resource-search-panel :focus-visible { outline-color: var(--gold-warm); }
.resource-page .resource-list>a { border-top-color: #dfcdd0; }
.resource-page .resource-list>a:hover { background: #fbefe1; }
.resource-list .category { justify-self: start; color: #51304c; background: #f0e3ea; padding-inline: 8px; border-radius: 2px; }
.resource-list .category[data-category=Maintenance] { color: #75411f; background: #f4e3c3; }
.resource-list .category[data-category=Documents] { color: #633b6d; background: #eee5f0; }
.resource-list .category[data-category=Support] { color: #844054; background: #f2e0e5; }
.resource-list>a>span:last-child { color: var(--gold-ink); }
.editor fieldset, .editor-grid aside, .editor .button.secondary { background: var(--surface); }
.editor legend { color: var(--plum-deep); background: var(--bg); }
.editor input, .editor textarea, .editor select { background: var(--surface); border-color: #98788d; }
.editor-status { color: #794156; }
