/* V8 — clear material boundaries for buying and procurement surfaces. */
:root{--fm-panel-paper:#f5f3ed;--fm-panel-white:#fff;--fm-panel-line:#d2d3c9;--fm-panel-ink:#29312c;--fm-panel-muted:#555f55;--fm-panel-graphite:#28312c}

/* Category navigation: a quiet image stage and a visible destination. */
.v4-category{background:var(--fm-panel-paper);border:1px solid var(--fm-panel-line);border-radius:2px;transition:border-color .18s,background-color .18s;min-width:0}
.v4-category:hover{background:#efeee7;border-color:#8b9683}
.v4-category img,.v4-category.light-image img{object-fit:contain}
.v4-category h3{color:var(--fm-panel-ink);gap:10px}
.v4-category h3>.fm-icon{flex-shrink:0;width:30px;height:30px;padding:6px;border:1px solid #b6bfb0;border-radius:2px;background:#fff;color:#3f5037;transition:background-color .18s,color .18s,border-color .18s}
.v4-category:hover h3>.fm-icon{background:#35452e;border-color:#35452e;color:#fff}
.v4-category p,.v4-category .category-n{color:var(--fm-panel-muted)}
.v4-category-request{background:#e6ebdd;border-color:#aebca0}
.v4-category-request:hover{background:#dde5d0;border-color:#71865c}
.v4-category-request .request-category-icon>.fm-icon{width:46px;height:46px;color:#526b40}

/* Support cards use restrained paper surfaces rather than multiple green boxes. */
.support-panel,.support-panel-olive,.support-route-card,.support-specimen,.support-desk-card,.support-detail-card,.retail-help article,.v4-guide{background:var(--fm-panel-paper);border:1px solid var(--fm-panel-line);border-radius:2px;box-shadow:none}
.support-panel-icon{width:44px;height:44px;background:#fff;border-color:#bec6b7;border-radius:2px;color:#4b603d}
.support-panel h2,.support-detail-card h3,.retail-help h3,.v4-guide h3{color:var(--fm-panel-ink)}
.support-panel p,.support-detail-card p,.support-route-card>p,.support-desk-card p,.retail-help p,.v4-guide p{color:var(--fm-panel-muted)}
.support-route-card,.support-desk-card,.support-specimen{border-top:3px solid #6e805e}
.support-specimen-row{border-color:var(--fm-panel-line)}
.support-specimen-icon{color:#526448}
.support-desk-card>a{border-color:#bdc6b4}
.support-end{background:var(--fm-panel-graphite)}
.v4-guide{border-top:2px solid #718562}
.v4-guide .text-link,.support-link{font-weight:500}

/* The trade form is a work surface; the section labels carry the olive accent. */
.trade-request{background:var(--fm-panel-paper);border-color:#bfc6b7;box-shadow:inset 0 3px #35452e;border-radius:2px;padding:36px}
.trade-request>.request-intro{color:var(--fm-panel-muted)}
.trade-request h2,.trade-request .fm-form-heading h3{color:var(--fm-panel-ink)}
.trade-request .fm-form-heading>span{background:#35452e;color:#fff}
.trade-request .trade-table-head,.trade-request .trade-form-grid,.trade-request .trade-submit-row,.trade-request .trade-row{border-color:#c6cbbf}
.trade-request .trade-table-head{color:#535e50}
.trade-request .trade-field-note,.trade-request .trade-submit-row p{color:var(--fm-panel-muted)}
.trade-request :is(input,select,textarea){background:#fff;border-color:#adb7a4}
.trade-request .trade-row button{background:#fff;border-color:#bfc8b6;color:#526448}
.trade-request .trade-row button:hover{background:#e8eddf;border-color:#7e926b;color:#354a28}
.trade-request .trade-list-actions button{background:#fff;border-color:#b4c0a8}
.trade-request .trade-list-actions button:hover{background:#e9eedf;border-color:#7b9168}
.trade-steps{background:transparent;border:0;border-top:1px solid #bfc8b5;border-bottom:1px solid #cbd2c2}
.trade-steps article{border-color:#cbd2c2}
.trade-steps span{border:0;background:#e6ebdf;color:#4d623e;border-radius:2px}
.trade-steps p{color:var(--fm-panel-muted)}

/* A single graphite summary anchors the cart total and its primary action. */
.cart-line-image.photo-cover img{object-fit:contain;padding:8px}
.cart-summary{background:var(--fm-panel-graphite);border:1px solid #28312c;border-radius:2px;box-shadow:inset 0 3px #9cae83;color:#f5f5ed}
.cart-summary h2,.cart-summary dd,.cart-summary .cart-subtotal,.cart-summary .cart-subtotal dt{color:#f5f5ed}
.cart-summary dt,.cart-summary-note,.cart-summary .cart-demo-note{color:#cbd4c3}
.cart-summary dl .cart-subtotal{border-color:#57644f}
.cart-summary .cart-btn{background:#d7e2b8;border-color:#d7e2b8;color:#283423;font-weight:500}
.cart-summary .cart-btn:hover{background:#e2ebca;border-color:#e2ebca}
.cart-summary .cart-btn:disabled{background:#56634d;border-color:#68775d;color:#d1dac8;cursor:not-allowed}
.cart-summary .cart-quiet-link{color:#e1e8d4;border-color:#8c9e77}
.cart-summary :is(a,button):focus-visible{outline-color:#d7e2b8}
.cart-primary:has(#cart-contact-form),.cart-primary:has(.cart-review-items){background:var(--fm-panel-paper);border:1px solid var(--fm-panel-line);border-radius:2px;padding:28px;min-width:0}
.cart-primary .cart-panel-heading{color:var(--fm-panel-ink)}
.cart-primary .cart-panel-intro{color:var(--fm-panel-muted)}
.cart-address-note{background:#fff;border-color:#c8d0be;color:#526148}
.cart-review-banner{background:#e8eddf;border-color:#71885b;color:#34492a}
.cart-review-contacts{gap:20px 30px}
.cart-review-contacts>div{padding-top:14px;border-top:1px solid #d2d7c9}
.cart-empty{background:var(--fm-panel-paper);border-color:var(--fm-panel-line)}

/* An illustrative trade document: no inventory, discounts or delivery promises. */
.fm-offer{margin-top:36px;padding:22px 28px;background:#fff;border:1px solid #c7cebd;border-top:3px solid #35452e;border-radius:2px;color:#29312c}
.fm-offer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:22px;margin-bottom:15px}
.fm-offer-head h2{font-size:26px;line-height:1.2;font-weight:500;letter-spacing:-.035em;margin:7px 0 0}
.fm-offer-kicker{font:11px/1.5 PlexMono,monospace;letter-spacing:.035em;color:#536348}
.fm-offer-mark{flex-shrink:0;display:inline-flex;align-items:center;gap:8px;padding:8px 11px;background:#edf1e6;border:1px solid #c6d0ba;color:#435936;font-size:12px;line-height:1.5}
.fm-offer-mark>.fm-icon{width:17px;height:17px;flex-shrink:0}
.fm-offer-caption{font-size:14px;line-height:1.6;color:#555f55;margin:0 0 14px;max-width:100ch}
.fm-offer-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:14px;line-height:1.5}
.fm-offer-table caption{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.fm-offer-table th{font-size:11px;line-height:1.5;letter-spacing:.025em;font-weight:500;color:#536348;text-align:left;background:#f5f6f0;padding:10px 12px;border-top:1px solid #d2d8c8;border-bottom:1px solid #d2d8c8}
.fm-offer-table th:first-child{width:37%}
.fm-offer-table th:nth-child(2){width:12%}
.fm-offer-table th:nth-child(3){width:19%}
.fm-offer-table th:nth-child(4),.fm-offer-table th:nth-child(5){width:16%;text-align:right}
.fm-offer-table td{padding:10px 12px;border-bottom:1px solid #e0e4d8;vertical-align:top;overflow-wrap:anywhere}
.fm-offer-table td:nth-child(4),.fm-offer-table td:nth-child(5){text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.fm-offer-table td:last-child{font-weight:500}
.fm-offer-table td strong{display:block;font-size:14px;line-height:1.5;font-weight:500}
.fm-offer-table td small{display:block;color:#5d6758;font:11px/1.6 PlexMono,monospace;margin-top:3px}
.fm-offer-foot{display:flex;justify-content:space-between;gap:22px;align-items:center;padding-top:14px}
.fm-offer-note{font-size:12px;line-height:1.7;color:#555f55;margin:0;max-width:60ch}
.fm-offer-total{display:flex;align-items:baseline;gap:17px;flex-shrink:0;font-size:13px;line-height:1.5;color:#4e5c45}
.fm-offer-total strong{font-size:27px;line-height:1.2;font-weight:500;letter-spacing:-.025em;color:#2e3d27;font-variant-numeric:tabular-nums;white-space:nowrap}
.fm-offer-link{display:inline-flex;align-items:center;gap:13px;min-height:44px;font-size:14px;line-height:1.5;font-weight:500;border-bottom:1px solid #aabb96;margin-top:6px;color:#354d27}
.fm-offer-link>.fm-icon{width:19px;height:19px;flex-shrink:0}

@media(max-width:1000px){
 .fm-offer{padding:24px}
 .fm-offer-table th:first-child{width:34%}
 .fm-offer-table th:nth-child(2){width:12%}
 .fm-offer-table th:nth-child(3){width:20%}
 .fm-offer-table th:nth-child(4),.fm-offer-table th:nth-child(5){width:17%}
 .fm-offer-foot{align-items:flex-start}
 .fm-offer-total{display:block;text-align:right}
 .fm-offer-total strong{display:block;margin-top:4px}
}
@media(max-width:760px){
 .v4-category h3>.fm-icon{width:27px;height:27px;padding:5px}
 .support-panel,.support-detail-card,.retail-help article,.v4-guide{padding:24px}
 .trade-request{padding:26px 18px;margin-left:0;margin-right:0}
 .trade-request .trade-row{padding-top:18px}
 .cart-primary:has(#cart-contact-form),.cart-primary:has(.cart-review-items){padding:23px 18px}
 .cart-review-contacts{gap:16px}
 .fm-offer{padding:22px 20px;margin-top:28px}
 .fm-offer-head{display:block;margin-bottom:13px}
 .fm-offer-head h2{font-size:26px;margin-top:10px}
 .fm-offer-mark{margin-top:16px;font-size:12px}
 .fm-offer-caption{font-size:14px;line-height:1.65}
 .fm-offer-table,.fm-offer-table tbody{display:block;width:100%}
 .fm-offer-table thead{display:none}
 .fm-offer-table tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 14px;padding:18px 0;border-top:1px solid #cfd7c4}
 .fm-offer-table tr:last-child{border-bottom:1px solid #cfd7c4}
 .fm-offer-table td{display:block;padding:0;border:0;min-width:0;text-align:left;font-size:14px;line-height:1.55}
 .fm-offer-table td:before{content:attr(data-label);display:block;font-size:11px;line-height:1.5;letter-spacing:.02em;color:#5b6b4f;margin-bottom:4px}
 .fm-offer-table td:first-child{grid-column:1/-1}
 .fm-offer-table td:first-child:before{display:none}
 .fm-offer-table td strong{font-size:16px}
 .fm-offer-table td:nth-child(4),.fm-offer-table td:nth-child(5){text-align:left}
 .fm-offer-foot{display:flex;flex-direction:column;align-items:stretch;gap:17px;padding-top:19px}
 .fm-offer-total{display:flex;align-items:baseline;justify-content:space-between;gap:16px;text-align:left;order:-1}
 .fm-offer-total strong{display:inline;margin:0;font-size:26px}
 .fm-offer-note{font-size:13px;line-height:1.7;max-width:60ch}
 .fm-offer-link{font-size:14px;margin-top:7px}
}
@media(max-width:360px){
 .v4-category h3{gap:5px;font-size:18px}
 .v4-category h3>.fm-icon{width:23px;height:23px;padding:4px}
 .fm-offer{padding:20px 16px}
 .fm-offer-kicker{font-size:10px;letter-spacing:0}
 .fm-offer-total{font-size:12px;gap:10px}
 .fm-offer-total strong{font-size:24px}
}
@media(prefers-reduced-motion:reduce){.v4-category,.v4-category h3>.fm-icon{transition:none}}
