/* Catalog: restrained typography, quiet materials, precise control geometry. */
.catalog-page .cat-product a.cat-detail-photo{display:block;margin:0;padding:0;border:0;width:100%;height:100%}.catalog-page .cat-product h3 a.cat-detail-title{display:inline;margin:0;padding:0;border:0;font:inherit;color:inherit}.catalog-page .cat-product h3 a.cat-detail-title:hover{color:#ad7241}
.catalog-page .cat-library{background:#f5f5f0}
.catalog-page .cat-layout{grid-template-columns:258px minmax(0,1fr);gap:28px}
.catalog-page .cat-categories{gap:12px;margin-bottom:32px}
.catalog-page .cat-categories button{position:relative;border-radius:12px;background:#ffffffb8;box-shadow:none;padding:21px 20px;border-color:#dce1d7;transition:background .25s,border-color .25s}
.catalog-page .cat-categories button[aria-pressed=true]{background:#173d37;border-color:#173d37;box-shadow:0 7px 20px #173d3712}
.catalog-page .cat-categories button[aria-pressed=true]:after{content:'';position:absolute;right:16px;top:16px;width:5px;height:5px;background:#efb780;border-radius:50%}
.catalog-page .cat-categories small{font-size:9px;letter-spacing:1.4px;margin-bottom:8px}
.catalog-page .cat-categories strong{font-size:15px;font-weight:500}
.catalog-page .cat-categories svg{width:29px;height:29px;stroke-width:1.25}
.catalog-page .cat-sidebar{background:#fff;border:1px solid #d9dfd4;border-radius:14px;box-shadow:0 10px 32px #233d3005;overflow:hidden;padding:0}
.catalog-page .cat-sidebar h2{display:flex;justify-content:space-between;align-items:center;background:#fafaf5;border-bottom:1px solid #e1e4da;color:#193e3b;margin:0 0 23px;padding:23px 20px;font-family:inherit;font-size:17px;font-weight:500;letter-spacing:-.4px;line-height:1.4}
.catalog-page .cat-sidebar h2 small{color:#9b7952;letter-spacing:1.65px;font-size:8px;font-weight:500;margin:0 0 8px}
.catalog-page .cat-sidebar h2>svg{width:29px;height:29px;padding:5px;color:#aa7b4b;stroke:currentColor;stroke-width:1.25;fill:none;border:0;border-radius:0;background:none}
.catalog-page .cat-sidebar>label,.catalog-page .cat-sidebar legend,.catalog-page #cat-capacity-wrap>label{display:flex;align-items:center;gap:9px;text-transform:none;font-size:12px;font-weight:500;line-height:1.4;letter-spacing:0;color:#27473a}
.catalog-page .cat-sidebar>label{margin:0 20px 8px}
.catalog-page .cat-sidebar>label small,.catalog-page .cat-sidebar legend small,.catalog-page #cat-capacity-wrap>label small{font-size:9px;letter-spacing:.5px;color:#b08a60;font-weight:400;min-width:15px}
.catalog-page .cat-sidebar input[type=search]{width:calc(100% - 40px);margin:0 20px 24px;padding:11px 11px 11px 33px;font-family:inherit;font-size:12px;font-weight:400;background:#fff;border:1px solid #d9e0d4;border-radius:7px;box-shadow:none;height:43px;min-height:43px;line-height:20px;transition:border-color .2s,box-shadow .2s}
.catalog-page .cat-sidebar input[type=search]:focus{outline:none;border-color:#a48c67;box-shadow:0 0 0 3px #ae8b5410}
.catalog-page .cat-search-field{position:relative;margin:0 20px 24px}
.catalog-page .cat-sidebar .cat-search-field input[type=search]{width:100%;margin:0}
.catalog-page .cat-search-field .cat-search-icon{top:14px;left:12px}
.catalog-page .cat-search-icon{top:143px;left:31px;color:#8c9c8b}
.catalog-page .cat-search-icon svg{width:15px;height:15px;stroke-width:1.5}
.catalog-page .cat-sidebar fieldset{margin:0 20px 23px;padding:0;min-width:0}
.catalog-page .cat-sidebar legend{margin:0 0 12px;padding:0}
.catalog-page .cat-sidebar #cat-groups{display:grid;gap:9px}
.catalog-page .cat-sidebar #cat-groups label{display:flex;position:relative;align-items:center;gap:10px;margin:0;padding:14px 11px;min-height:68px;background:#fff;border:1px solid #e0e5d9;border-radius:8px;box-shadow:none;transition:border-color .2s,background .2s}
.catalog-page .cat-sidebar #cat-groups label:has(:checked){border-color:#82997e;background:#f3f6ef;box-shadow:none}
.catalog-page .cat-sidebar #cat-groups label:hover{border-color:#96a68a;background:#f8faf5}
.catalog-page .cat-sidebar #cat-groups input{position:absolute;width:1px;height:1px;opacity:0;min-width:0;margin:0;padding:0;pointer-events:none}
.catalog-page .cat-sidebar #cat-groups label:has(input:focus-visible){outline:2px solid #b68149;outline-offset:3px}
.catalog-page .cat-sidebar #cat-groups .cat-type-mark{display:grid;place-items:center;flex:0 0 30px;width:30px;height:32px;border-right:1px solid #e0e5d9;color:#8ba082;padding-right:8px}
.catalog-page .cat-sidebar #cat-groups .cat-type-mark svg{width:21px;height:21px;stroke-width:1.25}
.catalog-page .cat-sidebar #cat-groups label:has(:checked) .cat-type-mark{color:#52774b}
.catalog-page .cat-type-copy{flex:1;min-width:0}
.catalog-page .cat-type-copy strong{display:block;font-size:12px;font-weight:500;line-height:1.35;color:#1a4032}
.catalog-page .cat-type-copy small{display:block;font-size:10px;font-weight:400;line-height:1.45;color:#687c63;margin-top:4px}
.catalog-page .cat-sidebar #cat-groups .cat-type-total{font-size:10px;color:#93a08c;font-weight:400;letter-spacing:.3px}
.catalog-page .cat-sidebar #cat-groups .cat-type-check{display:none;color:#53784b;flex:0 0 15px}
.catalog-page .cat-type-check svg{width:15px;height:15px;stroke-width:1.5}
.catalog-page .cat-sidebar #cat-groups label:has(:checked) .cat-type-total{display:none}
.catalog-page .cat-sidebar #cat-groups label:has(:checked) .cat-type-check{display:block}
.catalog-page #cat-capacity-wrap{margin:0 20px 20px;padding:20px 0 0;border-top:1px solid #e6e8df}
.catalog-page #cat-capacity-wrap>label{margin-bottom:12px}
.catalog-page .cat-capacity-options{gap:7px}
.catalog-page .cat-capacity-options button{display:flex;align-items:baseline;justify-content:center;gap:4px;min-height:43px;padding:11px 6px;border:1px solid #e1e6da;border-radius:7px;background:white;box-shadow:none;font-family:inherit;line-height:1.3;transition:background .2s,border-color .2s,color .2s}
.catalog-page .cat-capacity-options button strong{font-size:16px;font-weight:700;letter-spacing:-.3px}
.catalog-page .cat-capacity-options button small{font-size:12px;font-weight:700;color:inherit}
.catalog-page .cat-capacity-options button[aria-pressed=true]{color:#fff;background:#244a3f;border-color:#244a3f;box-shadow:none}
.catalog-page .cat-capacity-options button[aria-pressed=true] small{color:#bdcfb4}
.catalog-page .cat-capacity-options button:hover{border-color:#819c75}
.catalog-page .cat-sidebar #cat-reset{width:calc(100% - 40px);margin:0 20px 21px;padding:0;border:0;color:#8d9a83;font-size:10px;gap:7px;justify-content:flex-start;background:none}
.catalog-page .cat-sidebar #cat-reset:hover{color:#214534}
.catalog-page .cat-sidebar #cat-reset svg{width:13px;height:13px;stroke-width:1.35}
.catalog-page .cat-sidebar .cat-help{display:grid;grid-template-columns:29px 1fr;column-gap:10px;row-gap:16px;padding:20px;background:#fafaf5;border-top:1px solid #e1e4da;margin:0}
.catalog-page .cat-concierge-mark{grid-column:1;grid-row:1;width:29px;height:29px;color:#a68151;display:grid;place-items:center}
.catalog-page .cat-concierge-mark svg{width:23px;height:23px;stroke-width:1.25}
.catalog-page .cat-help>div>span{font-size:8px;color:#a4835b;font-weight:500;letter-spacing:1.3px}
.catalog-page .cat-help h3{font:400 19px/1.25 Georgia,serif;margin:6px 0 8px;letter-spacing:-.3px}
.catalog-page .cat-help p{font-size:11px;line-height:1.6;font-weight:400;margin:0;color:#687b5e}
.catalog-page .cat-help a{grid-column:1/-1;font-size:11px;font-weight:500;background:white;border:1px solid #d7dfce;color:#385b32;border-radius:7px;padding:11px 13px}
.catalog-page .cat-help a svg{width:16px;height:16px;stroke-width:1.4}
.catalog-page .cat-heading{padding:5px 0 20px;border-bottom:1px solid #dbe1d3;margin:0 0 20px;align-items:center}
.catalog-page .cat-heading .cat-eyebrow{letter-spacing:1.5px;font-size:9px;color:#a68352}
.catalog-page .cat-heading h2{font-size:29px;letter-spacing:-.8px}
.catalog-page .cat-heading #cat-count{border-radius:5px;background:#ebefe4;color:#68805c;font-size:10px;padding:8px 10px}
.catalog-page .cat-heading p:last-child{font-size:12px;color:#829276}
.catalog-page .cat-product{border-color:#dce1d5;border-radius:11px;box-shadow:0 3px 12px #193e3b02;transition:border-color .25s,box-shadow .25s,transform .25s}
.catalog-page .cat-product:hover{border-color:#a7b593;box-shadow:0 10px 24px #193e3b09;transform:translateY(-3px)}
.catalog-page .cat-photo{background:radial-gradient(ellipse at 50% 50%,#ffffff 35%,#f2f4ee 100%);border-bottom:1px solid #edf0e7}
.catalog-page .cat-photo>span{font-size:8px;letter-spacing:1.8px;color:#9ba58e}
.catalog-page .cat-product-copy{padding:14px}
.catalog-page .cat-product h3{font-family:inherit;font-weight:500;font-size:19px;letter-spacing:-.7px}
.catalog-page .cat-kg{color:#9a7544;font-weight:600;font-size:25px;letter-spacing:-.9px}
.catalog-page .cat-kg small{font-size:10px;font-weight:500}
.catalog-page .cat-feature{color:#718365;font-size:10px}
.catalog-page .cat-product a{font-size:11px;font-weight:500;color:#3f5b33;border-color:#e6e9df}
.catalog-page .cat-product a>span{background:#f5f5ec;border-color:#e1e5d7;color:#988354;border-radius:6px;width:26px;height:26px;flex-basis:26px}
.catalog-page .cat-product a>span svg{width:15px;height:15px;stroke-width:1.3}
@media(max-width:1100px){.catalog-page .cat-layout{grid-template-columns:238px minmax(0,1fr);gap:20px}}
@media(max-width:700px){.catalog-page .cat-layout{display:block}.catalog-page .cat-sidebar #cat-groups{grid-template-columns:1fr 1fr}.catalog-page .cat-sidebar #cat-groups label{gap:8px;padding:12px 9px}.catalog-page .cat-sidebar #cat-groups .cat-type-mark{display:none}.catalog-page .cat-type-copy strong{font-size:11px}.catalog-page .cat-sidebar .cat-help{display:none}.catalog-page .cat-capacity-options{grid-template-columns:repeat(4,1fr)}.catalog-page .cat-capacity-options button{flex-wrap:wrap;gap:1px 4px;min-height:44px}.catalog-page .cat-capacity-options button strong{font-size:11px}.catalog-page .cat-capacity-options button small{font-size:8px}.catalog-page .cat-sidebar h2{margin-bottom:21px}.catalog-page .cat-heading h2{font-size:25px}.catalog-page .cat-kg{font-size:22px}.catalog-page .cat-product h3{font-size:18px}.catalog-page .cat-product-copy{padding:12px}}
@media(prefers-reduced-motion:reduce){.catalog-page .cat-product,.catalog-page .cat-categories button,.catalog-page .cat-sidebar #cat-groups label,.catalog-page .cat-capacity-options button{transition:none}.catalog-page .cat-product:hover{transform:none}}

/* Clear capacity choices and a dedicated consultation card. */
.catalog-page .cat-capacity-options button{min-height:50px;color:#193e3b;border-color:#c9d4c6;gap:4px;padding:12px 5px}
.catalog-page .cat-capacity-options button[data-capacity=all]{flex-direction:column;align-items:center;justify-content:center;gap:0;padding:6px}
.catalog-page .cat-capacity-options button[data-capacity=all] strong{font-size:14px}
.catalog-page .cat-capacity-options button[aria-pressed=true]{color:white;background:#193e3b;border-color:#193e3b}
.catalog-page .cat-capacity-options button[aria-pressed=true] small{color:white}
.catalog-page .cat-sidebar .cat-help{display:flex;flex-direction:column;gap:16px;background:radial-gradient(ellipse at 110% 0,#2c5147 0,transparent 65%),#173d37;padding:22px 20px;color:#fff;border-top:3px solid #dfa164}
.catalog-page .cat-help-heading{display:flex;align-items:center;gap:10px}
.catalog-page .cat-help-heading>span:last-child{font-size:9px;font-weight:600;letter-spacing:1px;line-height:1.5;color:#f3bc85}
.catalog-page .cat-concierge-mark{width:38px;height:38px;flex:0 0 38px;border:1px solid #ffffff30;border-radius:10px;background:#ffffff08;color:#f3bc85}
.catalog-page .cat-concierge-mark svg{width:23px;height:23px;stroke-width:1.5}
.catalog-page .cat-help h3{font:400 26px/1.12 Georgia,serif;letter-spacing:-.5px;color:white;margin:0 0 12px}
.catalog-page .cat-help p{font-size:13px;line-height:1.65;color:#d8e5de;margin:0}
.catalog-page .cat-help a{display:flex;gap:8px;min-height:48px;padding:12px 10px;background:#f1b77e;color:#153b35;border:1px solid #f1b77e;border-radius:8px;font-size:12px;font-weight:700;line-height:1.4;text-decoration:none;transition:background .2s}
.catalog-page .cat-help a:hover{background:#ffd0a0;border-color:#ffd0a0}
.catalog-page .cat-help a::after{display:none}
.catalog-page .cat-help a span{display:grid;place-items:center;flex:0 0 21px}
@media(max-width:700px){.catalog-page .cat-capacity-options{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-page .cat-capacity-options button strong{font-size:16px}.catalog-page .cat-capacity-options button small{font-size:12px}.catalog-page .cat-sidebar .cat-help{display:flex}.catalog-page .cat-help h3 br{display:none}}
