@charset "UTF-8";
/* ==========================================================================
   Baizehouse — snooker & billiards table trade theme
   Theme file: skin/css/baize.css   Class prefix: bz-
   Palette: ivory paper / baize green / rosewood / brass
   ========================================================================== */

/* 1. Design tokens
   ========================================================================== */
:root{
  --bz-ivory:#f6f2e9;
  --bz-ivory-2:#ece5d7;
  --bz-paper:#fffdf8;
  --bz-baize:#0f5d3c;
  --bz-baize-deep:#0a3d29;
  --bz-baize-soft:#e3ece5;
  --bz-ink:#15211c;
  --bz-ink-2:#3c4a43;
  --bz-muted:#6d766e;
  --bz-rosewood:#4a2b20;
  --bz-rosewood-deep:#33190f;
  --bz-brass:#b5893a;
  --bz-brass-light:#dcbc7c;
  --bz-chalk:#2f6fb0;
  --bz-line:rgba(21,33,28,.14);
  --bz-line-strong:rgba(21,33,28,.3);
  --bz-line-light:rgba(246,242,233,.22);
  --bz-shadow:0 18px 40px -28px rgba(21,33,28,.45);
  --bz-font-display:Georgia,"Palatino Linotype","Book Antiqua","Times New Roman",serif;
  --bz-font-body:"Segoe UI",Roboto,"Helvetica Neue",Arial,"PingFang SC","Microsoft YaHei",sans-serif;
  --bz-font-mono:Consolas,"SFMono-Regular",Menlo,"DejaVu Sans Mono",monospace;
  --bz-radius:2px;
  --bz-radius-lg:4px;
  --bz-wrap:1240px;
  --bz-header-h:76px;
  --bz-ease:cubic-bezier(.22,.61,.36,1);
}

/* 2. Reset and base
   ========================================================================== */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--bz-ivory);
  color:var(--bz-ink);
  font-family:var(--bz-font-body);
  font-size:16px;
  line-height:1.68;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
a:hover{color:var(--bz-baize)}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0;padding:0}
ul,ol{margin:0;padding:0;list-style:none}
h1,h2,h3,h4,h5{
  margin:0 0 .5em;
  font-family:var(--bz-font-display);
  font-weight:600;
  line-height:1.16;
  letter-spacing:-.01em;
  color:var(--bz-ink);
}
h1{font-size:clamp(30px,4.3vw,54px)}
h2{font-size:clamp(24px,2.9vw,38px)}
h3{font-size:clamp(18px,1.9vw,23px)}
p{margin:0 0 1em}
figure{margin:0}
table{border-collapse:collapse;width:100%}
:focus-visible{outline:2px solid var(--bz-brass);outline-offset:2px}
/* Accessibility: the "Skip to main content" link is kept off-screen and only appears on keyboard focus */
.skip-link{
  position:absolute;left:8px;top:-60px;z-index:200;
  display:inline-block;background:var(--bz-baize);color:#fff;
  font-size:13.5px;font-weight:600;line-height:1.2;letter-spacing:.02em;
  padding:10px 16px;border-radius:var(--bz-radius);
  transition:top .18s var(--bz-ease);
}
.skip-link:focus,.skip-link:focus-visible{top:8px;color:#fff}

/* 3. Layout helpers
   ========================================================================== */
.bz-wrap{width:min(var(--bz-wrap),92vw);margin:0 auto}
.bz-sec{padding:86px 0}
.bz-sec-tight{padding:56px 0}
.bz-sec-paper{background:var(--bz-paper)}
.bz-sec-alt{background:var(--bz-ivory-2)}
.bz-sec-baize{background:var(--bz-baize-deep);color:var(--bz-ivory)}
.bz-sec-baize h2,.bz-sec-baize h3,.bz-sec-baize h1{color:#fff}
.bz-sec-rose{background:var(--bz-rosewood);color:var(--bz-ivory)}
.bz-sec-rose h2,.bz-sec-rose h3{color:#fff}
.bz-rule{height:1px;background:var(--bz-line);border:0;margin:0}
.bz-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* 4. Type utilities
   ========================================================================== */
.bz-eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--bz-font-mono);
  font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;
  color:var(--bz-baize);margin-bottom:14px;
}
.bz-eyebrow::before{content:"";width:26px;height:1px;background:var(--bz-brass);flex:0 0 auto}
.bz-eyebrow-light{color:var(--bz-brass-light)}
.bz-eyebrow-light::before{background:var(--bz-brass-light)}
.bz-mono{font-family:var(--bz-font-mono);font-size:12.5px;letter-spacing:.05em}
.bz-num{font-family:var(--bz-font-mono);font-size:12px;letter-spacing:.12em;color:var(--bz-brass)}
.bz-lead{font-size:17.5px;line-height:1.72;color:var(--bz-ink-2);max-width:62ch}
.bz-sec-baize .bz-lead,.bz-sec-rose .bz-lead{color:rgba(246,242,233,.82)}
.bz-muted{color:var(--bz-muted)}
.bz-chip{
  display:inline-block;padding:4px 10px;border:1px solid var(--bz-line);
  border-radius:var(--bz-radius);font-family:var(--bz-font-mono);
  font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--bz-ink-2);
}
.bz-chip-brass{border-color:var(--bz-brass);color:var(--bz-brass)}

/* 5. Buttons and links
   ========================================================================== */
.bz-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:13px 24px;border:1px solid transparent;border-radius:var(--bz-radius);
  font-family:var(--bz-font-mono);font-size:12px;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;line-height:1;
  transition:background-color .25s var(--bz-ease),color .25s var(--bz-ease),
             border-color .25s var(--bz-ease),transform .25s var(--bz-ease);
  white-space:nowrap;
}
.bz-btn i{font-size:12px}
.bz-btn-brass{background:var(--bz-brass);color:#fff;border-color:var(--bz-brass)}
.bz-btn-brass:hover{background:var(--bz-rosewood);border-color:var(--bz-rosewood);color:#fff}
.bz-btn-baize{background:var(--bz-baize);color:#fff;border-color:var(--bz-baize)}
.bz-btn-baize:hover{background:var(--bz-ink);border-color:var(--bz-ink);color:#fff}
.bz-btn-outline{border-color:var(--bz-line-strong);color:var(--bz-ink)}
.bz-btn-outline:hover{border-color:var(--bz-baize);color:var(--bz-baize);background:transparent}
.bz-btn-outline-light{border-color:var(--bz-line-light);color:var(--bz-ivory)}
.bz-btn-outline-light:hover{border-color:var(--bz-brass-light);color:var(--bz-brass-light)}
.bz-btn-white{background:#fff;color:var(--bz-ink);border-color:#fff}
.bz-btn-white:hover{background:var(--bz-ivory-2);border-color:var(--bz-ivory-2);color:var(--bz-ink)}
.bz-btn-lg{padding:16px 30px;font-size:12.5px}
.bz-btn-sm{padding:10px 16px;font-size:11px;letter-spacing:.1em}
.bz-btn-block{width:100%}
.bz-btn[disabled]{opacity:.4;cursor:not-allowed}
.bz-link{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--bz-font-mono);font-size:12px;font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;color:var(--bz-baize);
  border-bottom:1px solid rgba(15,93,60,.3);padding-bottom:3px;
  transition:border-color .25s var(--bz-ease),color .25s var(--bz-ease);
}
.bz-link:hover{border-color:var(--bz-brass);color:var(--bz-rosewood)}
.bz-link-light{color:var(--bz-brass-light);border-color:rgba(220,188,124,.4)}
.bz-link-light:hover{color:#fff;border-color:#fff}
.bz-ico-btn{
  width:40px;height:40px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--bz-line);border-radius:var(--bz-radius);color:var(--bz-ink);
  position:relative;transition:border-color .25s,color .25s,background-color .25s;
}
.bz-ico-btn:hover{border-color:var(--bz-baize);color:var(--bz-baize)}

/* 6. Section head + breadcrumb
   ========================================================================== */
.bz-head{display:flex;align-items:flex-end;justify-content:space-between;gap:26px;margin-bottom:38px}
.bz-head-spaced{margin-top:56px}
.bz-head h2{margin:0}
.bz-head p{margin:10px 0 0;max-width:58ch;color:var(--bz-muted)}
.bz-sec-baize .bz-head p,.bz-sec-rose .bz-head p{color:rgba(246,242,233,.75)}
.bz-crumb{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px;
  font-family:var(--bz-font-mono);font-size:11.5px;letter-spacing:.08em;
  text-transform:uppercase;color:var(--bz-muted);margin-bottom:18px;
}
.bz-crumb a:hover{color:var(--bz-baize)}
.bz-crumb-light{color:rgba(246,242,233,.7)}
.bz-crumb-light a:hover{color:var(--bz-brass-light)}

/* 7. Media frames
   ========================================================================== */
.bz-frame{
  position:relative;background:var(--bz-paper);
  border:1px solid var(--bz-line-strong);padding:8px;
}
.bz-frame::after{
  content:"";position:absolute;inset:8px;border:1px solid rgba(181,137,58,.55);pointer-events:none;
}
.bz-frame img,.bz-frame svg{position:relative;z-index:1;width:100%;height:100%;object-fit:cover}
.bz-frame-43{aspect-ratio:4/3}
.bz-frame-32{aspect-ratio:3/2}
.bz-frame-11{aspect-ratio:1/1}
.bz-frame-dark{border-color:var(--bz-line-light);background:rgba(246,242,233,.04)}
.bz-noimg{
  display:flex;align-items:center;justify-content:center;
  width:100%;height:100%;min-height:180px;
  background:repeating-linear-gradient(135deg,var(--bz-ivory-2) 0 12px,#e4ddcd 12px 24px);
  color:var(--bz-baize);font-size:28px;
}

/* 8. Empty state
   ========================================================================== */
.bz-empty{
  text-align:center;padding:60px 26px;border:1px dashed var(--bz-line-strong);
  background:var(--bz-paper);
}
.bz-empty i{font-size:30px;color:var(--bz-brass);margin-bottom:14px;display:block}
.bz-empty strong{display:block;font-family:var(--bz-font-display);font-size:22px;margin-bottom:8px}
.bz-empty p{max-width:56ch;margin:0 auto 18px;color:var(--bz-muted)}

/* 9. Header — dark baize single row with rosewood logo plaque
   ========================================================================== */
.bz-header{
  position:sticky;top:0;z-index:200;
  background:var(--bz-baize-deep);
  border-bottom:3px solid var(--bz-brass);
  transition:box-shadow .3s var(--bz-ease);
}
.bz-header.scrolled{box-shadow:0 14px 34px -22px rgba(0,0,0,.6)}
.bz-header-in{
  display:flex;align-items:center;gap:22px;
  min-height:var(--bz-header-h);
}
.bz-plaque{
  flex:0 0 auto;display:flex;align-items:center;justify-content:center;
  padding:8px 16px;min-height:48px;max-width:240px;
  background:var(--bz-rosewood);border:1px solid rgba(220,188,124,.45);
  border-radius:var(--bz-radius);
  transition:border-color .25s var(--bz-ease),background-color .25s var(--bz-ease);
}
.bz-plaque:hover{border-color:var(--bz-brass-light);background:var(--bz-rosewood-deep)}
.bz-plaque img{max-height:34px;width:auto;object-fit:contain}
.bz-plaque-name{
  font-family:var(--bz-font-display);font-size:19px;color:#fff;letter-spacing:.02em;line-height:1.1;
}
.bz-nav{flex:1 1 auto;min-width:0}
.bz-nav>ul{display:flex;align-items:center;flex-wrap:nowrap}
.bz-nav>ul>li{position:relative}
.bz-nav>ul>li>a{
  display:flex;align-items:center;gap:6px;
  padding:0 15px;height:var(--bz-header-h);
  font-size:13px;font-weight:600;letter-spacing:.03em;color:rgba(246,242,233,.85);
  border-left:1px solid rgba(246,242,233,.12);
  transition:color .22s var(--bz-ease);
}
.bz-nav>ul>li:last-child>a{border-right:1px solid rgba(246,242,233,.12)}
.bz-nav>ul>li>a::after{
  content:"";position:absolute;left:15px;right:15px;bottom:0;height:2px;
  background:var(--bz-brass);transform:scaleX(0);transform-origin:left;
  transition:transform .28s var(--bz-ease);
}
.bz-nav>ul>li>a:hover,.bz-nav>ul>li>a.on{color:#fff}
.bz-nav>ul>li>a:hover::after,.bz-nav>ul>li>a.on::after{transform:scaleX(1)}
.bz-nav i.fa-angle-down{font-size:10px;opacity:.7}
.bz-mega{
  /* width must not follow the narrow parent <li> (shrink-to-fit would collapse the panel to min-width) */
  position:absolute;left:0;top:100%;width:max-content;min-width:340px;max-width:min(640px,calc(100vw - 32px));
  background:var(--bz-paper);border:1px solid var(--bz-line);border-top:3px solid var(--bz-brass);
  box-shadow:var(--bz-shadow);padding:20px;
  opacity:0;visibility:hidden;transform:translateY(8px);
  transition:opacity .24s var(--bz-ease),transform .24s var(--bz-ease),visibility .24s;
  z-index:10;
}
.bz-nav>ul>li:hover>.bz-mega,.bz-nav>ul>li:focus-within>.bz-mega{opacity:1;visibility:visible;transform:none}
/* fixed per-column floor keeps level-2/level-3 names on readable lines instead of one word per line */
.bz-mega-grid{display:grid;grid-template-columns:repeat(2,minmax(210px,1fr));gap:4px 18px}
.bz-mega-item{
  display:flex;gap:10px;align-items:flex-start;padding:8px 8px;border-radius:var(--bz-radius);
  transition:background-color .2s var(--bz-ease);
}
.bz-mega-item:hover{background:var(--bz-ivory-2)}
.bz-mega-item img{width:44px;height:44px;object-fit:cover;flex:0 0 auto;border:1px solid var(--bz-line)}
.bz-mega-ico{
  width:34px;height:34px;flex:0 0 34px;display:inline-flex;align-items:center;justify-content:center;
  background:var(--bz-baize-soft);color:var(--bz-baize);border-radius:var(--bz-radius);font-size:13px;
}
.bz-mega-body{flex:1 1 auto;min-width:0}
.bz-mega-link{display:block;text-decoration:none;color:inherit}
.bz-mega-link strong{display:block;font-size:13.5px;font-weight:600;color:var(--bz-ink);line-height:1.35;transition:color .2s var(--bz-ease)}
.bz-mega-link:hover strong{color:var(--bz-baize)}
.bz-mega-subs{display:block;font-size:11.5px;color:var(--bz-muted);margin-top:3px}
.bz-mega-sub{display:inline;color:var(--bz-muted);font-weight:400;text-decoration:none;transition:color .2s var(--bz-ease)}
.bz-mega-sub:hover{color:var(--bz-baize)}
.bz-mega-sub:not(:last-child)::after{content:" · ";color:var(--bz-muted)}
.bz-mega-all{
  display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding-top:12px;
  border-top:1px solid var(--bz-line);
  font-family:var(--bz-font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--bz-baize);
}
.bz-mega-all:hover{color:var(--bz-rosewood)}
.bz-tools{flex:0 0 auto;display:flex;align-items:center;gap:8px}
.bz-tools .bz-ico-btn{border-color:rgba(246,242,233,.22);color:rgba(246,242,233,.9)}
.bz-tools .bz-ico-btn:hover{border-color:var(--bz-brass-light);color:var(--bz-brass-light);background:transparent}
.bz-badge{
  position:absolute;top:-6px;right:-6px;min-width:17px;height:17px;padding:0 4px;
  display:none;align-items:center;justify-content:center;
  background:var(--bz-brass);color:#fff;border-radius:9px;
  font-family:var(--bz-font-mono);font-size:10px;font-weight:700;
}
.bz-lang{position:relative}
.bz-lang-btn{
  display:inline-flex;align-items:center;gap:7px;height:40px;padding:0 12px;
  border:1px solid rgba(246,242,233,.22);border-radius:var(--bz-radius);
  font-family:var(--bz-font-mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;
  color:rgba(246,242,233,.9);transition:border-color .25s,color .25s;
}
.bz-lang-btn:hover{border-color:var(--bz-brass-light);color:var(--bz-brass-light)}
.bz-lang-menu{
  position:absolute;right:0;top:calc(100% + 8px);min-width:168px;
  background:var(--bz-paper);border:1px solid var(--bz-line);box-shadow:var(--bz-shadow);
  padding:6px;display:none;z-index:20;
}
.bz-lang-btn[aria-expanded="true"]+.bz-lang-menu{display:block}
.bz-lang-menu a{
  display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:var(--bz-radius);
  font-size:13px;color:var(--bz-ink-2);
}
.bz-lang-menu a:hover{background:var(--bz-ivory-2);color:var(--bz-baize)}
.bz-lang-menu a.on{color:var(--bz-baize);font-weight:600}
.bz-lang-menu img{width:18px;height:12px;object-fit:cover}
.bz-burger{display:none}
.bz-burger-lines{display:flex;flex-direction:column;justify-content:center;gap:4px}
.bz-burger-lines i{display:block;width:18px;height:2px;background:currentColor;border-radius:1px}

/* Search panel (slide-down under header) */
.bz-search{
  position:absolute;left:0;right:0;top:100%;
  background:var(--bz-baize-deep);border-top:1px solid rgba(246,242,233,.14);
  border-bottom:1px solid rgba(246,242,233,.14);
  max-height:0;overflow:hidden;transition:max-height .32s var(--bz-ease);
}
.bz-header.bz-search-on .bz-search{max-height:120px}
.bz-search form{display:flex;align-items:center;gap:12px;padding:18px 0}
.bz-search input{
  flex:1 1 auto;min-width:0;background:transparent;border:0;border-bottom:1px solid rgba(246,242,233,.35);
  padding:10px 2px;color:#fff;font-size:16px;
}
.bz-search input::placeholder{color:rgba(246,242,233,.5)}
.bz-search input:focus{outline:none;border-color:var(--bz-brass-light)}
.bz-search button{
  flex:0 0 auto;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;
  background:var(--bz-brass);color:#fff;border-radius:var(--bz-radius);
}
.bz-search button:hover{background:var(--bz-brass-light);color:var(--bz-ink)}

/* Mobile slide-down panel */
.bz-drawer{
  position:fixed;left:0;right:0;top:0;z-index:400;
  background:var(--bz-baize-deep);border-bottom:3px solid var(--bz-brass);
  transform:translateY(-104%);transition:transform .34s var(--bz-ease);
  max-height:100vh;overflow-y:auto;
}
.bz-drawer.open{transform:none}
.bz-drawer-panel{padding:18px 0 30px}
.bz-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:16px;border-bottom:1px solid rgba(246,242,233,.16)}
.bz-drawer-head .bz-plaque{max-width:200px;min-height:42px;padding:6px 12px}
.bz-drawer-head .bz-plaque img{max-height:28px}
.bz-drawer-head .bz-ico-btn{border-color:rgba(246,242,233,.25);color:#fff}
.bz-dnav{columns:2;column-gap:22px;margin:18px 0}
.bz-dnav li{break-inside:avoid;border-bottom:1px solid rgba(246,242,233,.1)}
.bz-dnav-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
/* Covers both the links wrapped in .bz-dnav-row and the plain ones placed directly in <li>
   (Home, View Quote List), which would otherwise inherit the dark body colour on the dark panel. */
.bz-dnav-row>a,.bz-dnav>li>a{display:block;padding:12px 0;font-size:14.5px;color:rgba(246,242,233,.92);font-weight:600}
.bz-dnav-row>a.on,.bz-dnav>li>a.on{color:var(--bz-brass-light)}
.bz-dnav-row>a:hover,.bz-dnav>li>a:hover{color:var(--bz-brass-light)}
.bz-dnav-tgl{
  width:32px;height:32px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid rgba(246,242,233,.2);border-radius:var(--bz-radius);color:rgba(246,242,233,.8);
  transition:transform .25s var(--bz-ease),border-color .25s;
}
.bz-dnav li.open .bz-dnav-tgl{transform:rotate(180deg);border-color:var(--bz-brass-light);color:var(--bz-brass-light)}
.bz-dnav-sub{display:none;padding:2px 0 12px}
.bz-dnav li.open .bz-dnav-sub{display:block}
.bz-dnav-sub li{border:0}
.bz-dnav-sub a{display:block;padding:6px 0 6px 12px;font-size:13px;color:rgba(246,242,233,.72);position:relative}
.bz-dnav-sub a::before{content:"—";position:absolute;left:0;color:rgba(220,188,124,.6)}
.bz-dnav-sub a:hover{color:var(--bz-brass-light)}
.bz-dnav-l3 a{padding-left:26px;font-size:12.5px;color:rgba(246,242,233,.6)}
.bz-dnav-l3 a::before{content:"·";left:14px}
.bz-dlang{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 18px}
.bz-dlang a{
  display:inline-flex;align-items:center;gap:6px;padding:6px 10px;
  border:1px solid rgba(246,242,233,.2);border-radius:var(--bz-radius);
  font-family:var(--bz-font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  color:rgba(246,242,233,.8);
}
.bz-dlang a.on{border-color:var(--bz-brass-light);color:var(--bz-brass-light)}
.bz-dlang img{width:16px;height:11px;object-fit:cover}
.bz-drawer-foot{display:flex;flex-wrap:wrap;gap:10px;padding-top:16px;border-top:1px solid rgba(246,242,233,.16)}
.bz-drawer-foot .bz-btn{flex:1 1 180px}

/* 10. Hero — ivory title block + double-framed image + four ruled spec plates
   ========================================================================== */
.bz-hero{background:var(--bz-ivory);border-top:6px solid var(--bz-baize);padding:70px 0 0}
.bz-hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:56px;align-items:center}
.bz-hero-copy h1{margin-bottom:20px}
.bz-hero-copy .bz-lead{margin-bottom:26px}
.bz-hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:26px}
.bz-hero-progs{display:flex;flex-wrap:wrap;gap:0;border-top:1px solid var(--bz-line)}
.bz-hero-progs span{
  font-family:var(--bz-font-mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--bz-muted);padding:12px 18px 0 0;position:relative;
}
.bz-hero-progs span+span{padding-left:18px;border-left:1px solid var(--bz-line)}
.bz-hero-media{position:relative}
.bz-hero-media .bz-frame{background:var(--bz-baize-deep);position:relative;overflow:hidden}
.bz-hero-shot{position:absolute;inset:8px;z-index:2;width:auto;height:auto;object-fit:cover}
.bz-hero-plate{
  position:absolute;left:-18px;bottom:-18px;z-index:3;
  background:var(--bz-brass);color:#fff;padding:12px 16px;max-width:190px;
}
.bz-hero-plate strong{
  display:block;font-family:var(--bz-font-mono);font-size:11px;letter-spacing:.16em;
  text-transform:uppercase;opacity:.9;margin-bottom:3px;
}
.bz-hero-plate em{font-style:normal;font-family:var(--bz-font-display);font-size:16px;line-height:1.3;display:block}
.bz-specplates{
  display:grid;grid-template-columns:repeat(4,1fr);
  margin-top:64px;border-top:1px solid var(--bz-line-strong);border-bottom:1px solid var(--bz-line-strong);
}
.bz-specplate{padding:26px 26px 28px;border-left:1px solid var(--bz-line)}
.bz-specplate:first-child{border-left:0;padding-left:0}
.bz-specplate b{
  display:block;font-family:var(--bz-font-mono);font-size:11px;font-weight:600;
  letter-spacing:.18em;text-transform:uppercase;color:var(--bz-brass);margin-bottom:10px;
}
.bz-specplate strong{
  display:block;font-family:var(--bz-font-display);font-size:23px;line-height:1.25;
  color:var(--bz-ink);margin-bottom:6px;
}
.bz-specplate span{font-size:13.5px;color:var(--bz-muted);line-height:1.5;display:block}

/* 11. Category ledger — three columns of ruled entries
   ========================================================================== */
.bz-ledger{
  display:grid;grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--bz-line-strong);
}
.bz-ledger-item{
  position:relative;z-index:0;
  display:flex;flex-direction:column;gap:10px;
  padding:28px 26px;border-bottom:1px solid var(--bz-line);border-left:1px solid var(--bz-line);
}
/* Hover fill is painted as a layer so a flush-left cell can grow it 26px into the page margin:
   the text keeps its inner spacing from the white edge, while text and hairlines stay where they are. */
.bz-ledger-item::before{
  content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;
  background:var(--bz-paper);opacity:0;transition:opacity .25s var(--bz-ease);
}
.bz-ledger-item:nth-child(3n+1){border-left:0;padding-left:0}
.bz-ledger-item:nth-child(3n+1)::before{left:-26px}
.bz-ledger-item:hover::before{opacity:1}
.bz-ledger-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.bz-ledger-item h3{margin:0;font-size:21px}
.bz-ledger-item h3 a:hover{color:var(--bz-baize)}
.bz-ledger-subs{display:flex;flex-wrap:wrap;gap:6px}
.bz-ledger-subs b{
  font-family:var(--bz-font-mono);font-size:11px;font-weight:400;letter-spacing:.06em;
  color:var(--bz-ink-2);border:1px solid var(--bz-line);padding:3px 8px;border-radius:var(--bz-radius);
}
.bz-ledger-item p{margin:0;font-size:14px;color:var(--bz-muted)}
.bz-ledger-go{margin-top:auto;padding-top:12px}

/* 12. Featured tables — one large feature + ruled row list
   ========================================================================== */
.bz-feature{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:start}
.bz-feature-card{position:relative}
.bz-feature-card .bz-frame{background:var(--bz-paper)}
.bz-feature-body{padding-top:20px;border-top:1px solid var(--bz-line-strong)}
.bz-feature-body h3{font-size:24px;margin:10px 0 10px}
.bz-feature-body h3 a:hover{color:var(--bz-baize)}
.bz-feature-body p{font-size:14.5px;color:var(--bz-muted)}
.bz-feature-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.bz-rows{border-top:1px solid var(--bz-line-strong)}
.bz-row{
  display:grid;grid-template-columns:120px 1fr auto;gap:18px;align-items:center;
  padding:18px 0;border-bottom:1px solid var(--bz-line);
}
.bz-row-media{
  width:120px;aspect-ratio:4/3;background:var(--bz-paper);border:1px solid var(--bz-line);
  overflow:hidden;display:block;
}
.bz-row-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--bz-ease)}
.bz-row:hover .bz-row-media img{transform:scale(1.04)}
.bz-row-cat{
  font-family:var(--bz-font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--bz-brass);display:block;margin-bottom:5px;
}
.bz-row h3{font-size:18px;margin:0;line-height:1.3}
.bz-row h3 a:hover{color:var(--bz-baize)}
.bz-row p{margin:6px 0 0;font-size:13.5px;color:var(--bz-muted);line-height:1.5}
.bz-row-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
/* Lead row: the first product in the ledger reads as the featured table */
.bz-rows .bz-row:first-child{grid-template-columns:300px 1fr auto;padding:0 0 26px;align-items:center}
.bz-rows .bz-row:first-child .bz-row-media{width:300px;aspect-ratio:16/10}
.bz-rows .bz-row:first-child h3{font-size:27px}
.bz-rows .bz-row:first-child p{font-size:14.5px;max-width:56ch}

/* 13. Product card (rails, related, tags strip)
   ========================================================================== */
.bz-rail-wrap{position:relative}
.bz-rail{
  display:grid;grid-auto-flow:column;grid-auto-columns:minmax(268px,1fr);gap:22px;
  overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;
  scrollbar-width:none;
}
.bz-rail::-webkit-scrollbar{display:none}
.bz-rail>*{scroll-snap-align:start}
.bz-rail-nav{display:flex;gap:8px}
.bz-rail-nav button{
  width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--bz-line-strong);border-radius:var(--bz-radius);
  color:var(--bz-ink);transition:border-color .25s,color .25s,background-color .25s;
}
.bz-rail-nav button:hover:not([disabled]){border-color:var(--bz-baize);color:#fff;background:var(--bz-baize)}
.bz-rail-nav button[disabled]{opacity:.35;cursor:not-allowed}
.bz-pcard{background:var(--bz-paper);border:1px solid var(--bz-line);display:flex;flex-direction:column}
.bz-pcard-img{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--bz-ivory-2);position:relative}
.bz-pcard-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--bz-ease)}
.bz-pcard:hover .bz-pcard-img img{transform:scale(1.05)}
.bz-pcard-body{padding:18px;display:flex;flex-direction:column;gap:8px;flex:1 1 auto}
.bz-pcard-cat{
  font-family:var(--bz-font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--bz-brass);
}
.bz-pcard-body h3{font-size:17.5px;margin:0;line-height:1.35}
.bz-pcard-body h3 a:hover{color:var(--bz-baize)}
.bz-pcard-actions{display:flex;align-items:center;gap:8px;margin-top:auto;padding-top:12px;border-top:1px solid var(--bz-line)}
.bz-ico-link{
  width:36px;height:36px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--bz-line-strong);border-radius:var(--bz-radius);color:var(--bz-ink);
}
.bz-ico-link:hover{border-color:var(--bz-baize);color:var(--bz-baize)}
.bz-pcard-rail{min-height:100%}

/* 14. Table anatomy — diagram + numbered definitions
   ========================================================================== */
.bz-anatomy{display:grid;grid-template-columns:.95fr 1.05fr;gap:56px;align-items:start}
.bz-anatomy-media{background:var(--bz-paper);border:1px solid var(--bz-line);padding:18px;position:sticky;top:calc(var(--bz-header-h) + 22px)}
.bz-anatomy-list{border-top:1px solid var(--bz-line-strong)}
.bz-anatomy-item{
  display:grid;grid-template-columns:56px 1fr;gap:16px;
  padding:20px 0;border-bottom:1px solid var(--bz-line);
}
.bz-anatomy-item b{
  font-family:var(--bz-font-mono);font-size:12px;letter-spacing:.12em;color:var(--bz-brass);
  padding-top:4px;
}
.bz-anatomy-item h3{font-size:18px;margin:0 0 6px}
.bz-anatomy-item p{margin:0;font-size:14px;color:var(--bz-muted);line-height:1.6}

/* 15. Cloth and finish swatches
   ========================================================================== */
.bz-swatches{
  display:grid;grid-template-columns:repeat(6,1fr);gap:16px;margin:34px 0 26px;
}
.bz-swatch{border:1px solid var(--bz-line);background:var(--bz-paper);padding:10px}
.bz-swatch-cloth{
  aspect-ratio:1/1;border:1px solid rgba(21,33,28,.2);margin-bottom:10px;
  background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.07) 0 6px,transparent 6px 12px);
}
.bz-swatch strong{display:block;font-size:13px;line-height:1.3;margin-bottom:3px}
.bz-swatch span{display:block;font-family:var(--bz-font-mono);font-size:10.5px;color:var(--bz-muted);letter-spacing:.04em}
.bz-finishnotes{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--bz-line-strong)}
.bz-finishnote{padding:20px 22px;border-left:1px solid var(--bz-line)}
.bz-finishnote:first-child{border-left:0;padding-left:0}
.bz-finishnote b{
  display:block;font-family:var(--bz-font-mono);font-size:11px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--bz-brass);margin-bottom:8px;
}
.bz-finishnote span{font-size:14.5px;color:var(--bz-ink-2);line-height:1.55}

/* 16. Process step rail (QC band)
   ========================================================================== */
.bz-steps{
  display:grid;grid-template-columns:repeat(5,1fr);
  border-top:1px solid rgba(246,242,233,.3);margin-top:14px;
}
.bz-step{padding:24px 20px 4px;border-left:1px solid rgba(246,242,233,.16)}
.bz-step:first-child{border-left:0;padding-left:0}
.bz-step b{
  display:block;font-family:var(--bz-font-mono);font-size:11px;letter-spacing:.18em;
  color:var(--bz-brass-light);margin-bottom:12px;
}
.bz-step i{display:block;font-size:20px;color:rgba(246,242,233,.55);margin-bottom:12px}
.bz-step strong{
  display:block;font-family:var(--bz-font-display);font-size:17.5px;color:#fff;
  margin-bottom:8px;line-height:1.3;
}
.bz-step p{margin:0;font-size:13.5px;line-height:1.6;color:rgba(246,242,233,.75)}

/* 17. Installation / capability tiles
   ========================================================================== */
.bz-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.bz-tile{background:var(--bz-paper);border:1px solid var(--bz-line);padding:26px 24px}
.bz-tile i{display:block;font-size:21px;color:var(--bz-baize);margin-bottom:14px}
.bz-tile h3{font-size:18.5px;margin-bottom:8px}
.bz-tile p{margin:0;font-size:14px;color:var(--bz-muted);line-height:1.62}
.bz-install{display:grid;grid-template-columns:.9fr 1.1fr;gap:52px;align-items:start}

/* 18. Certificate plates
   ========================================================================== */
.bz-plates{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.bz-plate{display:block;background:var(--bz-paper);border:1px solid var(--bz-line)}
.bz-plate-fig{
  aspect-ratio:3/2;background:var(--bz-ivory-2);display:flex;align-items:center;justify-content:center;
  overflow:hidden;border-bottom:1px solid var(--bz-line);position:relative;
}
.bz-plate-fig img{width:100%;height:100%;object-fit:contain;background:#fff}
.bz-plate-fig .bz-noimg{background:transparent;min-height:0}
.bz-plate-num{position:absolute;left:10px;top:10px;background:var(--bz-paper);padding:2px 7px;border:1px solid var(--bz-line)}
.bz-plate-body{padding:14px 16px}
.bz-plate-body strong{display:block;font-size:14.5px;line-height:1.4;margin-bottom:6px}
.bz-plate-body small{font-family:var(--bz-font-mono);font-size:11px;color:var(--bz-muted);letter-spacing:.06em}
.bz-plate:hover{border-color:var(--bz-baize)}
.bz-plate:hover .bz-plate-body strong{color:var(--bz-baize)}

/* 19. Journal plates
   ========================================================================== */
.bz-journal{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.bz-jcard{border-top:2px solid var(--bz-baize);padding-top:16px;display:flex;flex-direction:column}
.bz-jcard-img{display:block;aspect-ratio:3/2;overflow:hidden;background:var(--bz-ivory-2);margin-bottom:14px}
.bz-jcard-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--bz-ease)}
.bz-jcard:hover .bz-jcard-img img{transform:scale(1.04)}
.bz-jcard-meta{
  display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:8px;
  font-family:var(--bz-font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--bz-muted);
}
.bz-jcard h3{font-size:19px;margin:0 0 8px;line-height:1.35}
.bz-jcard h3 a:hover{color:var(--bz-baize)}
.bz-jcard p{margin:0 0 14px;font-size:14px;color:var(--bz-muted);line-height:1.6}
.bz-jcard .bz-link{margin-top:auto;align-self:flex-start}

/* 20. FAQ — sticky heading column + accordion column
   ========================================================================== */
.bz-faqsplit{display:grid;grid-template-columns:.72fr 1.28fr;gap:52px;align-items:start}
.bz-faqsplit-copy{position:sticky;top:calc(var(--bz-header-h) + 26px)}
.bz-faqsplit-copy .bz-lead{font-size:16px;margin-bottom:20px}
.bz-faqlayout{display:grid;grid-template-columns:250px 1fr;gap:44px;align-items:start}
.bz-acc{border-top:1px solid var(--bz-line-strong)}
.bz-acc-item{border-bottom:1px solid var(--bz-line)}
.bz-acc-item summary{
  display:grid;grid-template-columns:46px 1fr 22px;gap:12px;align-items:start;
  padding:20px 0;cursor:pointer;list-style:none;
}
.bz-acc-item summary::-webkit-details-marker{display:none}
.bz-acc-q{font-family:var(--bz-font-display);font-size:18px;line-height:1.4;color:var(--bz-ink)}
.bz-acc-item summary i{margin-top:5px;color:var(--bz-baize);transition:transform .25s var(--bz-ease)}
.bz-acc-item[open] summary i{transform:rotate(45deg)}
.bz-acc-item[open] .bz-acc-q{color:var(--bz-baize)}
.bz-acc-body{padding:0 0 22px 58px;font-size:14.5px;color:var(--bz-ink-2)}
.bz-acc-body>*:last-child{margin-bottom:0}
.bz-faqsearch{
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;
  border:1px solid var(--bz-line-strong);background:var(--bz-paper);padding:14px 18px;margin-bottom:30px;
}
.bz-faqsearch i{color:var(--bz-brass)}
.bz-faqsearch input{
  flex:1 1 240px;min-width:0;border:0;background:transparent;font-size:15px;padding:6px 0;
}
.bz-faqsearch input:focus{outline:none}
.bz-faqcount{
  margin:0;font-family:var(--bz-font-mono);font-size:11.5px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--bz-muted);
}
.bz-faqcount b{color:var(--bz-baize);font-size:14px}
.bz-faqjump{border:1px solid var(--bz-line);background:var(--bz-paper);padding:20px}
.bz-faqjump strong{
  display:block;font-family:var(--bz-font-mono);font-size:11px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--bz-brass);margin-bottom:12px;
}
.bz-faqjump-list{border-top:1px solid var(--bz-line);max-height:340px;overflow-y:auto}
.bz-faqjump-list li{border-bottom:1px solid var(--bz-line)}
.bz-faqjump-list a{display:block;padding:9px 0;font-size:13.5px;color:var(--bz-ink-2);line-height:1.45}
.bz-faqjump-list a:hover{color:var(--bz-baize)}
.bz-faqjump-list a.on{color:var(--bz-baize);font-weight:600}
.bz-faqjump-links{margin-top:16px;padding-top:14px;border-top:1px solid var(--bz-line);font-size:13px}
.bz-faqjump-links span{
  display:block;font-family:var(--bz-font-mono);font-size:10.5px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--bz-muted);margin-bottom:8px;
}
.bz-faqjump-links a{display:block;padding:5px 0;color:var(--bz-ink-2)}
.bz-faqjump-links a:hover{color:var(--bz-baize)}
.bz-faqgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 34px;border-top:1px solid var(--bz-line-strong)}
.bz-faq{border-bottom:1px solid var(--bz-line)}
.bz-faq summary{
  display:grid;grid-template-columns:38px 1fr 20px;gap:10px;align-items:start;
  padding:18px 0;cursor:pointer;list-style:none;
}
.bz-faq summary::-webkit-details-marker{display:none}
.bz-faq span{font-size:15.5px;line-height:1.5;color:var(--bz-ink)}
.bz-faq summary i{margin-top:5px;color:var(--bz-baize);transition:transform .25s var(--bz-ease)}
.bz-faq[open] summary i{transform:rotate(45deg)}
.bz-faq[open] span{color:var(--bz-baize)}
.bz-faq-a{padding:0 0 18px 48px;font-size:14px;color:var(--bz-muted);line-height:1.65}
.bz-faq-a>*:last-child{margin-bottom:0}
.bz-faqgrid-1{grid-template-columns:1fr}

/* 21. CTA band — rosewood ledger
   ========================================================================== */
.bz-cta{background:var(--bz-rosewood);color:var(--bz-ivory);padding:78px 0;border-top:6px solid var(--bz-brass)}
.bz-cta-in{display:grid;grid-template-columns:1.15fr .85fr;gap:52px;align-items:center}
.bz-cta h2{color:#fff;margin-bottom:14px}
.bz-cta p{margin:0;color:rgba(246,242,233,.82);max-width:58ch}
.bz-cta-list{border-top:1px solid rgba(246,242,233,.24);margin-top:22px}
.bz-cta-list li{
  display:grid;grid-template-columns:26px 1fr;gap:10px;align-items:start;
  padding:9px 0;border-bottom:1px solid rgba(246,242,233,.14);
  font-size:14px;color:rgba(246,242,233,.78);
}
.bz-cta-list i{color:var(--bz-brass-light);margin-top:4px;font-size:12px}
.bz-cta-btns{display:flex;flex-direction:column;gap:12px;align-items:stretch}
.bz-cta-btns .bz-btn{width:100%}
.bz-cta-btns .bz-link{align-self:center;margin-top:6px}
.bz-band{
  display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between;
  border:1px solid var(--bz-line-strong);background:var(--bz-paper);padding:26px 28px;
}
.bz-band-copy{display:flex;gap:16px;align-items:flex-start;flex:1 1 320px}
.bz-band-copy>i{font-size:22px;color:var(--bz-baize);margin-top:4px}
.bz-band-copy strong{display:block;font-family:var(--bz-font-display);font-size:19px;margin-bottom:5px}
.bz-band-copy p{margin:0;font-size:14px;color:var(--bz-muted)}

/* 22. Footer — rosewood trade desk
   ========================================================================== */
.bz-footer{background:var(--bz-rosewood);color:var(--bz-ivory)}
.bz-desk{border-bottom:1px solid rgba(246,242,233,.18);background:var(--bz-rosewood-deep)}
.bz-desk-in{display:grid;grid-template-columns:repeat(4,1fr)}
.bz-desk-item{padding:24px 24px;border-left:1px solid rgba(246,242,233,.14)}
.bz-desk-item:first-child{border-left:0;padding-left:0}
.bz-desk-item b{
  display:block;font-family:var(--bz-font-mono);font-size:10.5px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--bz-brass-light);margin-bottom:8px;
}
.bz-desk-item a,.bz-desk-item span{font-size:14.5px;color:rgba(246,242,233,.88);line-height:1.5;display:block;word-break:break-word}
.bz-desk-item a:hover{color:var(--bz-brass-light)}
.bz-news{border-bottom:1px solid rgba(246,242,233,.18);padding:40px 0}
.bz-news-in{display:grid;grid-template-columns:1fr 440px;gap:44px;align-items:center}
.bz-news-copy h3{color:#fff;margin-bottom:8px}
.bz-news-copy p{margin:0;color:rgba(246,242,233,.75);font-size:14.5px;max-width:52ch}
.bz-subform{display:flex;gap:10px;align-items:stretch}
.bz-subform input{
  flex:1 1 auto;min-width:0;background:rgba(246,242,233,.06);border:1px solid rgba(246,242,233,.3);
  border-radius:var(--bz-radius);padding:13px 14px;color:#fff;font-size:14.5px;
}
.bz-subform input::placeholder{color:rgba(246,242,233,.5)}
.bz-subform input:focus{outline:none;border-color:var(--bz-brass-light)}
.bz-subform .bz-btn{flex:0 0 auto}
.bz-subform-note{
  margin:10px 0 0;display:flex;align-items:center;gap:8px;
  font-family:var(--bz-font-mono);font-size:11px;letter-spacing:.06em;color:rgba(246,242,233,.6);
}
.bz-foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:44px;padding:56px 0 44px}
.bz-foot-brand .bz-plaque{
  background:rgba(246,242,233,.06);border-color:rgba(220,188,124,.4);
  display:inline-flex;margin-bottom:18px;padding:10px 16px;
}
.bz-foot-brand .bz-plaque img{max-height:32px}
.bz-foot-brand>p{font-size:14px;color:rgba(246,242,233,.72);max-width:38ch;line-height:1.65}
.bz-foot-contact{border-top:1px solid rgba(246,242,233,.16)}
.bz-foot-contact li{border-bottom:1px solid rgba(246,242,233,.12)}
.bz-foot-contact a,.bz-foot-contact li>span{
  display:flex;gap:11px;align-items:flex-start;padding:11px 0;font-size:14px;color:rgba(246,242,233,.85);
}
.bz-foot-contact i{color:var(--bz-brass-light);margin-top:4px;width:16px;flex:0 0 16px}
.bz-foot-contact small{
  display:block;font-family:var(--bz-font-mono);font-size:10px;letter-spacing:.14em;
  text-transform:uppercase;color:rgba(246,242,233,.5);margin-bottom:2px;
}
.bz-foot-contact a:hover{color:var(--bz-brass-light)}
.bz-social{display:flex;gap:8px;margin-top:20px}
.bz-social a{
  width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid rgba(246,242,233,.24);border-radius:var(--bz-radius);color:rgba(246,242,233,.85);
}
.bz-social a:hover{border-color:var(--bz-brass-light);color:var(--bz-brass-light)}
.bz-foot-col h4{
  font-family:var(--bz-font-mono);font-size:10.5px;font-weight:600;letter-spacing:.18em;
  text-transform:uppercase;color:var(--bz-brass-light);margin:0 0 14px;
}
.bz-foot-col ul{border-top:1px solid rgba(246,242,233,.16)}
.bz-foot-col li{border-bottom:1px solid rgba(246,242,233,.1)}
.bz-foot-col a{display:block;padding:9px 0;font-size:14px;color:rgba(246,242,233,.78)}
.bz-foot-col a:hover{color:#fff}
.bz-foot-bar{border-top:1px solid rgba(246,242,233,.18);background:var(--bz-rosewood-deep)}
.bz-foot-bar-in{
  display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;
  padding:20px 0;font-size:12.5px;color:rgba(246,242,233,.62);
}
.bz-copy{font-family:var(--bz-font-mono);font-size:11.5px;letter-spacing:.04em}
.bz-foot-legal{display:flex;flex-wrap:wrap;gap:16px}
.bz-foot-legal a:hover{color:var(--bz-brass-light)}
.bz-foot-langs{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.bz-foot-langs a{color:rgba(246,242,233,.6);font-size:12px}
.bz-foot-langs a.on{color:var(--bz-brass-light);font-weight:600}
.bz-foot-langs a:hover{color:#fff}

/* 23. Inner page head
   ========================================================================== */
.bz-ph{padding:52px 0 46px;background:var(--bz-ivory-2);border-bottom:1px solid var(--bz-line)}
.bz-ph-in{display:flex;flex-wrap:wrap;gap:30px;align-items:flex-end;justify-content:space-between}
.bz-ph-copy{flex:1 1 520px;min-width:0}
.bz-ph-copy h1{margin-bottom:14px}
.bz-ph-copy .bz-lead{margin:0}
.bz-ph-side{display:flex;flex-wrap:wrap;gap:10px;flex:0 0 auto}
.bz-ph-baize{background:var(--bz-baize-deep);border-bottom:0;color:var(--bz-ivory)}
/* Not scoped to .bz-ph-copy: the contact head places the heading/lead directly in .bz-wrap */
.bz-ph-baize h1{color:#fff}
.bz-ph-baize .bz-lead{color:rgba(246,242,233,.8)}
.bz-ph-plain{background:var(--bz-ivory);padding-bottom:36px}
.bz-legal-updated{
  display:flex;align-items:center;gap:9px;margin:18px 0 0;
  font-family:var(--bz-font-mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--bz-muted);
}

/* 24. Product list
   ========================================================================== */
.bz-plp{display:grid;grid-template-columns:270px 1fr;gap:44px;align-items:start}
.bz-plp-rail{position:sticky;top:calc(var(--bz-header-h) + 22px)}
.bz-railbox{border:1px solid var(--bz-line);background:var(--bz-paper);margin-bottom:20px}
.bz-railbox h3{
  font-family:var(--bz-font-mono);font-size:10.5px;font-weight:600;letter-spacing:.18em;
  text-transform:uppercase;color:var(--bz-brass);margin:0;padding:14px 18px;border-bottom:1px solid var(--bz-line);
}
.bz-railbox ul{padding:6px 0}
.bz-railbox li a{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:10px 18px;font-size:14px;color:var(--bz-ink-2);border-left:3px solid transparent;
}
.bz-railbox li a:hover{color:var(--bz-baize);background:var(--bz-ivory)}
.bz-railbox li a.on{border-left-color:var(--bz-brass);color:var(--bz-baize);font-weight:600;background:var(--bz-ivory)}
.bz-railbox li i{font-size:11px;color:var(--bz-brass)}
.bz-railbox-body{padding:16px 18px;font-size:13.5px;color:var(--bz-muted)}
.bz-railbox-body p:last-child{margin-bottom:0}
.bz-railbox .bz-btn{margin:0 18px 18px;width:calc(100% - 36px)}
.bz-plp-intro{margin-bottom:30px}
.bz-plp-intro h2{font-size:24px;margin-bottom:8px}
.bz-plp-intro p{margin:0;color:var(--bz-muted);font-size:14.5px;max-width:70ch}
.bz-plp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.bz-plp-card{background:var(--bz-paper);border:1px solid var(--bz-line);display:flex;flex-direction:column;position:relative}
.bz-plp-media{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--bz-ivory-2)}
.bz-plp-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--bz-ease)}
.bz-plp-card:hover .bz-plp-media img{transform:scale(1.05)}
.bz-plp-cat{
  position:absolute;left:12px;top:12px;background:rgba(255,253,248,.94);
  border:1px solid var(--bz-line);padding:3px 9px;
  font-family:var(--bz-font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--bz-baize);
}
.bz-plp-body{padding:18px;display:flex;flex-direction:column;gap:8px;flex:1 1 auto}
.bz-plp-body h3{font-size:17.5px;margin:0;line-height:1.35}
.bz-plp-body h3 a:hover{color:var(--bz-baize)}
.bz-plp-body p{margin:0;font-size:13.5px;color:var(--bz-muted);line-height:1.55}
.bz-plp-foot{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  margin-top:auto;padding-top:12px;border-top:1px solid var(--bz-line);
}
.bz-plp-hover{
  position:absolute;left:0;right:0;top:0;aspect-ratio:4/3;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;
  background:rgba(10,61,41,.82);opacity:0;transition:opacity .3s var(--bz-ease);pointer-events:none;
}
.bz-plp-card:hover .bz-plp-hover{opacity:1}
.bz-plp-hover .bz-btn{pointer-events:auto}
.bz-listbar{
  display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;
  padding:14px 0;border-top:1px solid var(--bz-line-strong);border-bottom:1px solid var(--bz-line);margin-bottom:24px;
}
.bz-listbar strong{font-family:var(--bz-font-display);font-size:19px}
.bz-listbar span{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--bz-font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--bz-muted);
}
.bz-plp-faq{margin-top:60px}

/* 25. Product detail
   ========================================================================== */
.bz-pdp{display:grid;grid-template-columns:1.02fr .98fr;gap:52px;align-items:start;padding-top:8px}
.bz-pdp-media{position:sticky;top:calc(var(--bz-header-h) + 22px)}
.bz-pdp-main{position:relative;background:var(--bz-paper);border:1px solid var(--bz-line);aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;overflow:hidden}
.bz-pdp-main img{width:100%;height:100%;object-fit:cover}
.bz-pdp-main .bz-noimg{min-height:100%}
.bz-pdp-chip{position:absolute;left:14px;top:14px;z-index:2;background:rgba(255,253,248,.95)}
.bz-pdp-zoom{
  position:absolute;right:14px;bottom:14px;z-index:2;width:40px;height:40px;
  display:inline-flex;align-items:center;justify-content:center;
  background:rgba(255,253,248,.95);border:1px solid var(--bz-line);border-radius:var(--bz-radius);color:var(--bz-ink);
}
.bz-pdp-zoom:hover{border-color:var(--bz-baize);color:var(--bz-baize)}
.bz-thumbs{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.bz-thumb{
  width:76px;height:76px;flex:0 0 auto;border:1px solid var(--bz-line);overflow:hidden;background:var(--bz-paper);
  padding:0;transition:border-color .22s var(--bz-ease);
}
.bz-thumb img{width:100%;height:100%;object-fit:cover}
.bz-thumb.on,.bz-thumb:hover{border-color:var(--bz-baize)}
.bz-pdp-info h1{font-size:clamp(26px,3vw,40px);margin:8px 0 16px}
.bz-pdp-summary{font-size:16px;color:var(--bz-ink-2);line-height:1.7}
.bz-facts{border-top:1px solid var(--bz-line-strong);margin:22px 0}
.bz-facts tr{border-bottom:1px solid var(--bz-line)}
.bz-facts{table-layout:fixed}
.bz-facts th,.bz-facts td{padding:12px 0;text-align:left;vertical-align:top;font-size:14px;overflow-wrap:anywhere}
.bz-facts th{
  width:40%;font-family:var(--bz-font-mono);font-size:11px;font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;color:var(--bz-muted);padding-right:16px;
}
.bz-facts td{color:var(--bz-ink)}
.bz-facts td a{color:var(--bz-baize);border-bottom:1px solid rgba(15,93,60,.28)}
.bz-pdp-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}
.bz-pdp-contact{
  display:flex;gap:11px;align-items:flex-start;padding:14px 16px;background:var(--bz-baize-soft);
  border-left:3px solid var(--bz-baize);font-size:14px;color:var(--bz-ink-2);margin-bottom:20px;
}
.bz-pdp-contact>i{color:var(--bz-baize);margin-top:4px;font-size:17px}
.bz-pdp-contact a{color:var(--bz-baize);border-bottom:1px solid rgba(15,93,60,.28)}
.bz-share{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
/* Solution detail: the share row follows the inquiry band directly, so it needs its own gap */
.bz-band+.bz-share{margin-top:26px}
.bz-share>span{
  font-family:var(--bz-font-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--bz-muted);
}
.bz-share a,.bz-share button{
  width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--bz-line);border-radius:var(--bz-radius);color:var(--bz-ink-2);
}
.bz-share a:hover,.bz-share button:hover{border-color:var(--bz-baize);color:var(--bz-baize)}
.bz-ledgersec{margin-top:70px;border-top:1px solid var(--bz-line-strong);padding-top:44px}
.bz-ledgersec h2{font-size:26px;margin-bottom:20px}
.bz-allspec{display:grid;grid-template-columns:repeat(2,1fr);gap:0 44px;border-top:1px solid var(--bz-line-strong)}
.bz-allspec tr{border-bottom:1px solid var(--bz-line)}
.bz-allspec{table-layout:fixed}
.bz-allspec th,.bz-allspec td{padding:11px 0;text-align:left;font-size:14px;vertical-align:top;overflow-wrap:anywhere}
.bz-allspec th{
  width:45%;padding-right:16px;font-family:var(--bz-font-mono);font-size:11px;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;color:var(--bz-muted);
}
.bz-specnote{
  display:flex;gap:10px;align-items:flex-start;margin:18px 0 0;
  font-size:13.5px;color:var(--bz-muted);
}
.bz-specnote i{color:var(--bz-brass);margin-top:4px}
.bz-pdp-inq{
  display:grid;grid-template-columns:.85fr 1.15fr;gap:0;
  border:1px solid var(--bz-line-strong);background:var(--bz-paper);margin-top:26px;
}
.bz-pdp-inq-copy{background:var(--bz-baize-deep);color:var(--bz-ivory);padding:36px 32px}
.bz-pdp-inq-copy h3{color:#fff;margin-bottom:12px}
.bz-pdp-inq-copy p{color:rgba(246,242,233,.8);font-size:14.5px}
.bz-pdp-inq-copy ul{border-top:1px solid rgba(246,242,233,.2);margin-top:18px}
.bz-pdp-inq-copy li{
  display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;
  padding:11px 0;border-bottom:1px solid rgba(246,242,233,.14);font-size:13.5px;color:rgba(246,242,233,.85);
}
.bz-pdp-inq-copy i{color:var(--bz-brass-light);margin-top:3px;font-size:12px}
.bz-pdp-inq-form{padding:36px 32px}
.bz-pdp-related{margin-top:70px}
.bz-zoom{
  position:fixed;inset:0;z-index:500;background:rgba(10,25,18,.9);
  display:none;align-items:center;justify-content:center;padding:40px;
}
.bz-zoom.on{display:flex}
.bz-zoom img{max-width:92vw;max-height:88vh;object-fit:contain;background:#fff}

/* 26. About page
   ========================================================================== */
.bz-about{display:grid;grid-template-columns:1.06fr .94fr;gap:52px;align-items:start}
.bz-about-statement h1{margin-bottom:18px}
.bz-about-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.bz-factrail{border-top:1px solid var(--bz-line-strong);margin-top:24px}
.bz-factrail li{
  display:grid;grid-template-columns:24px 1fr;gap:12px;align-items:start;
  padding:14px 0;border-bottom:1px solid var(--bz-line);
}
.bz-factrail i{color:var(--bz-baize);margin-top:4px;font-size:14px}
.bz-factrail strong{display:block;font-size:15px;font-family:var(--bz-font-display);margin-bottom:3px}
.bz-factrail em{font-style:normal;font-size:13.5px;color:var(--bz-muted);line-height:1.5}
.bz-about-rail .bz-frame{margin-bottom:0}
.bz-about-body{margin-top:8px}
.bz-timeline{border-top:1px solid var(--bz-line-strong);margin-top:6px}
.bz-timeline li{
  display:grid;grid-template-columns:74px 1fr;gap:20px;
  padding:22px 0;border-bottom:1px solid var(--bz-line);
}
.bz-timeline b{
  font-family:var(--bz-font-mono);font-size:12px;letter-spacing:.14em;color:var(--bz-brass);padding-top:5px;
}
.bz-timeline h3{font-size:18px;margin:0 0 6px}
.bz-timeline p{margin:0;font-size:14px;color:var(--bz-muted);line-height:1.62}
.bz-values{display:grid;grid-template-columns:repeat(2,1fr);gap:0 44px;border-top:1px solid var(--bz-line-strong)}
.bz-value{padding:24px 0;border-bottom:1px solid var(--bz-line);display:grid;grid-template-columns:26px 1fr;gap:14px;align-items:start}
.bz-value i{color:var(--bz-baize);font-size:17px;margin-top:5px}
.bz-value h3{font-size:18px;margin:0 0 6px}
.bz-value p{margin:0;font-size:14px;color:var(--bz-muted);line-height:1.62}
.bz-checklist-band{display:grid;grid-template-columns:1.2fr .8fr;gap:52px;align-items:center}
.bz-checklist-items{border-top:1px solid rgba(246,242,233,.24);margin-top:22px}
.bz-checklist-items li{
  display:grid;grid-template-columns:22px 1fr;gap:11px;align-items:start;
  padding:11px 0;border-bottom:1px solid rgba(246,242,233,.14);
  font-size:14.5px;color:rgba(246,242,233,.85);
}
.bz-checklist-items i{color:var(--bz-brass-light);margin-top:4px;font-size:12px}
.bz-checklist-cta{display:flex;flex-direction:column;gap:12px}
.bz-checklist-cta .bz-btn{width:100%}

/* 27. Manufacturing page
   ========================================================================== */
.bz-procrail{
  display:grid;grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--bz-line-strong);margin-top:10px;
}
.bz-procrail li{
  padding:26px 24px;border-bottom:1px solid var(--bz-line);border-left:1px solid var(--bz-line);
}
.bz-procrail li:nth-child(3n+1){border-left:0;padding-left:0}
.bz-procrail b{display:block;font-family:var(--bz-font-mono);font-size:11px;letter-spacing:.18em;color:var(--bz-brass);margin-bottom:12px}
.bz-procrail i{display:block;font-size:20px;color:var(--bz-baize);margin-bottom:12px}
.bz-procrail strong{display:block;font-family:var(--bz-font-display);font-size:18px;margin-bottom:8px}
.bz-procrail p{margin:0;font-size:13.8px;color:var(--bz-muted);line-height:1.6}
.bz-caps{display:grid;grid-template-columns:repeat(3,1fr);gap:0 34px;border-top:1px solid var(--bz-line-strong)}
.bz-cap{padding:22px 0;border-bottom:1px solid var(--bz-line)}
.bz-cap h3{font-size:17.5px;margin:0 0 7px;display:flex;align-items:center;gap:10px}
.bz-cap h3 i{color:var(--bz-baize);font-size:15px}
.bz-cap p{margin:0;font-size:13.8px;color:var(--bz-muted);line-height:1.6}
.bz-qc{display:grid;grid-template-columns:.92fr 1.08fr;gap:52px;align-items:start}
.bz-qc-imgs{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}
.bz-qc-fig{background:var(--bz-paper);border:1px solid var(--bz-line);aspect-ratio:4/3;overflow:hidden}
.bz-qc-fig img{width:100%;height:100%;object-fit:cover}
.bz-table{width:100%;border-top:1px solid var(--bz-line-strong);background:var(--bz-paper)}
.bz-table th,.bz-table td{padding:13px 16px;text-align:left;font-size:14px;border-bottom:1px solid var(--bz-line);vertical-align:top;overflow-wrap:anywhere}
.bz-table th{
  font-family:var(--bz-font-mono);font-size:10.5px;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--bz-brass);background:var(--bz-ivory-2);width:auto;
}
.bz-table td:first-child{font-weight:600;color:var(--bz-ink);width:26%}

/* 28. Solutions page
   ========================================================================== */
.bz-solgrid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:8px}
.bz-solcard{background:var(--bz-paper);border:1px solid var(--bz-line);display:flex;flex-direction:column}
.bz-solcard-cover{display:block;aspect-ratio:3/2;overflow:hidden;background:var(--bz-baize-deep);position:relative}
.bz-solcard-cover img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--bz-ease)}
.bz-solcard:hover .bz-solcard-cover img{transform:scale(1.04)}
.bz-solcard-tag{position:absolute;left:14px;top:14px;background:var(--bz-paper);padding:3px 8px;border:1px solid var(--bz-line)}
.bz-solcard-body{padding:24px;display:flex;flex-direction:column;flex:1 1 auto}
.bz-solcard-body h2{font-size:21px;margin:0 0 10px;line-height:1.32}
.bz-solcard-body h2 a:hover{color:var(--bz-baize)}
.bz-solcard-body p{margin:0 0 16px;font-size:14px;color:var(--bz-muted);line-height:1.6}
.bz-solcard-foot{
  display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
  margin-top:auto;padding-top:16px;border-top:1px solid var(--bz-line);
}
.bz-solband{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.bz-solband-copy h2{margin-bottom:12px}
.bz-solband-copy p{margin:0;font-size:15px;color:var(--bz-muted);max-width:60ch}
.bz-solband-btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}
.bz-solhero{position:relative;background:var(--bz-baize-deep);padding:56px 0;color:var(--bz-ivory)}
.bz-solhero-media{position:absolute;inset:0;opacity:.26;overflow:hidden}
.bz-solhero-media img{width:100%;height:100%;object-fit:cover}
.bz-solhero-in{position:relative;z-index:2}
.bz-solhero-in h1{color:#fff;margin-bottom:14px}
.bz-solhero-meta{
  display:flex;flex-wrap:wrap;gap:16px;
  font-family:var(--bz-font-mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:rgba(246,242,233,.72);
}
.bz-solview{display:grid;grid-template-columns:1fr 336px;gap:52px;align-items:start}
.bz-solview-lead{font-size:17px;margin-bottom:24px}
.bz-applycard{border:1px solid var(--bz-line-strong);background:var(--bz-paper);padding:26px 24px;margin-bottom:24px}
.bz-applycard h3{font-size:19px;margin-bottom:10px}
.bz-applycard p{font-size:14px;color:var(--bz-muted);margin-bottom:16px}
.bz-applycard .bz-btn{margin-bottom:10px}
.bz-sidebox{border:1px solid var(--bz-line);background:var(--bz-paper);margin-bottom:22px}
.bz-sidebox h3{
  font-family:var(--bz-font-mono);font-size:10.5px;font-weight:600;letter-spacing:.18em;
  text-transform:uppercase;color:var(--bz-brass);margin:0;padding:14px 18px;border-bottom:1px solid var(--bz-line);
}
.bz-sidebox>p{padding:16px 18px 0;margin:0;font-size:13.8px;color:var(--bz-muted)}
.bz-sidebox>p+p{padding-top:8px}
.bz-sidebox .bz-btn{margin:16px 18px 18px}
/* "Browse all" style links sit flush against the box border unless they get the same inset as the buttons */
.bz-sidebox>.bz-link{margin:16px 18px 18px}
.bz-sidebox .bz-btn-block{width:calc(100% - 36px)}
.bz-sidebox-navy{background:var(--bz-baize-deep);border-color:var(--bz-baize-deep);color:var(--bz-ivory)}
.bz-sidebox-navy h3{color:var(--bz-brass-light);border-bottom-color:rgba(246,242,233,.18)}
.bz-sidebox-navy>p{color:rgba(246,242,233,.78)}
.bz-sidelist{padding:6px 0}
.bz-sidelist li{border-bottom:1px solid var(--bz-line)}
.bz-sidelist li:last-child{border-bottom:0}
.bz-sidelist a{display:flex;gap:12px;align-items:center;padding:11px 18px;font-size:14px;color:var(--bz-ink-2)}
.bz-sidelist a:hover{color:var(--bz-baize)}
.bz-sidelist i{color:var(--bz-brass);font-size:11px}
.bz-sidelist-img img{width:52px;height:52px;object-fit:cover;flex:0 0 auto;border:1px solid var(--bz-line)}
.bz-chiprow{display:flex;flex-wrap:wrap;gap:8px;padding:16px 18px}
.bz-chiprow-flush{padding:0}
.bz-prenext{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:40px;border-top:1px solid var(--bz-line-strong);padding-top:24px}
.bz-prenext-a{display:block;padding:16px 18px;border:1px solid var(--bz-line);background:var(--bz-paper)}
.bz-prenext-a small{
  display:block;font-family:var(--bz-font-mono);font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--bz-brass);margin-bottom:7px;
}
.bz-prenext-a span{font-size:14.5px;line-height:1.5;display:block}
.bz-prenext-a:hover{border-color:var(--bz-baize)}
.bz-prenext-next{text-align:right}
.bz-pager{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:34px}
.bz-pager-cell{min-width:0}
.bz-pager-cell.bz-pager-next{text-align:right}
.bz-pager .pager-link{display:block;padding:14px 16px;border:1px solid var(--bz-line);background:var(--bz-paper);font-size:14px}
.bz-pager .pager-link small{
  display:block;font-family:var(--bz-font-mono);font-size:10px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--bz-brass);margin-bottom:6px;
}
.bz-pager .pager-link:hover{border-color:var(--bz-baize);color:var(--bz-baize)}

/* 29. Article list and article detail
   ========================================================================== */
.bz-blog{display:grid;grid-template-columns:1fr 336px;gap:52px;align-items:start}
.bz-blog-side{position:sticky;top:calc(var(--bz-header-h) + 22px)}
.bz-artgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.bz-arcard{border-top:2px solid var(--bz-baize);padding-top:14px;display:flex;flex-direction:column}
.bz-arcard-img{display:block;aspect-ratio:3/2;overflow:hidden;background:var(--bz-ivory-2);margin-bottom:14px}
.bz-arcard-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--bz-ease)}
.bz-arcard:hover .bz-arcard-img img{transform:scale(1.04)}
.bz-arcard time{
  font-family:var(--bz-font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--bz-muted);display:block;margin-bottom:8px;
}
.bz-arcard h2{font-size:19px;margin:0 0 8px;line-height:1.36}
.bz-arcard h2 a:hover{color:var(--bz-baize)}
.bz-arcard p{margin:0 0 14px;font-size:13.8px;color:var(--bz-muted);line-height:1.6}
.bz-arcard .bz-link{margin-top:auto;align-self:flex-start}
.bz-post-head{padding:48px 0 38px;background:var(--bz-ivory-2);border-bottom:1px solid var(--bz-line)}
.bz-post-head h1{max-width:22ch;margin:10px 0 18px}
.bz-post-meta{
  display:flex;flex-wrap:wrap;gap:18px;
  font-family:var(--bz-font-mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--bz-muted);
}
/* Cover sits in the article measure instead of bleeding edge to edge: post thumbnails are
   usually small uploads, so a full-viewport frame upscales them badly. The frame stays a
   band, the image keeps its own ratio and is only cropped if it is extremely tall. */
.bz-post-cover{margin:0;padding:36px 0 0}
.bz-post-cover>div{width:min(860px,92vw);margin:0 auto}
.bz-post-cover img{display:block;width:100%;height:auto;max-height:520px;object-fit:cover}
.bz-post-layout{display:grid;grid-template-columns:1fr 320px;gap:52px;align-items:start;padding-top:44px;padding-bottom:70px}
.bz-post-intro{
  font-size:17.5px;line-height:1.7;color:var(--bz-ink-2);padding-left:20px;
  border-left:3px solid var(--bz-brass);margin-bottom:26px;
}
.bz-post-foot{margin-top:40px;padding-top:24px;border-top:1px solid var(--bz-line-strong)}
.bz-post-tags{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:0;margin-bottom:18px}
.bz-post-tags>span{
  font-family:var(--bz-font-mono);font-size:10.5px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--bz-muted);margin-right:4px;
}
.bz-post-side{position:sticky;top:calc(var(--bz-header-h) + 22px)}

/* 30. Legal pages
   ========================================================================== */
.bz-legal-grid{display:grid;grid-template-columns:288px 1fr;gap:52px;align-items:start}
.bz-legal-side{position:sticky;top:calc(var(--bz-header-h) + 22px);max-height:calc(100vh - var(--bz-header-h) - 44px);overflow-y:auto}
.bz-legal-toc{border:1px solid var(--bz-line);background:var(--bz-paper);padding:18px;margin-bottom:20px}
.bz-legal-toc a{
  display:block;padding:8px 0;font-size:13.5px;color:var(--bz-ink-2);
  border-bottom:1px solid var(--bz-line);line-height:1.45;
}
.bz-legal-toc a:last-child{border-bottom:0}
.bz-legal-toc a:hover{color:var(--bz-baize)}
.bz-legal-toc a.on{color:var(--bz-baize);font-weight:600}
.bz-legal-toc .bz-toc-sub{padding-left:14px;font-size:12.8px}
.bz-legal-links{border:1px solid var(--bz-line);background:var(--bz-paper);padding:18px}
.bz-legal-links strong{
  display:block;font-family:var(--bz-font-mono);font-size:10.5px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--bz-brass);margin-bottom:10px;
}
.bz-legal-links a{display:flex;align-items:center;gap:10px;padding:7px 0;font-size:13.5px;color:var(--bz-ink-2)}
.bz-legal-links a:hover{color:var(--bz-baize)}
.bz-legal-links i{color:var(--bz-brass);width:16px;flex:0 0 16px;font-size:12px}

/* 31. Catalog page
   ========================================================================== */
.bz-catalog{display:grid;grid-template-columns:340px 1fr 380px;gap:44px;align-items:start}
.bz-catalog-book{background:var(--bz-paper);border:1px solid var(--bz-line-strong);padding:10px;aspect-ratio:4/5}
.bz-catalog-book img{width:100%;height:100%;object-fit:contain;background:#fff}
.bz-catalog-cap{
  font-family:var(--bz-font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--bz-muted);margin:12px 0 0;
}
.bz-checklist{border-top:1px solid var(--bz-line-strong)}
.bz-checklist li{
  display:grid;grid-template-columns:46px 1fr;gap:14px;align-items:start;
  padding:16px 0;border-bottom:1px solid var(--bz-line);
}
.bz-checklist li>b{font-family:var(--bz-font-mono);font-size:11.5px;letter-spacing:.14em;color:var(--bz-brass);padding-top:4px}
.bz-checklist li span{font-size:14.5px;line-height:1.6;color:var(--bz-ink-2)}
.bz-catalog-cats{margin-top:26px}
.bz-catalog-cats>strong{
  display:block;font-family:var(--bz-font-mono);font-size:10.5px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--bz-brass);margin-bottom:10px;
}
.bz-catalog-form{border:1px solid var(--bz-line-strong);background:var(--bz-paper);padding:28px 26px}
.bz-catalog-form h2{font-size:22px;margin-bottom:8px}
.bz-catalog-form>p.bz-muted{font-size:14px;margin-bottom:18px}
.bz-catalog-form .bz-btn{margin-top:4px}

/* 32. Contact page
   ========================================================================== */
.bz-ph-contact .bz-channels{
  display:grid;grid-template-columns:repeat(3,1fr);margin-top:34px;
  border-top:1px solid rgba(246,242,233,.24);border-bottom:1px solid rgba(246,242,233,.24);
}
.bz-channel{
  display:flex;align-items:center;gap:14px;padding:22px 24px;
  border-left:1px solid rgba(246,242,233,.18);color:var(--bz-ivory);
}
.bz-channel:first-child{border-left:0;padding-left:0}
.bz-channel>i{font-size:19px;color:var(--bz-brass-light);flex:0 0 auto}
.bz-channel strong{
  display:block;font-family:var(--bz-font-mono);font-size:10.5px;letter-spacing:.16em;
  text-transform:uppercase;color:rgba(246,242,233,.62);margin-bottom:4px;
}
.bz-channel span{font-size:14.5px;word-break:break-word}
.bz-channel-go{margin-left:auto;color:rgba(246,242,233,.5)}
.bz-channel:hover .bz-channel-go{color:var(--bz-brass-light)}
.bz-channel:hover span{color:var(--bz-brass-light)}
.bz-contact{display:grid;grid-template-columns:1.1fr .9fr;gap:52px;align-items:start}
.bz-contact h2{font-size:26px;margin-bottom:10px}
.bz-contact-side .bz-addrcard{border:1px solid var(--bz-line);background:var(--bz-paper);padding:26px 24px;margin-bottom:22px}
.bz-addrcard h3{font-size:18px;margin-bottom:10px;display:flex;align-items:center;gap:10px}
.bz-addrcard h3 i{color:var(--bz-baize);font-size:15px}
.bz-addrcard>p{font-size:14.5px;color:var(--bz-ink-2)}
.bz-hours{border-top:1px solid var(--bz-line);margin:16px 0 0}
.bz-hours dt{
  font-family:var(--bz-font-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--bz-brass);padding-top:14px;
}
.bz-hours dd{margin:6px 0 14px;font-size:14px;color:var(--bz-ink-2);line-height:1.6}
.bz-nextsteps{
  display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--bz-line-strong);
}
.bz-nextsteps li{padding:26px 24px;border-left:1px solid var(--bz-line)}
.bz-nextsteps li:first-child{border-left:0;padding-left:0}
.bz-nextsteps b{display:block;font-family:var(--bz-font-mono);font-size:11px;letter-spacing:.18em;color:var(--bz-brass);margin-bottom:12px}
.bz-nextsteps h3{font-size:18px;margin-bottom:8px}
.bz-nextsteps p{margin:0;font-size:14px;color:var(--bz-muted);line-height:1.6}
.bz-sidecard-sand{background:var(--bz-ivory-2)}
.bz-sidecard{border:1px solid var(--bz-line);padding:24px 22px;margin-bottom:22px}
.bz-sidecard h3{font-size:18px;margin-bottom:10px}
.bz-sidecard p{font-size:14px;color:var(--bz-muted);margin-bottom:16px}
.bz-sidecard-btns{display:flex;flex-wrap:wrap;gap:10px}

/* 33. Search and tags pages
   ========================================================================== */
.bz-search-grid{display:grid;grid-template-columns:300px 1fr;gap:48px;align-items:start}
.bz-search-panel{position:sticky;top:calc(var(--bz-header-h) + 22px)}
.bz-search-form{display:flex;gap:8px;padding:16px 18px}
.bz-search-form input{
  flex:1 1 auto;min-width:0;border:1px solid var(--bz-line-strong);border-radius:var(--bz-radius);
  padding:11px 12px;font-size:14px;background:var(--bz-paper);
}
.bz-search-form input:focus{outline:none;border-color:var(--bz-baize)}
.bz-search-form button{
  flex:0 0 44px;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;
  background:var(--bz-baize);color:#fff;border-radius:var(--bz-radius);
}
.bz-search-form button:hover{background:var(--bz-ink)}
.bz-tagcloud{display:flex;flex-wrap:wrap;gap:9px}
.bz-tagcloud-side{padding:16px 18px}
.bz-pill{
  display:inline-block;padding:7px 13px;border:1px solid var(--bz-line-strong);border-radius:var(--bz-radius);
  font-family:var(--bz-font-mono);font-size:11.5px;letter-spacing:.06em;color:var(--bz-ink-2);
  transition:border-color .22s,background-color .22s,color .22s;
}
.bz-pill:hover{border-color:var(--bz-baize);background:var(--bz-baize);color:#fff}

/* 34. Quote list (inquiry) page
   ========================================================================== */
.bz-quote-grid{display:grid;grid-template-columns:1fr 400px;gap:44px;align-items:start}
.bz-quote-main{min-width:0}
.bz-qtable{border-top:1px solid var(--bz-line-strong);background:var(--bz-paper)}
.bz-qtable th{
  padding:12px 16px;text-align:left;background:var(--bz-ivory-2);
  font-family:var(--bz-font-mono);font-size:10.5px;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--bz-brass);border-bottom:1px solid var(--bz-line);
}
.bz-qtable td{padding:16px;border-bottom:1px solid var(--bz-line);vertical-align:middle;overflow-wrap:anywhere}
.bz-qrow-img img{width:76px;height:76px;object-fit:cover;border:1px solid var(--bz-line)}
.bz-qrow-img .bz-noimg{min-height:76px;width:76px}
.bz-qrow-title h3{font-size:16px;margin:0 0 4px;line-height:1.4}
.bz-qrow-title h3 a:hover{color:var(--bz-baize)}
.bz-qrow-title small{font-family:var(--bz-font-mono);font-size:11px;color:var(--bz-muted)}
.bz-qty{display:inline-flex;align-items:center;border:1px solid var(--bz-line-strong);border-radius:var(--bz-radius);overflow:hidden}
.bz-qty button{width:36px;height:38px;display:inline-flex;align-items:center;justify-content:center;color:var(--bz-ink-2)}
.bz-qty button:hover{background:var(--bz-ivory-2);color:var(--bz-baize)}
.bz-qty input{width:56px;height:38px;text-align:center;border:0;border-left:1px solid var(--bz-line);border-right:1px solid var(--bz-line);font-size:14px}
.bz-qty input:focus{outline:none}
.bz-qdel{
  width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--bz-line);border-radius:var(--bz-radius);color:var(--bz-ink-2);
}
.bz-qdel:hover{border-color:#a3352b;color:#a3352b}
.bz-quote-more{margin:18px 0 0}
.bz-quote-form{border:1px solid var(--bz-line-strong);background:var(--bz-paper);padding:28px 26px}
.bz-quote-count{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding-bottom:14px;border-bottom:1px solid var(--bz-line);margin-bottom:18px;
  font-family:var(--bz-font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--bz-muted);
}
.bz-quote-count b{font-size:22px;color:var(--bz-baize);letter-spacing:0}
.bz-quote-form h3{font-size:21px;margin-bottom:8px}
.bz-quote-form>p{font-size:14px;color:var(--bz-muted);margin-bottom:18px}

/* 35. Forms
   ========================================================================== */
.bz-form{display:flex;flex-direction:column;gap:14px}
.bz-form-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.bz-field{display:block;font-size:13px}
.bz-field>span{
  display:block;font-family:var(--bz-font-mono);font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--bz-muted);margin-bottom:7px;
}
.bz-form input[type=text],.bz-form input[type=email],.bz-form input[type=tel],
.bz-form textarea,.bz-field input,.bz-field textarea{
  width:100%;background:var(--bz-paper);border:1px solid var(--bz-line-strong);border-radius:var(--bz-radius);
  padding:13px 14px;font-size:14.5px;color:var(--bz-ink);
  transition:border-color .22s var(--bz-ease);
}
.bz-form input:focus,.bz-form textarea:focus,.bz-field input:focus,.bz-field textarea:focus{
  outline:none;border-color:var(--bz-baize);
}
.bz-form input::placeholder,.bz-form textarea::placeholder{color:#9aa29a}
.bz-form textarea{resize:vertical;min-height:120px}
.bz-form-vertify{display:grid;grid-template-columns:1fr 130px;gap:12px;align-items:center}
.bz-captcha{width:130px;height:44px;object-fit:cover;border:1px solid var(--bz-line);cursor:pointer}
.bz-form-note{
  display:flex;gap:9px;align-items:flex-start;margin:14px 0 0;
  font-size:12.5px;color:var(--bz-muted);line-height:1.5;
}
.bz-form-note i{color:var(--bz-brass);margin-top:3px;font-size:12px}
.bz-form-note a{color:var(--bz-baize);text-decoration:underline}
.bz-form-note-light{color:rgba(246,242,233,.7)}
.bz-form-note-solo{margin-top:22px}
.bz-form-foot{display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between}
.bz-form-foot .bz-form-note{margin:0;max-width:46ch}

/* 36. Modal
   ========================================================================== */
.bz-modal{
  position:fixed;inset:0;z-index:600;display:none;align-items:center;justify-content:center;
  background:rgba(8,26,18,.72);padding:30px;
}
.bz-modal.on{display:flex}
.bz-modal-box{
  display:grid;grid-template-columns:.82fr 1.18fr;width:min(960px,100%);max-height:90vh;overflow:auto;
  background:var(--bz-paper);border-top:4px solid var(--bz-brass);
}
.bz-modal-side{background:var(--bz-baize-deep);color:var(--bz-ivory);padding:38px 32px;position:relative;overflow:hidden}
.bz-modal-side h3{color:#fff;margin-bottom:14px}
.bz-modal-side p{color:rgba(246,242,233,.8);font-size:14.5px}
.bz-modal-list{border-top:1px solid rgba(246,242,233,.2);margin-top:18px}
.bz-modal-list li{
  display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;
  padding:11px 0;border-bottom:1px solid rgba(246,242,233,.14);font-size:13.5px;color:rgba(246,242,233,.85);
}
.bz-modal-list i{color:var(--bz-brass-light);margin-top:3px;font-size:12px}
.bz-modal-art{position:absolute;left:0;right:0;bottom:0;width:100%;height:110px;color:rgba(220,188,124,.35)}
.bz-modal-body{padding:38px 34px;position:relative}
.bz-modal-close{
  position:absolute;right:14px;top:14px;z-index:3;width:38px;height:38px;
  display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--bz-line);
  border-radius:var(--bz-radius);color:var(--bz-ink);
}
.bz-modal-close:hover{border-color:var(--bz-baize);color:var(--bz-baize)}
.bz-modal .bz-btn{margin-top:4px}

/* 37. Success overlay and toast
   ========================================================================== */
.success-overlay{
  position:fixed;inset:0;z-index:700;background:rgba(8,26,18,.72);
  display:flex;align-items:center;justify-content:center;padding:30px;
}
.success-box{
  background:var(--bz-paper);border-top:4px solid var(--bz-brass);padding:40px 34px;text-align:center;
  max-width:440px;width:100%;
}
.success-icon{font-size:38px;color:var(--bz-baize);margin-bottom:14px}
.success-box h3{font-size:23px;margin-bottom:10px}
.success-box p{font-size:14.5px;color:var(--bz-muted);margin-bottom:20px}
.bz-toast{
  position:fixed;bottom:96px;left:50%;transform:translateX(-50%) translateY(14px);
  z-index:800;display:flex;gap:12px;align-items:center;
  background:var(--bz-baize-deep);color:#fff;padding:14px 20px;
  border-left:3px solid var(--bz-brass);border-radius:var(--bz-radius);
  max-width:calc(100vw - 40px);box-shadow:var(--bz-shadow);
  opacity:0;transition:opacity .3s var(--bz-ease),transform .3s var(--bz-ease);
}
.bz-toast.on{opacity:1;transform:translateX(-50%) translateY(0)}
.bz-toast>i{color:var(--bz-brass-light)}
.bz-toast strong{display:block;font-size:14px;font-weight:600}
.bz-toast a{display:block;font-size:12.5px;color:var(--bz-brass-light);text-decoration:underline;margin-top:2px}

/* 38. Floating controls and mobile bar
   ========================================================================== */
.bz-wa,.bz-totop{
  position:fixed;right:20px;z-index:300;width:46px;height:46px;
  display:inline-flex;align-items:center;justify-content:center;border-radius:var(--bz-radius);
  font-size:18px;transition:background-color .25s,color .25s,border-color .25s;
}
.bz-wa{bottom:24px;background:#1f8a4c;color:#fff}
.bz-wa:hover{background:#166b3a;color:#fff}
.bz-totop{
  bottom:80px;background:var(--bz-paper);border:1px solid var(--bz-line-strong);color:var(--bz-ink);
  opacity:0;pointer-events:none;
}
.bz-totop.show{opacity:1;pointer-events:auto}
.bz-totop:hover{border-color:var(--bz-baize);color:var(--bz-baize)}
.bz-mobar{display:none}

/* 39. Pagination (CMS core output)
   ========================================================================== */
.pagination{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center;margin:40px 0 0}
.pagination a,.pagination span{
  min-width:42px;height:42px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--bz-line-strong);border-radius:var(--bz-radius);
  font-family:var(--bz-font-mono);font-size:13px;color:var(--bz-ink-2);
  transition:border-color .22s,background-color .22s,color .22s;
}
.pagination a:hover{border-color:var(--bz-baize);color:var(--bz-baize)}
.pagination i.iconfont{font-style:normal;line-height:1;display:inline-block}
.pagination i.icon-arrow5::before{content:"\2039";font-size:18px}
.pagination i.icon-arrow6::before{content:"\203A";font-size:18px}
.pagination span.active a{border-color:var(--bz-baize);background:var(--bz-baize);color:#fff}
/* The CMS wraps every item as <span><a>…</a></span>; the wrapper must stay bare or each
   item paints two borders (the span's own plus the link's). */
.pagination span{border:0;min-width:auto;height:auto;padding:0}
.pagination a:focus-visible{outline:2px solid var(--bz-brass);outline-offset:2px}
.pagination .pager-empty{display:none}

/* 40. Rich text, tables and stacked phones
   ========================================================================== */
.detail-content{font-size:15.5px;line-height:1.78;color:var(--bz-ink-2);min-width:0;overflow-wrap:break-word}
.detail-content>*:first-child{margin-top:0}
.detail-content h2{font-size:26px;margin:34px 0 14px}
.detail-content h3{font-size:20px;margin:28px 0 12px}
.detail-content h4{font-size:17px;margin:22px 0 10px}
.detail-content p{margin:0 0 16px}
.detail-content ul,.detail-content ol{margin:0 0 18px;padding-left:22px;list-style:disc}
.detail-content ol{list-style:decimal}
.detail-content li{margin-bottom:8px}
.detail-content a{color:var(--bz-baize);text-decoration:underline}
.detail-content img{margin:10px 0;max-width:100%;height:auto}
.detail-content blockquote{
  margin:24px 0;padding:16px 22px;border-left:3px solid var(--bz-brass);
  background:var(--bz-ivory-2);font-size:16px;
}
.detail-content table{
  display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;
  border-top:1px solid var(--bz-line-strong);margin:22px 0;
}
.detail-content table th,.detail-content table td{
  padding:11px 14px;border-bottom:1px solid var(--bz-line);text-align:left;font-size:14px;vertical-align:top;
}
.detail-content table th{
  font-family:var(--bz-font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--bz-brass);background:var(--bz-ivory-2);white-space:nowrap;
}
.bz-tablewrap-scroll{position:relative}
.bz-tablewrap-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.bz-tablewrap-scroll.is-scrollable::after{
  content:"";position:absolute;right:0;top:0;bottom:0;width:44px;pointer-events:none;
  background:linear-gradient(to right,rgba(246,242,233,0),rgba(246,242,233,.95));
  transition:opacity .25s var(--bz-ease);
}
.bz-tablewrap-scroll.at-end::after{opacity:0}
.bz-tablewrap-scroll.is-scrollable{box-shadow:inset -14px 0 14px -14px rgba(21,33,28,.25)}
.bz-swipehint{
  display:none;align-items:center;gap:8px;margin:6px 0 0;
  font-family:var(--bz-font-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--bz-muted);
}
.bz-tablewrap-scroll.is-scrollable+.bz-swipehint{display:flex}

/* 40a. Grid and flex children must be able to shrink.
   A grid/flex item defaults to min-width:auto, so one wide or nowrap descendant
   pushes the whole track open and the page scrolls sideways. Every multi-column
   container defined above is listed here once. */
.bz-hero-grid>*,.bz-feature>*,.bz-install>*,.bz-anatomy>*,.bz-pdp>*,.bz-plp>*,.bz-plp-grid>*,
.bz-about>*,.bz-qc>*,.bz-contact>*,.bz-blog>*,.bz-post-layout>*,.bz-solview>*,.bz-search-grid>*,
.bz-legal-grid>*,.bz-catalog>*,.bz-quote-grid>*,.bz-faqsplit>*,.bz-faqlayout>*,.bz-cta-in>*,
.bz-news-in>*,.bz-foot-grid>*,.bz-solband>*,.bz-checklist-band>*,.bz-desk-in>*,.bz-steps>*,
.bz-procrail>*,.bz-ledger>*,.bz-journal>*,.bz-artgrid>*,.bz-plates>*,.bz-tiles>*,.bz-values>*,
.bz-caps>*,.bz-solgrid>*,.bz-swatches>*,.bz-finishnotes>*,.bz-nextsteps>*,.bz-pdp-inq>*,
.bz-modal-box>*,.bz-row>*,.bz-anatomy-item>*,.bz-timeline>*,.bz-value>*,.bz-plp-card>*,
.bz-pcard>*,.bz-arcard>*,.bz-jcard>*,.bz-solcard>*,.bz-tile>*,.bz-cap>*,.bz-channel>*,
.bz-form-2>*,.bz-acc-item>*,.bz-faq>*,.bz-specplates>*,.bz-specplate>*,.bz-head>*,
.bz-facts th,.bz-facts td,.bz-allspec th,.bz-allspec td,.bz-legal-body,.bz-faqmain,.bz-quote-main,
.bz-detail-content,.detail-content{min-width:0}

/* 41. Reveal animation (respects reduced motion)
   ========================================================================== */
[data-reveal]{opacity:0;transform:translateY(16px);transition:opacity .6s var(--bz-ease),transform .6s var(--bz-ease)}
[data-reveal].on{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  [data-reveal]{opacity:1;transform:none;transition:none}
  *{animation-duration:.001ms !important;transition-duration:.001ms !important}
}

/* 42. Responsive — 1200 / 1080 / 900 / 600 / 480
   ========================================================================== */
@media (max-width:1200px){
  .bz-nav>ul>li>a{padding:0 11px;font-size:12.5px}
  .bz-mega{min-width:300px}
  .bz-catalog{grid-template-columns:300px 1fr 340px;gap:34px}
  .bz-swatches{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:1080px){
  .bz-header.bz-compact .bz-nav>ul>li>a{padding:0 9px;font-size:12px}
  .bz-header.bz-cta-icon .bz-cta-desk span{display:none}
  .bz-header.bz-cta-icon .bz-cta-desk{padding:13px 16px}
  .bz-header.bz-collapse .bz-nav,
  .bz-header.bz-collapse .bz-lang{display:none}
  .bz-header.bz-collapse .bz-burger{display:inline-flex}
  .bz-hero-grid{gap:40px}
  .bz-specplates{grid-template-columns:repeat(2,1fr)}
  .bz-specplate:nth-child(3){border-left:0;padding-left:0}
  .bz-specplate{border-top:1px solid var(--bz-line)}
  .bz-specplate:nth-child(1),.bz-specplate:nth-child(2){border-top:0}
  .bz-pdp{grid-template-columns:1fr;gap:36px}
  .bz-pdp-media{position:static}
  .bz-catalog{grid-template-columns:1fr 1fr;gap:34px}
  .bz-catalog-form{grid-column:1 / -1}
  .bz-qc{grid-template-columns:1fr;gap:36px}
  .bz-anatomy{grid-template-columns:1fr;gap:36px}
  .bz-anatomy-media{position:static}
  .bz-quote-grid{grid-template-columns:1fr;gap:36px}
  .bz-plp{grid-template-columns:1fr;gap:30px}
  .bz-plp-rail{position:static}
  .bz-search-grid{grid-template-columns:1fr;gap:32px}
  .bz-search-panel{position:static}
  .bz-blog,.bz-post-layout,.bz-solview{grid-template-columns:1fr;gap:36px}
  .bz-blog-side,.bz-post-side{position:static}
}
@media (max-width:900px){
  .bz-wrap{width:auto;margin:0 20px}
  .bz-sec{padding:58px 0}
  .bz-sec-tight{padding:42px 0}
  .bz-nav{display:none}
  .bz-burger{display:inline-flex}
  .bz-header-in{gap:12px}
  .bz-logo,.bz-plaque{min-width:0}
  .bz-plaque{max-width:44vw;padding:7px 12px;min-height:44px}
  .bz-plaque img{max-height:30px}
  .bz-plaque-name{font-size:16px}
  .bz-tools{gap:7px;margin-left:auto}
  .bz-tools .bz-ico-btn,.bz-burger{width:40px;height:40px;flex:0 0 40px}
  .bz-cta-desk,.bz-lang-btn span,.bz-lang-btn i.fa-angle-down{display:none}
  /* Belt and braces: long labels wrap instead of forcing a track wider than the screen */
  .bz-btn{white-space:normal;text-align:center;max-width:100%}
  .bz-link{white-space:normal}
  .bz-row-cat,.bz-pcard-cat,.bz-plp-cat,.bz-arcard time{white-space:normal}
  /* Page-head action cluster: give it the full row so its buttons wrap inside the
     container instead of sizing to max-content and poking past the right edge. */
  .bz-ph-in{flex-direction:column;align-items:stretch}
  .bz-ph-copy{flex:1 1 auto}
  .bz-ph-side{flex:1 1 auto;min-width:0;width:100%}
  .bz-ph-side .bz-btn{flex:0 1 auto;max-width:100%}
  .bz-hero{padding-top:46px}
  .bz-hero-grid,.bz-feature,.bz-install,.bz-about,.bz-cta-in,.bz-news-in,
  .bz-checklist-band,.bz-solband,.bz-faqsplit,.bz-contact,.bz-qc,
  .bz-faqlayout,.bz-legal-grid{grid-template-columns:1fr;gap:32px}
  /* PDP inquiry panel: stack the copy above the form and keep the two halves joined (gap:0) */
  .bz-pdp-inq{grid-template-columns:1fr;gap:0}
  .bz-faqsplit-copy,.bz-legal-side{position:static}
  .bz-legal-side{max-height:none;overflow:visible}
  .bz-hero-plate{position:static;margin-top:14px;max-width:none;display:inline-block}
  .bz-specplates{grid-template-columns:1fr;margin-top:40px}
  .bz-specplate{border-left:0;padding-left:0;border-top:1px solid var(--bz-line)}
  .bz-specplate:first-child{border-top:0}
  .bz-ledger{grid-template-columns:1fr 1fr}
  .bz-ledger-item:nth-child(3n+1){border-left:1px solid var(--bz-line);padding-left:26px}
  .bz-ledger-item:nth-child(2n+1){border-left:0;padding-left:0}
  .bz-ledger-item:nth-child(3n+1)::before{left:0}
  .bz-ledger-item:nth-child(2n+1)::before{left:-26px}
  .bz-plp-grid,.bz-artgrid,.bz-journal,.bz-tiles,.bz-values,.bz-caps,
  .bz-solgrid,.bz-plates{grid-template-columns:repeat(2,1fr)}
  .bz-plates{grid-template-columns:repeat(2,1fr)}
  .bz-steps,.bz-procrail,.bz-nextsteps{grid-template-columns:1fr 1fr}
  .bz-step{border-left:0;padding-left:0;border-top:1px solid rgba(246,242,233,.18)}
  .bz-step:first-child{border-top:0}
  .bz-procrail li:nth-child(3n+1){border-left:1px solid var(--bz-line);padding-left:24px}
  .bz-procrail li:nth-child(2n+1){border-left:0;padding-left:0}
  .bz-nextsteps li{border-left:0;padding-left:0;border-top:1px solid var(--bz-line)}
  .bz-nextsteps li:first-child{border-top:0}
  .bz-finishnotes{grid-template-columns:1fr}
  .bz-finishnote{border-left:0;padding-left:0}
  .bz-rows .bz-row:first-child{grid-template-columns:220px 1fr auto}
  .bz-rows .bz-row:first-child .bz-row-media{width:220px}
  .bz-rows .bz-row:first-child h3{font-size:23px}
  .bz-desk-in{grid-template-columns:1fr 1fr}
  .bz-desk-item{padding:20px}
  .bz-desk-item:nth-child(2n+1){border-left:0;padding-left:0}
  .bz-foot-grid{grid-template-columns:1fr 1fr;gap:32px}
  .bz-modal-box{grid-template-columns:1fr;max-height:92vh}
  .bz-modal-side{padding:28px 24px 90px}
  .bz-modal-body{padding:28px 24px}
  .bz-allspec{grid-template-columns:1fr}
  .bz-faqgrid{grid-template-columns:1fr}
  .bz-prenext,.bz-pager{grid-template-columns:1fr}
  .bz-prenext-next,.bz-pager-cell.bz-pager-next{text-align:left}
  .bz-swatches{grid-template-columns:repeat(3,1fr)}
  .bz-channels,.bz-ph-contact .bz-channels{grid-template-columns:1fr}
  .bz-channel{border-left:0;padding-left:0;border-top:1px solid rgba(246,242,233,.18)}
  .bz-channel:first-child{border-top:0}
}
@media (max-width:600px){
  body{font-size:15.5px}
  .bz-sec{padding:46px 0}
  .bz-sec-tight{padding:34px 0}
  .bz-head{flex-direction:column;align-items:flex-start;gap:14px;margin-bottom:26px}
  .bz-hero-copy h1{font-size:clamp(27px,8vw,38px)}
  .bz-hero-actions .bz-btn{width:100%}
  .bz-hero-progs{flex-direction:column;border-top:1px solid var(--bz-line)}
  .bz-hero-progs span{padding:10px 0;border-left:0 !important}
  .bz-hero-progs span+span{border-top:1px solid var(--bz-line)}
  .bz-ledger,.bz-plp-grid,.bz-artgrid,.bz-journal,.bz-tiles,.bz-values,
  .bz-caps,.bz-solgrid,.bz-plates,.bz-swatches,
  .bz-steps,.bz-procrail,.bz-nextsteps,.bz-foot-grid,.bz-desk-in,
  .bz-form-2,.bz-qc-imgs{grid-template-columns:1fr}
  .bz-ledger-item,.bz-ledger-item:nth-child(3n+1),
  .bz-plp-grid>*,.bz-swatches>*{border-left:0;padding-left:0}
  .bz-ledger-item::before,.bz-ledger-item:nth-child(3n+1)::before{left:-26px}
  .bz-plates{grid-template-columns:1fr}
  .bz-row{grid-template-columns:96px 1fr;gap:14px}
  .bz-row-media{width:96px}
  .bz-rows .bz-row:first-child{grid-template-columns:96px 1fr;padding-bottom:18px}
  .bz-rows .bz-row:first-child .bz-row-media{width:96px;aspect-ratio:4/3}
  .bz-rows .bz-row:first-child h3{font-size:19px}
  .bz-rows .bz-row:first-child p{font-size:13.5px}
  .bz-row-actions{grid-column:1 / -1;justify-content:flex-start;flex-wrap:wrap}
  .bz-acc-item summary{grid-template-columns:34px 1fr 20px;gap:8px}
  .bz-acc-body{padding-left:42px}
  .bz-faq summary{grid-template-columns:32px 1fr 20px}
  .bz-faq-a{padding-left:40px}
  .bz-solband-btns{justify-content:flex-start}
  .bz-solband-btns .bz-btn{width:100%}
  .bz-cta-btns .bz-btn,.bz-checklist-cta .bz-btn{width:100%}
  .bz-news-in{grid-template-columns:1fr}
  .bz-subform{flex-wrap:wrap}
  .bz-subform input,.bz-subform .bz-btn{flex:1 1 100%}
  .bz-catalog,.bz-catalog-form{grid-template-columns:1fr}
  .bz-catalog-book{aspect-ratio:4/5;max-width:320px}
  .bz-dnav{columns:1}
  .bz-modal{padding:0}
  .bz-modal-box{width:100%;max-height:100vh;height:100%}
  .bz-zoom{padding:16px}
  /* CMS rich-text tables: stacked cards on phones when a header row exists */
  .detail-content table.table-stack,.detail-content table.bz-stack{
    display:block;border:0;overflow:visible;box-shadow:none;
  }
  .detail-content table.bz-stack thead{display:none}
  .detail-content table.bz-stack tbody,
  .detail-content table.bz-stack tr,
  .detail-content table.bz-stack td{display:block;width:100%}
  .detail-content table.bz-stack tr{
    border:1px solid var(--bz-line);background:var(--bz-paper);margin-bottom:14px;padding:6px 12px;
  }
  .detail-content table.bz-stack td{
    border:0;border-bottom:1px dashed var(--bz-line);padding:9px 0;
    white-space:normal;font-size:14px;display:grid;grid-template-columns:minmax(88px,42%) 1fr;gap:12px;
    min-width:0;
  }
  .detail-content table.bz-stack td:last-child{border-bottom:0}
  .detail-content table.bz-stack td::before{
    content:attr(data-label);font-family:var(--bz-font-mono);font-size:10.5px;
    letter-spacing:.1em;text-transform:uppercase;color:var(--bz-brass);line-height:1.6;
  }
  .detail-content table.bz-stack td:first-child{
    display:block;font-family:var(--bz-font-display);font-size:17px;color:var(--bz-ink);
    border-bottom:1px solid var(--bz-line);padding-bottom:10px;margin-bottom:4px;
  }
  .detail-content table.bz-stack td:first-child::before{display:none}
  .bz-tablewrap-scroll.is-scrollable::after{display:none}
  .bz-swipehint{display:none !important}
  .bz-swatches{grid-template-columns:1fr 1fr}
  .bz-qrow-img img,.bz-qrow-img .bz-noimg{width:64px;height:64px;min-height:64px}
  .pagination{gap:6px}
  .pagination a{min-width:38px;height:38px;font-size:12.5px;padding:0 10px}
  .bz-mobar{
    display:flex;position:fixed;left:0;right:0;bottom:0;z-index:320;gap:10px;
    background:var(--bz-paper);border-top:1px solid var(--bz-line-strong);
    padding:10px 14px calc(10px + env(safe-area-inset-bottom));
  }
  .bz-mobar .bz-btn{flex:1 1 0;padding:13px 12px;font-size:11px}
  body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
  .bz-totop{bottom:calc(78px + env(safe-area-inset-bottom));right:14px}
  .bz-wa{bottom:calc(136px + env(safe-area-inset-bottom));right:14px}
  .bz-toast{bottom:calc(88px + env(safe-area-inset-bottom))}
  .bz-cookie{bottom:calc(72px + env(safe-area-inset-bottom))}
  .bz-quote-grid{grid-template-columns:1fr}
  /* Quote list rows on phones: quantity stepper and the remove button share one row */
  .bz-qtable{display:block;border:0;background:transparent}
  .bz-qtable tbody{display:block}
  .bz-qtable thead{display:none}
  .bz-qtable tr.bz-qrow{
    display:grid;grid-template-columns:70px 1fr auto;gap:10px 12px;align-items:start;
    background:var(--bz-paper);border:1px solid var(--bz-line);padding:14px;margin-bottom:14px;
  }
  .bz-qtable td{border:0;padding:0;display:block}
  .bz-qrow-img{grid-column:1;grid-row:1}
  .bz-qrow-img img,.bz-qrow-img .bz-noimg{width:70px;height:70px;min-height:70px}
  .bz-qrow-title{grid-column:2 / 4;grid-row:1;min-width:0}
  .bz-qrow-qty{grid-column:2;grid-row:2;justify-self:start}
  .bz-qrow-del{grid-column:3;grid-row:2;justify-self:end;align-self:center}
  .bz-qdel{width:36px;height:36px}
}
@media (max-width:480px){
  .bz-plaque{max-width:38vw}
  .bz-plaque img{max-height:26px}
  .bz-swatches{grid-template-columns:1fr 1fr}
  .bz-tools{gap:6px}
  .bz-tools .bz-ico-btn,.bz-burger{width:38px;height:38px;flex:0 0 38px}
  .bz-hero-plate{max-width:100%}
  .bz-plates{grid-template-columns:1fr}
}
