@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&family=JetBrains+Mono:wght@400;700&display=swap";:root{--color-ink:#1a1915;--color-ink-soft:#2c2b25;--color-ink-muted:#54524a;--color-ink-faint:#6b685f;--color-ink-hairline:#cfcac0;--color-ink-hairline-soft:#ddd8ce;--color-ink-wash:#eeebe3;--color-surface-sheet:#fefdfb;--color-surface-desk:#faf8f3;--color-surface-band:#f1efe9;--color-surface-sink:#f4f2ec;--color-surface-inset:#f0ede4;--color-plate:#f2f0e9;--color-plate-hover:#eae7de;--color-pine:#1a1915;--color-pine-raised:#2c2b25;--color-pine-line:#3a382f;--color-primary:#0f6f9c;--color-primary-deep:#0b5c84;--color-primary-on-dark:#7fc4e0;--color-signal:#c93d20;--color-signal-bright:#f04e2e;--color-signal-deep:#b8341a;--color-signal-cta:#c25138;--color-status-machine-ink:#7a5a1a;--color-status-machine-bg:#faf0d8;--color-status-enriched-ink:#0b5c84;--color-status-enriched-bg:#e7f0f6;--color-status-validated-ink:#3f6b4a;--color-status-validated-bg:#eaf3ea;--color-status-caution-ink:#7d5a26;--color-status-caution-bg:#faf0da;--color-danger:#b42318;--font-display:"Manrope", sans-serif;--font-body:"DM Sans", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--font-size-display-xl:6.6rem;--font-size-display-lg:3.8rem;--font-size-display-md:2.4rem;--font-size-title-lg:22px;--font-size-title-md:16px;--font-size-body-md:16px;--font-size-body-lede:17px;--font-size-body-sm:13px;--font-size-caption-caps:10px;--font-size-label-mono:10px;--font-size-label-mono-sm:9px;--font-size-data-mono:12px;--font-size-data-input:16px;--tracking-display-xl:-.065em;--tracking-display-lg:-.045em;--tracking-display-md:-.03em;--tracking-caps:.1em;--tracking-mono:.05em;--radius-none:0px;--radius-sm:4px;--radius-md:8px;--space-xxs:4px;--space-xs:7px;--space-sm:12px;--space-md:18px;--space-lg:24px;--space-xl:40px;--space-xxl:56px;--space-section:96px;--space-gutter:48px;--measure:1180px;--masthead-h:72px;--cast-signal:8px 8px 0 var(--color-signal-bright);--cast-pine:9px 9px 0 var(--color-pine);--rail-active:inset 4px 0 var(--color-signal-bright);--rail-hover:inset 0 0 0 2px var(--color-primary);--lift-modal:0 28px 100px #00000080}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;font-family:var(--font-body);font-size:var(--font-size-body-md);color:var(--color-ink-soft);background:var(--color-surface-desk);font-synthesis:none;-webkit-font-smoothing:antialiased;margin:0;line-height:1.65}h1,h2,h3{font-family:var(--font-display);color:var(--color-ink);margin:0}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border-radius:var(--radius-none)}a{color:var(--color-primary-deep)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.hero-inner,.section,.site-header,footer{width:min(var(--measure), calc(100% - var(--space-gutter)));margin-inline:auto}.eyebrow{margin:0 0 var(--space-md);font-family:var(--font-body);font-size:var(--font-size-caption-caps);letter-spacing:.18em;text-transform:uppercase;color:var(--color-ink-muted);font-weight:700}.eyebrow span{vertical-align:middle;width:22px;height:1px;margin-right:var(--space-xs);background:currentColor;display:inline-block}.eyebrow.dark{color:var(--color-signal)}.eyebrow.on-dark{color:var(--color-primary-on-dark)}button,.btn{border-radius:var(--radius-none);border:0}.input-row button,.compare-actions button,.rfq-buttons button.primary,.rfq-buttons a.primary{background:var(--color-signal-cta);color:var(--color-surface-sheet);font-family:var(--font-display);font-size:var(--font-size-title-md);padding:14px var(--space-lg);font-weight:700;text-decoration:none}.input-row button:hover:not(:disabled),.compare-actions button:hover,.rfq-buttons button.primary:hover,.rfq-buttons a.primary:hover{background:var(--color-signal-deep)}.input-row button{min-width:185px;padding:0 var(--space-lg)}.input-row button:disabled{opacity:.45;cursor:not-allowed}.card-actions button{border:1px solid var(--color-ink-hairline);color:var(--color-ink-soft);background:0 0}.card-actions button:hover{background:var(--color-plate-hover);color:var(--color-ink)}.card-actions .rfq-action{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-surface-sheet)}.card-actions .rfq-action:hover{background:var(--color-primary-deep);border-color:var(--color-primary-deep)}.card-actions button.chosen{background:var(--color-status-validated-bg);border-color:var(--color-status-validated-ink);color:var(--color-status-validated-ink)}.tags span,.chip{background:var(--color-ink-wash);color:var(--color-pine-line);border-radius:var(--radius-none);font-size:var(--font-size-caption-caps);padding:5px 8px;font-weight:600}.status-pill,.source-status,.fit-score{border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--font-size-label-mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase;padding:5px 8px;font-weight:700}.source-status{color:var(--color-status-machine-ink);background:var(--color-status-machine-bg);text-decoration:none}.source-status.enriched{color:var(--color-status-enriched-ink);background:var(--color-status-enriched-bg)}.source-status.verified{color:var(--color-status-validated-ink);background:var(--color-status-validated-bg)}.fit-score{color:var(--color-ink-soft);background:var(--color-plate)}.fit-score.full{color:var(--color-status-validated-ink);background:var(--color-status-validated-bg)}.fit-score.unevaluated{color:var(--color-ink-faint);border:1px solid var(--color-ink-hairline-soft);background:0 0}.site-header{height:var(--masthead-h);z-index:20;background:var(--color-surface-band);background:color-mix(in srgb, var(--color-surface-band) 96%, #fff0);border-bottom:1px solid var(--color-ink-hairline);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.brand{gap:var(--space-sm);color:inherit;align-items:center;text-decoration:none;display:flex}.brand-mark{border-radius:var(--radius-none);background:var(--color-surface-sheet);border:1px solid var(--color-ink-hairline);place-items:center;width:38px;height:38px;display:grid}.brand-mark .gear{font-size:19px;line-height:1;animation:14s linear infinite gear-spin;display:inline-block}.brand:hover .brand-mark .gear{animation-duration:2.5s}@keyframes gear-spin{to{transform:rotate(360deg)}}.brand strong,.brand small{display:block}.brand strong{font-family:var(--font-display);color:var(--color-ink);font-size:14px;font-weight:700}.brand small{color:var(--color-ink-faint);font-size:var(--font-size-label-mono-sm);font-family:var(--font-mono);letter-spacing:.13em;text-transform:uppercase;margin-top:3px}nav{align-items:center;gap:var(--space-xl);display:flex}nav a{color:var(--color-ink-muted);font-size:var(--font-size-body-sm);font-weight:600;text-decoration:none}nav a:hover{color:var(--color-ink)}.list-company{border:1px solid var(--color-ink-hairline);background:var(--color-surface-sheet);color:var(--color-ink-soft);font-size:var(--font-size-caption-caps);text-transform:uppercase;letter-spacing:var(--tracking-caps);padding:8px 12px;font-weight:800;text-decoration:none}.list-company:hover{border-color:var(--color-signal);color:var(--color-signal)}.compare-nav{background:var(--color-signal);color:var(--color-surface-sheet);padding:8px var(--space-sm);font-size:11px;font-weight:800}.hero{background:var(--color-surface-band);color:var(--color-ink);border-bottom:1px solid var(--color-ink-hairline);position:relative;overflow:hidden}.grid-glow{pointer-events:none;background-image:radial-gradient(circle at 77% 18%,#0b91c412,#0000 28%),linear-gradient(#173f351f 1px,#0000 1px),linear-gradient(90deg,#173f351f 1px,#0000 1px);background-size:auto,34px 34px,34px 34px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 20%,#0000 90%);mask-image:linear-gradient(#000 20%,#0000 90%)}.hero-inner{padding:68px 0 var(--space-xl);gap:var(--space-lg) 60px;grid-template-columns:1fr 260px;display:grid;position:relative}.hero h1 em{color:var(--color-signal);font-style:normal}.hero h1{max-width:800px;font-size:clamp(3.2rem, 7.3vw, var(--font-size-display-xl));letter-spacing:var(--tracking-display-xl);font-weight:800;line-height:.88}.proc{text-align:center;place-self:center}.proc-stage{background:var(--color-surface-sheet);border:1px solid var(--color-ink-hairline);width:200px;height:150px;box-shadow:var(--cast-signal)}.proc-svg{width:200px;height:150px;display:block;overflow:visible}.proc p{font-family:var(--font-mono);font-size:var(--font-size-label-mono-sm);color:var(--color-ink-muted);letter-spacing:var(--tracking-mono);text-transform:uppercase;margin-top:var(--space-md);font-weight:700}.proc-stage .proc-read-label{fill:var(--color-primary-on-dark);font-family:var(--font-mono);text-anchor:middle;letter-spacing:.1em;font-size:11px;font-weight:700}.proc-stage .proc-readout{fill:var(--color-ink);font-family:var(--font-mono);font-size:12px;font-weight:700}.proc-stage .proc-sparks rect,.proc-stage .proc-mist rect{fill:var(--color-signal)}.proc-stage .job,.proc-stage .proc-read,.proc-stage .proc-ring{visibility:hidden}[data-activity=forge] .job-forge,[data-activity=weld] .job-weld,[data-activity=print] .job-print,[data-activity=cut] .job-cut,[data-activity=measure] .job-measure,[data-activity=paint] .job-paint,[data-activity=idle] .proc-idle,[data-activity=reading] .proc-read{visibility:visible}[data-activity=reading] .proc-ring{visibility:visible;transform-origin:100px 75px;animation:9s linear infinite proc-spin}@keyframes proc-spin{to{transform:rotate(360deg)}}.proc-stage .proc-ring{fill:none;stroke:var(--color-primary-deep);stroke-opacity:.45;stroke-width:1.5px;stroke-dasharray:4 4}.proc-stage .proc-tick{animation:2.6s ease-in-out infinite proc-tick}@keyframes proc-tick{0%,to{transform:translate(-30px)}50%{transform:translate(30px)}}[data-activity=forge] .job-hammer{transform-origin:146px 109.5px;animation:1s infinite proc-strike}@keyframes proc-strike{0%{animation-timing-function:cubic-bezier(.3,.1,.6,1);transform:rotate(0)}18%{animation-timing-function:ease-in;transform:rotate(60deg)}30%{animation-timing-function:cubic-bezier(.5,0,1,.6);transform:rotate(60deg)}58%{animation-timing-function:step-end;transform:rotate(0)}72%{animation-timing-function:ease-out;transform:rotate(0)}to{transform:rotate(0)}}[data-activity=forge] .proc-billet{animation:1s infinite proc-flare}@keyframes proc-flare{0%,54%{fill:var(--color-signal)}58%,84%{fill:var(--color-signal-bright)}to{fill:var(--color-signal)}}[data-activity=forge] .job-forge .proc-sparks rect{opacity:0;animation:1s infinite proc-spark}@keyframes proc-spark{0%,56%{opacity:0;transform:translate(0)}60%{opacity:1}to{opacity:0;transform:translate(4px,-16px)}}[data-activity=forge] .job-forge .proc-sparks rect:nth-child(2){animation-delay:40ms}[data-activity=forge] .job-forge .proc-sparks rect:nth-child(3){animation-delay:80ms}[data-activity=forge] .job-forge .proc-sparks rect:nth-child(4){animation-delay:.12s}[data-activity=forge] .job-forge .proc-sparks rect:nth-child(5){animation-delay:.16s}[data-activity=weld] .job-weld .proc-sparks rect{opacity:0;animation:.6s linear infinite proc-spark-weld}[data-activity=weld] .job-weld .proc-sparks rect:nth-child(2n){animation-delay:.15s}[data-activity=weld] .job-weld .proc-sparks rect:nth-child(3n){animation-delay:.3s}@keyframes proc-spark-weld{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-12px)}}[data-activity=weld] .proc-arc{animation:.26s steps(2,end) infinite proc-arc}@keyframes proc-arc{0%{opacity:1}to{opacity:.12}}[data-activity=weld] .proc-seam{animation:1s infinite proc-flare}[data-activity=print] .proc-grow{transform-origin:99px 120px;animation:3.2s linear infinite proc-grow}@keyframes proc-grow{0%{transform:scaleY(.15)}80%{animation-timing-function:step-end;transform:scaleY(1)}to{transform:scaleY(.15)}}[data-activity=print] .proc-extrude{animation:1.6s ease-in-out infinite alternate proc-extrude}@keyframes proc-extrude{0%{opacity:.55}to{opacity:1}}[data-activity=print] .proc-head{animation:1.6s ease-in-out infinite alternate proc-print-head}@keyframes proc-print-head{0%{transform:translate(-4px)}to{transform:translate(5px)}}[data-activity=print] .proc-extrude{transform-origin:99px 120px;animation:3.2s linear infinite proc-grow,.35s ease-in-out infinite alternate proc-extrude}[data-activity=cut] .proc-head{animation:1.2s ease-in-out infinite alternate proc-hover}[data-activity=cut] .proc-beam{animation:.18s steps(2,end) infinite proc-beam}@keyframes proc-beam{0%{opacity:1}to{opacity:.2}}[data-activity=cut] .proc-kerf{animation:.8s infinite proc-flare}[data-activity=measure] .proc-tip{animation:1.4s ease-in-out infinite proc-probe}@keyframes proc-probe{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}[data-activity=paint] .proc-mist rect{opacity:0;animation:1.2s linear infinite proc-mist}[data-activity=paint] .proc-mist rect:nth-child(2n){animation-delay:.4s}[data-activity=paint] .proc-mist rect:nth-child(3n){animation-delay:.8s}@keyframes proc-mist{0%{opacity:.9;transform:translate(0)}to{opacity:0;transform:translate(-8px,10px)}}.brief-panel{background:var(--color-surface-sheet);border:1px solid var(--color-pine-line);border-radius:var(--radius-none);padding:var(--space-xs);box-shadow:var(--cast-pine);grid-column:1/-1}.input-row{gap:var(--space-xs);display:flex}.input-row button{margin:1px var(--space-xs) 1px 0}.input-row textarea{resize:none;background:var(--color-surface-sheet);min-height:86px;color:var(--color-ink);padding:var(--space-md);font-family:var(--font-mono);font-size:var(--font-size-data-input);border:0;outline:0;flex:1;line-height:1.5}.input-shell{flex:1;display:flex;position:relative}.input-shell textarea{flex:1}.ghost-overlay{padding:var(--space-md);pointer-events:none;font-family:var(--font-mono);font-size:var(--font-size-data-input);color:var(--color-ink-faint);white-space:pre-wrap;line-height:1.5;position:absolute;inset:0;overflow:hidden}.ghost-caret{width:1ch;color:var(--color-signal);animation:1s steps(2,end) infinite ghost-blink;display:inline-block}@keyframes ghost-blink{0%{opacity:1}to{opacity:0}}.error{color:var(--color-danger);font-size:var(--font-size-body-sm);padding:0 var(--space-md)}.details{border-top:1px solid var(--color-ink-hairline-soft);gap:var(--space-sm);padding:var(--space-md) var(--space-sm) var(--space-xs);grid-template-columns:repeat(3,1fr);display:grid}.details label{font-size:var(--font-size-caption-caps);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--color-ink-faint);font-weight:700}.details input,.details select{border:1px solid var(--color-ink-hairline);border-radius:var(--radius-none);width:100%;color:var(--color-ink);background:var(--color-surface-sheet);font-family:var(--font-mono);font-size:var(--font-size-data-mono);letter-spacing:0;text-transform:none;margin-top:6px;padding:10px;display:block}.details .wide{grid-column:span 2}.examples{margin:var(--space-md) calc(var(--space-xs) + 1px) 0 1px;gap:var(--space-xs);flex-wrap:wrap;grid-column:1/-1;display:flex}.examples button{border:1px solid var(--color-ink-hairline);border-radius:var(--radius-none);background:var(--color-plate);color:var(--color-ink-muted);padding:7px 11px;font-size:11px}.examples button:hover{border-color:var(--color-signal);color:var(--color-ink)}.examples .details-toggle{color:var(--color-signal);background:0 0;border-color:#0000;margin-left:auto;font-weight:700}.examples .details-toggle:hover{border-color:var(--color-ink-hairline);background:var(--color-plate)}.proof{border-top:1px solid var(--color-pine-line);grid-column:1/-1;grid-template-columns:repeat(4,1fr);padding-top:25px;display:grid}.proof span{color:var(--color-ink-faint);font-size:var(--font-size-caption-caps);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:var(--tracking-mono)}.proof strong{margin-bottom:var(--space-xxs);color:var(--color-pine-line);font-family:var(--font-display);font-size:14px;display:block}.proc-label{text-align:center;font-family:var(--font-mono);font-size:var(--font-size-label-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--color-ink-muted);margin:0;font-weight:700}.section{padding:var(--space-section) 0;position:relative}.section-heading{justify-content:space-between;align-items:end;gap:var(--space-xl);margin-bottom:var(--space-xl);display:flex}.section-heading h2{font-size:clamp(2.2rem, 4vw, var(--font-size-display-lg));letter-spacing:var(--tracking-display-lg);color:var(--color-ink)}.section-heading>p{max-width:470px;color:var(--color-ink-muted);line-height:1.65;font-size:var(--font-size-body-sm);margin:0}.browse{border-bottom:1px solid var(--color-ink-hairline)}.discovery-heading{align-items:center;margin-bottom:30px}.discovery-toggle{border:1px solid var(--color-ink-hairline);background:var(--color-ink-wash);padding:3px;display:flex}.discovery-toggle button{color:var(--color-ink-muted);font-size:var(--font-size-caption-caps);text-transform:uppercase;letter-spacing:.07em;background:0 0;border:0;padding:9px 14px;font-weight:800}.discovery-toggle button.active{color:var(--color-surface-sheet);background:var(--color-ink)}.discovery-grid{border:1px solid var(--color-ink-hairline);border-radius:var(--radius-none);grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.discovery-grid button{border:0;border-right:1px solid var(--color-ink-hairline);border-bottom:1px solid var(--color-ink-hairline);background:var(--color-plate);min-height:142px;color:var(--color-pine-line);padding:var(--space-lg);text-align:left;flex-direction:column;align-items:flex-start;transition:background .15s;display:flex}.discovery-grid button:nth-child(2n){border-right:0}.discovery-grid button:nth-last-child(-n+2){border-bottom:0}.discovery-grid button:hover{background:var(--color-plate-hover)}.discovery-grid button.active{background:var(--color-plate-hover);box-shadow:var(--rail-active)}.discovery-grid small{color:var(--color-ink-faint);font-family:var(--font-mono);font-size:var(--font-size-label-mono-sm);letter-spacing:var(--tracking-mono);font-weight:700}.discovery-grid strong{font-family:var(--font-display);letter-spacing:-.025em;margin-top:13px;font-size:clamp(16px,2vw,22px);font-weight:700}.discovery-grid span{color:var(--color-signal);margin-top:auto;font-size:11px;font-weight:700}.matches{padding-top:90px}.supplier-grid{background:var(--color-ink-hairline);border:1px solid var(--color-ink-hairline);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.supplier-card{background:var(--color-surface-sheet);border-radius:var(--radius-none);border:0;flex-direction:column;min-height:390px;padding:22px;transition:box-shadow .15s;display:flex}.supplier-card:hover{box-shadow:var(--rail-hover)}.card-top{justify-content:space-between;align-items:center;gap:var(--space-xs);font-family:var(--font-mono);font-size:var(--font-size-label-mono);color:var(--color-ink-faint);font-weight:700;display:flex}.supplier-card h3{font-size:var(--font-size-title-lg);margin-top:var(--space-lg)}.location{color:var(--color-ink-faint);font-size:var(--font-size-body-sm);margin:6px 0 var(--space-md)}.tags{flex-wrap:wrap;gap:5px;display:flex}.compare-check{cursor:pointer;font-size:var(--font-size-body-sm);color:var(--color-ink-muted);white-space:nowrap;flex:none;align-items:center;gap:6px;font-weight:500;display:inline-flex}.compare-check input{opacity:0;width:0;height:0;position:absolute}.compare-check span{border:1px solid var(--color-ink-hairline);background:var(--color-surface-sheet);width:16px;height:16px;display:inline-block;position:relative}.compare-check input:checked+span{background:var(--color-primary);border-color:var(--color-primary)}.compare-check input:checked+span:after{content:"✓";color:var(--color-surface-sheet);place-items:center;font-size:11px;font-weight:800;line-height:1;display:grid;position:absolute;inset:0}.compare-check input:focus-visible+span{outline:2px solid var(--color-primary);outline-offset:2px}.match-checks{margin:2px 0 var(--space-sm);flex-direction:column;gap:4px;display:flex}.check-item{grid-template-columns:14px auto 1fr;align-items:baseline;gap:0 6px;min-width:0;display:grid}.check-item>.check-glyph{color:var(--color-status-validated-ink);grid-column:1;font-size:11px;font-weight:800}.check-item b{font-family:var(--font-mono);font-size:var(--font-size-label-mono-sm);letter-spacing:.04em;text-transform:uppercase;color:var(--color-ink);white-space:nowrap;grid-column:2;font-weight:700}.check-value{min-width:0;font-family:var(--font-body);color:var(--color-ink-muted);overflow-wrap:anywhere;grid-column:3;font-size:12px;font-weight:500;line-height:1.45}.check-item.proof-inline-link{cursor:pointer;text-decoration:none}.check-item.proof-inline-link:hover .check-value{color:var(--color-primary-deep);text-underline-offset:2px;text-decoration:underline}.ai-reason{font-size:var(--font-size-body-sm);color:var(--color-ink-soft);background:var(--color-ink-wash);box-shadow:var(--rail-active);border-radius:var(--radius-none);padding:var(--space-xs) 10px;margin:6px 0 0;line-height:1.5}.capability{margin:var(--space-xs) 0 0;background:var(--color-surface-sink);border:1px solid var(--color-ink-hairline-soft);padding:var(--space-xs) 10px}.capability.cap-quiet{margin:var(--space-xs) 0 0;background:0 0;border:0;padding:0}.cap-line{color:var(--color-ink-soft);gap:7px;margin:2px 0 0;font-size:11px;line-height:1.4;display:flex}.cap-key{width:62px;font-family:var(--font-mono);color:var(--color-primary);letter-spacing:.04em;text-transform:uppercase;flex:none;padding-top:2px;font-size:8.5px;font-weight:800}.cap-group-head{color:var(--color-ink);font-weight:700}.cap-detail{color:var(--color-ink-muted);padding-left:69px}.cap-expand{color:var(--color-primary-deep);font-size:var(--font-size-caption-caps);text-transform:uppercase;letter-spacing:var(--tracking-caps);background:0 0;border:0;padding:4px 0 0;font-weight:800}.cap-expand:hover{text-decoration:underline}.certs{color:var(--color-ink-faint);font-family:var(--font-mono);font-size:var(--font-size-caption-caps);margin-top:auto}.card-actions{margin-top:var(--space-md);align-items:center;gap:8px;display:flex}.card-actions button{min-height:42px;padding:var(--space-xs);flex:1;font-size:11px;font-weight:700}.card-actions .profile-action{border:1px solid var(--color-ink-hairline);color:var(--color-ink-soft);background:0 0}.card-actions .profile-action:hover{background:var(--color-plate-hover);color:var(--color-ink)}.claim-link{color:var(--color-signal);font-size:var(--font-size-caption-caps);order:2;margin-top:10px;font-weight:700;text-decoration:none}.claim-link:hover{text-decoration:underline}.empty{text-align:center;border:1px dashed var(--color-ink-hairline);color:var(--color-ink-faint);background:var(--color-surface-sheet);grid-column:1/-1;padding:50px}.result-note{text-align:center;color:var(--color-ink-faint);font-size:var(--font-size-body-sm);margin-top:var(--space-xl)}.facet-bar{align-items:center;gap:var(--space-sm) var(--space-md);margin:calc(-1 * var(--space-md)) 0 var(--space-lg);flex-wrap:wrap;display:flex}.facet-group{flex-wrap:wrap;gap:5px;display:flex}.facet-group button{border:1px solid var(--color-ink-hairline);background:var(--color-plate);color:var(--color-ink-muted);padding:5px 9px;font-size:11px;font-weight:600}.facet-group button small{font-family:var(--font-mono);color:var(--color-ink-faint);margin-left:4px;font-weight:700}.facet-group button:hover{border-color:var(--color-signal);color:var(--color-ink)}.facet-group button.active{background:var(--color-ink);border-color:var(--color-ink);color:var(--color-surface-sheet)}.facet-group button.active small{color:var(--color-primary-on-dark)}.facet-clear{color:var(--color-signal);font-size:var(--font-size-caption-caps);text-transform:uppercase;letter-spacing:var(--tracking-caps);background:0 0;border:0;padding:5px 0;font-weight:800}.facet-clear:hover{text-decoration:underline}.modal-backdrop{z-index:100;padding:var(--space-md);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#06110ddb;place-items:center;display:grid;position:fixed;inset:0}.compare-modal,.rfq-modal{width:min(var(--measure),100%);background:var(--color-surface-sheet);border:1px solid var(--color-ink-hairline);max-height:92vh;box-shadow:var(--lift-modal);position:relative;overflow:hidden}.dossier{margin:var(--space-md) 0 0}.dossier-row{gap:var(--space-sm);padding:var(--space-xs) 0;border-top:1px solid var(--color-ink-hairline-soft);grid-template-columns:130px 1fr;display:grid}.dossier dt{font-family:var(--font-mono);font-size:var(--font-size-label-mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--color-ink-faint);padding-top:2px;font-weight:800}.dossier dd{font-size:var(--font-size-body-sm);color:var(--color-ink-soft);margin:0;line-height:1.55}.dossier dd a{color:var(--color-primary-deep);text-decoration:none}.dossier dd a:hover{text-decoration:underline}.modal-toolbar{padding:var(--space-md) var(--space-lg);background:var(--color-surface-sheet);color:var(--color-ink);border-bottom:1px solid var(--color-ink-hairline);justify-content:space-between;align-items:flex-start;display:flex}.modal-toolbar h2,.rfq-modal h2{font-size:clamp(1.5rem, 3vw, var(--font-size-display-md));letter-spacing:var(--tracking-display-md)}.modal-toolbar .eyebrow{color:var(--color-signal);margin-bottom:var(--space-sm)}.close{color:inherit;background:0 0;border:0;padding:0 4px;font-size:34px;line-height:1}.compare-modal{flex-direction:column;display:flex}.compare-modal .modal-toolbar{flex:none}.compare-scroll{min-height:0;padding-bottom:var(--space-md);flex:auto;overflow:auto}.compare-table tr:last-child th,.compare-table tr:last-child td{border-bottom:0}.compare-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:860px;color:var(--color-ink-soft)}.compare-table th,.compare-table td{border-right:1px solid var(--color-ink-hairline-soft);border-bottom:1px solid var(--color-ink-hairline-soft);padding:var(--space-md) var(--space-lg);text-align:left;vertical-align:top;font-size:var(--font-size-body-sm);overflow-wrap:anywhere;line-height:1.55}.compare-table thead th{background:var(--color-surface-sheet);border-bottom:1px solid var(--color-ink-hairline);color:var(--color-ink);font-family:var(--font-display);font-size:var(--font-size-title-md);font-weight:700;line-height:1.25}.compare-table thead th:first-child,.compare-table tbody th{width:175px}.compare-table thead th small{color:var(--color-ink-faint);font-family:var(--font-mono);font-size:var(--font-size-label-mono);letter-spacing:var(--tracking-mono);text-transform:uppercase;margin-bottom:var(--space-xxs);white-space:nowrap;text-overflow:ellipsis;font-weight:700;display:block;overflow:hidden}.compare-table thead th button{margin-top:var(--space-sm);color:var(--color-primary-deep);font-family:var(--font-body);font-size:var(--font-size-caption-caps);text-transform:uppercase;letter-spacing:var(--tracking-caps);background:0 0;border:0;padding:0;font-weight:700;display:block}.compare-table thead th button:hover{text-decoration:underline}.compare-table tbody th{color:var(--color-ink-faint);font-family:var(--font-mono);font-size:var(--font-size-label-mono);text-transform:uppercase;letter-spacing:var(--tracking-mono);font-weight:700}.compare-table tbody th small{font-family:var(--font-mono);font-size:var(--font-size-label-mono);letter-spacing:0;text-transform:none;color:var(--color-ink-muted);margin-top:3px;font-weight:400;display:block}.compare-table .requirement-head{background:var(--color-surface-desk);border-top:3px solid var(--color-signal-bright)}.compare-table .requirement-head small{color:var(--color-status-validated-ink)}.compare-table tbody td:nth-child(2){background:var(--color-surface-inset);color:var(--color-ink);font-weight:600}.compare-table td.match{color:var(--color-status-validated-ink);background:var(--color-status-validated-bg)}.compare-table a{color:var(--color-primary-deep);border-bottom:1px solid var(--color-ink-hairline);text-decoration:none}.compare-table a:hover{border-bottom-color:var(--color-primary-deep)}.compare-actions button{padding:10px 12px}.rfq-modal{width:min(720px,100%);padding:var(--space-xxl) var(--space-xl)}.rfq-modal>.close{right:var(--space-lg);color:var(--color-pine-raised);position:absolute;top:15px}.rfq-note{color:var(--color-ink-faint);line-height:1.6;font-size:var(--font-size-body-sm)}.rfq-modal textarea{resize:vertical;border:1px solid var(--color-ink-hairline);background:var(--color-surface-sheet);width:100%;min-height:250px;padding:var(--space-md);color:var(--color-ink-soft);line-height:1.6;font-family:var(--font-mono)}.rfq-engine{justify-content:space-between;align-items:center;gap:var(--space-sm);margin-top:var(--space-sm);font-family:var(--font-mono);font-size:var(--font-size-label-mono);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--color-ink-faint);font-weight:700;display:flex}.rfq-engine .regen{color:var(--color-primary-deep);font:inherit;letter-spacing:inherit;text-transform:inherit;background:0 0;border:none;padding:0}.rfq-engine .regen:hover:not(:disabled){text-decoration:underline}.rfq-engine .regen:disabled{opacity:.5;cursor:default}.rfq-buttons{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.rfq-buttons a{border:1px solid var(--color-pine-line);padding:12px var(--space-md);color:var(--color-pine-line);font-size:var(--font-size-body-sm);font-weight:800;text-decoration:none}.rfq-buttons a.primary{border-color:var(--color-pine)}.copy-hint{font-size:var(--font-size-body-sm);color:var(--color-status-validated-ink);background:var(--color-status-validated-bg);margin:10px 0 0;padding:8px 10px}.source-warning{font-size:var(--font-size-caption-caps);color:var(--color-status-caution-ink);background:var(--color-status-caution-bg);margin:14px 0 0;padding:10px}.compare-dock{z-index:40;bottom:var(--space-lg);background:var(--color-pine-raised);width:min(680px,100% - 28px);color:var(--color-surface-sheet);border:1px solid var(--color-pine-line);padding:var(--space-sm) 14px;box-shadow:var(--cast-signal);justify-content:space-between;align-items:center;display:flex;position:fixed;left:50%;transform:translate(-50%)}.compare-dock>div{align-items:center;gap:var(--space-sm);min-width:0;display:flex}.compare-dock span{background:var(--color-primary);width:34px;height:34px;color:var(--color-ink);flex:none;place-items:center;font-weight:800;display:grid}.compare-dock p,.compare-dock strong,.compare-dock small{margin:0;display:block}.compare-dock p{min-width:0}.compare-dock small{text-overflow:ellipsis;white-space:nowrap;max-width:360px;color:var(--color-primary-on-dark);font-size:var(--font-size-caption-caps);margin-top:2px;overflow:hidden}.compare-dock button{color:var(--color-pine);background:var(--color-plate);border:0;padding:11px 14px;font-size:11px;font-weight:800}.dock-actions{flex:none;align-items:center;gap:7px;display:flex}.compare-dock .dock-clear{border:1px solid var(--color-pine-line);color:var(--color-primary-on-dark);font-family:var(--font-mono);letter-spacing:var(--tracking-mono);text-transform:uppercase;background:0 0;padding:11px 10px;font-weight:700}.compare-dock .dock-clear:hover{border-color:var(--color-primary-on-dark);color:var(--color-surface-sheet)}footer{background:var(--color-ink);min-height:150px;color:var(--color-surface-sheet);border-top:3px solid var(--color-signal);padding:var(--space-xl) 0;justify-content:space-between;align-items:center;display:flex}footer>p{color:var(--color-ink-faint);font-size:var(--font-size-body-sm);font-family:var(--font-mono)}footer .brand strong{color:var(--color-surface-sheet)}footer .brand small{color:var(--color-ink-faint)}footer .brand-mark{background:var(--color-signal);border-color:var(--color-signal)}footer .brand-mark .gear{animation:none}@media (width<=800px){.site-header nav a:not(.list-company){display:none}.hero-inner{grid-template-columns:1fr;padding-top:46px}.proc{display:none}.brief-panel,.examples,.proof{grid-column:auto}.input-row{flex-direction:column}.input-row button{min-height:44px;margin:0 var(--space-xs)}.details{grid-template-columns:1fr 1fr}.proof{gap:var(--space-md);grid-template-columns:1fr 1fr}.section-heading{flex-direction:column;align-items:flex-start}.discovery-heading{align-items:flex-start}.supplier-grid{grid-template-columns:1fr 1fr}.card-actions{flex-direction:column;align-items:stretch}.card-actions .compare-check{align-self:flex-start}.compare-table th,.compare-table td{padding:var(--space-md)}.compare-dock small{max-width:180px}}@media (width<=560px){:root{--space-section:70px;--space-gutter:28px}.hero h1{font-size:3.4rem}.lede{font-size:15px}.details{grid-template-columns:1fr}.details .wide{grid-column:auto}.proof{grid-template-columns:1fr 1fr}.supplier-grid{grid-template-columns:1fr}.site-header{padding-inline:14px}.brand small{display:none}footer{align-items:flex-start;gap:var(--space-md);flex-direction:column}.discovery-grid{grid-template-columns:1fr}.discovery-grid button{border-right:0;border-bottom:1px solid var(--color-ink-hairline);min-height:120px}.discovery-grid button:last-child{border-bottom:0}.compare-dock small{display:none}.rfq-modal{padding:var(--space-xl) var(--space-md)}.rfq-buttons{flex-direction:column}.card-actions button,.rfq-buttons a{min-height:44px}.brief-panel{box-shadow:5px 5px 0 var(--color-pine)}.compare-dock{box-shadow:5px 5px 0 var(--color-signal-bright)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.proc-ring,.proc-tick,.job-hammer,.proc-billet,.proc-sparks rect,.proc-arc,.proc-seam,.proc-grow,.proc-extrude,.proc-head,.proc-beam,.proc-kerf,.proc-tip,.proc-mist rect,.brand-mark .gear,.ghost-caret{animation:none!important}.supplier-card,.discovery-grid button{transition:none}}.supplier-name{color:inherit;text-decoration:none}.supplier-name:hover{color:var(--color-primary-deep);text-underline-offset:3px;text-decoration:underline}.site-header nav a.on{color:var(--color-ink);box-shadow:inset 0 -2px 0 var(--color-signal-bright)}.breadcrumb{font-family:var(--font-mono);font-size:var(--font-size-label-mono);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--color-ink-faint);margin-bottom:var(--space-xl)}.breadcrumb a{color:var(--color-ink-muted);text-decoration:none}.breadcrumb a:hover{color:var(--color-signal)}.directory-country{margin-bottom:var(--space-xxl)}.directory-country h3{font-size:var(--font-size-title-lg);margin-bottom:var(--space-md);color:var(--color-ink)}.directory-country h3 small{color:var(--color-ink-faint);font-family:var(--font-mono);font-size:var(--font-size-data-mono);margin-left:6px}details.directory-country{border:1px solid var(--color-ink-hairline);background:var(--color-surface-sheet);margin-bottom:var(--space-md)}details.directory-country>summary{cursor:pointer;padding:var(--space-md) var(--space-lg);font-size:var(--font-size-title-lg);color:var(--color-ink);align-items:baseline;gap:8px;list-style:none;display:flex}details.directory-country>summary::-webkit-details-marker{display:none}details.directory-country>summary:before{content:"▸";color:var(--color-primary);font-size:var(--font-size-body-sm);align-self:center}details.directory-country[open]>summary:before{content:"▾"}details.directory-country[open]>summary{border-bottom:1px solid var(--color-ink-hairline-soft)}details.directory-country>summary small{color:var(--color-ink-faint);font-family:var(--font-mono);font-size:var(--font-size-data-mono)}details.directory-country .directory-grid{padding:var(--space-md) var(--space-lg) var(--space-lg)}.process-search{gap:var(--space-sm);margin:var(--space-md) 0 var(--space-sm);flex-wrap:wrap;display:flex}.process-search input[type=search]{padding:10px var(--space-md);border:1px solid var(--color-ink-hairline);background:var(--color-surface-sheet);color:var(--color-ink);font:inherit;flex:260px}.process-search select{padding:10px var(--space-md);border:1px solid var(--color-ink-hairline);background:var(--color-surface-sheet);color:var(--color-ink);font:inherit}.process-search .search-clear{padding:10px var(--space-md);border:1px solid var(--color-ink-hairline);color:var(--color-ink-soft);cursor:pointer;background:0 0}.search-status{margin:0 0 var(--space-sm);color:var(--color-ink-faint);font-family:var(--font-mono);font-size:var(--font-size-label-mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.directory-grid{background:var(--color-ink-hairline);border:1px solid var(--color-ink-hairline);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.capability-grid{margin-bottom:var(--space-xl);grid-template-columns:repeat(3,1fr)}.directory-cell{background:var(--color-surface-sheet);padding:var(--space-lg);flex-direction:column;align-items:flex-start;text-decoration:none;transition:background .15s;display:flex}.directory-cell:hover{background:var(--color-plate-hover);box-shadow:var(--rail-hover)}.directory-cell strong{font-family:var(--font-display);font-size:var(--font-size-title-md);color:var(--color-ink);letter-spacing:-.02em;font-weight:700}.directory-cell small{color:var(--color-ink-faint);font-size:var(--font-size-body-sm);margin-top:4px}.directory-cell span{color:var(--color-ink-muted);font-size:var(--font-size-caption-caps);margin-top:10px;font-weight:600}.directory-cell em{font-style:normal;font-family:var(--font-mono);font-size:var(--font-size-label-mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--color-primary);margin-top:auto;padding-top:12px}.process-index-grid{margin-bottom:var(--space-xl)}.process-index-grid a{border-right:1px solid var(--color-ink-hairline);border-bottom:1px solid var(--color-ink-hairline);background:var(--color-plate);min-height:142px;color:var(--color-pine-line);padding:var(--space-lg);flex-direction:column;align-items:flex-start;text-decoration:none;transition:background .15s;display:flex}.process-index-grid a:hover{background:var(--color-plate-hover)}.process-index-grid small{color:var(--color-ink-faint);font-family:var(--font-mono);font-size:var(--font-size-label-mono-sm);letter-spacing:var(--tracking-mono);font-weight:700}.process-index-grid strong{font-family:var(--font-display);letter-spacing:-.025em;margin-top:13px;font-size:clamp(16px,2vw,22px);font-weight:700}.process-index-grid span{color:var(--color-signal);margin-top:auto;font-size:11px;font-weight:700}.process-index-grid .country-split{font-style:normal;font-family:var(--font-mono);font-size:var(--font-size-label-mono-sm);letter-spacing:var(--tracking-mono);color:var(--color-ink-faint);margin-top:6px}.chip-link{background:var(--color-ink-wash);color:var(--color-pine-line);border-radius:var(--radius-none);font-size:var(--font-size-caption-caps);padding:5px 8px;font-weight:600;text-decoration:none}a.chip-link:hover{background:var(--color-plate-hover);color:var(--color-signal)}.chip-link.static{opacity:.72}.country-links{font-size:var(--font-size-body-sm);color:var(--color-ink-muted);margin-bottom:var(--space-lg)}.country-links a{color:var(--color-primary-deep);text-decoration:none}.country-links a:hover{text-decoration:underline}.directory-cta{font-size:var(--font-size-body-md);color:var(--color-ink-muted);margin-top:var(--space-md)}.directory-cta a{color:var(--color-signal);font-weight:700;text-decoration:none}.directory-cta a:hover{text-decoration:underline}.process-more{margin-top:var(--space-xxl)}.process-more h2{font-size:var(--font-size-display-md);margin-bottom:var(--space-md)}.process-more .tags{flex-wrap:wrap;gap:6px;display:flex}.dossier-page h1{font-size:clamp(2.2rem, 4vw, var(--font-size-display-lg));letter-spacing:var(--tracking-display-lg)}.dossier-head{justify-content:space-between;gap:var(--space-xl);margin-bottom:var(--space-xl);align-items:flex-start;display:flex}.dossier-side{align-items:flex-start;gap:var(--space-sm);flex-direction:column;min-width:240px;display:flex}.dossier-side .contact-page{background:var(--color-primary);color:var(--color-surface-sheet);font-size:var(--font-size-caption-caps);text-transform:uppercase;letter-spacing:var(--tracking-caps);padding:11px 14px;font-weight:800;text-decoration:none}.dossier-side .contact-page:hover{background:var(--color-primary-deep)}.dossier-source{font-family:var(--font-mono);font-size:var(--font-size-label-mono-sm);letter-spacing:var(--tracking-mono);color:var(--color-ink-faint);word-break:break-all;margin:0}.dossier-source a{color:var(--color-primary-deep);text-decoration:none}.dossier-source a:hover{text-decoration:underline}.dossier-page .dossier{margin-bottom:var(--space-xxl)}.dossier-cases h2,.dossier-next h2,.dossier-related h2{font-size:var(--font-size-display-md);margin-bottom:var(--space-md)}.dossier-cases ul{border:1px solid var(--color-ink-hairline);padding:0;list-style:none}.dossier-cases li{padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--color-ink-hairline-soft);justify-content:space-between;gap:var(--space-md);display:flex}.dossier-cases li:last-child{border-bottom:0}.dossier-cases a{color:var(--color-primary-deep);font-weight:600;text-decoration:none}.dossier-cases a:hover{text-decoration:underline}.dossier-cases small{color:var(--color-ink-faint);font-family:var(--font-mono);font-size:var(--font-size-label-mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase;text-align:right}.dossier-next{padding:var(--space-lg);background:var(--color-ink-wash);box-shadow:var(--rail-active);border-radius:var(--radius-none);margin-bottom:var(--space-xxl)}.dossier-next h2{margin-top:0}.dossier-next p{font-size:var(--font-size-body-lede);color:var(--color-ink-soft);line-height:1.65}.dossier-next a{color:var(--color-primary-deep)}.dossier-related{margin-top:var(--space-xxl)}.related-grid{background:var(--color-ink-hairline);border:1px solid var(--color-ink-hairline);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}@media (width<=800px){.dossier-head{flex-direction:column}.directory-grid,.capability-grid,.related-grid{grid-template-columns:1fr 1fr}.process-index-grid a:nth-child(2n){border-right:0}}@media (width<=560px){.directory-grid,.capability-grid,.related-grid,.process-index-grid{grid-template-columns:1fr}.process-index-grid a{border-right:0}}@media (prefers-reduced-motion:reduce){.directory-cell,.process-index-grid a{transition:none}}.error-lede{max-width:56ch;font-size:var(--font-size-body-lede);color:var(--color-ink-muted);margin-bottom:var(--space-xl)}.error-links{gap:var(--space-lg);flex-wrap:wrap;display:flex}.error-links a{font-family:var(--font-mono);font-size:var(--font-size-label-mono);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--color-ink);border:1px solid var(--color-ink-hairline);background:var(--color-surface-sheet);padding:var(--space-md) var(--space-lg);text-decoration:none;transition:background .15s,box-shadow .15s}.error-links a:hover{background:var(--color-plate-hover);box-shadow:var(--rail-hover);color:var(--color-ink)}
