:root {
    --black: #111111;
    --black-2: #1b1b1b;
    --white: #ffffff;
    --off-white: #f6f6f2;
    --soft: #eeeeea;
    --line: #ddddda;
    --muted: #6f6f69;
    --yellow: #f5df16;
    --yellow-2: #ffec2e;
    --success: #18864b;
    --danger: #b42318;
    --radius: 22px;
    --radius-sm: 12px;
    --shadow: 0 20px 60px rgba(17,17,17,.08);
    --container: min(1400px, calc(100% - 48px));
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--white); color: var(--black); font: 16px/1.55 "DM Sans", Arial, sans-serif; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button { cursor: pointer; }
img { max-width: 100%; display: block; }
.container { width: var(--container); margin-inline: auto; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.skip-link { position: fixed; left: 12px; top: -60px; background: var(--yellow); color: var(--black); padding: 10px 14px; z-index: 9999; font-weight: 700; }
.skip-link:focus { top: 12px; }
.eyebrow { display: inline-flex; align-items:center; gap:8px; font: 700 11px/1 "Manrope", sans-serif; letter-spacing:.14em; text-transform:uppercase; color:#5e5e58; }
.eyebrow i { width:8px; height:8px; background:var(--yellow); border-radius:50%; }
.eyebrow-dark { color:#cfcfc7; }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 22px; border:1px solid var(--black); border-radius:999px; background:var(--black); color:var(--white); font-weight:700; transition:.2s ease; }
.button:hover { transform:translateY(-1px); background:#000; }
.button-outline { background:transparent; color:var(--black); }
.button-outline:hover { background:var(--black); color:var(--white); }
.button-yellow { background:var(--yellow); color:var(--black); border-color:var(--yellow); }
.button-yellow:hover { background:var(--yellow-2); }
.button-small { min-height:38px; padding:0 16px; font-size:13px; }
.button-full { width:100%; }
.button-outline-dark { background:transparent; border-color:#333; color:var(--black); }
.button-ghost-dark { width:100%; background:#222; border-color:#333; color:#fff; }
.icon-button { border:0; background:transparent; min-width:44px; min-height:44px; padding:8px; color:inherit; }
.trust-strip { background:var(--yellow); color:var(--black); font-size:12px; }
.trust-strip-inner { min-height:34px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.trust-strip strong { font-family:"Manrope", sans-serif; text-transform:uppercase; letter-spacing:.08em; font-size:10px; margin-right:6px; }
.trust-strip-note { color:#3f3a00; }
.site-header { position:sticky; top:0; z-index:1000; background:rgba(255,255,255,.97); border-bottom:1px solid var(--line); backdrop-filter: blur(18px); }
.header-main { min-height:76px; display:grid; grid-template-columns:auto minmax(260px,1fr) auto; align-items:center; gap:32px; }
.brand { display:inline-flex; align-items:center; gap:11px; min-width:max-content; }
.brand-mark { width:38px; height:38px; border-radius:50%; background:var(--black); color:var(--yellow); display:grid; place-items:center; font:800 19px/1 "Manrope", sans-serif; }
.brand-copy { display:grid; line-height:1.05; }
.brand-copy strong, .brand-admin strong { font:800 15px/1.1 "Manrope", sans-serif; letter-spacing:-.02em; }
.brand-copy small, .brand-admin small { margin-top:4px; color:#777; font:700 9px/1 "Manrope", sans-serif; letter-spacing:.12em; text-transform:uppercase; }
.header-search { max-width:700px; width:100%; justify-self:center; }
.search-shell { width:100%; height:46px; border:1px solid #dadad5; border-radius:999px; background:#f7f7f4; display:flex; align-items:center; gap:12px; padding:0 14px 0 18px; color:#73736d; text-align:left; }
.search-shell:hover { border-color:#aaa; }
.search-shell kbd { margin-left:auto; width:24px; height:24px; display:grid; place-items:center; border:1px solid #d6d6d0; border-radius:6px; background:#fff; font-size:11px; }
.search-icon { width:14px; height:14px; border:1.8px solid var(--black); border-radius:50%; position:relative; flex:none; }
.search-icon:after { content:""; position:absolute; width:6px; height:1.8px; background:var(--black); transform:rotate(45deg); right:-5px; bottom:-2px; }
.header-actions { display:flex; align-items:center; gap:8px; }
.header-action { min-height:44px; display:flex; align-items:center; gap:8px; padding:0 14px; border-radius:999px; font-weight:700; font-size:13px; }
.header-action:hover { background:#f5f5f1; }
.header-action strong { width:20px; height:20px; border-radius:50%; background:var(--yellow); display:grid; place-items:center; font-size:10px; }
.menu-toggle { display:none; }
.category-nav-wrap { overflow:hidden; }
.category-nav { min-height:46px; display:flex; align-items:center; gap:30px; white-space:nowrap; overflow-x:auto; scrollbar-width:none; font-weight:600; font-size:13px; }
.category-nav::-webkit-scrollbar { display:none; }
.category-nav a:first-child { color:#7c6f00; }
.category-nav a:hover { text-decoration:underline; text-underline-offset:5px; }
.hero { background:var(--off-white); padding:40px 0 54px; overflow:hidden; }
.hero-grid { min-height:660px; display:grid; grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr); gap:52px; align-items:center; }
.hero-copy { padding:48px 0; max-width:700px; }
.hero-copy h1 { margin:24px 0 20px; font:800 clamp(48px,6vw,92px)/.94 "Manrope", sans-serif; letter-spacing:-.065em; max-width:850px; }
.hero-copy > p { max-width:630px; margin:0; font-size:18px; line-height:1.65; color:#5d5d57; }
.hero-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:32px; }
.hero-proof { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:64px; padding-top:24px; border-top:1px solid #d7d7d2; }
.hero-proof div { display:grid; gap:3px; }
.hero-proof strong { font:700 13px "Manrope",sans-serif; }
.hero-proof span { color:#777; font-size:12px; }
.hero-visual { position:relative; min-height:610px; background:var(--black); border-radius:var(--radius); overflow:hidden; isolation:isolate; }
.hero-yellow { position:absolute; inset:0 0 auto auto; width:44%; height:100%; background:var(--yellow); z-index:-1; }
.hero-visual:after { content:""; position:absolute; inset:0; background:linear-gradient(135deg,transparent 0 58%,rgba(255,255,255,.08) 58% 59%,transparent 59%); pointer-events:none; }
.product-silhouette { position:absolute; bottom:40px; width:42%; height:74%; background:#e9e9e5; filter:drop-shadow(0 20px 25px rgba(0,0,0,.28)); }
.product-silhouette.shirt { left:11%; clip-path:polygon(24% 0,40% 7%,60% 7%,76% 0,100% 15%,88% 36%,78% 30%,78% 100%,22% 100%,22% 30%,12% 36%,0 15%); }
.product-silhouette.jacket { right:7%; width:38%; height:79%; background:#272727; clip-path:polygon(25% 0,41% 7%,59% 7%,75% 0,100% 18%,87% 38%,79% 32%,76% 100%,24% 100%,21% 32%,13% 38%,0 18%); }
.product-silhouette span { position:absolute; width:2px; height:80%; top:13%; left:50%; background:rgba(0,0,0,.12); }
.jacket span { background:rgba(255,255,255,.12); }
.hero-label { position:absolute; left:28px; top:28px; color:#fff; display:flex; gap:12px; align-items:flex-start; }
.hero-label span { color:var(--yellow); font:800 11px "Manrope"; }
.hero-label strong { font:800 18px/1.05 "Manrope"; text-transform:uppercase; letter-spacing:-.04em; }
.hero-caption { position:absolute; right:24px; bottom:20px; font:700 9px "Manrope"; letter-spacing:.14em; color:#4b4500; }
.section { padding:104px 0; }
.section-head { display:grid; grid-template-columns:1fr minmax(280px,520px); gap:60px; align-items:end; margin-bottom:42px; }
.section-head h2, .procurement-intro h2, .branding-copy h2, .quote-cta h2 { margin:10px 0 0; font:800 clamp(36px,4vw,62px)/1 "Manrope",sans-serif; letter-spacing:-.055em; }
.section-head > p { margin:0; color:#65655f; max-width:520px; }
.section-head.compact { align-items:center; }
.stage-pill { justify-self:end; border:1px solid var(--line); border-radius:999px; padding:9px 13px; font:700 9px "Manrope"; letter-spacing:.1em; }
.category-editorial-grid { display:grid; grid-template-columns:repeat(4,1fr); grid-auto-rows:260px; gap:12px; }
.category-card { position:relative; overflow:hidden; border-radius:18px; background:#ededE8; padding:22px; min-height:260px; display:flex; flex-direction:column; justify-content:space-between; transition:.25s ease; }
.category-card:hover { transform:translateY(-3px); box-shadow:var(--shadow); }
.category-featured { grid-column:span 2; grid-row:span 2; }
.category-index { position:relative; z-index:2; font:800 10px "Manrope"; letter-spacing:.12em; }
.category-art { position:absolute; inset:0; overflow:hidden; }
.category-art:before, .category-art:after, .category-art i, .category-art b { content:""; position:absolute; display:block; }
.category-art:before { width:54%; height:88%; right:1%; bottom:-18%; border-radius:38% 38% 12% 12%; background:rgba(0,0,0,.10); transform:rotate(-10deg); }
.category-art:after { width:32%; height:70%; right:17%; bottom:-14%; background:rgba(255,255,255,.55); border-radius:40% 40% 8% 8%; transform:rotate(8deg); }
.category-art i { width:120px; height:120px; border-radius:50%; background:var(--yellow); right:12%; top:12%; }
.category-art b { inset:auto 0 0 0; height:44%; background:linear-gradient(transparent,rgba(0,0,0,.08)); }
.category-copy { position:relative; z-index:2; }
.category-copy small { display:block; color:#595953; font-size:11px; margin-bottom:5px; }
.category-copy h3 { margin:0; font:800 24px/1 "Manrope"; letter-spacing:-.04em; }
.category-featured .category-copy h3 { font-size:42px; }
.category-copy span { display:block; margin-top:12px; font-size:12px; font-weight:700; }
.cat-workwear { background:#dcdeda; }
.cat-workwear .category-art i { background:#ffec36; }
.cat-headwear { background:#eee9df; }
.cat-bags { background:#dfe4de; }
.cat-gifting { background:#f3efdf; }
.cat-chef { background:#e7e7e2; }
.cat-sport { background:#dfe3e6; }
.cat-sublimation { background:#efefec; }
.procurement-section { background:var(--black); color:#fff; padding:110px 0; }
.procurement-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:90px; }
.procurement-intro { position:sticky; top:180px; align-self:start; }
.procurement-features { display:grid; }
.procurement-features article { display:grid; grid-template-columns:46px 1fr; gap:25px; padding:26px 0; border-top:1px solid #333; }
.procurement-features article:last-child { border-bottom:1px solid #333; }
.procurement-features > article > span { color:var(--yellow); font:800 11px "Manrope"; }
.procurement-features h3 { margin:0 0 5px; font:700 22px "Manrope"; }
.procurement-features p { margin:0; color:#aaa; max-width:650px; }
.product-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.product-card { border:1px solid var(--line); border-radius:16px; overflow:hidden; background:#fff; }
.product-image-placeholder { aspect-ratio:4/5; background:#f2f2ee; display:grid; place-items:center; position:relative; overflow:hidden; color:#aaa; font-size:11px; text-transform:uppercase; letter-spacing:.1em; }
.product-image-placeholder:before { content:""; width:58%; height:70%; background:#d7d7d1; position:absolute; bottom:-5%; clip-path:polygon(20% 0,38% 8%,62% 8%,80% 0,100% 18%,86% 38%,77% 31%,77% 100%,23% 100%,23% 31%,14% 38%,0 18%); }
.product-image-placeholder i { position:absolute; width:72px; height:72px; background:var(--yellow); border-radius:50%; top:8%; right:8%; }
.product-image-placeholder span { position:absolute; z-index:2; bottom:12px; left:12px; }
.product-card-body { padding:17px; }
.product-brand { font:800 9px "Manrope"; letter-spacing:.12em; color:#74746f; }
.product-card h3 { margin:5px 0 12px; font:700 17px/1.2 "Manrope"; }
.product-meta { display:flex; justify-content:space-between; gap:10px; color:#777; font-size:10px; }
.swatches { display:flex; align-items:center; gap:5px; margin:16px 0; }
.swatches i { width:14px; height:14px; border-radius:50%; background:#111; border:1px solid #ccc; }
.swatches i:nth-child(2) { background:#c6c6c2; }
.swatches i:nth-child(3) { background:#22315c; }
.swatches b { font-size:10px; color:#777; font-weight:500; margin-left:3px; }
.product-card-foot { display:flex; justify-content:space-between; gap:12px; align-items:center; padding-top:14px; border-top:1px solid #eee; font-size:11px; }
.product-card-foot a { font-weight:700; text-decoration:underline; text-underline-offset:3px; }
.branding-section { background:var(--yellow); padding:100px 0; }
.branding-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.branding-visual { min-height:520px; background:var(--black); border-radius:var(--radius); position:relative; overflow:hidden; }
.branding-visual:before { content:""; position:absolute; width:58%; height:85%; left:21%; bottom:-15%; background:#f2f2ee; clip-path:polygon(20% 0,38% 8%,62% 8%,80% 0,100% 18%,86% 38%,77% 31%,77% 100%,23% 100%,23% 31%,14% 38%,0 18%); }
.brand-target { position:absolute; z-index:2; width:86px; height:86px; border:1px dashed var(--yellow); border-radius:50%; left:39%; top:31%; display:grid; place-items:center; color:#111; background:rgba(245,223,22,.9); font:800 12px/1 "Manrope"; text-align:center; }
.placement { position:absolute; z-index:3; color:#fff; font-size:10px; background:#222; border:1px solid #444; border-radius:999px; padding:7px 10px; }
.placement-one { left:12%; top:27%; }
.placement-two { right:10%; top:43%; }
.placement-three { left:15%; bottom:14%; }
.branding-copy p { max-width:600px; color:#4b4600; font-size:17px; }
.branding-copy ol { list-style:none; padding:0; margin:32px 0 0; display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
.branding-copy li { display:flex; align-items:center; gap:10px; padding:13px 0; border-top:1px solid rgba(0,0,0,.18); font-weight:700; }
.branding-copy li span { width:24px; height:24px; border-radius:50%; background:#111; color:var(--yellow); display:grid; place-items:center; font-size:10px; }
.quote-cta { background:#181818; color:#fff; padding:90px 0; }
.quote-cta-inner { display:flex; justify-content:space-between; align-items:end; gap:50px; }
.quote-cta p { color:#a9a9a2; max-width:650px; margin-bottom:0; }
.site-footer { background:#0f0f0f; color:#fff; padding:75px 0 105px; }
.footer-grid { display:grid; grid-template-columns:2fr repeat(3,1fr); gap:55px; padding-bottom:55px; }
.brand-light .brand-mark { background:var(--yellow); color:#111; }
.brand-light .brand-copy small { color:#aaa; }
.footer-brand p { color:#aaa; max-width:360px; }
.reseller-disclosure { display:inline-block; color:#777; font-size:11px; margin-top:10px; }
.footer-grid h3 { margin:2px 0 18px; color:#777; font:700 10px "Manrope"; letter-spacing:.12em; text-transform:uppercase; }
.footer-grid > div:not(.footer-brand) { display:flex; flex-direction:column; gap:10px; }
.footer-grid a, .footer-grid span { color:#bbb; font-size:13px; }
.footer-grid a:hover { color:#fff; }
.footer-bottom { display:flex; justify-content:space-between; gap:25px; border-top:1px solid #2b2b2b; padding-top:24px; color:#777; font-size:10px; }
.mobile-bottom-nav { display:none; }
.mobile-drawer { position:fixed; z-index:1200; inset:0; background:#fff; padding:20px; }
.mobile-drawer-head { display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid var(--line); padding-bottom:14px; }
.mobile-drawer nav { display:grid; margin-top:15px; }
.mobile-drawer nav a { padding:14px 3px; border-bottom:1px solid #eee; font:700 22px "Manrope"; }
.search-modal { position:fixed; inset:0; z-index:1400; background:rgba(0,0,0,.66); backdrop-filter:blur(8px); padding:9vh 20px 20px; }
.search-modal-panel { background:#fff; max-width:880px; margin:auto; border-radius:22px; padding:24px; box-shadow:0 40px 100px rgba(0,0,0,.2); }
.search-modal-head { display:flex; align-items:center; justify-content:space-between; padding-bottom:15px; }
.search-input-wrap input { width:100%; height:64px; border:1px solid #ccc; border-radius:14px; padding:0 18px; font-size:17px; outline:none; }
.search-input-wrap input:focus { border-color:#111; box-shadow:0 0 0 3px rgba(245,223,22,.45); }
.search-empty { margin-top:14px; background:#f5f5f1; border-radius:14px; padding:18px; display:flex; gap:14px; }
.search-empty p { margin:4px 0 0; color:#777; font-size:13px; }
.yellow-dot { width:11px; height:11px; background:var(--yellow); border-radius:50%; margin-top:5px; flex:none; }
.error-page { min-height:60vh; display:grid; place-items:center; padding:100px 0; background:var(--off-white); }
.error-page .container { text-align:center; max-width:800px; }
.error-page h1 { font:800 clamp(44px,7vw,92px)/.95 "Manrope"; letter-spacing:-.06em; margin:14px 0; }
.error-page p { color:#666; margin-bottom:28px; }
.auth-body { min-height:100vh; background:#f2f2ee; }
.auth-shell { min-height:100vh; display:grid; grid-template-columns:1fr 1fr; }
.auth-brand-panel { background:#111; color:#fff; padding:50px clamp(28px,5vw,85px); display:flex; flex-direction:column; justify-content:space-between; }
.auth-brand-panel h1 { font:800 clamp(48px,6vw,84px)/.95 "Manrope"; letter-spacing:-.06em; margin:18px 0; max-width:650px; }
.auth-brand-panel p { color:#aaa; max-width:550px; }
.text-link-light { color:#bbb; font-size:13px; }
.auth-form-panel { display:grid; place-items:center; padding:40px; }
.auth-form { width:min(100%,460px); background:#fff; padding:42px; border-radius:22px; box-shadow:var(--shadow); }
.auth-form h2 { font:800 35px "Manrope"; letter-spacing:-.04em; margin:10px 0 26px; }
.auth-form label { display:grid; gap:7px; font-weight:700; font-size:12px; margin:15px 0; }
.auth-form input { height:50px; border:1px solid #d2d2cd; border-radius:10px; padding:0 14px; outline:none; }
.auth-form input:focus { border-color:#111; box-shadow:0 0 0 3px rgba(245,223,22,.45); }
.form-note { color:#888; font-size:11px; margin:15px 0 0; }
.alert { padding:12px 14px; border-radius:10px; font-size:12px; margin-bottom:18px; }
.alert-error { background:#fff0ee; color:#8c1d18; border:1px solid #f3c6c1; }
.admin-body { background:#f4f4f0; }
.admin-shell { min-height:100vh; display:grid; grid-template-columns:250px 1fr; }
.admin-sidebar { background:#111; color:#fff; padding:24px 18px; display:flex; flex-direction:column; position:sticky; top:0; height:100vh; }
.brand-admin { color:#fff; margin:4px 8px 30px; }
.brand-admin > span:last-child { display:grid; }
.admin-menu { display:grid; gap:4px; }
.admin-menu a, .admin-menu span { padding:11px 12px; border-radius:9px; color:#aaa; font-size:13px; }
.admin-menu .is-active { background:var(--yellow); color:#111; font-weight:700; }
.admin-menu span { opacity:.55; }
.admin-logout { margin-top:auto; }
.admin-main { min-width:0; }
.admin-topbar { min-height:74px; background:#fff; border-bottom:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; padding:0 32px; position:sticky; top:0; z-index:10; }
.admin-topbar > div { display:grid; gap:4px; }
.admin-topbar strong { font:700 16px "Manrope"; }
.admin-content { padding:34px; }
.admin-welcome { background:#111; color:#fff; border-radius:20px; padding:32px; display:flex; justify-content:space-between; align-items:flex-start; gap:30px; }
.admin-welcome h1 { font:800 clamp(34px,4vw,58px)/1 "Manrope"; letter-spacing:-.05em; margin:10px 0; }
.admin-welcome p { color:#aaa; max-width:700px; margin:0; }
.status-badge { border-radius:999px; padding:9px 12px; font:700 9px "Manrope"; letter-spacing:.1em; text-transform:uppercase; white-space:nowrap; }
.status-ready { background:var(--yellow); color:#111; }
.admin-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-top:14px; }
.admin-stats article { background:#fff; border:1px solid #e1e1dc; border-radius:15px; padding:20px; display:grid; gap:4px; }
.admin-stats article > span { color:#777; font-size:10px; text-transform:uppercase; letter-spacing:.1em; }
.admin-stats strong { font:700 20px "Manrope"; }
.admin-stats small { color:#999; }
.admin-panel-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:14px; }
.admin-card { background:#fff; border:1px solid #e1e1dc; border-radius:15px; padding:26px; }
.admin-card h2 { font:700 25px "Manrope"; margin:8px 0 12px; }
.admin-card p { color:#777; }
.check-list { list-style:none; padding:0; margin:15px 0 0; display:grid; gap:9px; }
.check-list li:before { content:"✓"; color:#756a00; background:var(--yellow); width:20px; height:20px; display:inline-grid; place-items:center; border-radius:50%; font-size:10px; margin-right:8px; }

@media (max-width: 1100px) {
    .header-main { grid-template-columns:auto 1fr auto; gap:16px; }
    .header-search { display:none; }
    .category-nav-wrap { display:none; }
    .menu-toggle { display:block; }
    .hero-grid { grid-template-columns:1fr 1fr; gap:30px; min-height:580px; }
    .hero-visual { min-height:520px; }
    .category-editorial-grid { grid-template-columns:repeat(2,1fr); }
    .category-featured { grid-column:span 1; grid-row:span 1; }
    .category-featured .category-copy h3 { font-size:24px; }
    .product-grid { grid-template-columns:repeat(2,1fr); }
    .admin-stats { grid-template-columns:repeat(2,1fr); }
}

@media (max-width: 780px) {
    :root { --container: min(100% - 28px, 1400px); --radius:16px; }
    body { padding-bottom:72px; }
    .trust-strip-note { display:none; }
    .trust-strip-inner { justify-content:center; }
    .header-main { min-height:64px; }
    .brand-mark { width:34px; height:34px; }
    .brand-copy strong { font-size:13px; }
    .brand-copy small { font-size:8px; }
    .header-actions .header-action:last-child { display:none; }
    .header-action { padding:0 8px; }
    .hero { padding:20px 0 36px; }
    .hero-grid { display:flex; flex-direction:column; min-height:0; gap:28px; }
    .hero-copy { padding:24px 0 0; }
    .hero-copy h1 { font-size:clamp(46px,14vw,72px); }
    .hero-copy > p { font-size:16px; }
    .hero-actions .button { flex:1 1 150px; }
    .hero-proof { margin-top:36px; grid-template-columns:1fr; gap:12px; }
    .hero-proof div { border-top:1px solid #ddd; padding-top:10px; }
    .hero-visual { min-height:430px; width:100%; }
    .section { padding:70px 0; }
    .section-head { grid-template-columns:1fr; gap:16px; margin-bottom:28px; }
    .section-head h2, .procurement-intro h2, .branding-copy h2, .quote-cta h2 { font-size:42px; }
    .stage-pill { justify-self:start; }
    .category-editorial-grid { grid-template-columns:1fr 1fr; grid-auto-rows:220px; gap:8px; }
    .category-card { padding:15px; min-height:220px; border-radius:13px; }
    .category-copy h3, .category-featured .category-copy h3 { font-size:20px; }
    .category-copy small { font-size:9px; }
    .procurement-section { padding:75px 0; }
    .procurement-grid { grid-template-columns:1fr; gap:40px; }
    .procurement-intro { position:static; }
    .product-grid { grid-template-columns:1fr 1fr; gap:8px; }
    .product-card-body { padding:12px; }
    .product-card h3 { font-size:14px; }
    .product-meta { display:grid; }
    .product-card-foot { display:grid; }
    .branding-section { padding:70px 0; }
    .branding-grid { grid-template-columns:1fr; gap:42px; }
    .branding-visual { min-height:380px; }
    .quote-cta { padding:70px 0; }
    .quote-cta-inner { align-items:flex-start; flex-direction:column; }
    .footer-grid { grid-template-columns:1fr 1fr; gap:35px 22px; }
    .footer-brand { grid-column:1 / -1; }
    .footer-bottom { flex-direction:column; }
    .site-footer { padding-bottom:45px; }
    .mobile-bottom-nav { position:fixed; display:grid; grid-template-columns:repeat(5,1fr); z-index:1100; bottom:0; left:0; right:0; background:rgba(17,17,17,.98); color:#fff; padding:8px max(8px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left)); border-top:1px solid #333; }
    .mobile-bottom-nav a, .mobile-bottom-nav button { border:0; background:transparent; color:#bbb; display:grid; justify-items:center; gap:2px; padding:3px; font:inherit; }
    .mobile-bottom-nav span { font-size:20px; line-height:1; }
    .mobile-bottom-nav small { font-size:9px; }
    .mobile-bottom-nav .is-active { color:var(--yellow); }
    .auth-shell { grid-template-columns:1fr; }
    .auth-brand-panel { min-height:42vh; padding:30px 24px; }
    .auth-brand-panel h1 { font-size:50px; }
    .auth-form-panel { padding:24px 14px 40px; }
    .auth-form { padding:28px 20px; }
    .admin-shell { display:block; }
    .admin-sidebar { height:auto; position:static; padding:14px; flex-direction:row; align-items:center; justify-content:space-between; }
    .brand-admin { margin:0; }
    .admin-menu { display:none; }
    .admin-logout { margin:0; }
    .admin-logout .button { min-height:38px; width:auto; }
    .admin-topbar { padding:0 16px; }
    .admin-content { padding:16px; }
    .admin-welcome { flex-direction:column; }
    .admin-stats { grid-template-columns:1fr 1fr; }
    .admin-panel-grid { grid-template-columns:1fr; }
}

@media (max-width: 480px) {
    .category-editorial-grid, .product-grid, .admin-stats { grid-template-columns:1fr; }
    .category-editorial-grid { grid-auto-rows:210px; }
    .branding-copy ol { grid-template-columns:1fr; }
    .footer-grid { grid-template-columns:1fr 1fr; }
}

/* Build 02: Barron supplier diagnostics */
.status-warning { background:#fff3b8; color:#554800; }
.supplier-hero { margin-bottom:14px; }
.supplier-flash { margin:14px 0; border-radius:14px; padding:18px 20px; border:1px solid #dadad4; background:#fff; }
.supplier-flash.is-success { border-left:5px solid #8a7a00; }
.supplier-flash.is-error { border-left:5px solid #a12a22; }
.supplier-flash pre { margin:12px 0 0; white-space:pre-wrap; overflow-wrap:anywhere; background:#111; color:#ddd; border-radius:10px; padding:14px; font-size:11px; line-height:1.5; }
.supplier-grid { align-items:start; }
.supplier-wide { grid-column:1 / -1; }
.config-list { margin:18px 0; }
.config-list > div { display:grid; grid-template-columns:160px minmax(0,1fr); gap:20px; padding:10px 0; border-top:1px solid #ecece7; }
.config-list dt { color:#777; font-size:11px; }
.config-list dd { margin:0; font:600 12px/1.4 "Manrope"; overflow-wrap:anywhere; }
.admin-note { padding:12px 14px; background:#f5f5ef; border-radius:10px; font-size:12px; }
.admin-note code { background:#111; color:var(--yellow); padding:2px 5px; border-radius:4px; }
.action-stack { display:flex; flex-wrap:wrap; gap:8px; margin-top:20px; }
.action-stack form { margin:0; }
.button:disabled { opacity:.38; cursor:not-allowed; }
.endpoint-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:18px; }
.endpoint-card { border:1px solid #e4e4df; background:#f8f8f4; border-radius:12px; padding:14px; display:flex; align-items:center; justify-content:space-between; gap:18px; }
.endpoint-card > div { display:grid; gap:4px; }
.endpoint-card strong { font:700 13px "Manrope"; }
.endpoint-card code { color:#777; font-size:10px; overflow-wrap:anywhere; }
.compact-welcome { margin-bottom:14px; align-items:center; }
.compact-welcome h1 { font-size:clamp(30px,3vw,46px); }
.log-card { padding:0; overflow:hidden; }
.log-toolbar { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:20px 22px; border-bottom:1px solid #e2e2dc; }
.log-toolbar h2 { margin:4px 0 0; font-size:18px; }
.log-viewer { margin:0; min-height:420px; max-height:70vh; overflow:auto; background:#111; color:#d9d9d2; padding:20px; font:11px/1.7 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace; white-space:pre-wrap; overflow-wrap:anywhere; }
@media (max-width:780px) {
    .supplier-wide { grid-column:auto; }
    .endpoint-grid { grid-template-columns:1fr; }
    .config-list > div { grid-template-columns:1fr; gap:4px; }
    .endpoint-card { align-items:flex-start; flex-direction:column; }
    .log-toolbar { align-items:flex-start; flex-direction:column; }
}

/* Build 03: catalogue synchronisation */
.catalogue-hero code { color:var(--yellow); background:#111; border-radius:5px; padding:2px 5px; font-size:.85em; }
.catalogue-stats { margin-bottom:14px; }
.catalogue-grid { align-items:start; }
.sync-warning { margin-top:16px; padding:12px 14px; border-left:4px solid var(--yellow); background:#fffbea; color:#534b00; font-size:12px; }
.sync-details { margin-top:12px; }
.sync-details summary { cursor:pointer; font-weight:700; font-size:12px; }
.card-heading-row { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; }
.card-heading-row h2 { margin-bottom:0; }
.text-link { font-size:12px; font-weight:700; text-decoration:underline; text-underline-offset:4px; }
.compact-list > div { grid-template-columns:120px 1fr; }
.admin-table-wrap { width:100%; overflow:auto; margin-top:18px; border:1px solid #e4e4df; border-radius:12px; }
.admin-table { width:100%; min-width:850px; border-collapse:collapse; background:#fff; font-size:12px; }
.admin-table th { padding:11px 13px; background:#111; color:#fff; text-align:left; font:700 9px/1.2 "Manrope",sans-serif; letter-spacing:.08em; text-transform:uppercase; white-space:nowrap; }
.admin-table th:first-child { color:var(--yellow); }
.admin-table td { padding:12px 13px; border-top:1px solid #ecece7; vertical-align:middle; }
.admin-table tbody tr:hover { background:#fafaf6; }
.admin-table td a { font-weight:800; text-decoration:underline; text-underline-offset:3px; }
.table-status { display:inline-flex; align-items:center; min-height:23px; padding:0 8px; border-radius:999px; background:#ededE8; font:700 9px "Manrope",sans-serif; text-transform:uppercase; letter-spacing:.06em; }
.status-completed { background:#e6f5eb; color:#12683b; }
.status-failed { background:#fae9e7; color:#8d241d; }
.status-running { background:#fff4b8; color:#655900; }
.status-queued { background:#ececec; color:#555; }
.empty-admin-state { min-height:130px; display:grid; place-content:center; gap:5px; text-align:center; color:#777; padding:24px; border:1px dashed #d8d8d2; border-radius:12px; margin-top:18px; }
.empty-admin-state strong { color:#111; font-family:"Manrope",sans-serif; }
.catalogue-product-card { padding:0; overflow:hidden; }
.catalogue-search { display:grid; gap:8px; padding:20px 22px; border-bottom:1px solid #e7e7e2; background:#fafaf6; }
.catalogue-search label { font:700 10px "Manrope",sans-serif; text-transform:uppercase; letter-spacing:.09em; }
.catalogue-search > div { display:flex; gap:8px; max-width:720px; }
.catalogue-search input { width:100%; min-height:46px; border:1px solid #d9d9d3; border-radius:999px; background:#fff; padding:0 18px; outline:none; }
.catalogue-search input:focus { border-color:#111; box-shadow:0 0 0 3px rgba(245,223,22,.35); }
.catalogue-product-card .admin-table-wrap { margin:0; border:0; border-radius:0; }
.product-admin-table { min-width:1180px; }
.product-table-name { display:flex; align-items:center; gap:10px; min-width:260px; }
.product-table-name img, .image-placeholder { width:44px; height:52px; border-radius:7px; object-fit:contain; background:#f2f2ee; flex:none; }
.image-placeholder { display:grid; place-items:center; background:#111; color:var(--yellow); font:800 15px "Manrope",sans-serif; }
.product-table-name strong { font:700 12px/1.35 "Manrope",sans-serif; }
.admin-pagination { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:18px 22px; border-top:1px solid #e7e7e2; font-size:12px; }
.admin-pagination a { font-weight:800; text-decoration:underline; text-underline-offset:4px; }
.job-list { display:grid; margin-top:14px; }
.job-list-item { display:grid; gap:3px; padding:12px; border-top:1px solid #ecece7; transition:.15s ease; }
.job-list-item:hover, .job-list-item.is-active { background:#fffbea; }
.job-list-item.is-active { border-left:4px solid var(--yellow); }
.job-list-item span { font-size:11px; color:#777; }
.job-list-item strong { font:700 13px "Manrope",sans-serif; text-transform:capitalize; }
.job-list-item small { color:#888; font-size:10px; }
.sync-log-card { min-height:500px; }
.sync-log-list { display:grid; margin-top:16px; }
.sync-log-row { border-top:1px solid #ecece7; padding:13px 0 13px 14px; border-left:3px solid #d7d7d0; }
.sync-log-row > div { display:flex; justify-content:space-between; gap:20px; }
.sync-log-row strong { font:800 9px "Manrope",sans-serif; letter-spacing:.08em; }
.sync-log-row time { color:#999; font-size:10px; }
.sync-log-row p { margin:5px 0; font-size:12px; }
.sync-log-row small { color:#85857f; font-size:10px; }
.sync-log-row.severity-warning { border-left-color:#c6a900; background:#fffdf2; }
.sync-log-row.severity-error { border-left-color:#a12a22; background:#fff7f6; }
.sync-log-row.severity-info { border-left-color:#111; }
@media (max-width:780px) {
    .card-heading-row { align-items:flex-start; flex-direction:column; }
    .catalogue-search > div { flex-direction:column; }
    .catalogue-search .button { width:100%; }
    .admin-pagination { gap:10px; }
}
