/* Shared public catalogue and knowledge pages: existing green/stone palette. */
[hidden]{display:none!important}
.site-footer address{font-size:14px;line-height:1.9;font-style:normal}
.site-footer address a{display:inline-block}
.catalog-intro{padding-top:28px;padding-bottom:24px}.catalog-collections,.faq-topics{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}
.catalog-collections a,.faq-topics a{display:inline-flex;align-items:center;min-height:44px;padding:9px 16px;border:1px solid #c9cec6;border-radius:4px;text-decoration:none}
.catalog-collections [aria-current]{background:#243b2e;color:#fff}
.catalog-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:32px;align-items:start}
.catalog-sidebar{position:sticky;top:16px;border:1px solid #d9ddd4;padding:16px;border-radius:6px}
.catalog-sidebar summary{font-weight:700;min-height:44px;cursor:pointer;padding:10px 0}
.catalog-sidebar nav{display:flex;flex-direction:column}.catalog-sidebar a{display:flex;justify-content:space-between;gap:8px;padding:12px 10px;min-height:44px;text-decoration:none;font-size:14px;border-bottom:1px solid #e4e6e0}
.catalog-sidebar [aria-current]{background:#e7ece3;font-weight:700}.catalog-sidebar a span{color:#687165}
.catalog-results{min-width:0}.catalog-results .cards-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.catalog-filters{display:flex;align-items:end;flex-wrap:wrap;gap:12px;padding:18px;background:#efeee8;border-radius:6px}
.catalog-filters label{display:flex;flex-direction:column;gap:8px;font-size:13px;min-width:0;flex:1 1 130px}
.catalog-filters .catalog-search{flex:1 1 100%}.catalog-filters input,.catalog-filters select,.faq-search input{width:100%;min-height:46px;border:1px solid #b9c1b6;border-radius:4px;background:#fff;padding:10px;font:inherit;font-size:16px;color:#243b2e}
.catalog-count{margin:20px 0;color:#596054;font-size:14px}.catalog-card .card-image{aspect-ratio:3/4}.catalog-card .card-image img{width:100%;height:100%;object-fit:contain}
.catalog-card h3{font-size:18px}.catalog-price{font-size:20px;font-weight:600;margin:16px 0 3px}.catalog-price-note{font-size:12px;line-height:1.5;color:#586152;margin:0 0 12px}
.catalog-empty{grid-column:1/-1;padding:30px 0}.catalog-tools{margin-top:30px;margin-bottom:24px;line-height:2}
.pagination{display:flex;gap:8px;flex-wrap:wrap;margin:32px 0}.pagination a,.pagination span{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #c9cec6;padding:8px}.pagination [aria-current]{background:#243b2e;color:#fff}
.editorial{max-width:1000px}.editorial p{font-size:17px;line-height:1.8;max-width:78ch}.editorial>section{margin:40px 0}.editorial h2{font-size:28px;line-height:1.3}.editorial h1{overflow-wrap:anywhere}
.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:36px}.guide-grid article{border:1px solid #d9ddd4;padding:24px;border-radius:6px}.guide-grid h2{font-size:24px}
.faq-topic{margin:42px 0;scroll-margin-top:30px}.faq-item,.faq-context details{border-top:1px solid #ccd2c6;scroll-margin-top:24px}.faq-item summary,.faq-context summary{cursor:pointer;min-height:52px;padding:20px 8px;font-size:18px;font-weight:600;line-height:1.5}.faq-answer,.faq-context details p{padding:0 8px 16px;line-height:1.8;max-width:80ch}.faq-permalink{display:inline-block;margin:0 8px 16px;min-height:32px;font-size:13px}.faq-item:target{background:#ebefe6}.faq-search{display:none;max-width:600px;line-height:2}.js .faq-search{display:block}.faq-context{max-width:1100px}.faq-context>.text-link{margin-top:24px}
.contact-map{width:100%;height:420px;border:1px solid #d9ddd4;border-radius:6px}.feedback-section{max-width:1000px}.feedback-section .feedback-grid{width:100%}.feedback-section input,.feedback-section textarea,.feedback-section select{max-width:100%;font-size:16px}.feedback-section .group-feedback-form{padding:24px;background:#efeee8;border-radius:6px}.feedback-section [type=submit]{min-height:48px}.feedback-section .feedback-success{padding:24px;border:1px solid #78946d}.feedback-section .errorlist{color:#932b25}
.detail-gallery{display:grid;gap:16px}.detail-gallery img{width:100%;height:auto;max-height:650px;object-fit:contain}.detail-gallery a{display:block}.detail-gallery summary{cursor:pointer;padding:16px;min-height:44px}
.menu-toggle{display:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #a18a5c;outline-offset:4px}
.product-viewer{position:fixed;inset:0;margin:auto;max-width:min(94vw,1000px);max-height:94dvh;padding:18px;background:#f8f7f1;border:0;border-radius:8px;overflow:auto}.product-viewer::backdrop{background:#132018d9}.product-viewer>button{display:block;margin-left:auto;position:sticky;top:0;z-index:1}.product-viewer button{min-height:44px;padding:10px 16px;background:#243b2e;color:#fff;border:0;border-radius:4px;cursor:pointer}.product-viewer figure{margin:12px 0}.product-viewer img{display:block;max-width:100%;max-height:65dvh;object-fit:contain;margin:auto}.product-viewer figcaption{font-size:14px;line-height:1.6;margin-top:14px}.product-viewer nav{display:flex;justify-content:space-between;gap:14px}
@media(min-width:1001px){.main-nav{flex-wrap:wrap;gap:12px 18px}.main-nav a{font-size:13px}.header-inner{flex-wrap:wrap}.brand{margin-right:auto}}
@media(max-width:1000px){.catalog-layout{grid-template-columns:190px minmax(0,1fr);gap:20px}.catalog-results .cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.js .menu-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:68px;background:#243b2e;color:white;border:0;border-radius:4px;cursor:pointer}.header-inner{flex-wrap:wrap}.main-nav{display:flex;flex-wrap:wrap;white-space:normal;width:100%;order:5}.js .menu-toggle[aria-expanded=false]+.main-nav{display:none}.main-nav a{padding:12px 8px;min-height:44px}.catalog-layout{display:block}.catalog-sidebar{position:static;margin-bottom:20px;padding:8px 16px}.js .catalog-sidebar details:not([data-ready]) nav{display:none}.catalog-sidebar nav{max-height:220px;overflow:auto}.catalog-results .cards-grid{gap:12px}.catalog-card h3{font-size:16px}.catalog-price{font-size:17px}.catalog-filters{padding:14px;gap:14px}.catalog-card .card-info{padding:14px 10px}.guide-grid{grid-template-columns:1fr}.editorial h1{font-size:36px}.editorial h2{font-size:25px}.contact-map{height:320px}.feedback-section .group-feedback-form{padding:16px}.site-footer address{overflow-wrap:anywhere}.faq-topic summary{font-size:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
