/* Metal Furniture Hardware — shared core styles (design tokens + modules).
   The theme may override; these ensure correct rendering standalone.
   Aesthetic: industrial technical data sheet. Steel + muted brass accents. */
:root{
  --mfh-bg:#fbfbfa; --mfh-surface:#ffffff; --mfh-ink:#1d2125; --mfh-ink-2:#4a5258;
  --mfh-line:#e3e6e8; --mfh-line-2:#cfd4d7;
  --mfh-steel:#3a566e; --mfh-steel-d:#2a3f52; --mfh-brass:#9a7b3f; --mfh-green:#3f6b50;
  --mfh-radius:6px; --mfh-shadow:0 1px 2px rgba(20,30,40,.06),0 8px 24px rgba(20,30,40,.05);
  --mfh-font:"Söhne","Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  --mfh-mono:"IBM Plex Mono",ui-monospace,"SF Mono",Menlo,monospace;
}
.mfh-main{max-width:1200px;margin:0 auto;padding:24px 20px 64px}
.mfh-breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0 0 16px;font-size:13px;color:var(--mfh-ink-2)}
.mfh-breadcrumbs li:not(:last-child)::after{content:"›";margin-left:6px;color:var(--mfh-line-2)}
.mfh-breadcrumbs a{color:var(--mfh-steel);text-decoration:none}
.mfh-breadcrumbs a:hover{text-decoration:underline}

.mfh-hero,.mfh-pagehead{margin-bottom:28px}
.mfh-hero h1,.mfh-pagehead h1{font-size:clamp(26px,3.4vw,40px);line-height:1.12;letter-spacing:-.01em;margin:0 0 12px;color:var(--mfh-ink)}
.mfh-lede,.mfh-answer{font-size:17px;line-height:1.6;color:var(--mfh-ink-2);max-width:62ch}
.mfh-answer{background:var(--mfh-surface);border:1px solid var(--mfh-line);border-left:3px solid var(--mfh-brass);border-radius:var(--mfh-radius);padding:14px 16px}

/* layout with floating rails */
.mfh-layout{display:grid;grid-template-columns:220px minmax(0,1fr) 240px;gap:32px;align-items:start}
@media(max-width:1080px){.mfh-layout{grid-template-columns:1fr}.mfh-toc,.mfh-rail{display:none}}
.mfh-article{min-width:0}
.mfh-article h2{font-size:22px;margin:34px 0 12px;padding-top:6px;letter-spacing:-.01em;scroll-margin-top:90px}
.mfh-article p{line-height:1.65;color:var(--mfh-ink-2)}

.mfh-toc,.mfh-rail{position:sticky;top:88px;align-self:start;font-size:14px}
.mfh-toc__title,.mfh-rail__title{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--mfh-ink-2);font-weight:600;margin-bottom:10px}
.mfh-toc__nav a{display:block;padding:4px 0 4px 10px;border-left:2px solid var(--mfh-line);color:var(--mfh-ink-2);text-decoration:none;line-height:1.35}
.mfh-toc__nav a:hover,.mfh-toc__nav a.is-active{border-left-color:var(--mfh-brass);color:var(--mfh-ink)}
.mfh-rail ul{list-style:none;margin:0;padding:0}
.mfh-rail li{margin-bottom:6px}
.mfh-rail a{color:var(--mfh-steel);text-decoration:none}
.mfh-rail a:hover{text-decoration:underline}

/* grids + cards */
.mfh-grid{display:grid;gap:12px;margin:16px 0}
.mfh-grid--cats,.mfh-grid--types{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.mfh-card{display:flex;flex-direction:column;gap:4px;background:var(--mfh-surface);border:1px solid var(--mfh-line);border-radius:var(--mfh-radius);padding:14px 16px;text-decoration:none;color:var(--mfh-ink);transition:border-color .15s,box-shadow .15s,transform .15s}
.mfh-card:hover{border-color:var(--mfh-steel);box-shadow:var(--mfh-shadow);transform:translateY(-1px)}
.mfh-card__name{font-weight:600;line-height:1.25}
.mfh-card__meta{font-size:12px;color:var(--mfh-ink-2)}
.mfh-grid--apps{display:flex;flex-wrap:wrap;gap:8px}
.mfh-chip{display:inline-block;background:var(--mfh-surface);border:1px solid var(--mfh-line);border-radius:100px;padding:7px 14px;font-size:14px;color:var(--mfh-steel);text-decoration:none}
.mfh-chip:hover{border-color:var(--mfh-steel);color:var(--mfh-ink)}

/* related lists */
.mfh-related{margin:20px 0}
.mfh-related__title{font-size:18px;margin:0 0 10px}
.mfh-related__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.mfh-related--inline .mfh-related__list a{display:inline-block;border:1px solid var(--mfh-line);border-radius:4px;padding:5px 11px;font-size:14px;color:var(--mfh-steel);text-decoration:none}
.mfh-related--inline .mfh-related__list a:hover{border-color:var(--mfh-steel)}

/* spec table */
.mfh-spec{width:100%;border-collapse:collapse;margin:14px 0;font-size:14px}
.mfh-spec th,.mfh-spec td{text-align:left;padding:9px 12px;border:1px solid var(--mfh-line)}
.mfh-spec th{background:#f2f4f5;width:40%;font-weight:600;color:var(--mfh-ink)}

/* buttons + CTA */
.mfh-btn{display:inline-block;font-weight:600;font-size:15px;padding:11px 22px;border-radius:var(--mfh-radius);text-decoration:none;cursor:pointer;border:1px solid transparent;transition:background .15s,transform .1s}
.mfh-btn--primary{background:var(--mfh-steel);color:#fff}
.mfh-btn--primary:hover{background:var(--mfh-steel-d)}
.mfh-btn:active{transform:translateY(1px)}
.mfh-cta{margin-top:8px}
.mfh-ctaband{margin:36px 0 0;background:linear-gradient(180deg,#f4f6f7,#eef1f2);border:1px solid var(--mfh-line);border-radius:var(--mfh-radius);padding:24px}
.mfh-ctaband h2{margin-top:0}

/* inquiry form */
.mfh-inquiry{background:var(--mfh-surface);border:1px solid var(--mfh-line);border-radius:var(--mfh-radius);padding:28px;max-width:760px;margin:24px auto;box-shadow:var(--mfh-shadow)}
.mfh-inquiry__title{margin:0 0 6px;font-size:24px}
.mfh-inquiry__intro{color:var(--mfh-ink-2);margin:0 0 20px}
.mfh-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:560px){.mfh-form__grid{grid-template-columns:1fr}}
.mfh-field{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}
.mfh-field--full{grid-column:1/-1}
.mfh-field__label{font-size:13px;font-weight:600;color:var(--mfh-ink)}
.mfh-field__label em{color:#b4453a;font-style:normal}
.mfh-field input,.mfh-field textarea{font:inherit;font-size:15px;padding:10px 12px;border:1px solid var(--mfh-line-2);border-radius:5px;background:#fff;color:var(--mfh-ink)}
.mfh-field input:focus,.mfh-field textarea:focus{outline:2px solid var(--mfh-steel);outline-offset:1px;border-color:var(--mfh-steel)}
.mfh-consent{display:flex;gap:8px;align-items:flex-start;font-size:14px;color:var(--mfh-ink-2);margin:8px 0 18px}
.mfh-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.mfh-notice{padding:11px 14px;border-radius:5px;margin-bottom:16px;font-size:14px}
.mfh-notice--ok{background:#e7f3ec;color:#235c3b;border:1px solid #bfe0cd}
.mfh-notice--err{background:#fbeceb;color:#8a322b;border:1px solid #efc7c3}

/* mobile floating dropdowns */
.mfh-floats{display:none}
@media(max-width:1080px){
  .mfh-floats{display:flex;gap:8px;position:fixed;right:14px;bottom:14px;z-index:40}
  .mfh-floats__btn{background:var(--mfh-steel);color:#fff;border:none;border-radius:100px;padding:10px 16px;font-size:13px;font-weight:600;box-shadow:var(--mfh-shadow)}
}
