/* Citric acid product template. All selectors are isolated with bs-citric. */
.bs-citric-page{--bs-citric-ink:#153329;--bs-citric-body:#42564f;--bs-citric-muted:#667a73;--bs-citric-green:#18783a;--bs-citric-green-dark:#105c2b;--bs-citric-green-pale:#edf7ef;--bs-citric-line:#dce8df;--bs-citric-warm:#f8f6ef;color:var(--bs-citric-body);background:#fff}
.bs-citric-page a:focus-visible,.bs-citric-page button:focus-visible,.bs-citric-page summary:focus-visible,.bs-citric-page input:focus-visible,.bs-citric-page textarea:focus-visible{outline:3px solid rgba(24,120,58,.28);outline-offset:3px}
.bs-citric-shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.bs-citric-breadcrumb{border-bottom:1px solid var(--bs-citric-line);background:#fbfcfb}
.bs-citric-breadcrumb ol{display:flex;align-items:center;gap:8px;min-height:50px;list-style:none;color:var(--bs-citric-muted);font-size:13px}
.bs-citric-breadcrumb li{display:flex;align-items:center;gap:8px}
.bs-citric-breadcrumb li:not(:last-child)::after{content:"/";color:#a5b2ad}
.bs-citric-breadcrumb a:hover{color:var(--bs-citric-green)}
.bs-citric-hero{position:relative;overflow:hidden;padding:76px 0 64px;background:radial-gradient(circle at 88% 8%,rgba(231,242,221,.9),transparent 32%),linear-gradient(120deg,#f8fbf8 0%,#f5f8f1 50%,#fffdf5 100%)}
.bs-citric-hero::before{position:absolute;inset:0;background-image:radial-gradient(rgba(21,51,41,.09) .7px,transparent .7px);background-size:18px 18px;content:"";pointer-events:none;opacity:.32}
.bs-citric-hero__grid{position:relative;display:grid;grid-template-columns:minmax(0,1.03fr) minmax(420px,.97fr);align-items:center;gap:clamp(42px,7vw,92px)}
.bs-citric-eyebrow,.bs-citric-kicker{margin-bottom:14px;color:var(--bs-citric-green);font-size:12px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.bs-citric-hero h1{max-width:670px;margin-bottom:20px;color:var(--bs-citric-ink);font-size:clamp(42px,5.3vw,68px);font-weight:800;letter-spacing:-.045em;line-height:1.02}
.bs-citric-lead{max-width:690px;margin-bottom:28px;color:#395148;font-size:clamp(17px,1.7vw,20px);line-height:1.7}
.bs-citric-keyfacts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 28px;border-block:1px solid rgba(21,51,41,.13)}
.bs-citric-keyfacts>div{padding:16px 15px 16px 0}
.bs-citric-keyfacts>div:not(:last-child){border-right:1px solid rgba(21,51,41,.13);margin-right:15px}
.bs-citric-keyfacts dt{margin-bottom:3px;color:var(--bs-citric-muted);font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.bs-citric-keyfacts dd{color:var(--bs-citric-ink);font-size:14px;font-weight:750}
.bs-citric-actions{display:flex;flex-wrap:wrap;gap:12px}
.bs-citric-btn{display:inline-flex;min-height:50px;align-items:center;justify-content:center;gap:9px;padding:13px 21px;border:1px solid transparent;border-radius:7px;font:inherit;font-size:14px;font-weight:750;cursor:pointer;transition:transform 180ms ease,box-shadow 180ms ease,background 180ms ease}
.bs-citric-btn:hover{transform:translateY(-2px)}
.bs-citric-btn--primary{color:#fff;background:var(--bs-citric-green);box-shadow:0 10px 24px rgba(16,92,43,.18)}
.bs-citric-btn--primary:hover{color:#fff;background:var(--bs-citric-green-dark);box-shadow:0 13px 28px rgba(16,92,43,.24)}
.bs-citric-btn--secondary{border-color:#b9cec0;color:var(--bs-citric-green-dark);background:rgba(255,255,255,.72)}
.bs-citric-btn--secondary:hover{border-color:var(--bs-citric-green);background:#fff}
.bs-citric-microcopy{display:flex;align-items:flex-start;gap:8px;margin:17px 0 0;color:var(--bs-citric-muted);font-size:12px;line-height:1.55}
.bs-citric-microcopy i{margin-top:3px;color:var(--bs-citric-green)}
.bs-citric-hero__media{position:relative;margin:0;padding:12px;border:1px solid rgba(255,255,255,.9);border-radius:18px;background:rgba(255,255,255,.65);box-shadow:0 26px 58px rgba(38,68,53,.15);transform:rotate(1deg)}
.bs-citric-hero__media::after{position:absolute;right:-18px;bottom:42px;width:72px;height:72px;border:1px solid rgba(24,120,58,.2);border-radius:50%;content:"";z-index:-1}
.bs-citric-hero__media img{width:100%;aspect-ratio:3/2;border-radius:12px;object-fit:cover}
.bs-citric-hero__media figcaption{padding:10px 6px 2px;color:var(--bs-citric-muted);font-size:11px;line-height:1.45;text-align:center}
.bs-citric-proof{border-block:1px solid var(--bs-citric-line);background:#fff}
.bs-citric-proof__grid{display:grid;grid-template-columns:repeat(4,1fr)}
.bs-citric-proof__grid>div{display:flex;min-height:108px;align-items:center;gap:13px;padding:23px}
.bs-citric-proof__grid>div:not(:last-child){border-right:1px solid var(--bs-citric-line)}
.bs-citric-proof i{color:var(--bs-citric-green);font-size:22px}
.bs-citric-proof span{color:var(--bs-citric-muted);font-size:12px;line-height:1.45}
.bs-citric-proof strong{display:block;margin-bottom:3px;color:var(--bs-citric-ink);font-size:13px}
.bs-citric-anchor-nav{position:sticky;top:0;z-index:20;border-bottom:1px solid var(--bs-citric-line);background:rgba(255,255,255,.94);box-shadow:0 5px 14px rgba(28,58,45,.04);backdrop-filter:blur(10px)}
.bs-citric-anchor-nav>div{display:flex;min-height:54px;align-items:center;gap:25px;overflow-x:auto;scrollbar-width:none;white-space:nowrap}
.bs-citric-anchor-nav span{color:var(--bs-citric-ink);font-size:12px;font-weight:800;text-transform:uppercase}
.bs-citric-anchor-nav a{color:var(--bs-citric-muted);font-size:13px;font-weight:650}
.bs-citric-anchor-nav a:hover{color:var(--bs-citric-green)}
.bs-citric-content{padding-block:28px 100px}
.bs-citric-section{scroll-margin-top:76px;padding-top:84px}
.bs-citric-section h2,.bs-citric-quote h2{max-width:790px;margin-bottom:18px;color:var(--bs-citric-ink);font-size:clamp(30px,3.6vw,44px);letter-spacing:-.025em}
.bs-citric-section h3{color:var(--bs-citric-ink)}
.bs-citric-section p{line-height:1.78}
.bs-citric-heading{max-width:820px;margin-bottom:34px}
.bs-citric-heading>p:last-child{color:var(--bs-citric-muted);font-size:16px}
.bs-citric-overview{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.7fr);gap:clamp(45px,8vw,100px);align-items:start}
.bs-citric-section__intro>p:not(.bs-citric-kicker){max-width:750px;font-size:16px}
.bs-citric-callout{padding:28px;border-top:4px solid var(--bs-citric-green);border-radius:4px 4px 12px 12px;background:var(--bs-citric-green-pale)}
.bs-citric-callout h3{margin-bottom:19px;font-size:19px}
.bs-citric-callout dl>div{padding:11px 0;border-top:1px solid rgba(24,120,58,.13)}
.bs-citric-callout dt{color:var(--bs-citric-muted);font-size:11px;font-weight:750;text-transform:uppercase}
.bs-citric-callout dd{margin-top:2px;color:var(--bs-citric-ink);font-size:14px;font-weight:650}
.bs-citric-compare{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.bs-citric-compare article{position:relative;overflow:hidden;padding:34px;border:1px solid var(--bs-citric-line);border-radius:12px;background:#fff;box-shadow:0 12px 34px rgba(21,51,41,.05)}
.bs-citric-compare article::after{position:absolute;top:-38px;right:-38px;width:120px;height:120px;border-radius:50%;background:var(--bs-citric-green-pale);content:""}
.bs-citric-compare__label{color:var(--bs-citric-green);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.bs-citric-compare h3{margin:8px 0 12px;font-size:23px}
.bs-citric-compare p{color:var(--bs-citric-muted)}
.bs-citric-compare ul,.bs-citric-quote__copy ul{list-style:none}
.bs-citric-compare li{position:relative;padding:8px 0 8px 22px;border-top:1px solid #edf1ee;color:#395148;font-size:14px}
.bs-citric-compare li::before{position:absolute;left:2px;color:var(--bs-citric-green);content:"✓";font-weight:800}
.bs-citric-apps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.bs-citric-apps article{min-height:215px;padding:27px;border:1px solid var(--bs-citric-line);border-radius:10px;background:#fff;transition:border-color 180ms ease,transform 180ms ease,box-shadow 180ms ease}
.bs-citric-apps article:hover{border-color:#9ec7aa;box-shadow:0 12px 30px rgba(21,51,41,.07);transform:translateY(-3px)}
.bs-citric-apps i{display:grid;width:44px;height:44px;place-items:center;margin-bottom:22px;border-radius:50%;color:var(--bs-citric-green);background:var(--bs-citric-green-pale);font-size:18px}
.bs-citric-apps h3{margin-bottom:7px;font-size:18px}
.bs-citric-apps p{margin:0;color:var(--bs-citric-muted);font-size:14px;line-height:1.65}
.bs-citric-table-wrap{overflow-x:auto;border:1px solid var(--bs-citric-line);border-radius:10px}
.bs-citric-table{width:100%;min-width:760px;border-collapse:collapse;color:var(--bs-citric-body);font-size:14px}
.bs-citric-table caption{padding:17px 20px;color:var(--bs-citric-ink);background:var(--bs-citric-green-pale);font-weight:750;text-align:left}
.bs-citric-table th,.bs-citric-table td{padding:16px 20px;border-bottom:1px solid var(--bs-citric-line);text-align:left;vertical-align:top}
.bs-citric-table thead th{color:#fff;background:var(--bs-citric-ink);font-size:12px;letter-spacing:.03em;text-transform:uppercase}
.bs-citric-table tbody th{width:24%;color:var(--bs-citric-ink);font-weight:750}
.bs-citric-table tbody tr:last-child>*{border-bottom:0}
.bs-citric-table tbody tr:nth-child(even){background:#fafcfb}
.bs-citric-note{display:flex;align-items:flex-start;gap:13px;margin-top:18px;padding:19px 22px;border-left:3px solid #d6a92f;background:#fffaf0}
.bs-citric-note i{margin-top:5px;color:#a87800}
.bs-citric-note p{margin:0;color:#665b40;font-size:13px}
.bs-citric-handling{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start;margin-top:84px;padding:48px;border-radius:14px;background:var(--bs-citric-warm)}
.bs-citric-handling h2{margin-bottom:0;font-size:clamp(28px,3vw,38px)}
.bs-citric-handling ul{list-style:none}
.bs-citric-handling li{display:flex;gap:15px;padding:15px 0;border-bottom:1px solid #e5e0d4}
.bs-citric-handling li:first-child{padding-top:0}.bs-citric-handling li:last-child{border:0;padding-bottom:0}
.bs-citric-handling li i{margin-top:3px;color:var(--bs-citric-green)}
.bs-citric-handling li span{color:var(--bs-citric-muted);font-size:13px;line-height:1.55}
.bs-citric-handling li strong{display:block;margin-bottom:3px;color:var(--bs-citric-ink);font-size:14px}
.bs-citric-faq{border-top:1px solid var(--bs-citric-line)}
.bs-citric-faq details{border-bottom:1px solid var(--bs-citric-line)}
.bs-citric-faq summary{position:relative;padding:23px 50px 23px 2px;color:var(--bs-citric-ink);font-size:17px;font-weight:750;cursor:pointer;list-style:none}
.bs-citric-faq summary::-webkit-details-marker{display:none}
.bs-citric-faq summary::after{position:absolute;top:22px;right:10px;color:var(--bs-citric-green);content:"+";font-size:24px;font-weight:400;line-height:1}
.bs-citric-faq details[open] summary::after{content:"−"}
.bs-citric-faq details p{max-width:900px;padding:0 52px 23px 2px;color:var(--bs-citric-muted);font-size:14px}
.bs-citric-quote{scroll-margin-top:65px;padding:92px 0;color:rgba(255,255,255,.8);background:radial-gradient(circle at 0 100%,rgba(64,152,88,.25),transparent 36%),#102f24}
.bs-citric-quote__grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(50px,9vw,110px);align-items:start}
.bs-citric-quote .bs-citric-kicker{color:#89d09d}
.bs-citric-quote h2{color:#fff}
.bs-citric-quote__copy>p:not(.bs-citric-kicker){line-height:1.75}
.bs-citric-quote__copy ul{margin:28px 0}
.bs-citric-quote__copy li{padding:7px 0;font-size:14px}
.bs-citric-quote__copy li i{margin-right:8px;color:#89d09d}
.bs-citric-direct{display:grid;gap:8px;padding-top:22px;border-top:1px solid rgba(255,255,255,.14)}
.bs-citric-direct a{display:flex;align-items:center;gap:9px;color:#fff;font-size:14px}
.bs-citric-direct i{width:16px;color:#89d09d}
.bs-citric-form{display:grid;gap:16px;padding:36px;border-radius:12px;color:var(--bs-citric-ink);background:#fff;box-shadow:0 28px 70px rgba(0,0,0,.18)}
.bs-citric-form__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.bs-citric-form label{display:grid;gap:7px;color:#355046;font-size:12px;font-weight:750}
.bs-citric-form label span{display:inline;color:#a43d2f}
.bs-citric-form input,.bs-citric-form textarea{width:100%;min-height:47px;padding:12px 13px;border:1px solid #cedbd2;border-radius:6px;color:var(--bs-citric-ink);background:#fbfdfb;font:inherit;font-size:14px;font-weight:400}
.bs-citric-form textarea{min-height:122px;resize:vertical}
.bs-citric-form input:focus,.bs-citric-form textarea:focus{border-color:var(--bs-citric-green);background:#fff}
.bs-citric-form input[readonly]{color:#52685f;background:#f1f5f2}
.bs-citric-form .bs-citric-btn{justify-self:start}
.bs-citric-form .bs-citric-btn:disabled{cursor:wait;opacity:.65}
.bs-citric-form__status{min-height:21px;margin:0;color:var(--bs-citric-green-dark);font-size:13px;font-weight:700}
.bs-citric-form__privacy{margin:-7px 0 0;color:#7c8d86;font-size:11px;line-height:1.5}
.bs-tkpp-page .bs-citric-hero h1{font-size:clamp(38px,4.25vw,56px);letter-spacing:-.038em}
@media(max-width:1020px){
  .bs-citric-hero__grid{grid-template-columns:1fr .85fr;gap:45px}
  .bs-citric-keyfacts{grid-template-columns:repeat(2,1fr)}
  .bs-citric-keyfacts>div:nth-child(2){border-right:0;margin-right:0}
  .bs-citric-keyfacts>div:nth-child(-n+2){border-bottom:1px solid rgba(21,51,41,.13)}
  .bs-citric-proof__grid{grid-template-columns:repeat(2,1fr)}
  .bs-citric-proof__grid>div:nth-child(2){border-right:0}
  .bs-citric-proof__grid>div:nth-child(-n+2){border-bottom:1px solid var(--bs-citric-line)}
  .bs-citric-apps{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:780px){
  .bs-citric-shell{width:min(100% - 30px,1180px)}
  .bs-citric-hero{padding:54px 0 46px}
  .bs-citric-hero__grid,.bs-citric-overview,.bs-citric-handling,.bs-citric-quote__grid{grid-template-columns:1fr}
  .bs-citric-hero__media{max-width:620px;transform:none}
  .bs-citric-hero h1{font-size:clamp(39px,12vw,56px)}
  .bs-citric-proof__grid>div{min-height:92px;padding:19px 10px}
  .bs-citric-anchor-nav>div{gap:20px}
  .bs-citric-section{padding-top:64px}
  .bs-citric-content{padding-bottom:72px}
  .bs-citric-overview{gap:32px}
  .bs-citric-compare{grid-template-columns:1fr}
  .bs-citric-handling{gap:30px;margin-top:65px;padding:32px}
  .bs-citric-quote{padding:72px 0}
}
@media(max-width:540px){
  .bs-tkpp-page .bs-citric-hero h1{font-size:clamp(34px,10.5vw,45px)}
  .bs-citric-breadcrumb li:nth-child(2){display:none}
  .bs-citric-keyfacts{grid-template-columns:1fr 1fr}
  .bs-citric-actions{display:grid}
  .bs-citric-btn{width:100%}
  .bs-citric-proof__grid{grid-template-columns:1fr}
  .bs-citric-proof__grid>div,.bs-citric-proof__grid>div:nth-child(2){border-right:0;border-bottom:1px solid var(--bs-citric-line)}
  .bs-citric-proof__grid>div:last-child{border-bottom:0}
  .bs-citric-apps{grid-template-columns:1fr}
  .bs-citric-apps article{min-height:0}
  .bs-citric-compare article,.bs-citric-callout,.bs-citric-handling,.bs-citric-form{padding:24px}
  .bs-citric-form__row{grid-template-columns:1fr}
  .bs-citric-form .bs-citric-btn{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .bs-citric-page *,.bs-citric-page *::before,.bs-citric-page *::after{scroll-behavior:auto!important;transition-duration:.01ms!important}
}

/* DCP product page extensions. Names remain isolated from global styles. */
.bs-dcp-page .bs-citric-hero h1{font-size:clamp(38px,4.5vw,61px)}
.bs-dcp-keyfacts dd{line-height:1.4}
.bs-dcp-image-frame{position:relative;display:grid;min-height:360px;overflow:hidden;border-radius:12px;background:linear-gradient(145deg,#f1f6f2,#e4eee7);place-items:center}
.bs-dcp-image-frame>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.bs-dcp-image-frame>img[hidden]{display:none}
.bs-dcp-image-placeholder{display:none;max-width:380px;padding:38px;color:#60746c;text-align:center}
.bs-dcp-image-frame--empty .bs-dcp-image-placeholder{display:grid;gap:10px;place-items:center}
.bs-dcp-image-placeholder i{display:grid;width:64px;height:64px;place-items:center;border:1px solid #bfd1c4;border-radius:50%;color:#18783a;background:rgba(255,255,255,.7);font-size:25px}
.bs-dcp-image-placeholder strong{color:#153329;font-size:17px}
.bs-dcp-image-placeholder span{font-size:11px;line-height:1.55;overflow-wrap:anywhere}
.bs-dcp-spec-summary{display:grid;grid-template-columns:repeat(4,1fr);margin:0 0 20px;border:1px solid #dce8df;border-radius:10px;background:#fff}
.bs-dcp-spec-summary>div{display:grid;gap:3px;padding:20px}
.bs-dcp-spec-summary>div:not(:last-child){border-right:1px solid #dce8df}
.bs-dcp-spec-summary span{color:#667a73;font-size:11px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}
.bs-dcp-spec-summary strong{color:#153329;font-size:21px}
.bs-dcp-spec-summary small{color:#71837c;font-size:11px}
.bs-dcp-spec-table tbody th{width:54%}
.bs-dcp-reference{margin-top:22px;padding:23px 26px;border:1px solid #dce8df;border-radius:10px;background:#f8fbf9}
.bs-dcp-reference h3{margin-bottom:7px;font-size:16px}
.bs-dcp-reference p{margin:0;color:#667a73;font-size:13px}
.bs-dcp-reference a{color:#105c2b;font-weight:700;text-decoration:underline;text-decoration-color:#a8c8b1;text-underline-offset:3px}
@media(max-width:780px){
  .bs-dcp-image-frame{min-height:300px}
  .bs-dcp-spec-summary{grid-template-columns:repeat(2,1fr)}
  .bs-dcp-spec-summary>div:nth-child(2){border-right:0}
  .bs-dcp-spec-summary>div:nth-child(-n+2){border-bottom:1px solid #dce8df}
}
@media(max-width:540px){
  .bs-dcp-page .bs-citric-hero h1{font-size:clamp(35px,10.5vw,48px)}
  .bs-dcp-image-frame{min-height:235px}
  .bs-dcp-spec-summary{grid-template-columns:1fr}
  .bs-dcp-spec-summary>div,.bs-dcp-spec-summary>div:nth-child(2){border-right:0;border-bottom:1px solid #dce8df}
  .bs-dcp-spec-summary>div:last-child{border-bottom:0}
}

/* MCP product page extensions. All new names are isolated with bs-mcp. */
.bs-mcp-page .bs-citric-hero h1{font-size:clamp(37px,4.35vw,59px)}
.bs-mcp-keyfacts dd{line-height:1.4}
.bs-mcp-image-frame{position:relative;display:grid;min-height:360px;overflow:hidden;border-radius:12px;background:radial-gradient(circle at 50% 45%,#fff 0 33%,#eef5ef 72%,#e2ede5 100%);place-items:center}
.bs-mcp-image-frame>img{width:min(76%,420px);height:310px;border-radius:0;object-fit:contain;filter:drop-shadow(0 18px 18px rgba(21,51,41,.14))}
.bs-mcp-image-frame>img[hidden]{display:none}
.bs-mcp-image-placeholder{display:none;max-width:380px;padding:38px;color:#60746c;text-align:center}
.bs-mcp-image-frame--empty .bs-mcp-image-placeholder{display:grid;gap:10px;place-items:center}
.bs-mcp-image-placeholder i{display:grid;width:64px;height:64px;place-items:center;border:1px solid #bfd1c4;border-radius:50%;color:#18783a;background:rgba(255,255,255,.7);font-size:25px}
.bs-mcp-image-placeholder strong{color:#153329;font-size:17px}
.bs-mcp-image-placeholder span{font-size:11px;line-height:1.55;overflow-wrap:anywhere}
.bs-mcp-spec-summary{display:grid;grid-template-columns:repeat(4,1fr);margin:0 0 20px;border:1px solid #dce8df;border-radius:10px;background:#fff}
.bs-mcp-spec-summary>div{display:grid;gap:3px;padding:20px}
.bs-mcp-spec-summary>div:not(:last-child){border-right:1px solid #dce8df}
.bs-mcp-spec-summary span{color:#667a73;font-size:11px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}
.bs-mcp-spec-summary strong{color:#153329;font-size:21px}
.bs-mcp-spec-summary small{color:#71837c;font-size:11px}
.bs-mcp-spec-table tbody th{width:54%}
.bs-mcp-reference{margin-top:22px;padding:23px 26px;border:1px solid #dce8df;border-radius:10px;background:#f8fbf9}
.bs-mcp-reference h3{margin-bottom:7px;font-size:16px}
.bs-mcp-reference p{margin:0;color:#667a73;font-size:13px}
.bs-mcp-reference a{color:#105c2b;font-weight:700;text-decoration:underline;text-decoration-color:#a8c8b1;text-underline-offset:3px}
@media(max-width:780px){
  .bs-mcp-image-frame{min-height:300px}
  .bs-mcp-image-frame>img{height:260px}
  .bs-mcp-spec-summary{grid-template-columns:repeat(2,1fr)}
  .bs-mcp-spec-summary>div:nth-child(2){border-right:0}
  .bs-mcp-spec-summary>div:nth-child(-n+2){border-bottom:1px solid #dce8df}
}
@media(max-width:540px){
  .bs-mcp-page .bs-citric-hero h1{font-size:clamp(34px,10vw,47px)}
  .bs-mcp-image-frame{min-height:235px}
  .bs-mcp-image-frame>img{height:205px}
  .bs-mcp-spec-summary{grid-template-columns:1fr}
  .bs-mcp-spec-summary>div,.bs-mcp-spec-summary>div:nth-child(2){border-right:0;border-bottom:1px solid #dce8df}
  .bs-mcp-spec-summary>div:last-child{border-bottom:0}
}

/* CMC product page extensions. All new names are isolated with bs-cmc. */
.bs-cmc-page .bs-citric-hero h1{font-size:clamp(35px,4vw,54px);letter-spacing:-.036em}
.bs-cmc-keyfacts dd{line-height:1.4}
.bs-cmc-image-frame{position:relative;display:grid;min-height:360px;overflow:hidden;border-radius:12px;background:radial-gradient(circle at 50% 42%,#fff 0 28%,#eef5ef 68%,#e1ebe4 100%);place-items:center}
.bs-cmc-image-frame>img{width:min(72%,390px);height:315px;border-radius:0;object-fit:contain;image-rendering:auto;filter:drop-shadow(0 20px 22px rgba(21,51,41,.16))}
.bs-cmc-image-frame>img[hidden]{display:none}
.bs-cmc-image-placeholder{display:none;max-width:380px;padding:38px;color:#60746c;text-align:center}
.bs-cmc-image-frame--empty .bs-cmc-image-placeholder{display:grid;gap:10px;place-items:center}
.bs-cmc-image-placeholder i{display:grid;width:64px;height:64px;place-items:center;border:1px solid #bfd1c4;border-radius:50%;color:#18783a;background:rgba(255,255,255,.7);font-size:25px}
.bs-cmc-image-placeholder strong{color:#153329;font-size:17px}
.bs-cmc-image-placeholder span{font-size:11px;line-height:1.55;overflow-wrap:anywhere}
.bs-cmc-custom-section{scroll-margin-top:76px}
.bs-cmc-custom{display:grid;grid-template-columns:.92fr 1.08fr;gap:55px;padding:50px;border-radius:16px;color:#d7e5db;background:radial-gradient(circle at 0 100%,rgba(81,164,104,.24),transparent 38%),#153329}
.bs-cmc-custom h2{color:#fff}
.bs-cmc-custom__copy>p:not(.bs-citric-kicker){max-width:610px;color:#c8d8ce}
.bs-cmc-custom__parameters{padding:28px;border:1px solid rgba(255,255,255,.13);border-radius:12px;background:rgba(255,255,255,.055)}
.bs-cmc-custom__parameters h3{margin-bottom:12px;color:#fff;font-size:18px}
.bs-cmc-custom__parameters ul{list-style:none}
.bs-cmc-custom__parameters li{display:grid;grid-template-columns:34px minmax(120px,.65fr) 1.35fr;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.bs-cmc-custom__parameters li:last-child{border-bottom:0}
.bs-cmc-custom__parameters li>span{display:grid;width:27px;height:27px;place-items:center;border-radius:50%;color:#a9d8b5;background:rgba(137,208,157,.12);font-size:10px;font-weight:800}
.bs-cmc-custom__parameters strong{color:#fff;font-size:13px}
.bs-cmc-custom__parameters small{color:#b7c9bd;font-size:11px;line-height:1.45}
.bs-cmc-spec-summary{display:grid;grid-template-columns:repeat(4,1fr);margin:0 0 20px;border:1px solid #dce8df;border-radius:10px;background:#fff}
.bs-cmc-spec-summary>div{display:grid;gap:3px;padding:20px}
.bs-cmc-spec-summary>div:not(:last-child){border-right:1px solid #dce8df}
.bs-cmc-spec-summary span{color:#667a73;font-size:11px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}
.bs-cmc-spec-summary strong{color:#153329;font-size:21px}
.bs-cmc-spec-summary small{color:#71837c;font-size:11px}
.bs-cmc-spec-table tbody th{width:34%}
.bs-cmc-reference{margin-top:22px;padding:23px 26px;border:1px solid #dce8df;border-radius:10px;background:#f8fbf9}
.bs-cmc-reference h3{margin-bottom:7px;font-size:16px}
.bs-cmc-reference p{margin:0;color:#667a73;font-size:13px}
.bs-cmc-reference a{color:#105c2b;font-weight:700;text-decoration:underline;text-decoration-color:#a8c8b1;text-underline-offset:3px}
@media(max-width:900px){
  .bs-cmc-custom{grid-template-columns:1fr}
}
@media(max-width:780px){
  .bs-cmc-image-frame{min-height:300px}
  .bs-cmc-image-frame>img{height:260px}
  .bs-cmc-custom{gap:30px;padding:34px}
  .bs-cmc-spec-summary{grid-template-columns:repeat(2,1fr)}
  .bs-cmc-spec-summary>div:nth-child(2){border-right:0}
  .bs-cmc-spec-summary>div:nth-child(-n+2){border-bottom:1px solid #dce8df}
}
@media(max-width:540px){
  .bs-cmc-page .bs-citric-hero h1{font-size:clamp(31px,9.4vw,43px)}
  .bs-cmc-image-frame{min-height:235px}
  .bs-cmc-image-frame>img{height:205px}
  .bs-cmc-custom{padding:24px}
  .bs-cmc-custom__parameters{padding:20px}
  .bs-cmc-custom__parameters li{grid-template-columns:31px 1fr}
  .bs-cmc-custom__parameters small{grid-column:2}
  .bs-cmc-spec-summary{grid-template-columns:1fr}
  .bs-cmc-spec-summary>div,.bs-cmc-spec-summary>div:nth-child(2){border-right:0;border-bottom:1px solid #dce8df}
  .bs-cmc-spec-summary>div:last-child{border-bottom:0}
}

/* Calcium Propionate product page extensions. All new names use bs-cp. */
.bs-cp-page .bs-citric-hero h1{font-size:clamp(36px,4.2vw,57px);letter-spacing:-.038em}
.bs-cp-keyfacts dd{line-height:1.4}
.bs-cp-image-frame{position:relative;display:grid;min-height:360px;overflow:hidden;border-radius:12px;background:radial-gradient(circle at 50% 42%,#fff 0 25%,#eef5ef 68%,#e1ebe4 100%);place-items:center}
.bs-cp-image-frame>img{width:100%;height:100%;min-height:360px;border-radius:0;object-fit:cover;image-rendering:auto}
.bs-cp-image-frame>img[hidden]{display:none}
.bs-cp-image-placeholder{display:none;max-width:390px;padding:38px;color:#60746c;text-align:center}
.bs-cp-image-frame--empty .bs-cp-image-placeholder{display:grid;gap:10px;place-items:center}
.bs-cp-image-placeholder i{display:grid;width:64px;height:64px;place-items:center;border:1px solid #bfd1c4;border-radius:50%;color:#18783a;background:rgba(255,255,255,.7);font-size:25px}
.bs-cp-image-placeholder strong{color:#153329;font-size:17px}
.bs-cp-image-placeholder span{font-size:11px;line-height:1.55;overflow-wrap:anywhere}
.bs-cp-options{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.bs-cp-options article{position:relative;display:flex;min-height:310px;flex-direction:column;padding:30px;border:1px solid #dce8df;border-radius:12px;background:#fff;box-shadow:0 12px 34px rgba(21,51,41,.05)}
.bs-cp-options article>span{color:#18783a;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.bs-cp-options article>i{display:grid;width:47px;height:47px;place-items:center;margin:24px 0 18px;border-radius:50%;color:#18783a;background:#edf7ef;font-size:19px}
.bs-cp-options h3{margin-bottom:10px;font-size:20px}
.bs-cp-options p{margin-bottom:22px;color:#667a73;font-size:14px;line-height:1.7}
.bs-cp-options article>strong{margin-top:auto;padding-top:15px;border-top:1px solid #e7eee9;color:#42564f;font-size:11px;line-height:1.5}
.bs-cp-sales-note{display:flex;align-items:flex-start;gap:17px;margin-top:20px;padding:24px 27px;border-left:4px solid #18783a;border-radius:4px 10px 10px 4px;background:#edf7ef}
.bs-cp-sales-note>i{display:grid;flex:0 0 43px;width:43px;height:43px;place-items:center;border-radius:50%;color:#fff;background:#18783a}
.bs-cp-sales-note h3{margin-bottom:4px;font-size:17px}
.bs-cp-sales-note p{margin:0;color:#60746c;font-size:13px}
.bs-cp-sales-note a{color:#105c2b;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.bs-cp-spec-summary{display:grid;grid-template-columns:repeat(4,1fr);margin:0 0 20px;border:1px solid #dce8df;border-radius:10px;background:#fff}
.bs-cp-spec-summary>div{display:grid;gap:3px;padding:20px}
.bs-cp-spec-summary>div:not(:last-child){border-right:1px solid #dce8df}
.bs-cp-spec-summary span{color:#667a73;font-size:11px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}
.bs-cp-spec-summary strong{color:#153329;font-size:20px}
.bs-cp-spec-summary small{color:#71837c;font-size:11px}
.bs-cp-spec-table{min-width:840px}
.bs-cp-spec-table tbody th{width:42%}
.bs-cp-coa-result{display:flex;align-items:flex-start;gap:16px;margin-top:20px;padding:23px 26px;border:1px solid #bcd7c3;border-radius:10px;background:#f3faf5}
.bs-cp-coa-result>i{margin-top:2px;color:#18783a;font-size:25px}
.bs-cp-coa-result h3{margin-bottom:5px;font-size:16px}
.bs-cp-coa-result p{margin:0;color:#5a7067;font-size:13px;line-height:1.7}
.bs-cp-reference{margin-top:22px;padding:23px 26px;border:1px solid #dce8df;border-radius:10px;background:#f8fbf9}
.bs-cp-reference h3{margin-bottom:7px;font-size:16px}
.bs-cp-reference p{margin:0;color:#667a73;font-size:13px}
.bs-cp-reference a{color:#105c2b;font-weight:700;text-decoration:underline;text-decoration-color:#a8c8b1;text-underline-offset:3px}
@media(max-width:900px){
  .bs-cp-options{grid-template-columns:1fr}
  .bs-cp-options article{min-height:0}
}
@media(max-width:780px){
  .bs-cp-image-frame,.bs-cp-image-frame>img{min-height:300px}
  .bs-cp-spec-summary{grid-template-columns:repeat(2,1fr)}
  .bs-cp-spec-summary>div:nth-child(2){border-right:0}
  .bs-cp-spec-summary>div:nth-child(-n+2){border-bottom:1px solid #dce8df}
}
@media(max-width:540px){
  .bs-cp-page .bs-citric-hero h1{font-size:clamp(32px,9.7vw,44px)}
  .bs-cp-image-frame,.bs-cp-image-frame>img{min-height:230px}
  .bs-cp-options article{padding:24px}
  .bs-cp-sales-note,.bs-cp-coa-result{padding:21px}
  .bs-cp-spec-summary{grid-template-columns:1fr}
  .bs-cp-spec-summary>div,.bs-cp-spec-summary>div:nth-child(2){border-right:0;border-bottom:1px solid #dce8df}
  .bs-cp-spec-summary>div:last-child{border-bottom:0}
}
