/* Fine lines, deliberate movement. No animation library required. */
.orbital-drawing{position:absolute;width:100%;height:100%;inset:0;pointer-events:none;opacity:.48;overflow:visible}.orbit-architecture{fill:none;stroke:#b6d894;stroke-width:.65}.orbit-architecture ellipse{stroke-dasharray:1600;stroke-dashoffset:1600;animation:orbit-draw 3s cubic-bezier(.22,1,.36,1) .25s forwards}.orbit-architecture ellipse:nth-child(2){animation-delay:.6s;opacity:.55}.orbit-architecture path{stroke:#d4efb0;opacity:.7}.orbit-trace{stroke:var(--studio);stroke-width:1;stroke-dasharray:12 48 3 1100;transform-origin:300px 300px;animation:trace-orbit 35s linear infinite;opacity:.8}.hero-art:after{content:'MATERIAL / FORM / POSSIBILITY';position:absolute;right:21px;top:32%;writing-mode:vertical-rl;font-size:7px;letter-spacing:.22em;color:#9db98d99}.hero-copy h1 em{position:relative}.hero-copy h1 em:after{content:'';position:absolute;left:0;right:0;bottom:-12px;height:1px;background:linear-gradient(90deg,#cde6a5,transparent);transform:scaleX(0);transform-origin:left;animation:line-unfurl 1.4s .3s cubic-bezier(.22,1,.36,1) forwards}.hero-copy>p{margin-top:12px}header:after{content:'';position:absolute;bottom:-1px;height:1px;left:0;width:100%;background:linear-gradient(90deg,transparent,#74945d,transparent);transform:scaleX(var(--page-progress,0));transform-origin:left;pointer-events:none}nav a{position:relative;padding:12px 0}nav a:after{content:'';height:1px;background:currentColor;position:absolute;bottom:5px;left:0;width:100%;transform:scaleX(0);transform-origin:right;transition:transform .35s}nav a:hover:after,nav a:focus-visible:after{transform:scaleX(1);transform-origin:left}.button{position:relative;isolation:isolate;overflow:hidden;transition:transform .25s,box-shadow .25s}.button:before{content:'';position:absolute;inset:5px;border:1px solid currentColor;opacity:.26;clip-path:inset(0 100% 100% 0);transition:clip-path .6s cubic-bezier(.22,1,.36,1);pointer-events:none}.button:hover:before,.button:focus-visible:before{clip-path:inset(0)}.button:hover{box-shadow:0 8px 22px #0d2a1a1c}.line-section{position:relative;overflow:hidden}.section-thread{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:.18}.section-thread path{fill:none;stroke:#315d36;stroke-width:1;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 2s cubic-bezier(.22,1,.36,1)}.line-section.is-revealed .section-thread path{stroke-dashoffset:0}.story-title,.story-steps{position:relative}.story-steps article:after{content:'+';position:absolute;right:-3px;top:-9px;font:14px monospace;color:#668a52;background:var(--paper);padding-left:7px}.section-top{position:relative;padding-bottom:23px}.section-top:after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,#8da575,#d8ded2);transform:scaleX(0);transform-origin:left;transition:transform 1.3s cubic-bezier(.22,1,.36,1)}.section-top.is-revealed:after{transform:scaleX(1)}.catalog-tools{border-bottom:0}.card-art:before{content:'';position:absolute;inset:10px;border:1px solid #38553035;z-index:3;pointer-events:none;clip-path:inset(0 100% 100% 0);transition:clip-path .8s cubic-bezier(.22,1,.36,1)}.card-art:hover:before,.card-art:focus-visible:before{clip-path:inset(0)}.card-art:after{content:'';position:absolute;inset:auto 18px 18px auto;width:30px;height:30px;border-right:1px solid #38553055;border-bottom:1px solid #38553055;transform:translate(8px,8px);opacity:0;transition:transform .4s,opacity .4s;pointer-events:none}.card-art:hover:after{transform:translate(0,0);opacity:1}.card-art .arrow{z-index:4}.card-meta,.card-bottom{transition:transform .4s}.card:hover .card-meta{transform:translateY(-2px)}.filters button{transition:color .25s,background .25s,border-color .25s}.finder{position:relative}.finder:before{content:'';position:absolute;top:0;left:5%;right:5%;height:1px;background:linear-gradient(90deg,transparent,#8da575,transparent)}.recommendation{position:relative;border-left:1px solid #89ad61}.recommendation:after{content:'';position:absolute;left:-1px;top:0;width:1px;height:35px;background:#284a2d;animation:edge-travel 5s ease-in-out infinite}.bulk-art:before{content:'';position:absolute;inset:28px;border:1px solid #355b3e35;border-radius:50%;transform:rotate(-24deg) scaleX(.75);pointer-events:none}.bulk-art:after{content:'';position:absolute;inset:45px;border:1px solid #355b3e25;border-radius:50%;transform:rotate(36deg) scaleX(.75);pointer-events:none}.closing:after{content:'';position:absolute;inset:26px 5%;border-top:1px solid #a2b88c80;border-bottom:1px solid #a2b88c80;pointer-events:none;transform:scaleX(0);transition:transform 1.6s cubic-bezier(.22,1,.36,1)}.closing.is-revealed:after{transform:scaleX(1)}.reveal-ready{opacity:.25;transform:translateY(20px);transition:opacity .8s ease,transform 1s cubic-bezier(.22,1,.36,1)}.reveal-ready.is-revealed,.reveal-ready:focus-within{opacity:1;transform:none}.paused .reveal-ready{opacity:1;transform:none;transition:none}.paused .section-thread path{stroke-dashoffset:0;transition:none}.paused .section-top:after,.paused .closing:after{transform:scaleX(1);transition:none}.paused .orbit-architecture ellipse{stroke-dashoffset:0}.paused .hero-copy h1 em:after{transform:scaleX(1)}@keyframes orbit-draw{to{stroke-dashoffset:0}}@keyframes trace-orbit{to{transform:rotate(360deg)}}@keyframes line-unfurl{to{transform:scaleX(1)}}@keyframes edge-travel{0%,100%{top:0}50%{top:calc(100% - 35px)}}@media(max-width:640px){.orbital-drawing{width:100%;opacity:.35}.hero-art:after{font-size:6px;right:12px}.section-thread{opacity:.12}.section-top{padding-bottom:22px}.card-art:before{inset:6px}.closing:after{inset:20px 6%}.reveal-ready{transform:translateY(12px)}.hero-copy h1 em:after{bottom:-9px}.hero-copy>p{margin-top:8px}}@media(prefers-reduced-motion:reduce){.reveal-ready{opacity:1;transform:none;transition:none}.orbit-architecture ellipse,.section-thread path{stroke-dashoffset:0}.hero-copy h1 em:after,.section-top:after,.closing:after{transform:scaleX(1)}*,*:before,*:after{animation:none!important;transition:none!important}}

.spool-catalog{background:#f5f4ec}.sourcing-note{display:grid;grid-template-columns:1fr 2fr;gap:30px;padding:22px 25px;background:#e8eedf;border-left:2px solid #6b8c51;margin-bottom:30px}.sourcing-note strong{font-size:16px;line-height:1.5}.sourcing-note p{font-size:12px;color:var(--muted)}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.product-card{border:1px solid #cbd5bf;background:#fafbf4;min-width:0}.product-visual{height:235px;background:#e7ebdd;position:relative;display:grid;place-items:center;overflow:hidden}.product-visual .spool{transform:rotate(-15deg) scale(.59);transition:transform .6s}.product-card:hover .spool{transform:rotate(-8deg) scale(.62)}.product-brand{position:absolute;top:17px;left:17px;font-size:12px;font-weight:700;z-index:2}.product-weight{position:absolute;bottom:14px;left:17px;font-size:7px;letter-spacing:.13em}.product-content{padding:20px 17px}.product-status{font-size:9px;color:#68765d;min-height:30px;line-height:1.5}.product-content h3{font-size:25px;margin:8px 0 13px;letter-spacing:-.04em;font-weight:500}.product-price{font-size:24px;letter-spacing:-.03em}.product-price span{font-size:10px;letter-spacing:0}.price-label{font-size:8px;color:#6b775f;margin:3px 0 15px}.product-detail{font-size:11px;color:var(--muted);min-height:59px}.product-content .button{width:100%;padding:14px 12px;gap:8px;font-size:10px;margin-top:15px}.product-footnote{font-size:11px;color:var(--muted);max-width:900px;margin-top:24px}.inquiry-item small{font-size:9px;color:var(--muted)}@media(max-width:1000px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-visual{height:260px}.product-visual .spool{transform:rotate(-15deg) scale(.68)}}@media(max-width:640px){.sourcing-note{grid-template-columns:1fr;gap:10px;padding:19px}.product-grid{gap:12px}.product-visual{height:190px}.product-visual .spool{transform:rotate(-15deg) scale(.47)}.product-card:hover .spool{transform:rotate(-8deg) scale(.48)}.product-brand{font-size:10px;left:12px}.product-weight{font-size:6px;left:10px}.product-content{padding:14px 11px}.product-content h3{font-size:21px}.product-status{font-size:8px;min-height:37px}.product-price{font-size:22px}.product-price span{display:block;font-size:9px}.product-detail{font-size:10px;min-height:74px}.product-content .button{font-size:9px;padding:12px 9px}.price-label{font-size:7px;min-height:23px}header nav{gap:15px}}

.product-visual .spool{position:absolute;left:50%;top:50%;transform:translate(-50%,-46%) rotate(-15deg) scale(.59)}.product-card:hover .spool{transform:translate(-50%,-48%) rotate(-8deg) scale(.62)}@media(max-width:1000px){.product-visual .spool{transform:translate(-50%,-46%) rotate(-15deg) scale(.68)}}@media(max-width:640px){.product-visual .spool{transform:translate(-50%,-46%) rotate(-15deg) scale(.47)}.product-card:hover .spool{transform:translate(-50%,-48%) rotate(-8deg) scale(.48)}}
