/* System-native monochrome. The legacy --mint name remains an API for existing
   components, but its value is neutral. Product photography and swatches retain
   their original colours; only interface surfaces, labels and controls change. */
:root {
  color-scheme: dark;
  --bg:#0a0a0a; --surface:#121212; --surface2:#1b1b1b;
  --text:#f5f5f5; --muted:#b3b3b3; --line:#343434; --mint:#e5e5e5;
  --theme-header:rgba(10,10,10,.94); --theme-hover:#242424;
  --theme-control:#777777; --theme-heading:#a6a6a6;
  --theme-action:#f5f5f5; --theme-action-ink:#111111; --theme-action-hover:#d8d8d8;
  --theme-error:#ffb29e; --theme-warning:#e9c784;
}
@media (prefers-color-scheme: light) {
  :root {
    color-scheme: light;
    --bg:#fafafa; --surface:#ffffff; --surface2:#f0f0f0;
    --text:#171717; --muted:#5c5c5c; --line:#d2d2d2; --mint:#292929;
    --theme-header:rgba(250,250,250,.94); --theme-hover:#e9e9e9;
    --theme-control:#808080; --theme-heading:#666666;
    --theme-action:#171717; --theme-action-ink:#ffffff; --theme-action-hover:#333333;
    --theme-error:#a83420; --theme-warning:#80560c;
  }
}
@media (prefers-color-scheme: dark) {
  :root { color-scheme: dark; }
}

body { background:var(--bg); color:var(--text); }
:focus-visible { outline:2px solid var(--mint); outline-offset:4px; }
input::placeholder,textarea::placeholder { color:var(--muted); opacity:1; }
.site-header { background:var(--theme-header); border-bottom-color:var(--line); }
.brand-frika,.footer-main h3,.menu-toggle,.hero-scroll span { color:var(--text); }
.brand-studio,.main-nav,.login-link,.shop-menu a { color:var(--muted); }
.main-nav>a:hover,.nav-shop>a:hover,.login-link:hover,.footer-bottom a:hover { color:var(--text); }
.shop-menu { background:var(--surface); box-shadow:0 15px 45px #00000020; }
.shop-menu a:hover { background:var(--theme-hover); color:var(--text); }
.main-nav>a,.nav-shop>a { border-bottom-color:var(--line); }
.menu-toggle span { background:var(--text); }
.cart-pill,.button-outline,.arrow-circle { border-color:var(--theme-control); }
.cart-pill b { background:var(--theme-action); color:var(--theme-action-ink); }
.button-light,.skip-link { background:var(--theme-action); color:var(--theme-action-ink); }
.button-light:hover { background:var(--theme-action-hover); }
.button-outline { background:transparent; color:var(--text); }
.button-outline:hover { background:var(--theme-hover); border-color:var(--mint); }
.project-card:hover .arrow-circle { background:var(--theme-action); color:var(--theme-action-ink); }

/* Neutral type hierarchy across visitor routes. Labels on artwork are scoped
   separately below so light mode never places dark labels on a dark photo. */
.hero-label,.hero-copy,.hero-scroll,.about-copy,.stats span,.quote-grid cite,
.section-heading>p,.service-card p,.project-meta p,.why-grid p,.process-grid p,.values-grid p,
.wizard-intro>p:last-child,.step-count,.muted,.wizard-label,.footer-brand p,
.footer-main>div:not(.footer-brand) a,.footer-main>div:not(.footer-brand) span,.footer-bottom,
.page-lead,.shop-hero p:not(.eyebrow),.category-description p,.shop-assurance,
.product-info p,.custom-callout>div:first-child>p:not(.eyebrow),.clothing-note p,
.formation-state>p:not(.eyebrow),.cart-state>p,.blog-empty>div:last-child>p:not(.eyebrow),
.about-page>div:last-child,.contact-details a,.contact-details p,.contact-form label,.form-note,
.legal-page,.selection-note,.clothing-empty>div:last-child>p:not(.eyebrow),
.clothing-intro>p,.clothing-price-note,.clothing-product-copy,.clothing-option legend b,
.clothing-feedback,.clothing-order-note,.clothing-showcase+.clothing-page .clothing-order-note,
.clothing-detail .clothing-back { color:var(--muted); }
.about-intro h2 span,.section-heading h2 span,.custom-callout h2 span,.about-page h2 span,
.blog-empty h2 span,.formation-state h2 span,.trust-section h2 span,.wizard-intro h2 span,
.page-hero h1 span,.shop-hero h1 span,.clothing-empty h2 span,.clothing-intro h2 span { color:var(--theme-heading); }
.text-link,.product-actions>a,.selection-items li>a,.shop-assurance a { color:var(--mint); }
.product-price { color:var(--text)!important; }
.remove-selection,.clothing-option { color:var(--text); }
.selection-status { color:var(--theme-error); }

/* No coloured washes behind content or controls. Real project/product images
   are intentionally not targeted, filtered, inverted, or desaturated. */
.page-hero,.shop-hero { background:var(--bg); }
.trust-section,.portfolio-preview,.process-section,.about-values,.site-footer { background:var(--surface2); border-color:var(--line); }
.quote-grid blockquote,.service-card,.category-card,.product-card,.clothing-note { background:var(--surface); color:var(--text); }
.service-card:hover,.category-card:hover { background:var(--theme-hover); border-color:var(--mint); }
.service-icon,.contact-icon,.accent-pill,.state-icon { border-color:var(--theme-control); }
.state-icon,.success-mark { background:var(--theme-hover); color:var(--text); }
.why-grid article,.process-grid article,.values-grid article { border-top-color:var(--theme-control); }
.contact-wizard,.custom-callout,.clothing-empty,.clothing-product { background:linear-gradient(135deg,var(--surface),var(--surface2)); }
.wizard-panel,.contact-form { background:var(--surface); }
.wizard-panel select,.wizard-panel input,.wizard-panel textarea,
.contact-form input,.contact-form select,.contact-form textarea,
.clothing-order-options select,.clothing-order-options input {
  background:var(--surface); color:var(--text); border-color:var(--theme-control);
}
.wizard-panel select:focus-visible,.wizard-panel input:focus-visible,.wizard-panel textarea:focus-visible,
.contact-form input:focus-visible,.contact-form select:focus-visible,.contact-form textarea:focus-visible,
.clothing-order-options select:focus-visible,.clothing-order-options input:focus-visible {
  outline:2px solid var(--mint); outline-offset:3px; border-color:var(--mint);
}
.clothing-order-options select:focus,.clothing-order-options input:focus { outline-color:var(--mint); }
.clothing-swatch.is-selected { border-color:var(--mint); outline:2px solid var(--theme-control); outline-offset:2px; }
.clothing-product:hover { border-color:var(--theme-control); }
.add-selection:disabled { color:var(--muted); border-color:var(--theme-control); }
.blog-post-card { background:var(--surface); border-color:var(--line); color:var(--text); }
.blog-post-excerpt,.blog-post-body { color:var(--muted); }
.blog-post-details summary { color:var(--theme-warning); }
.blog-art { background:linear-gradient(135deg,#242424,#101010); }
.blog-art span { color:#f5f5f5; text-shadow:none; }
.blog-art i,.orb-ring,.ring-two { border-color:var(--theme-control); }
.orb-core { background:linear-gradient(145deg,#f5f5f5,#9b9b9b); color:#171717; box-shadow:0 20px 80px #00000020; }
.orb-core span { color:#444444; }
.orb-dot { background:var(--mint); box-shadow:none; }
.category-visual,.category-clothing .category-visual,.clothing-empty-art { background:linear-gradient(135deg,#242424,#101010); }
.product-art-photo { background:var(--surface2); }
.project-art:after { border-color:#ffffff33; }
.project-caption,.project-index,.clothing-angle-hint span { color:#f5f5f5; }

/* Apparel rail: monochrome surrounding UI, unchanged fabric images and colour
   swatches. The rack's physical rail remains a neutral metallic detail. */
.clothing-showcase { background:linear-gradient(180deg,var(--bg),var(--surface2)); color:var(--text); }
.clothing-showcase-heading h1,.clothing-showcase .rack-featured h2,
.clothing-showcase .rack-caption b { color:var(--text); }
.clothing-showcase-heading h1 em { color:var(--theme-heading); }
.clothing-showcase-heading .clothing-eyebrow,.clothing-showcase-heading .clothing-intro,
.clothing-showcase-heading .clothing-eyebrow span,.rack-controls,.clothing-showcase .rack-caption small,
.clothing-showcase .rack-featured-label,#rack-featured-index,.clothing-showcase .clothing-order-note { color:var(--muted); }
.rack-controls>span i,.clothing-showcase .rack-caption small:before { background:var(--theme-control); }
.clothing-showcase .rack-item,.clothing-showcase .rack-item.is-active { background:var(--surface); color:var(--text); }
.clothing-showcase .rack-item:hover,.clothing-showcase .rack-item:focus-visible,.clothing-showcase .rack-item.is-active {
  background:var(--theme-hover); border-color:var(--theme-control); box-shadow:0 12px 28px #00000010;
}
.clothing-showcase .rack-item.is-away { background:transparent; }
.clothing-showcase .rack-item:focus-visible,.rack-arrows button:focus-visible { outline-color:var(--mint); }
.clothing-showcase .rack-featured { border-color:var(--line); }
.clothing-showcase .rack-featured .button { background:var(--theme-action); color:var(--theme-action-ink); border-color:var(--theme-action); }
.clothing-showcase .rack-featured .button:hover { background:var(--theme-action-hover); border-color:var(--theme-action-hover); }
.rack-arrows button { background:var(--surface); color:var(--text); border-color:var(--theme-control); }
.rack-arrows button:hover { background:var(--theme-hover); border-color:var(--mint); }
.clothing-showcase .clothing-rack { scrollbar-color:var(--theme-control) transparent; }
.clothing-showcase .clothing-rack::-webkit-scrollbar-thumb { background:var(--theme-control); }
.clothing-showcase .clothing-rack:before { background:linear-gradient(180deg,#e3e3e3,#818181 55%,#e9e9e9); }
@media (max-width:820px) {
  .main-nav { background:var(--surface); }
  .shop-menu { background:transparent; box-shadow:none; }
}
