:root{font-family:Arial,Helvetica,sans-serif;color:#171717;background:var(--page-bg);line-height:1.5;--page-bg:#FFFFFF;--black:#111;--ink:#1b1b1b;--muted:#737373;--line:#e8e8e8;--soft:#f6f6f6;--accent:#9A8555;--header-bg:#faf9f8;--header-text:#222222;--header-note:#24332C;--header-search-border:#D6D6D6;--footer-bg:#24332C;--footer-text:#FFFFFF;--footer-muted:#FFFFFF;--footer-brand-muted:#FFFFFF;--footer-title:#FFFFFF;--footer-link:#FFFFFF;--footer-link-hover:#D6D9CE;--purchase-button-bg:#9A8555;--purchase-button-border:#9A8555;--purchase-button-text:#FFFFFF;--purchase-button-hover-bg:#F6F6F6;--purchase-button-hover-border:#F6F6F6;--purchase-button-hover-text:#111111;--header-logo-max-width:380px;--footer-logo-max-width:320px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--page-bg);color:var(--ink)}a{color:inherit}
.site-header{background:var(--header-bg);color:var(--header-text)}.header-inner{max-width:1240px;margin:auto;padding:18px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;text-decoration:none;align-items:center}.brand-logo{display:block;height:60px;width:auto;max-width:var(--header-logo-max-width);object-fit:contain;object-position:left center}.footer-logo{display:block;height:44px;width:auto;max-width:var(--footer-logo-max-width);object-fit:contain;object-position:left center;align-self:flex-start}.header-note{font-size:.82rem;text-transform:uppercase;letter-spacing:.09em;color:var(--header-note)}.header-search{position:relative;flex:1;max-width:470px}.header-search input{width:100%;border:1px solid var(--header-search-border);background:#fff;color:#111;padding:11px 14px;font-size:.92rem;outline:none}.header-search input:focus{border-color:var(--accent)}.search-results{position:absolute;left:0;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--line);box-shadow:0 12px 30px rgba(0,0,0,.18);z-index:100;color:#111;max-height:390px;overflow:auto}.search-result{display:block;padding:10px 12px;border-bottom:1px solid var(--line);text-decoration:none}.search-result:last-child{border-bottom:0}.search-result:hover{background:var(--soft)}.search-result-name{display:block;color:var(--accent);font-weight:700}.search-result-code{display:block;color:#777;font-size:.78rem;margin-top:2px}.search-empty{padding:12px;color:#777;font-size:.88rem}.search-page-heading{margin:0 0 24px}.search-page-heading .hero-eyebrow{display:block;margin-bottom:6px}.search-page-heading h1{font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.12;margin:0}.search-card[hidden]{display:none!important}.accent-line{height:4px;background:var(--accent)}.catalogue-nav{background:#fff;border-bottom:1px solid var(--line)}.catalogue-nav-inner{max-width:1240px;margin:auto;padding:0 24px}.catalogue-nav-menu{display:block}.catalogue-nav-menu summary{cursor:pointer;list-style:none;padding:11px 0;font-size:.9rem;font-weight:800;color:var(--ink);user-select:none}.catalogue-nav-menu summary::-webkit-details-marker{display:none}.catalogue-nav-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:28px;border-top:1px solid var(--line);padding:7px 0 12px}.catalogue-nav-links a{display:block;padding:8px 0;text-decoration:none;color:var(--ink);font-size:.9rem;font-weight:700}.catalogue-nav-links a:hover{color:var(--accent)}.pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin:30px 0 8px}.pagination a,.pagination-current{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 11px;border:1px solid var(--line);text-decoration:none;color:var(--ink);font-weight:700;background:#fff}.pagination a:hover{border-color:var(--accent);color:var(--accent)}.pagination-current{background:var(--accent);border-color:var(--accent);color:#fff}.pagination-prev,.pagination-next{min-width:auto}
main{max-width:1240px;margin:auto;padding:34px 24px 64px}footer{background:var(--footer-bg);color:var(--footer-text);margin-top:20px}.footer-inner{max-width:1240px;margin:auto;padding:28px 24px;display:flex;justify-content:space-between;gap:34px;align-items:flex-start}.footer-brand{display:flex;flex-direction:column;gap:5px;align-items:flex-start}.footer-brand>strong{color:var(--footer-title);font-size:1rem;letter-spacing:.02em}.footer-brand>span{color:var(--footer-brand-muted);font-size:.86rem}.footer-contact{display:flex;flex-direction:column;gap:3px;text-align:right;color:var(--footer-muted);font-size:.86rem}.footer-contact-title{color:var(--footer-title);font-weight:700;margin-bottom:4px}.footer-contact a{color:var(--footer-link);text-decoration:none}.footer-contact a:hover{color:var(--footer-link-hover)}
.hero{padding:34px 0 38px;border-bottom:1px solid var(--line);margin-bottom:30px}.hero-eyebrow{display:block;color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.16em;margin-bottom:10px}.hero h1{font-size:clamp(2.3rem,5vw,4.3rem);line-height:.98;margin:0 0 15px;font-weight:900;letter-spacing:-.035em}.hero p{max-width:720px;color:var(--muted);font-size:1.04rem;margin:0}
.hero p + p{margin-top:14px;}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:22px}.card{border:1px solid var(--line);background:#fff;overflow:hidden;display:flex;flex-direction:column;transition:transform .18s ease,box-shadow .18s ease}.card:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(0,0,0,.07)}.card-content{padding:16px 17px 20px}.card h2{font-size:.98rem;line-height:1.35;margin:0 0 9px;font-weight:750;min-height:4.05em}.card h2 a{text-decoration:none;color:var(--accent)}.card h2 a:hover{color:var(--black)}
.card-image{display:flex;align-items:center;justify-content:center;height:280px;min-height:280px;max-height:280px;flex:0 0 280px;background:#fff;padding:20px;text-decoration:none;border-bottom:1px solid var(--line);overflow:hidden}.card-image img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transition:transform .2s ease}
.card-image,.product-main-image,.category-card-image{position:relative;overflow:hidden}
.card-image::before,.product-main-image::before,.category-card-image::before{content:"";position:absolute;inset:0;background:#f4f4f4;opacity:0;pointer-events:none;animation:image-placeholder .22s ease-out}
.card-image img,.product-main-image img,.category-card-image img{animation:image-reveal .22s ease-out both}
@keyframes image-placeholder{0%{opacity:1}70%{opacity:.55}100%{opacity:0}}
@keyframes image-reveal{0%{opacity:.15;filter:blur(4px)}100%{opacity:1;filter:blur(0)}}
.card:hover .card-image img{transform:scale(1.025)}.card-image-empty{color:#999;font-size:.85rem;background:var(--soft)}
.category-card-image{display:block;aspect-ratio:16/10;background:#fff;overflow:hidden;border-bottom:1px solid var(--line);text-decoration:none}.category-card-image img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .2s ease}.card:hover .category-card-image img{transform:scale(1.025)}
.price{font-size:1.18rem;font-weight:900;margin:.35rem 0;color:var(--ink);display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.price-rrp{text-decoration:line-through;color:#8b8b8b;font-weight:700}.price-current{color:var(--ink)}.price-discount .price-current{font-weight:900}.price-invalid{color:#9a4b00}.availability{color:var(--muted);font-size:.86rem;margin-bottom:0}.meta{color:var(--muted);font-size:.9rem}
.breadcrumb{font-size:.82rem;margin-bottom:24px;color:#888}.breadcrumb a{text-decoration:none;color:var(--accent)}.breadcrumb a:hover{color:var(--black)}h1{font-weight:900;letter-spacing:-.025em}.category-description,.description{max-width:900px}.category-description{margin:-4px 0 28px;color:#666}
.product-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.82fr);gap:54px;align-items:start}.product-main-image{aspect-ratio:1/1;background:#fff;border:1px solid var(--line);padding:30px;display:flex;align-items:center;justify-content:center}.product-main-image img{width:100%;height:100%;object-fit:contain}.gallery-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-top:9px}.gallery-thumbs button{aspect-ratio:1/1;border:1px solid var(--line);padding:6px;display:block;background:#fff;cursor:pointer}.gallery-thumbs button:hover,.gallery-thumbs button.is-active{border-color:var(--accent)}.gallery-thumbs img{width:100%;height:100%;object-fit:contain;display:block}.gallery-thumb-video{position:relative;overflow:hidden}.gallery-thumb-video:after{content:"▶";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.78);color:#fff;font-size:17px;padding-left:2px}.gallery-thumb-video:before{content:"VIDEO";position:absolute;left:5px;top:5px;z-index:2;background:var(--accent);color:#fff;font-size:.58rem;font-weight:900;letter-spacing:.06em;padding:3px 5px}.product-main-video{width:100%;height:100%;border:0;display:block;background:#000}
.product-image-empty{background:var(--soft);border:1px solid var(--line);padding:60px;text-align:center;color:#999}.product-info{padding-top:10px}.variant-selector{margin:18px 0 20px}.variant-label{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.variant-options{display:flex;flex-wrap:wrap;gap:8px}.variant-option{min-width:42px;padding:8px 11px;border:1px solid #cfcfcf;text-decoration:none;text-align:center;font-weight:800;background:#fff;cursor:pointer;font:inherit}.variant-option:hover,.variant-option.is-active{border-color:var(--accent);background:var(--accent);color:#000}.product-brand-label{color:var(--accent);font-size:.72rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.product-info h1{font-size:clamp(1.9rem,4vw,3rem);line-height:1.08;margin:9px 0 18px}.product-info .price{font-size:1.55rem}.category-links{margin-top:20px}.category-links a{display:inline-block;margin:0 7px 7px 0;padding:6px 10px;background:#f3f3f3;text-decoration:none;font-size:.78rem;font-weight:700}.category-links a:hover{background:var(--accent);color:#fff}.description{margin-top:48px;border-top:1px solid var(--line);padding-top:30px}.description h2,.description h3{margin-top:1.6em}.description li{margin:.3em 0}.purchase-actions{margin:24px 0 6px;width:100%;text-align:left}.purchase-button{display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:300px;min-height:44px;background:var(--purchase-button-bg);color:var(--purchase-button-text);text-decoration:none;font-size:.95rem;font-weight:900;padding:10px 24px;border:1px solid var(--purchase-button-border);transition:background-color .15s ease,color .15s ease,border-color .15s ease}.purchase-button:hover{background:var(--purchase-button-hover-bg);border-color:var(--purchase-button-hover-border);color:var(--purchase-button-hover-text)}.purchase-note{margin:8px 0 0;color:var(--muted);font-size:.8rem;line-height:1.35;text-align:left}.notice{background:#fafafa;border-left:4px solid var(--accent);padding:13px 15px;color:#666;font-size:.9rem}.related{margin-top:36px;border-top:1px solid var(--line);padding-top:22px}.related h2{font-size:1.15rem}.related li{margin:.4rem 0}.related a{color:var(--accent)}.related a:hover{color:var(--black)}.relation-grid{grid-template-columns:repeat(auto-fit,minmax(210px,280px))}.video-wrap{position:relative;width:min(100%,760px);aspect-ratio:16/9;margin:16px 0;background:#000}.video-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.related-file-name{font-weight:700}.related-file-desc{color:var(--muted);font-size:.85rem;margin-left:8px}
@media(max-width:760px),(max-device-width:760px){.catalogue-nav-inner{padding:0 18px}.catalogue-nav-links{grid-template-columns:1fr;column-gap:0;padding:4px 0 10px}.catalogue-nav-links a{padding:9px 0}.header-inner{padding:15px 18px;flex-wrap:wrap}.header-search{order:3;max-width:none;flex-basis:100%}.header-note{display:none}main{padding:24px 18px 44px}.hero{padding:22px 0 28px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card-content{padding:12px}.card-image{height:180px;min-height:180px;max-height:180px;flex-basis:180px;padding:10px}.product-layout{grid-template-columns:1fr;gap:24px}.gallery-thumbs{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-inner{padding:24px 18px;flex-direction:column;align-items:flex-start}.footer-contact{text-align:left}.product-info{padding-top:0}}
@media(max-width:430px),(max-device-width:430px){.card h2{font-size:.88rem}.price{font-size:1rem}.availability{font-size:.76rem}.purchase-button{min-width:0;width:100%}}
