/* Shared storefront identity, catalogue pagination and footer. No external fonts. */
.site-header .wordmark{gap:11px}
.site-header .wordmark img.brand-logo{width:48px;height:48px}
.wordmark .wordmark-name{display:grid;gap:6px;width:max-content;align-items:start;line-height:1;letter-spacing:normal}
.wordmark .wordmark-name-top{display:block;font:400 27px/1 Georgia,"Times New Roman",serif;letter-spacing:-.035em;text-transform:none;color:#173b2b}
.wordmark .wordmark-name-bottom{display:flex;width:100%;justify-content:space-between;gap:0;margin:0;color:#365742;font:600 10px/1.1 var(--font-sans,Arial,sans-serif);letter-spacing:0;text-transform:uppercase}
.wordmark-name-bottom>span{display:inline;margin:0;color:inherit;font:inherit;line-height:inherit;white-space:pre}
.wordmark:focus-visible{outline:2px solid #37734c;outline-offset:6px;border-radius:3px}

/* Manual loading keeps the footer reachable and the existing card batching intact. */
.catalogue-pagination{display:flex;flex-direction:column;align-items:center;gap:20px;margin-top:42px;padding:35px 20px 8px;border-top:1px solid #e1e7df;text-align:center}
.catalogue-pagination .catalogue-progress{width:min(360px,100%);margin:0;padding:0;border:0;background:transparent}
.catalogue-pagination .catalogue-progress-copy{display:grid;justify-content:stretch;gap:7px;margin-bottom:16px}
.catalogue-pagination .catalogue-progress-copy strong{color:#314b3a;font:500 14px/1.5 var(--font-sans,Arial,sans-serif)}
.catalogue-pagination .catalogue-progress-copy span{color:#647267;font-size:12px;line-height:1.5}
.catalogue-pagination progress{width:min(240px,100%);height:3px;margin-inline:auto;appearance:none;-webkit-appearance:none;background:#e6ebe3;border:0;border-radius:4px;overflow:hidden;color:#416f4c;accent-color:#416f4c}
.catalogue-pagination progress::-webkit-progress-bar{background:#e6ebe3;border-radius:4px}
.catalogue-pagination progress::-webkit-progress-value{background:#416f4c;border-radius:4px}
.catalogue-pagination progress::-moz-progress-bar{background:#416f4c;border-radius:4px}
.catalogue-pagination .load-more{margin:0;width:min(260px,100%)}
.catalogue-pagination .load-more .button{display:flex;gap:12px;width:100%;min-height:48px;padding:14px 20px;border:1px solid #173b2b;border-radius:4px;background:#173b2b;color:#fff;font:600 13px/1.4 var(--font-sans,Arial,sans-serif);text-transform:none;letter-spacing:.01em;box-shadow:0 2px 3px rgba(23,59,43,.06);transition:background .16s,border-color .16s}
.catalogue-pagination .load-more .button:hover{background:#28553b;border-color:#28553b}
.catalogue-pagination-links{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px 26px}
.catalogue-pagination-links a,.catalogue-pagination-links button{display:inline-flex;align-items:center;min-height:44px;margin:0;padding:4px 0;color:#516554;font:500 12px/1.5 var(--font-sans,Arial,sans-serif);text-decoration:underline;text-underline-offset:4px;text-decoration-color:#bac8b8}
.catalogue-pagination-links a:hover,.catalogue-pagination-links button:hover{color:#173b2b;text-decoration-color:currentColor}
.catalogue-pagination button:focus-visible,.catalogue-pagination a:focus-visible{outline:2px solid #37734c;outline-offset:4px}

/* Footer links retain their current destinations and editable wording. */
.site-footer{padding:54px 0 0;background:#173b2b;color:#fff;font-family:var(--font-sans,Arial,sans-serif);font-size:13px;border-top:1px solid #254d37}
.site-footer>.footer-layout.shell{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,.8fr) minmax(0,1fr) minmax(0,.9fr);gap:36px;align-items:start}
.footer-brand .wordmark{gap:12px;margin:0 0 21px}
.footer-brand .wordmark img.brand-logo{width:48px;height:48px;padding:3px;border-radius:50%;background:#fff!important;filter:none!important}
.site-footer .wordmark span{margin:0}
.footer-brand .wordmark-name-top{font-size:26px;color:#fff}
.footer-brand .wordmark-name-bottom{color:#d6e3d5}
.site-footer .footer-description{max-width:300px;margin:0;color:#c9d8c9;font-size:13px;line-height:1.8;overflow-wrap:anywhere}
.site-footer .footer-column>strong{margin:4px 0 16px;color:#fff;font:600 11px/1.5 var(--font-sans,Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase}
.site-footer .footer-column ul{display:block;margin:0;padding:0;list-style:none}
.site-footer .footer-column li{margin:0 0 2px}
.site-footer .footer-column a,.site-footer .footer-column button.link-button{display:inline-flex;align-items:center;min-height:36px;margin:0;padding:4px 0;color:#d7e4d6;font:400 13px/1.5 var(--font-sans,Arial,sans-serif);text-align:left;text-decoration:none;text-transform:none;letter-spacing:0}
.site-footer .footer-column button.link-button::after{content:none}
.site-footer .footer-column a:hover,.site-footer .footer-column button.link-button:hover{color:#fff;text-decoration:underline;text-underline-offset:5px}
.site-footer .footer-store-region{display:block;margin:0 0 7px;color:#fff;font-size:14px;font-weight:500;line-height:1.5}
.site-footer .footer-store-caption{margin:0 0 10px;color:#c9d8c9;font-size:12px;line-height:1.7}
.site-footer .footer-column .footer-store-switch{min-height:36px;color:#e4eddf;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#75977c}
.site-footer>.footer-bottom.shell{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:end;margin-top:38px;padding:24px 0 28px;border-top:1px solid #3c5a45}
.site-footer .footer-legal{grid-column:auto;margin:0;padding:0;border:0;max-width:740px;color:#c0d0c1;font-size:11px;line-height:1.8}
.site-footer .footer-legal span{display:inline;margin:0;color:inherit;line-height:inherit}
.site-footer .footer-copyright{margin:0;color:#c0d0c1;font-size:11px;line-height:1.8;text-align:right;white-space:nowrap}
.site-footer a:focus-visible,.site-footer button:focus-visible{outline:2px solid #e4eddf;outline-offset:4px}
@media(min-width:641px) and (max-width:1000px){
 .site-footer>.footer-layout.shell{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:32px 44px}
 .site-footer>.footer-bottom.shell{grid-template-columns:1fr;gap:14px}
 .site-footer .footer-copyright{text-align:left}
}
@media(max-width:640px){
 .site-header .wordmark{gap:8px}
 .site-header .wordmark img.brand-logo{width:38px;height:38px}
 .site-header .wordmark-name{gap:5px}
 .site-header .wordmark-name-top{font-size:23px}
 .site-header .wordmark-name-bottom{font-size:8.5px}
 .catalogue-pagination{margin-top:30px;padding:28px 10px 0;gap:17px}
 .catalogue-pagination .catalogue-progress-copy strong{font-size:13px}
 .catalogue-pagination .catalogue-progress-copy span{font-size:11px}
 .catalogue-pagination .load-more{width:min(280px,100%)}
 .catalogue-pagination-links{gap:8px 22px}
 .site-footer{padding:36px 0 calc(64px + env(safe-area-inset-bottom))}
 .site-footer>.footer-layout.shell{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px 20px}
 .site-footer .footer-brand{grid-column:1/-1}
 .footer-brand .wordmark{margin-bottom:16px}
 .footer-brand .wordmark img.brand-logo{width:44px;height:44px}
 .footer-brand .wordmark-name-top{font-size:25px}
 .site-footer .footer-description{max-width:440px;font-size:12px;line-height:1.75}
 .site-footer .footer-column>strong{margin-top:0;margin-bottom:10px;font-size:10px}
 .site-footer .footer-column a,.site-footer .footer-column button.link-button{min-height:40px;font-size:12px}
 .site-footer .footer-store{grid-column:1/-1;padding-top:22px;border-top:1px solid #3c5a45}
 .site-footer .footer-store-caption{margin-bottom:4px}
 .site-footer>.footer-bottom.shell{display:grid;grid-template-columns:1fr;gap:14px;margin-top:24px;padding:21px 0 22px}
 .site-footer .footer-copyright{text-align:left;white-space:normal}
}
@media(prefers-reduced-motion:reduce){.catalogue-pagination .load-more .button{transition:none}}
