:root{--ink:light-dark(#171513,#f2f0ee);--text:light-dark(#4a4643,#b3aeaa);--text-h:var(--ink);--bg:light-dark(#f5f5f3,#14120f);--bg-soft:light-dark(#ebebe8,#1c1a17);--surface:light-dark(#fff,#1c1a17);--border:light-dark(#d6d4cf,#34302b);--rule:light-dark(#171513,#f2f0ee);--muted:light-dark(#737373,#8d8781);--grid-fine:light-dark(#1715130a,#f2f0ee0a);--grid-major:light-dark(#17151312,#f2f0ee12);--sheet:light-dark(#e8e8edad,#1e1f24ad);--sheet-w:70rem;--gutter:clamp(3.4rem, 4vw, 4rem);--rail-w:15rem;--toggle-h:2.925rem;--toggle-x:calc((var(--gutter) - var(--toggle-h)) / 2);--accent:light-dark(#1a53b0,#5b93e6);--accent-hover:light-dark(#123c85,#83b0ee);--accent-contrast:light-dark(#f4f7fd,#0b1220);--accent-soft:light-dark(#1a53b017,#5b93e629);--clay:light-dark(#aebfdc,#3c4e6e);--eco:light-dark(#2f6b45,#6fbf8f);--eco-soft:light-dark(#2f6b451a,#6fbf8f29);--danger:light-dark(#c0392b,#ef5350);--ok:var(--eco);--shadow:none;--sans:"Helvetica Neue", Inter, system-ui, -apple-system, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--radius:2px;color-scheme:light dark;font:400 16px / 1.6 var(--sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{min-height:100svh;margin:0}#root{flex-direction:column;min-height:100svh;display:flex}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{color:var(--text-h);font-weight:600;line-height:1.2}h1{margin:0 0 .6rem;font-size:1.8rem}h2{margin:0 0 .5rem;font-size:1.3rem}p{margin:0 0 .75rem}.site-header{z-index:10;border-bottom:1px solid var(--border);background:var(--bg);align-items:center;gap:1rem;padding:.7rem 1.2rem;display:flex;position:sticky;top:0}.site-brand{color:var(--text-h);font-weight:700}.site-nav{gap:1rem;display:flex}.site-spacer{flex:1}.site-actions{align-items:center;gap:.7rem;display:flex}.site-name{color:var(--text)}.shell{flex-direction:column;flex:1;display:flex}.rail{z-index:41;width:var(--rail-w);border-right:1px solid var(--border);background-color:var(--bg);visibility:hidden;background-image:linear-gradient(#0000 0%,light-dark(#1a53b00f,#5b93e614) 52%,light-dark(#1a53b02b,#5b93e636) 100%),radial-gradient(95% 45% at 100% 0,light-dark(#1a53b01a,#5b93e621),#0000 72%);flex-direction:column;gap:2rem;height:100svh;padding:4.2rem 1.2rem 1.6rem;transition:translate .22s,visibility .22s;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;translate:-100%}.rail[data-open=true]{visibility:visible;translate:0}.rail-index{border-top:1px solid var(--border);letter-spacing:.01em;grid-template-columns:2.3rem max-content;font-size:.9rem;font-style:oblique;display:grid}.rail-row{grid-template-columns:subgrid;min-height:2.3rem;color:var(--text);border-bottom:1px solid var(--border);border-left:2px solid #0000;grid-column:1/-1;align-items:center;display:grid}.rail-index a:hover{color:var(--ink);text-decoration:none}.rail-row-head{color:var(--muted);border-bottom-width:2px;font-size:.78rem}.rail-index a[aria-current]{border-left-color:var(--accent);color:var(--ink)}.rail-num{border-right:1px solid var(--border);color:var(--muted);align-self:stretch;place-items:center;font-size:.82rem;display:grid}.rail-name{white-space:nowrap;text-overflow:ellipsis;padding-inline:1.1rem .7rem;overflow:hidden}.rail-index a[aria-current] .rail-num{color:var(--accent)}.rail-cell{display:none}.rail-foot{flex-direction:column;align-items:flex-start;gap:.7rem;margin-top:auto;font-size:.85rem;display:flex}.column{min-width:0;padding-inline:var(--gutter);flex-direction:column;flex:1;display:flex}.site-main{width:min(var(--sheet-w), 100%);background:var(--sheet);flex-direction:column;flex:1;gap:1.2rem;margin:0 auto;padding:1.5rem 1.6rem;display:flex}.card{border-top:2px solid var(--rule);padding:1.5rem 0 0}.auth-card{width:min(26rem,100%);margin:0 auto}.muted{color:var(--muted)}.error{color:var(--danger);font-size:.9rem}.notice{color:light-dark(#1a7f37,#4ade80);font-size:.9rem}.cell-sub{color:var(--muted);font-size:.87rem}.auth-alt{text-align:center;margin:.9rem 0 .4rem;font-size:.9rem}.list{flex-direction:column;margin:.5rem 0;padding:0;list-style:none;display:flex}.list>li{border-bottom:1px solid var(--border);padding:.6rem 0}.list>li:last-child{border-bottom:0}.row-between{justify-content:space-between;align-items:center;gap:1rem;display:flex}.row-tail{flex:none;align-items:center;gap:.5rem;display:flex}[data-inactive=true]{opacity:.55}.badge{border:1px solid var(--border);background:var(--bg-soft);color:var(--muted);border-radius:999px;padding:.1rem .5rem;font-size:.78rem}.badge-off{border-color:var(--danger);color:var(--danger)}.field{flex-direction:column;gap:.3rem;margin-bottom:.8rem;display:flex}.field label{color:var(--muted);font-size:.85rem}input,select,textarea{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text-h);border-radius:6px;padding:.5rem .6rem}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.input-muted{opacity:.6}.role-select{padding:.25rem .4rem;font-size:.85rem}.adder{border-top:1px solid var(--border);flex-direction:column;gap:.4rem;margin-top:1rem;padding-top:1rem;display:flex}.btn{font:inherit;border:1px solid var(--border);background:var(--bg-soft);color:var(--text-h);cursor:pointer;border-radius:6px;padding:.45rem .9rem}.btn:hover{border-color:var(--muted)}.btn-block{text-align:center;width:100%;display:block}.link-btn{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:1.6rem;height:1.6rem;margin:2rem auto;animation:.8s linear infinite spin}@keyframes spin{to{rotate:360deg}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:3s}}h1{letter-spacing:-.035em;margin:0 0 1rem;font-size:clamp(2.2rem,5.5vw,3.9rem);font-weight:700;line-height:1.02}h1 em{color:var(--accent);font-style:normal}h2{letter-spacing:-.02em}.kicker{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;margin:0 0 1.4rem;font-size:.72rem;font-weight:500}.grade-code,.recycled,.fraction,.figure-value{font-family:var(--mono);font-variant-numeric:tabular-nums}.site-header{border-bottom:1px solid var(--border);background:var(--bg);gap:2rem;padding:1rem 1.5rem}.site-brand{flex-direction:column;line-height:1.1;display:flex}.site-brand-name{color:var(--ink);letter-spacing:-.02em;font-size:1.15rem;font-weight:700}.site-brand-sub{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-size:.64rem}.site-nav{letter-spacing:.1em;text-transform:uppercase;gap:1.5rem;font-size:.74rem;display:flex}.site-nav a{color:var(--text)}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--accent);text-decoration:none}.site-phone{color:var(--ink);font-family:var(--mono);font-size:.9rem}.hero{border-bottom:2px solid var(--rule);grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);align-items:start;gap:1rem 3rem;padding:3.5rem 0 2rem;display:grid}.hero .process{grid-column:1/-1}.hero-lead{max-width:54ch;margin-bottom:1.8rem;font-size:1.05rem}.hero-actions{flex-wrap:wrap;gap:.6rem;margin-bottom:2.6rem;display:flex}.figures{gap:1.1rem;padding-top:.4rem;display:grid}.figure+.figure{border-top:1px solid var(--border);padding-top:1.1rem}@media (width<=900px){.hero{grid-template-columns:1fr}.figures{border-top:1px solid var(--border);grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:1.2rem;padding-top:1.4rem}.figure+.figure{border-top:0;padding-top:0}}.figure{flex-direction:column;gap:.15rem;display:flex}.figure-value{color:var(--ink);letter-spacing:-.03em;font-size:1.8rem;font-weight:700;line-height:1}.figure-unit{color:var(--muted);margin-left:.25rem;font-size:.85rem;font-weight:400}.figure-label{color:var(--muted);letter-spacing:.06em;font-size:.75rem}.band{border-bottom:1px solid var(--border);padding:2.6rem 0}.band-title{color:var(--ink);letter-spacing:.18em;text-transform:uppercase;margin:0 0 1.4rem;font-size:.78rem;font-weight:600}.table-scroll{overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:.9rem}.table th{border-bottom:2px solid var(--rule);color:var(--ink);letter-spacing:.09em;text-align:left;text-transform:uppercase;white-space:nowrap;padding:.5rem .7rem;font-size:.68rem;font-weight:600}.table td{border-bottom:1px solid var(--border);vertical-align:top;padding:.7rem}.table tbody tr:hover{background:var(--bg-soft)}.table .num{text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap}.grade-code{color:var(--ink);font-weight:600;display:block}.cell-sub{color:var(--muted);font-size:.8rem;display:block}.recycled{color:var(--eco);font-weight:600}.fractions{flex-wrap:wrap;gap:.3rem;display:flex}.fraction{border:1px solid var(--border);white-space:nowrap;padding:.05rem .4rem;font-size:.78rem}.chip{border:1px solid var(--border);letter-spacing:.04em;white-space:nowrap;padding:.1rem .5rem;font-size:.74rem}.chip-gentle{background:var(--bg-soft);color:var(--muted)}.chip-medium{border-color:var(--clay);background:var(--accent-soft);color:var(--accent)}.chip-hard{border-color:var(--accent);background:var(--accent);color:var(--accent-contrast)}.chart{margin:1.6rem 0 0}.chart svg{width:100%;max-width:40rem;height:auto}.selector-grid,.register-grid,.quote-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:start;gap:2.5rem;display:grid}@media (width<=860px){.selector-grid,.register-grid,.quote-grid{grid-template-columns:minmax(0,1fr);gap:1.5rem}}.selector-controls{flex-direction:column;gap:.2rem;display:flex}.matches{border-top:1px solid var(--border);flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex}.match{border-bottom:1px solid var(--border);flex-direction:column;gap:.15rem;padding:.8rem 0;display:flex}.match .grade-code{color:var(--accent);font-size:1.05rem}.match-name{color:var(--ink);font-size:.92rem}.register-form{align-items:flex-end;gap:.6rem;margin-top:1rem;display:flex}.register-form .field{flex:1;min-width:0;margin:0}.register-form input{width:100%}@media (width<=620px){.register-form{flex-direction:column;align-items:stretch}}.certificate{border-top:2px solid var(--rule);grid-template-columns:auto 1fr;gap:0;margin:0;display:grid}.certificate dt,.certificate dd{border-bottom:1px solid var(--border);padding:.55rem 0}.certificate dt{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;padding-right:1.5rem;font-size:.78rem}.certificate dd{color:var(--ink);text-align:right;margin:0}.pending{color:var(--muted);font-style:italic}.quote-form,.quote-done{border:1px solid var(--border);background:var(--surface);padding:1.3rem}.quote-done h3{color:var(--eco);margin-top:0}.kv{grid-template-columns:auto minmax(0,1fr);gap:.4rem 1.5rem;margin:1.2rem 0 0;font-size:.9rem;display:grid}.kv dd{overflow-wrap:anywhere}@media (width<=420px){.kv{grid-template-columns:1fr;gap:.1rem}.kv dd{margin-bottom:.5rem}}.kv dt{color:var(--muted)}.kv dd{color:var(--ink);margin:0}.publish{justify-content:flex-end;gap:.4rem;display:flex}.publish input{text-align:right;width:5.5rem}input,select,textarea{background:var(--surface);border-radius:0}.btn{letter-spacing:.08em;text-transform:uppercase;border-radius:0;padding:.6rem 1.2rem;font-size:.8rem;font-weight:600}.btn-primary{border-color:var(--accent);background:var(--accent);color:var(--accent-contrast)}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn-quiet{color:var(--ink);font-family:var(--mono);text-transform:none;background:0 0;border-color:#0000}.btn-quiet:hover{color:var(--accent)}.btn-sm{padding:.4rem .8rem;font-size:.72rem}.role-select{border-radius:0;font-size:.82rem}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.6rem;margin-bottom:1rem;display:flex}.site-footer{border-top:2px solid var(--rule);margin-top:2rem;padding:1.4rem}.site-footer-inner{width:min(72rem,100% - 3rem);color:var(--muted);flex-wrap:wrap;align-items:center;gap:1.2rem;margin:0 auto;font-size:.82rem;display:flex}.site-footer-inner .site-spacer{flex:1}.stages{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:2rem;margin:0;padding:0;list-style:none;display:grid}.stage{flex-direction:column;gap:.6rem;display:flex}.stage-photo{aspect-ratio:4/3;background:var(--bg-soft);overflow:hidden}.stage-photo img{object-fit:cover;filter:saturate(.9)contrast(1.04);width:100%;height:100%}.stage h3{border-top:2px solid var(--rule);letter-spacing:-.01em;align-items:baseline;gap:.7rem;margin:0;padding-top:.6rem;font-size:1rem;display:flex}.stage-number{color:var(--accent);font-family:var(--mono);font-size:.85rem}.stage p{margin:0;font-size:.88rem}.intro{z-index:100;background:var(--bg);pointer-events:none;place-items:center;animation:.3s cubic-bezier(.4,0,.7,.4) 1s forwards intro-away;display:grid;position:fixed;inset:0;overflow:hidden}.intro-sheet{background-image:repeating-linear-gradient(to right, var(--grid-major) 0 1px, transparent 1px 96px), repeating-linear-gradient(to bottom, var(--grid-major) 0 1px, transparent 1px 96px), repeating-linear-gradient(to right, var(--grid-fine) 0 1px, transparent 1px 16px), repeating-linear-gradient(to bottom, var(--grid-fine) 0 1px, transparent 1px 16px);clip-path:inset(0 0 100%);animation:.33s cubic-bezier(.2,.7,.3,1) forwards intro-unroll;position:absolute;inset:0}.intro-edge{background:var(--accent);height:2px;animation:.33s cubic-bezier(.2,.7,.3,1) forwards intro-edge;position:absolute;top:0;left:0;right:0}.intro-mark{justify-items:center;gap:.4rem;display:grid;position:relative}.intro-rule{background:var(--accent);transform-origin:0;width:12rem;height:2px;animation:.32s cubic-bezier(.2,.7,.3,1) .3s forwards intro-rule;transform:scaleX(0)}.intro-name{color:var(--ink);letter-spacing:-.03em;opacity:0;font-size:2rem;font-weight:700;animation:.3s .4s forwards intro-set}.intro-sub{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;opacity:0;font-size:.68rem;animation:.3s .47s forwards intro-set}@keyframes intro-unroll{to{clip-path:inset(0)}}@keyframes intro-edge{to{transform:translateY(100svh)}}@keyframes intro-away{to{transform:translateY(100%)}}@keyframes intro-rule{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes intro-set{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes intro-out{0%,62%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.intro{display:none}}.process{border-top:1px solid var(--border);margin:2.4rem 0 0;padding:1.4rem 0 0}.process svg{width:100%;height:auto}.process .belt{stroke:var(--border);stroke-width:1px}.process .machines{fill:none;stroke:var(--ink);stroke-width:1.4px;stroke-linejoin:round}.process .stations line{stroke:var(--border);stroke-width:1px}.process .stations text{fill:var(--muted);font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase;font-size:11px}.process .run{fill:var(--accent)}.process .run-strand{fill:var(--clay)}.flow{animation:2.4s linear infinite flow-run}.flow-tumble{transform-box:fill-box;transform-origin:50%}@keyframes flow-run{0%{opacity:0;transform:translate(0)}12%,88%{opacity:1}to{opacity:0;transform:translateX(calc(var(--dx) * 1px))}}.process .drum{transform-box:fill-box;transform-origin:50%;animation:4s linear infinite drum-spin}.process .screw{animation:1.2s linear infinite screw-feed}@keyframes drum-spin{to{rotate:360deg}}@keyframes screw-feed{to{stroke-dashoffset:-14px}}@media (prefers-reduced-motion:reduce){.flow,.process .drum,.process .screw{animation:none}.flow{opacity:1}}.brand-toggle{top:.9rem;left:var(--toggle-x);z-index:42;width:var(--toggle-h);height:var(--toggle-h);border:1px solid var(--border);background:var(--bg);color:var(--ink);cursor:pointer;align-items:center;gap:0;padding:.45rem;transition:width .24s,gap .24s;display:flex;position:fixed;overflow:hidden}.brand-toggle:hover .brand-toggle-mark{color:var(--accent-hover,var(--accent))}.brand-toggle-mark{width:1.9rem;height:1.9rem;color:var(--accent);flex:none}.brand-toggle-word{flex:1;min-width:0;overflow:hidden}.brand-toggle[aria-expanded=true]{width:calc(var(--rail-w) - 2 * var(--toggle-x));gap:.55rem}.brand-toggle-word>span{white-space:nowrap;text-align:left;display:block}.brand-toggle-name{color:var(--ink);letter-spacing:-.02em;font-size:1.02rem;font-weight:700;line-height:1.1}.brand-toggle-sub{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-size:.58rem;line-height:1.1}.site-scrim{z-index:40;cursor:pointer;background:light-dark(#1715134d,#0000008c);border:0;position:fixed;inset:0}@media (prefers-reduced-motion:reduce){.rail,.brand-toggle,.brand-toggle-word{transition:none}}@media (width<=700px){.rail{border-right:0;width:100vw;padding-inline:.9rem}.rail-index{grid-template-columns:2.1rem max-content 2.5rem 4.2rem minmax(0,1fr)}.rail-row{font-size:.86rem}.rail-row-head{font-size:.7rem}.rail-cell{border-left:1px solid var(--border);color:var(--muted);align-self:stretch;place-items:center;display:grid}}@media (width<=380px){.rail-index{grid-template-columns:1.9rem max-content 2.3rem minmax(0,1fr)}.rail-row{font-size:.82rem}.rail-row>:nth-child(4){display:none}.rail-name{padding-inline:.85rem .55rem}}.hero-brand{align-items:center;gap:.7rem;margin-bottom:1.6rem;display:flex}.hero-logo{width:2.1rem;height:2.1rem;color:var(--accent);flex:none}.hero-brand-text{flex-direction:column;line-height:1.1;display:flex}.hero-brand-name{color:var(--ink);letter-spacing:-.02em;font-size:1.3rem;font-weight:700}.hero-brand-sub{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;font-size:.66rem}body{background-color:var(--bg);background-image:repeating-linear-gradient(to right, var(--grid-major) 0 1px, transparent 1px 96px), repeating-linear-gradient(to bottom, var(--grid-major) 0 1px, transparent 1px 96px), repeating-linear-gradient(to right, var(--grid-fine) 0 1px, transparent 1px 16px), repeating-linear-gradient(to bottom, var(--grid-fine) 0 1px, transparent 1px 16px);background-attachment:fixed}.site-footer,.table,.certificate,.quote-form,.quote-done,.stage-photo,.chart,.process{background:var(--bg)}.demo-logins{border-top:1px solid var(--border);margin-top:1.2rem;padding-top:1rem}.demo-logins p{margin:0 0 .6rem;font-size:.85rem}.demo-login{text-align:left;flex-direction:column;gap:.1rem;margin-bottom:.4rem;display:flex}.demo-login .cell-sub{font-size:.78rem}._toggle_11ska_1{width:32px;height:32px;color:inherit;cursor:pointer;opacity:.8;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:background-color .15s,opacity .15s;display:inline-flex}._toggle_11ska_1:hover{opacity:1;background:light-dark(#0000000f,#ffffff1f)}._toggle_11ska_1:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
