/* Shared, responsive presentation for the workshop collection. */
.catalog-intro h1{max-width:740px;font-size:clamp(30px,3.5vw,44px)}
.catalog-intro p{max-width:700px}.featured-copy p{max-width:400px}
.collection-card{display:flex;flex-direction:column}.collection-card h2{min-height:0;margin-bottom:10px}.collection-card .card-benefit{font-size:13px;line-height:1.6;padding:0 17px 18px;margin:0;color:var(--muted)}.collection-card .card-action{align-self:flex-start;margin-top:auto}
.catalog-filters{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 18px}.catalog-filters[hidden],.collection-card[hidden]{display:none}.catalog-filters button{font:12px Arial,sans-serif;padding:11px 15px;background:transparent;border:1px solid var(--line);border-radius:3px;color:var(--ink);cursor:pointer}.catalog-filters button[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.filter-status{font-size:12px;color:var(--muted);margin:0 0 16px}.filter-status:empty{display:none}
.benefit-list{padding-left:19px;margin:22px 0;color:var(--ink);font-size:14px;line-height:1.7}.benefit-list li{padding-left:4px;margin:9px 0}.benefit-list li::marker{color:var(--accent)}
.product-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:24px 0}.primary-action{display:inline-block;padding:14px 18px;background:var(--creek);color:#fff8eb;font-size:13px;line-height:1.4;text-align:center}.primary-action:hover{background:#244858}.secondary-action{font-size:12px;color:var(--creek);text-decoration:underline;text-underline-offset:4px}
.project{align-items:start}.project-copy h2{font-size:clamp(29px,3vw,38px)}.section-anchor{scroll-margin-top:24px}
.buyer-questions{max-width:1166px;margin:0 auto;padding:0 5% 56px}.buyer-questions h2{font-size:32px;margin:12px 0 26px}.buyer-questions details{border-bottom:1px solid var(--line)}.buyer-questions summary{padding:19px 4px;cursor:pointer;font-size:15px;line-height:1.5}.buyer-questions summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.buyer-questions details p{font-size:14px;line-height:1.8;color:var(--muted);padding:0 4px 22px;max-width:780px}.buyer-questions details[open] summary{color:var(--creek)}
@media(max-width:760px){.catalog-intro h1{font-size:31px;max-width:360px}.catalog-filters{gap:7px}.catalog-filters button{font-size:11px;padding:10px 11px}.collection-card .card-benefit{font-size:12px;line-height:1.5;padding:0 10px 15px}.collection-card h2{min-height:0}.benefit-list{font-size:14px}.buyer-questions{padding:0 7% 40px}.buyer-questions h2{font-size:29px}.project-actions{gap:13px}.detail-page>.section:first-of-type{padding-bottom:48px}}

.checkout-offer{margin:24px 0}.checkout-offer p{font-size:12px;color:var(--muted);line-height:1.6;margin-top:10px}.closing-checkout{max-width:1166px;margin:auto;padding:0 5%}.closing-checkout:empty{display:none}.closing-checkout .checkout-offer{padding:26px;background:#efdfbd;margin-bottom:40px}.purchase-action{font-weight:700}@media(max-width:760px){.closing-checkout{padding:0 7%}.purchase-action{width:100%}}

/* Mobile reading sizes: body 18px; specs, controls, and captions 16–17px. */
@media(max-width:760px){
 body{font-size:18px;--muted:#604e3e}
 .project-copy>p,.small-note,.intro,.benefit-list,.buyer-questions details p,.about p{font-size:18px;line-height:1.7}
 .benefit-list{padding-left:22px}.benefit-list li{margin:14px 0}
 .specs div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:16px;font-size:17px;line-height:1.55;padding:18px 0}
 .specs dt,.specs dd{overflow-wrap:anywhere}.specs dd{text-align:right}
 .primary-action,.secondary-action,.text-link,.gallery-bottom .text-link,.card-action,.featured-action{font-size:17px;line-height:1.5;min-height:48px}
 .primary-action,.featured-action,.card-action{padding:13px 17px}
 .secondary-action,.text-link{padding-top:10px;padding-bottom:10px}
 .product-actions{gap:12px 20px}.buyer-questions summary{font-size:18px;line-height:1.5;padding:20px 4px}
 .caption,.gallery-bottom,.project-copy .dimension-note,.checkout-offer p{font-size:16px;line-height:1.6}
 .gallery-bottom{flex-wrap:wrap}.caption{gap:12px}
 .eyebrow,.featured-label{font-size:14px;letter-spacing:1px;line-height:1.5}
 .breadcrumbs{font-size:16px;line-height:1.6;gap:10px}.breadcrumbs a{padding:5px 0}
 .catalog-intro p{font-size:18px;line-height:1.65}.catalog-intro h1{font-size:34px}
 .catalog-filters button{font-size:16px;line-height:1.4;padding:12px 14px;min-height:48px}.filter-status{font-size:16px;line-height:1.5}
 .collection-card h2{font-size:22px;line-height:1.25;margin:14px 12px 10px}
 .collection-card .card-benefit{font-size:16px;line-height:1.6;padding:0 12px 16px}
 .collection-card .card-action{font-size:16px;margin-left:12px;margin-right:12px;padding:12px}
 .featured-copy{padding:18px 14px}.featured-copy h2{font-size:26px}.featured-action{font-size:17px;padding:12px}
 .featured-product>img{min-height:230px}.browse-heading{font-size:28px}
 header{flex-wrap:wrap;gap:6px 18px}header nav{gap:24px;flex-wrap:wrap;font-size:16px;line-height:1.4}header nav a{display:inline-flex;align-items:center;min-height:44px}
 .brand-name{font-size:22px}.brand-sub{font-size:12px;letter-spacing:2px}
 footer{font-size:14px;line-height:1.6;flex-wrap:wrap}.footer-right{align-items:start;gap:10px}.version{font-size:14px}.close{font-size:17px;min-height:44px;top:0}dialog{padding-top:48px}
 .related .text-link{font-size:17px}.about .signoff{font-size:26px}
}
@media(max-width:360px){
 .collection-grid{grid-template-columns:1fr}.specs div{grid-template-columns:1fr;gap:5px}.specs dd{text-align:left}
 .featured-product{grid-template-columns:1fr}.featured-product>img{height:200px;min-height:0;object-fit:contain}.featured-copy h2{font-size:28px}
}
