:root{--bg:#fff;--text:#11130f;--muted:#62675f;--accent:#b4ec51;--line:#d8ddd3;--stage:#f4f5f2;--community:#eef9d9;--max:1400px;--gutter:clamp(24px,4.4vw,64px);font-family:Arial,Helvetica,sans-serif;color:var(--text);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{color:inherit;cursor:pointer}img{display:block;max-width:100%}button:disabled{cursor:default;opacity:.35}button:hover:not(:disabled),a:hover{color:#426908}a.button:hover{color:var(--text);background:#a5df3d}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #477408;outline-offset:5px}button{border:0;background:none}[hidden]{display:none!important}.container{width:calc(100% - var(--gutter)*2);max-width:var(--max);margin-inline:auto}.sr-only{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}.skip-link{position:fixed;top:10px;left:16px;padding:12px;background:var(--accent);z-index:100;transform:translateY(-200%)}.skip-link:focus{transform:none}html{scroll-behavior:smooth;scroll-padding-top:24px}
.site-header{background:#fff}.header-inner{display:flex;align-items:center;gap:clamp(50px,10vw,155px);min-height:100px}.brand{display:inline-flex;align-items:center;gap:12px;font-size:30px;letter-spacing:-1.2px;font-weight:750}.brand svg{height:40px;width:40px;fill:none;flex:none}.brand rect{stroke:#90d638;stroke-width:3.5}.brand path{stroke:var(--text);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.header-inner nav{display:flex;gap:42px;align-items:center}.header-inner nav a{font-size:17px;line-height:24px;position:relative;padding:18px 0}.nav-shop{font-weight:700}.nav-shop:after{content:"";position:absolute;height:2px;background:#90d638;left:0;right:0;bottom:6px}.nav-note{font-size:13px;color:var(--muted);margin-left:7px}.menu-toggle{display:none}
.hero{position:relative;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;min-height:665px;padding-block:66px 64px}.hero-copy{z-index:1}.hero h1{font-size:clamp(39px,5.3vw,80px);letter-spacing:-3px;line-height:1.02;margin:0 0 30px;font-weight:750}.hero-description{font-size:22px;line-height:1.45;max-width:580px;margin:0 0 40px}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;background:var(--accent);padding:18px 25px;border-radius:4px;font-weight:700;font-size:18px;line-height:1.25;transition:background .15s}.button span{font-size:25px;line-height:20px}.preview-note{font-size:13px;color:var(--muted);margin:14px 0 0;line-height:1.5}.hero-image{width:calc(100% + 52px);max-width:none;margin-left:-22px;mix-blend-mode:multiply}
.categories{display:flex;gap:clamp(24px,5vw,64px);border-block:1px solid #555d50;min-height:80px;align-items:stretch;overflow-x:auto;scrollbar-width:thin}.categories button{font-size:17px;white-space:nowrap;position:relative;padding:24px 0}.categories [aria-pressed=true]{font-weight:700}.categories [aria-pressed=true]:after{content:"";height:2px;background:#90d638;position:absolute;left:0;right:0;bottom:15px}.catalogue-heading{display:flex;justify-content:space-between;gap:30px;align-items:flex-start;padding-top:48px}.catalogue-heading h2{font-size:clamp(28px,3.2vw,44px);letter-spacing:-1.5px;margin:0 0 12px;line-height:1.08}.catalogue-heading p{font-size:17px;color:#4e5549;line-height:1.5;margin:0;max-width:740px}.search{width:290px;flex-shrink:0;margin-top:2px}.search input{width:100%;border:1px solid #aeb5a7;border-radius:4px;padding:15px 18px;background:#fff;color:var(--text);min-height:49px;font-size:14px}.search input::placeholder{color:#737a6e}.results-count{font-size:12px;color:var(--muted);margin:24px 0 17px;min-height:15px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 24px}.product-card{min-width:0}.product-image{display:flex;align-items:center;justify-content:center;background:var(--stage);aspect-ratio:1.24;overflow:hidden;border-radius:4px;width:100%;padding:24px;position:relative}.product-image img{height:100%;width:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform .2s}.product-image:hover img{transform:scale(1.035)}.missing-image{font-size:21px;font-weight:700;text-align:center;line-height:1.4;max-width:240px}.missing-image small{display:block;font-size:12px;font-weight:400;margin-top:12px;color:var(--muted)}.product-status{text-transform:uppercase;font-size:10px;letter-spacing:1.5px;color:var(--muted);font-weight:700;line-height:1.5;margin:18px 0 10px}.product-card h3{font-size:22px;font-weight:700;letter-spacing:-.7px;margin:0 0 10px;line-height:1.18}.product-subtitle{color:var(--muted);font-size:15px;line-height:1.5;margin:0 0 16px}.text-button{font-size:16px;display:inline-flex;align-items:center;gap:12px;font-weight:600;border-bottom:2px solid #90d638;line-height:1.45;padding:0 0 6px}.empty-state{text-align:center;padding:64px 20px;border-block:1px solid var(--line)}.empty-state h3{font-size:25px;letter-spacing:-.5px}.empty-state p{color:var(--muted);line-height:1.5}.pagination{display:flex;align-items:center;justify-content:center;gap:32px;margin-top:42px;font-size:14px}.pagination button{border:1px solid var(--line);padding:12px 16px;border-radius:4px}.catalogue-footnote{font-size:12px;color:var(--muted);line-height:1.6;margin:28px 0 50px}
.community{background:var(--community);padding-block:60px}.community-inner{display:grid;grid-template-columns:2fr 1fr;gap:64px}.section-label{font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;margin:0 0 22px}.community h2{font-size:clamp(35px,3.7vw,54px);line-height:1.02;letter-spacing:-2px;margin:0 0 20px}.community-inner>div>p:not(.section-label){font-size:19px;line-height:1.5;max-width:680px;margin:0}.community-topics{align-self:center}.community-topics ul{list-style:none;padding:0;margin:0 0 16px}.community-topics li{font-size:23px;font-weight:700;letter-spacing:-.8px;border-bottom:1px solid #9faa8e;padding:14px 0}.community-topics li:first-child{padding-top:0}.community-topics p{color:var(--muted);font-size:14px!important}.footer-inner{display:flex;align-items:center;justify-content:space-between;padding-block:32px;gap:24px}.footer-inner .brand{font-size:24px}.footer-inner .brand svg{width:32px;height:32px}.footer-inner p{color:var(--muted);font-size:12px;margin:6px 0 0 44px}.footer-inner nav{display:flex;gap:32px;font-size:14px}
dialog{border:0;padding:40px;width:min(960px,calc(100% - 40px));max-height:calc(100dvh - 48px);border-radius:8px;color:var(--text);background:white;box-shadow:0 24px 100px #0003;overflow:auto}dialog::backdrop{background:#111b;backdrop-filter:blur(4px)}body:has(dialog[open]){overflow:hidden}.close-dialog{position:absolute;top:12px;right:12px;width:40px;height:40px;border-radius:50%;font-size:30px;background:var(--stage);line-height:1}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}.detail-image-stage{background:var(--stage);border-radius:4px;display:grid;place-items:center;align-self:start;aspect-ratio:1;padding:24px}.detail-image-stage img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.detail-content .product-status{margin-top:0}.detail-content h2{font-size:32px;letter-spacing:-1px;margin:8px 0 12px}.detail-content>p{line-height:1.5}.detail-content label{display:block;font-size:13px;font-weight:700;margin:24px 0 8px}.detail-content select{width:100%;min-height:44px;padding:10px 30px 10px 10px;border:1px solid #aeb5a7;background:#fff;border-radius:4px;font-size:13px}.detail-note{font-size:12px;color:var(--muted);line-height:1.6}.product-facts{font-size:13px;margin:24px 0}.product-facts>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}.product-facts dt{color:var(--muted)}.product-facts dd{margin:0;text-align:right;font-weight:600}
.hero-image{height:auto}
@media(min-width:1500px){.hero-image{width:calc(100% + 70px);margin-left:-25px}.hero{min-height:625px}}
@media(max-width:1050px){.header-inner{gap:60px}.header-inner nav{gap:25px}.hero h1{letter-spacing:-2px}.hero{min-height:510px;padding-block:50px}.hero-description{font-size:18px}.catalogue-heading{flex-direction:column;gap:20px}.search{width:100%;max-width:360px}.community-inner{gap:5%}.community-topics li{font-size:20px}.product-grid{gap:32px 18px}.product-card h3{font-size:19px}.product-image{padding:16px}.hero-image{max-width:100%;width:100%;margin-left:0}}
@media(max-width:700px){html{scroll-padding-top:12px}.header-inner{min-height:80px;justify-content:space-between;gap:20px;flex-wrap:wrap}.brand{font-size:26px}.brand svg{width:34px;height:34px}.menu-toggle{display:flex;align-items:center;gap:14px;padding:14px 0;font-size:14px}.menu-toggle span{font-size:25px}.header-inner nav{display:none;width:100%;padding:0 0 20px;flex-wrap:wrap;gap:20px}.header-inner nav.is-open{display:flex}.header-inner nav a{font-size:15px;padding-block:8px}.nav-shop:after{bottom:0}.hero{display:flex;flex-direction:column;align-items:stretch;gap:0;padding-block:32px 12px;min-height:0}.hero h1{font-size:clamp(35px,7.9vw,55px);letter-spacing:-1.8px;line-height:1.03;margin-bottom:22px}.hero-description{font-size:17px;line-height:1.5;margin-bottom:24px;max-width:430px}.button{padding:16px 21px;font-size:16px}.preview-note{font-size:11px;max-width:310px}.hero-image{width:100%;max-width:480px;align-self:center;margin:8px 0 0}.categories{min-height:70px;gap:28px}.categories button{font-size:15px;padding:20px 0}.categories [aria-pressed=true]:after{bottom:12px}.catalogue-heading{padding-top:30px}.catalogue-heading h2{font-size:31px;letter-spacing:-1px}.catalogue-heading p{font-size:15px}.search{max-width:none}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}.product-image{padding:12px;aspect-ratio:1}.product-card h3{font-size:18px;letter-spacing:-.5px}.product-status{font-size:8px;letter-spacing:1px}.product-subtitle{font-size:13px}.text-button{font-size:14px}.community{padding-block:40px}.community-inner{grid-template-columns:1fr;gap:32px}.community h2{font-size:39px;letter-spacing:-1.5px}.community-inner>div>p:not(.section-label){font-size:17px}.community-topics li{font-size:21px}.footer-inner{align-items:flex-start;flex-direction:column;gap:24px}.footer-inner p{max-width:235px;line-height:1.5}.footer-inner nav{gap:24px}.pagination{gap:18px}.pagination button{padding:10px;font-size:12px}.catalogue-footnote{margin-bottom:32px}dialog{padding:48px 24px 24px;width:calc(100% - 24px);max-height:calc(100dvh - 24px)}.detail-grid{grid-template-columns:1fr;gap:24px}.detail-image-stage{max-height:280px;aspect-ratio:auto}.detail-image-stage img{max-height:235px}.detail-content h2{font-size:28px}.product-facts{font-size:12px}}
@media(max-width:440px){.product-grid{grid-template-columns:1fr;gap:32px}.product-image{aspect-ratio:1.18;padding:25px}.product-card h3{font-size:23px}.product-status{font-size:10px}.product-subtitle{font-size:15px}.text-button{font-size:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Product prices, supplier quotes and accessible disclosure. */
.available{color:#477408}.product-price{font-size:23px;font-weight:700;letter-spacing:-.5px;margin:0 0 6px}.product-delivery{font-size:12px;color:var(--muted);line-height:1.5;margin:0 0 18px}.product-facts #detail-price{font-size:23px;letter-spacing:-.5px}.shipping-section h3{font-size:16px;margin:0 0 8px}.shipping-option{padding:14px 0;border-bottom:1px solid var(--line)}.shipping-option-heading{display:flex;justify-content:space-between;gap:16px;font-size:13px}.shipping-option p{font-size:12px;color:var(--muted);line-height:1.5;margin:6px 0 0}.product-details{margin:22px 0;border-block:1px solid var(--line)}.product-details summary{display:flex;align-items:center;justify-content:space-between;padding:18px 0;font-weight:700;cursor:pointer;list-style:none}.product-details summary::-webkit-details-marker{display:none}.product-details summary span{font-size:22px;font-weight:400}.product-details[open] summary span{transform:rotate(45deg)}.product-details summary:focus-visible{outline:3px solid #477408;outline-offset:4px}.product-details p,.product-details li{font-size:13px;line-height:1.65}.product-details h4{font-size:13px;margin-bottom:8px}.product-details ul{padding-left:18px}.detail-specs{font-size:12px;line-height:1.5}.detail-specs>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:12px;padding:9px 0;border-bottom:1px solid #e9ece5}.detail-specs dt{color:var(--muted)}.detail-specs dd{margin:0;overflow-wrap:anywhere}.detail-content{min-width:0}.cart-shipping{font-size:11px;color:var(--muted);line-height:1.5;margin:5px 0}.cart-info .cart-availability{color:#477408}.cart-summary strong{text-align:right}.cart-price{white-space:nowrap}
@media(max-width:700px){.shipping-option-heading{font-size:12px}.product-price{font-size:22px}}

.variant-selectors{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px}.variant-selectors>div{min-width:0}
@media(max-width:700px){.variant-selectors{grid-template-columns:minmax(0,1fr);gap:0}}

.variant-selectors:has(> [hidden]){grid-template-columns:minmax(0,1fr)}

/* Dedicated product pages use the same variant controls as the catalogue. */
.product-page{padding-bottom:64px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;font-size:13px;line-height:1.6;color:var(--muted);padding:26px 0 38px;border-top:1px solid var(--line)}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.product-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(32px,6vw,90px)}.product-visual{position:sticky;top:28px;align-self:start}.product-page .detail-image-stage{padding:clamp(24px,4vw,64px)}.product-page h1{font-size:clamp(30px,3.6vw,50px);line-height:1.06;letter-spacing:-1.6px;margin:12px 0 16px;overflow-wrap:anywhere}.product-page .variant-selectors{margin-top:8px}.product-page .add-to-cart{width:100%}.product-page .shipping-section{margin-top:30px}.product-page .shipping-section h2{font-size:17px;letter-spacing:0;margin:0 0 8px}.selected-variant{font-size:13px;line-height:1.6;color:var(--muted);margin:16px 0}.price-note{font-size:12px;color:var(--muted);margin:12px 0}.page-specifications{margin:48px 0 32px}.page-specifications summary{font-size:22px}.page-specifications #detail-specifications{max-width:900px;padding-bottom:20px}.page-specifications p,.page-specifications li{font-size:15px}.page-specifications .detail-specs{font-size:14px}.back-to-shop{margin-bottom:16px}.cart-info h2 a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.breadcrumbs{padding:18px 0 26px;font-size:12px;gap:8px}.product-layout{grid-template-columns:minmax(0,1fr);gap:22px}.product-visual{position:static}.product-page .detail-image-stage{aspect-ratio:1.15;max-height:none;padding:24px}.product-page .detail-image-stage img{max-height:none}.product-page h1{font-size:34px;letter-spacing:-1px}.product-page .page-specifications{margin-top:32px}.product-page{padding-bottom:32px}}
