/* Juhaus v11. Colour roles only; no new assets, fonts or animation runtime. */
:root {
 --paper: #ffffff;
 --surface: #f0f2f3;
 --mineral: #e2e5e6;
 --ink: #202427;
 --muted: #575d61;
 --line: #c8cdcf;
 --graphite: #202427;
 --graphite-raised: #2b3034;
 --on-dark: #f7f8f8;
 --muted-dark: #bec5c9;
 --line-dark: #596167;
 --accent: #652c3b;
 --accent-hover: #49212c;
 --success: #265644;
 --error: #a52b36;
 /* Legacy layout token now points to a neutral surface. */
 --cream: var(--surface);
}
::selection { background: var(--accent); color: #fff; }
button:focus-visible, a:focus-visible, input:focus-visible,
textarea:focus-visible, select:focus-visible, summary:focus-visible { outline-color: var(--accent); }
.scroll-progress, [data-scroll-progress] { background: var(--accent); }
.site-header { box-shadow: inset 0 -1px var(--line); }
.site-nav .nav-cta { color: var(--accent); border-color: var(--accent); }
.is-home:not(.has-scrolled):not(.nav-open):not(.products-menu-open) .site-nav .nav-cta { color: #fff; border-color: #ffffff80; }
.nav-category > a:hover, .nav-category li a:hover, .nav-category li a[aria-current="page"],
.filter-button.is-active, .inquire-link, .confidence-link { color: var(--accent); }
.filter-button.is-active, .filter-button.is-active:hover { border-color: var(--accent); }
.button-dark, form .button[type="submit"] { background: var(--accent); border-color: var(--accent); color: #fff; }
.button-dark:hover, form .button[type="submit"]:hover { background: var(--accent-hover); border-color: var(--accent-hover); }
.button-dark:disabled, form .button[type="submit"]:disabled { background: var(--accent); border-color: var(--accent); }
.hero, .home-hero { background-color: var(--graphite); }
.home-hero .hero-process-button { background: #fff; border-color: #fff; color: var(--ink); }
.home-hero .hero-process-button:hover { background: var(--mineral); border-color: var(--mineral); color: var(--ink); }
.home-hero-v08 .hero-reference-note { color: var(--muted-dark); }
.service-signposts { background: var(--surface); color: var(--ink); }
.service-signposts a > span:first-child, .service-signposts a:hover { color: var(--accent); }
.confidence-v08 { background: var(--mineral); }
.confidence-top > div > .eyebrow, .confidence-index,
.confidence-top > div > .text-link { color: var(--accent); }
.confidence-row, .confidence-rows { border-color: #b1b9bd; }
.confidence-row:hover { border-color: var(--accent); }
.home-process { background: var(--graphite); color: var(--on-dark); }
.home-process .eyebrow, .process-v08-heading p:not(.eyebrow),
.process-v08-context figcaption, .process-step-index, .process-step-body dt { color: var(--muted-dark); }
.process-step-body dd { color: var(--on-dark); }
.process-step, .process-explorer { border-color: var(--line-dark); }
.home-process a:focus-visible, .home-process summary:focus-visible { outline-color: #fff; }
.process-detail-number, .process-stage-nav a > span, .process-legacy-links a > span,
.project-phase-number, .project-stage-nav a > span:first-child { color: var(--accent); }
.process-detail-list .process-record { border-color: var(--accent); }
.record-format-preview { background: var(--graphite); }
.record-preview-label, .record-preview-caption { color: var(--muted-dark); }
.record-paper { background: #fff; border-color: #fff; box-shadow: none; }
.record-paper-head > span:first-child { color: var(--accent); }
.record-paper-head, .record-paper-fields, .record-paper ol, .record-paper-foot { color: var(--muted); }
.record-paper-head, .record-paper-fields, .record-paper li, .record-feature-meta { border-color: var(--line); }
.service-paths, .faq-section, .home-edit, .home-collections-secondary { background: var(--surface); }
.service-trust-callout, .evidence-network, .project-example-card { background: var(--mineral); }
.evidence-panel { background: var(--surface); }
.media-pending, .evidence-placeholder, .project-cover-placeholder { background: var(--mineral); color: var(--muted); border-color: #b1b9bd; box-shadow: none; }
.media-pending-mark, .evidence-slot-mark, .evidence-placeholder > small,
.project-cover-placeholder > span, .project-cover-placeholder p { color: var(--muted); }
.process-v08-context .media-pending { background: var(--graphite-raised); border-color: var(--line-dark); color: var(--on-dark); }
.process-v08-context .media-pending-mark { color: var(--muted-dark); }
.evidence-placeholder-document { background: #fff; }
.evidence-placeholder-document::before { border-color: var(--line); }
.project-region-card, .project-region-card.is-pending, .project-file-pending, .project-pdf-mark { background: var(--surface); color: var(--muted); border-color: var(--line); }
a.project-region-card, .project-pdf-contents { background: var(--graphite); color: var(--on-dark); border-color: var(--graphite); }
a.project-region-card p, a.project-region-card .project-region-number,
.project-pdf-contents li p, .project-pdf-contents li > span,
.project-pdf-contents > .container > div > p:not(.eyebrow) { color: var(--muted-dark); }
.project-pdf-contents li { border-color: var(--line-dark); }
a.project-region-card:focus-visible, .project-pdf-contents a:focus-visible { outline-color: #fff; }
.product-image, .product-image img, .home-edit .product-image,
.selection-detail > figure > img, .dialog-image { background: var(--surface); }
.product-dialog::backdrop { background: #20242799; }
.product-label { color: var(--muted); }
form input:not([type="checkbox"]), form select, form textarea { border-color: #879196; }
form input::placeholder, form textarea::placeholder { color: #686f73; }
.consent input { accent-color: var(--accent); }
#form-status[data-state="error"], #form-status[data-state="unavailable"] { color: var(--error); }
#form-status[data-state="success"] { color: var(--success); }
.site-footer { --muted: var(--muted-dark); --line: var(--line-dark); background: var(--graphite); color: var(--on-dark); }
.footer-brand img { filter: invert(1); }
.footer-main > div:not(.footer-brand) > a:hover { color: #fff; }
.site-footer a:focus-visible { outline-color: #fff; }
.whatsapp-float { background: #fff; border-color: var(--line); color: var(--ink); box-shadow: 0 2px 14px #2024270d; }
.whatsapp-float:hover { background: var(--surface); }
@media (max-width:600px) {
 .home-hero .hero-shade { background: linear-gradient(180deg,transparent calc(82px + 40vw),var(--graphite) calc(82px + 55.82vw)); }
}
