:root{--ink:#14242b;--deep:#173741;--paper:#f3f0e8;--panel:#fffdf8;--line:#cbd1c8;--muted:#5d6868;--orange:#d65a2c;--orange-dark:#a83f1e;--mint:#c8d9d0;--focus:#075d70}
*{box-sizing:border-box}.store-body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif}.store-shell{max-width:1440px;margin:auto;padding:34px 28px 70px}.store-loading{height:50vh;display:flex;gap:8px;justify-content:center;align-items:center}.store-loading span{width:11px;height:11px;background:var(--orange);animation:hop .8s infinite alternate}.store-loading span:nth-child(2){animation-delay:.15s}.store-loading span:nth-child(3){animation-delay:.3s}@keyframes hop{to{transform:translateY(-12px);opacity:.4}}
.mast{display:flex;justify-content:space-between;gap:24px;border-bottom:2px solid var(--ink);padding-bottom:21px;align-items:end}.eyebrow,.label{font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}h1,h2,h3{font-family:"Barlow Condensed",sans-serif;margin:0;text-transform:uppercase;letter-spacing:.01em}h1{font-size:clamp(42px,6vw,76px);line-height:.88}h2{font-size:30px}.mast p{margin:8px 0 0;color:var(--muted);max-width:610px}.account-select{min-width:205px;border:1px solid var(--ink);background:var(--panel);padding:10px;font:600 14px "DM Sans";color:var(--ink)}
.tabs{display:flex;gap:20px;border-bottom:1px solid var(--line);margin:27px 0 25px}.tab{border:0;border-bottom:4px solid transparent;background:none;padding:11px 2px;color:var(--muted);font:700 14px "DM Sans";cursor:pointer}.tab.active{color:var(--ink);border-color:var(--orange)}button,a,input,select,textarea{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.catalog-top{display:grid;grid-template-columns:1fr auto;gap:15px;align-items:center}.search{height:52px;border:1px solid var(--ink);padding:0 16px;background:var(--panel);font-size:16px}.notice{margin:14px 0;padding:10px 13px;border-left:4px solid var(--orange);background:#f7dfd4;font-size:13px}.layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:28px}.facets{border-top:2px solid var(--ink);padding-top:13px}.facet{border-bottom:1px solid var(--line);padding:12px 0}.facet summary{cursor:pointer;font-weight:700}.facet label{display:flex;gap:8px;margin-top:8px;font-size:13px;cursor:pointer}.facet input{accent-color:var(--orange)}.sort{border:1px solid var(--line);padding:10px;background:var(--panel)}
.category-rail{display:flex;gap:9px;overflow:auto;margin:22px 0}.cat{white-space:nowrap;padding:9px 12px;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer}.cat.active{background:var(--deep);color:#fff;border-color:var(--deep)}.products{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.product{background:var(--panel);border:1px solid var(--line);display:flex;flex-direction:column;min-height:340px;animation:reveal .3s both}@keyframes reveal{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}.product-img{height:146px;background:#dce3df;display:grid;place-items:center;overflow:hidden}.product-img img{height:100%;width:100%;object-fit:cover}.product-img .missing{font-family:"Barlow Condensed";font-size:18px;color:var(--deep)}.product-body{padding:14px;display:flex;flex:1;flex-direction:column}.product h3{font-size:23px;line-height:.95}.product p{font-size:12px;color:var(--muted);line-height:1.45}.specs{margin-top:auto;border-top:1px solid var(--line);padding-top:9px;font-size:12px}.specs div{display:flex;justify-content:space-between;gap:8px}.specs span:first-child{color:var(--muted)}.button{border:1px solid var(--ink);background:var(--ink);color:#fff;padding:11px 14px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;gap:8px}.button:hover{background:var(--orange-dark);border-color:var(--orange-dark)}.button.secondary{background:transparent;color:var(--ink)}.button:disabled{background:#a9afaa;border-color:#a9afaa;cursor:not-allowed}.product .button{width:100%;margin-top:15px}.empty{border:1px dashed #8a9791;padding:38px;text-align:center;background:var(--panel)}.empty p{color:var(--muted)}.split-heading{display:flex;justify-content:space-between;gap:15px;align-items:end;margin-bottom:17px}.history-item{display:grid;grid-template-columns:80px 1fr auto;gap:15px;align-items:center;border-top:1px solid var(--line);padding:15px 0}.history-date{font:700 20px "Barlow Condensed";color:var(--orange-dark)}.history-item h3{font-size:22px}.history-item p{margin:3px 0;color:var(--muted);font-size:13px}.cart-drawer{position:fixed;z-index:20;right:0;top:0;width:min(480px,100%);height:100dvh;padding:26px;background:var(--panel);border-left:2px solid var(--ink);overflow:auto;box-shadow:-12px 0 40px #14242b22}.cart-line{padding:17px 0;border-bottom:1px solid var(--line)}.cart-line h3{font-size:21px}.line-fields{display:grid;grid-template-columns:90px 100px 1fr;gap:8px;margin-top:11px}.line-fields input,.line-fields select{width:100%;background:#fffef9;border:1px solid #87918c;padding:8px}.cart-actions{display:flex;justify-content:space-between;gap:10px;margin-top:23px}.status{font-size:13px;margin-top:11px;color:var(--muted)}.error{margin:15px 0;padding:12px;background:#f8d9d1;border-left:4px solid #ae3824}.modal{position:fixed;inset:0;background:#14242bb5;z-index:25;display:grid;place-items:center;padding:18px}.modal-card{width:min(680px,100%);max-height:90dvh;overflow:auto;background:var(--panel);padding:27px;border-top:8px solid var(--orange)}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.hide{display:none!important}.page-more{display:block;margin:25px auto}.cart-count{background:var(--orange);color:#fff;border-radius:20px;padding:2px 7px;font-size:12px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:700px){.store-shell{padding:25px 16px 50px}.mast{display:block}.account-select{margin-top:20px;width:100%}.layout{display:block}.facets{display:none}.catalog-top{grid-template-columns:1fr}.products{grid-template-columns:1fr}.history-item{grid-template-columns:62px 1fr}.history-item .button{grid-column:2}.detail-grid,.line-fields{grid-template-columns:1fr}.tabs{gap:15px}.tab{font-size:12px}.mast h1{font-size:49px}}
.button:not(.secondary){background:var(--orange-dark);border-color:var(--orange-dark);color:#fff}
.button:disabled{background:#5d6868;border-color:#5d6868;color:#fff}
.cart-actions{flex-wrap:wrap;justify-content:flex-start}.history-item img{width:72px;height:72px;object-fit:contain}
.category-rail .cat{display:flex;flex-direction:column;gap:8px;align-items:center;min-width:130px;text-transform:capitalize;font-weight:600}
.category-rail img,.category-placeholder{width:100px;height:65px;object-fit:contain}.category-placeholder{display:grid;place-items:center;font-weight:700;letter-spacing:.14em;border:1px solid currentColor;opacity:.6}
.search,.sort,.account-select{min-width:0;max-width:100%}.line-fields label{min-width:0}.cart-line p{overflow-wrap:anywhere}
.store-body>header>div>div{height:auto;min-height:64px;flex-wrap:wrap;gap:8px;padding-top:8px;padding-bottom:8px}
.store-body>header nav a{padding-left:8px;padding-right:8px}.store-body>header svg{flex-shrink:0}
@media(max-width:1100px){.store-body>header nav{flex-wrap:wrap}.store-body>header>div>div>div{flex-wrap:wrap}}
@media(max-width:700px){.facets{display:block;margin:16px 0}.facet{display:inline-block;vertical-align:top;min-width:45%;margin-right:3%}.facet label{min-height:32px}.split-heading{flex-wrap:wrap}.tabs{gap:10px}.history-item{grid-template-columns:60px minmax(0,1fr)}.history-item>div{min-width:0}.cart-actions .button{min-height:44px}.store-body>header>div>div>div{gap:10px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
.cart-count{background:var(--orange-dark)}
.checkout-head{display:flex;justify-content:space-between;align-items:end;gap:18px;border-bottom:2px solid var(--ink);padding-bottom:17px}.checkout-steps{display:flex;gap:28px;list-style:none;padding:0;margin:22px 0 28px;color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.checkout-steps li{display:flex;align-items:center;gap:8px}.checkout-steps span{display:grid;place-items:center;width:23px;height:23px;border:1px solid var(--line);border-radius:50%;font-size:11px}.checkout-steps .active,.checkout-steps .done{color:var(--ink)}.checkout-steps .active span{background:var(--orange-dark);border-color:var(--orange-dark);color:#fff}.checkout-steps .done span{background:var(--mint);border-color:var(--deep)}.checkout-panel,.request-confirmation{max-width:820px;background:var(--panel);border:1px solid var(--line);padding:clamp(20px,4vw,42px);border-top:7px solid var(--deep)}.section-kicker{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--orange-dark);margin-bottom:7px}.checkout-panel h2,.request-confirmation h2{font-size:clamp(32px,5vw,50px);line-height:.95}.quiet{color:var(--muted);max-width:630px;line-height:1.5}.checkout-lines{list-style:none;padding:0;margin:28px 0;border-top:1px solid var(--line)}.checkout-lines li{padding:13px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:16px}.checkout-lines li span{font:600 12px "DM Sans";color:var(--muted);text-align:right}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:23px}.form-grid label,.address-choice>label,.address-fields label{display:flex;flex-direction:column;gap:6px;font-weight:700;font-size:13px}.form-grid input,.form-grid select,.form-grid textarea,.address-choice select,.address-fields input{border:1px solid var(--ink);background:#fffef9;padding:10px;color:var(--ink);min-height:42px}.form-grid small{font-weight:400;color:var(--muted);line-height:1.35}.form-grid fieldset{border:1px solid var(--line);padding:12px}.form-grid legend{font-weight:700;font-size:13px;padding:0 5px}.choice{display:flex!important;flex-direction:row!important;align-items:center;margin:8px 0;cursor:pointer}.choice input{min-height:0}.address-choice{margin-top:20px}.address-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.reference-fields .wide{grid-column:1/-1}.reference-fields textarea{min-height:100px;resize:vertical}.attachments{margin-top:25px;border-top:1px solid var(--line);padding-top:18px}.attachments p{font-size:12px;color:var(--muted)}.attachments ul{padding-left:18px;font-size:13px}.text-button{border:0;background:none;color:var(--orange-dark);font-weight:700;text-decoration:underline;cursor:pointer}.checkout-actions{display:flex;gap:10px;margin:24px 0;max-width:820px}.quote-disclaimer{font-size:13px;color:var(--muted);max-width:650px;border-left:3px solid var(--orange);padding-left:11px}.request-confirmation{border-top-color:var(--orange-dark)}.request-confirmation>p{line-height:1.55;color:var(--muted);max-width:620px}.request-status{display:inline-block;background:var(--mint);border:1px solid var(--deep);padding:8px 11px;margin-top:14px;font-size:13px;font-weight:700}
@media(max-width:700px){.checkout-head{align-items:flex-start;flex-direction:column}.checkout-steps{gap:10px;justify-content:space-between;font-size:10px;letter-spacing:.03em}.checkout-steps li{gap:4px}.checkout-steps span{width:20px;height:20px}.checkout-panel,.request-confirmation{padding:23px 17px}.checkout-lines li{display:block}.checkout-lines li span{display:block;text-align:left;margin-top:5px}.form-grid,.address-fields{grid-template-columns:1fr}.checkout-actions{flex-wrap:wrap}.checkout-actions .button{flex:1;min-height:45px}}
.attachment-ready{color:#226348;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.attachment-pending{color:var(--orange-dark);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.receipt-section{border-top:1px solid var(--line);margin-top:23px;padding-top:16px}.receipt-section h3{font-size:20px}.receipt-section ul{list-style:none;padding:0;margin:9px 0}.receipt-section li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);font-size:13px}.receipt-section a{color:var(--focus);font-weight:700}.receipt-section span{color:var(--muted)}