/* Fixed header has a measured spacer and safe anchor offsets, including the admin bar. */
:root{--mxp-header-height:95px;--mxp-admin-offset:0px}html{scroll-padding-top:calc(var(--mxp-header-height) + var(--mxp-admin-offset) + 12px)}html:has(body.admin-bar){--mxp-admin-offset:var(--wp-admin--admin-bar--height,32px)}body{padding-top:var(--mxp-header-height)}#catalog,#shop-products,#enquiry-content,#contact-content{scroll-margin-top:0}body .site-header{position:fixed;top:var(--mxp-admin-offset);left:0;right:0;width:100%;z-index:1000;box-shadow:0 3px 18px #172d3e08}.admin-bar #wpadminbar{position:fixed}.skip-link:focus{position:fixed;top:calc(var(--mxp-admin-offset) + 8px);left:12px;z-index:100001}
@media(max-width:959px){:root{--mxp-header-height:79px}}@media(max-width:782px){html:has(body.admin-bar){--mxp-admin-offset:46px}}@media(max-width:760px){:root{--mxp-header-height:75px}}
.legal-toc,.about-story figure{top:calc(var(--mxp-header-height) + var(--mxp-admin-offset) + 16px)}
@media(min-width:960px){.mxp-shop-listing .mxp-category-sidebar{top:calc(var(--mxp-header-height) + var(--mxp-admin-offset) + 16px);max-height:calc(100dvh - var(--mxp-header-height) - var(--mxp-admin-offset) - 32px)}}
/* Shared navigation; session counts are fetched privately, never embedded in cacheable HTML. */
.site-header .header-row{gap:20px}.header-actions{display:flex;align-items:center;gap:6px;flex:none}.mxp-header-tool{display:inline-flex;position:relative;width:44px;height:44px;align-items:center;justify-content:center;color:var(--ink);border:1px solid var(--line);border-radius:50%;text-decoration:none}.mxp-header-tool:hover{background:var(--surface);text-decoration:none}.mxp-header-tool:focus-visible,.mxp-menu-top button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.mxp-toolbar-icon{flex:none}.mxp-header-badge{position:absolute;top:-5px;right:-5px;min-width:19px;height:19px;padding:0 4px;border:2px solid var(--paper);border-radius:20px;background:var(--primary);color:#fff;font:600 10px/15px Inter,Arial,sans-serif;text-align:center}.mxp-header-badge[hidden]{display:none}.mxp-header-badge.is-login-dot{width:11px;min-width:11px;height:11px;padding:0;top:0;right:0;background:#b27116}.mxp-menu-backdrop,.mxp-menu-panel{display:none}.mxp-menu-open{overflow:hidden}
@media(min-width:960px) and (max-width:1180px){.site-header .header-row{gap:12px}.site-header .wordmark{max-width:200px}.desktop-nav>.primary-nav{column-gap:14px}.header-actions{gap:4px}}
@media(max-width:959px){.site-header .header-row{gap:8px}.site-header .wordmark{max-width:calc(100% - 150px);min-width:0;font-size:clamp(20px,5.4vw,28px)}.header-actions{margin-left:auto;gap:4px}.mxp-header-tool{width:40px;height:40px}.site-header .mxp-drawer{margin-left:0;flex:none}.mxp-drawer summary{width:42px;height:42px}.mxp-drawer[open]>.mxp-menu-backdrop{display:block;position:fixed;inset:0;width:100%;height:100dvh;background:#14243080;border:0;z-index:110;cursor:pointer}.mxp-drawer[open]>.mxp-menu-panel{display:block;position:fixed;top:0;bottom:0;left:0;width:min(360px,88vw);height:100dvh;padding-top:var(--wp-admin--admin-bar--height,0px);background:var(--mxp-nav-background,var(--paper));color:var(--ink);z-index:111;overflow-y:auto;overscroll-behavior:contain;box-shadow:16px 0 50px #14243030;animation:mxp-drawer-in .2s ease-out}.mxp-menu-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px;border-bottom:1px solid var(--line);font-size:15px;font-weight:600}.mxp-menu-top button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex:none;border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--ink)}.site-header .mxp-drawer nav{position:static;inset:auto;max-height:none;overflow:visible;padding:12px 24px 40px;border:0}.mxp-drawer nav .header-cta{display:inline-flex}.mxp-drawer summary::-webkit-details-marker{display:none}}
@keyframes mxp-drawer-in{from{transform:translateX(-100%)}to{transform:translateX(0)}}
/* PDP layers retain each theme's palette and all native purchase / enquiry forms. */
.single-product #main-content{background:var(--paper)}.single-product .mxp-commerce>div.product{padding-top:18px}.single-product .mxp-commerce div.product div.images,.single-product .mxp-commerce div.product div.summary{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.single-product .mxp-commerce .woocommerce-product-gallery__image img{cursor:zoom-in;transform:none!important;transition:none!important}.single-product .mxp-commerce .woocommerce-product-gallery__image .zoomImg{display:none!important}.single-product .mxp-commerce div.product .woocommerce-tabs{padding:32px;margin:36px -32px 0;border:0;border-radius:0;background:var(--surface);box-shadow:none}.single-product .mxp-commerce div.product .woocommerce-tabs ul.tabs{gap:10px;border-bottom:1px solid var(--line);margin:0 0 26px;overflow-y:hidden}.single-product .mxp-commerce div.product .woocommerce-tabs ul.tabs:before{border:0}.single-product .mxp-commerce div.product .woocommerce-tabs ul.tabs li{border:0;border-bottom:2px solid transparent}.single-product .mxp-commerce div.product .woocommerce-tabs ul.tabs li.active{border-color:var(--primary);background:var(--surface)}.single-product .mxp-commerce div.product .woocommerce-tabs ul.tabs li a{padding:14px 18px}.single-product .mxp-commerce .related.products{padding:28px 0;border-top:1px solid var(--line)}
/* Uniform spreadsheet cells; phone labels occupy their own full-width row. */
.single-product .mxp-commerce table.shop_attributes{display:table;width:100%;border:1px solid #a8b8b0;border-collapse:collapse;table-layout:fixed;margin:0}.single-product .mxp-commerce table.shop_attributes th,.single-product .mxp-commerce table.shop_attributes td{display:table-cell;border:1px solid #b6c4bd;padding:13px 16px;text-align:left;vertical-align:top;font:400 14px/1.65 Inter,Arial,sans-serif;overflow-wrap:anywhere}.single-product .mxp-commerce table.shop_attributes th{width:34%;font-weight:600;background:#e8efeb;color:#263d30}.single-product .mxp-commerce table.shop_attributes td{background:#fff;color:var(--ink);font-style:normal}.single-product .mxp-commerce table.shop_attributes tr:nth-child(n)>th{background:#e8efeb}.single-product .mxp-commerce table.shop_attributes tr:nth-child(n)>td{background:#fff}.single-product .mxp-commerce table.shop_attributes td p{padding:0;margin:0}
@media(min-width:761px){.single-product .mxp-commerce table.shop_attributes tbody{display:table-row-group}.single-product .mxp-commerce table.shop_attributes tr{display:table-row}.single-product .mxp-commerce table.shop_attributes tr>th,.single-product .mxp-commerce table.shop_attributes tr>td{display:table-cell}.single-product .mxp-commerce table.shop_attributes tr>th{width:34%}}
/* Review inputs and media are deliberately distinct from the page background. */
.single-product .mxp-commerce #review_form{padding:24px 0;border:0;border-radius:0;background:transparent;margin-top:28px}.single-product .mxp-commerce #review_form :is(textarea,input[type=text],input[type=email]){display:block;width:100%;min-height:48px;border:1px solid #7b8996;border-radius:6px;background:#fff;color:#172d3e;padding:13px;font:400 16px/1.6 Inter,Arial,sans-serif;box-shadow:inset 0 1px 2px #152d3e08}.single-product .mxp-commerce #review_form textarea{min-height:150px;resize:vertical}.single-product .mxp-commerce #review_form :is(textarea,input):focus-visible{outline:3px solid var(--accent);outline-offset:3px}.single-product .mxp-commerce #review_form label{display:block;margin:0 0 8px;font-size:14px}.single-product .mxp-commerce #review_form button.submit{min-height:48px;padding:12px 24px;border:0;border-radius:6px;background:var(--primary);color:#fff;font:600 14px/1.5 Inter,Arial,sans-serif}.mxp-review-upload-field{padding:18px;border:1px dashed #82958a;border-radius:8px;background:#fff;margin:20px 0}.mxp-review-upload-field input[type=file]{max-width:100%;font-size:14px;color:#263d30}.mxp-review-upload-field input::file-selector-button{min-height:44px;background:#eef3ef;border:1px solid #82958a;border-radius:5px;padding:8px 12px;margin-right:10px}.mxp-review-upload-field p,.mxp-review-policy{font-size:12px;line-height:1.7;color:var(--muted);margin-top:12px}.mxp-review-upload-field ul{padding-left:18px;overflow-wrap:anywhere}.mxp-review-country-choice input{width:18px;height:18px;vertical-align:middle;accent-color:var(--primary);margin-right:6px}.mxp-review-country{display:inline-flex;align-items:center;gap:7px;margin:4px 0 12px;font:400 12px/1.5 Inter,Arial,sans-serif;color:var(--muted)}.mxp-review-country svg{flex:none;box-shadow:0 0 0 1px #172d3e22}.mxp-review-media{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0}.mxp-review-media a{width:120px;max-width:100%;display:block}.mxp-review-media img{width:120px;height:120px;object-fit:cover;border:1px solid var(--line);border-radius:8px}.mxp-review-media video{width:min(320px,100%);max-height:300px;background:#17222c;border-radius:8px}.single-product .mxp-commerce #reviews #comments ol.commentlist{padding:0}.single-product .mxp-commerce #reviews #comments ol.commentlist li{padding:20px 0;border-bottom:1px solid var(--line)}.single-product .mxp-commerce #reviews #comments ol.commentlist li .comment-text{border:0;border-radius:0;background:var(--paper);padding:18px;color:var(--ink)}
.pswp .pswp__button--arrow--left,.pswp .pswp__button--arrow--right,.pswp .pswp__button--zoom{display:block!important;visibility:visible!important;opacity:1}.pswp .pswp__button{min-width:44px;min-height:44px}.pswp .pswp__counter{font-size:14px}.pswp .pswp__button--arrow--left,.pswp .pswp__button--arrow--right{background:#0004;border-radius:6px}
@media(max-width:760px){.single-product .mxp-commerce div.product .woocommerce-tabs{margin-inline:-20px;padding:24px 20px}.single-product .mxp-commerce div.product .woocommerce-tabs ul.tabs li a{padding:12px;font-size:13px}.single-product .mxp-commerce #review_form{padding:20px 0}.single-product .mxp-commerce table.shop_attributes,.single-product .mxp-commerce table.shop_attributes tbody,.single-product .mxp-commerce table.shop_attributes tr{display:block;width:100%}.single-product .mxp-commerce table.shop_attributes tr>th,.single-product .mxp-commerce table.shop_attributes tr>td{display:block;width:100%;max-width:100%;padding:11px 12px;font-size:13px;box-sizing:border-box;border:0;border-bottom:1px solid #b6c4bd}.single-product .mxp-commerce table.shop_attributes tr:last-child>td{border-bottom:0}}
@media(prefers-reduced-motion:reduce){.mxp-drawer[open]>.mxp-menu-panel{animation:none}}
