
/* ============================================================
   Homepage Product Systems — Original v8 card composition
   ============================================================ */
#products .products-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}
#products .product-card{position:relative;display:flex;flex-direction:column;min-width:0;background:var(--white);border:1px solid rgba(13,27,42,.06);border-radius:var(--radius);overflow:hidden;box-shadow:0 4px 20px rgba(13,27,42,.055);color:inherit;text-decoration:none;transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease)}
#products .product-card:hover{transform:translateY(-4px);border-color:rgba(201,169,97,.4);box-shadow:0 14px 36px rgba(13,27,42,.11)}
#products .product-img{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;background:#edf1f4}
#products .product-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s var(--ease)}
#products .product-card:hover .product-img img{transform:scale(1.045)}
#products .product-badge{position:absolute;z-index:2;top:12px;left:12px;display:inline-flex;align-items:center;min-height:24px;padding:4px 10px;border-radius:20px;background:var(--gold);color:var(--navy);font-size:11px;font-weight:700;line-height:1;box-shadow:0 2px 8px rgba(13,27,42,.12)}
#products .product-img-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#cbd3dc}
#products .product-img-placeholder svg{width:46px;height:46px}
#products .product-info{display:flex;flex-direction:column;flex:1;padding:18px 18px 20px}
#products .product-info h3{margin:0 0 8px;font-size:17px;font-weight:650;color:var(--navy);line-height:1.3}
#products .product-info p{margin:0;font-size:13px;color:var(--text-mid);line-height:1.55;min-height:0}
#products .product-meta{display:none}
#products .product-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
#products .moq-badge,#products .lead-badge{display:inline-flex;align-items:center;min-height:23px;padding:4px 9px;border-radius:5px;font-size:11px;font-weight:600;color:var(--steel);background:rgba(27,58,91,.07)}
#products .lead-badge{color:#7a622c;background:rgba(201,169,97,.14)}
#products .product-cta-card{min-height:100%;background:var(--navy);border-radius:var(--radius);padding:32px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;box-shadow:0 7px 28px rgba(13,27,42,.12)}
#products .product-cta-card .cta-icon{width:42px;height:42px;color:var(--gold);opacity:.9}
#products .product-cta-card h3{margin:0;font-size:20px;color:#fff;font-weight:600}
#products .product-cta-card p{margin:0 0 4px;font-size:13px;color:rgba(255,255,255,.68);line-height:1.6}
#products .product-cta-card .btn{width:100%;padding-inline:16px}
@media(max-width:1100px){#products .products-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){#products .products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){#products .products-grid{grid-template-columns:1fr}}

/* Homepage: header floats over hero — remove body offset */
body.home{padding-top:0!important}
@media(max-width:768px){body.home{padding-top:0!important}}

/* ── Requirement Cards ───────────────────────────────── */
.requirement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:40px}
.requirement-card{display:block!important;padding:28px 24px!important;min-height:0!important;background:var(--white);border:1px solid var(--border);border-radius:8px;overflow:hidden;text-align:left;transition:border-color .25s,box-shadow .25s,transform .25s;text-decoration:none}
.requirement-card:hover{border-color:var(--gold)!important;box-shadow:0 8px 32px rgba(13,27,42,.10)!important;transform:translateY(-2px)}
.requirement-card .req-icon{position:relative;display:flex!important;align-items:center!important;justify-content:center!important;width:76px!important;height:76px!important;min-height:0!important;margin:0 0 28px!important;padding:0!important;border-radius:50%;background:#fbf8f0!important;color:var(--gold)!important}
.requirement-card .req-icon::before{display:none!important}
.requirement-card .req-icon svg{position:relative;z-index:1;display:block;width:32px!important;height:32px!important;stroke:var(--gold)!important;color:var(--gold)!important;flex-shrink:0}
.requirement-card .req-icon{background-color:#fbf8f0!important;background-repeat:no-repeat!important;background-position:center!important;background-size:32px 32px!important}
.requirement-grid .requirement-card:nth-child(1) .req-icon{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C9A961' stroke-width='1.5'><path d='M3 12h2l3-9 4 18 3-12 2 6h4'/></svg>")!important}
.requirement-grid .requirement-card:nth-child(2) .req-icon{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C9A961' stroke-width='1.5'><path d='M12 2v20M2 12h20'/><path d='M12 2 4 7v10l8 5 8-5V7z'/></svg>")!important}
.requirement-grid .requirement-card:nth-child(3) .req-icon{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C9A961' stroke-width='1.5'><path d='M3 21V3h18v18M3 9h18M3 15h18M9 3v18M15 3v18'/></svg>")!important}
.requirement-grid .requirement-card:nth-child(4) .req-icon{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C9A961' stroke-width='1.5'><path d='M2 16c2-2 4-2 6 0s4 2 6 0 4-2 6 0M2 12c2-2 4-2 6 0s4 2 6 0 4-2 6 0'/></svg>")!important}
.requirement-grid .requirement-card:nth-child(5) .req-icon{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C9A961' stroke-width='1.5'><path d='M3 10v4M7 8v8M11 5v14M15 8v8M19 10v4'/></svg>")!important}
.requirement-grid .requirement-card:nth-child(6) .req-icon{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C9A961' stroke-width='1.5'><circle cx='12' cy='12' r='5'/><path d='M12 2v3M12 19v3M2 12h3M19 12h3'/></svg>")!important}
#products .product-cta-card .wp-block-button{width:100%;background:none!important;border:0!important;padding:0!important;box-shadow:none!important}
#products .product-cta-card .wp-block-button__link{width:100%;border:none;border-radius:8px;background:var(--gold);color:var(--navy);box-shadow:none}
.requirement-card h3{margin:0 0 12px!important;padding:0!important;font-size:20px;color:var(--navy);font-weight:600;line-height:1.3;text-align:left}
.requirement-card p{margin:0!important;padding:0!important;font-size:16px;color:var(--text-mid);line-height:1.6;text-align:left}
@media(max-width:900px){.requirement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.requirement-grid{grid-template-columns:1fr}}

