:root{--accessory-cream:#fffaf1;--accessory-ink:#123818;--accessory-sage:#6f9666;--accessory-sage-text:#486a43;--accessory-line:#ddd5c8;--accessory-amber:#c8943d;--accessory-muted:#657063}
.accessory-editorial-hero .shop-editorial-inner{background:linear-gradient(135deg,#fffaf1 0%,#f1f5e9 100%)}.accessory-editorial-hero .shop-editorial-emblem{background:var(--accessory-ink);color:var(--accessory-cream)}.accessory-editorial-hero .shop-editorial-emblem span{color:rgba(255,250,241,.78)}
.accessory-shop-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:34px;max-width:1480px;margin:auto}.accessory-filters{align-self:start;position:sticky;top:24px;background:var(--accessory-cream);border:2px solid var(--accessory-ink);border-radius:24px;padding:22px;display:grid;gap:8px}.accessory-filters label{font-weight:700;color:var(--accessory-ink);margin-top:7px}.accessory-filters input,.accessory-filters select{width:100%;border:1px solid var(--accessory-line);border-radius:14px;padding:11px 12px;background:#fff}.accessory-more-filters{border-top:1px solid var(--accessory-line);border-bottom:1px solid var(--accessory-line);padding:12px 0;margin:5px 0}.accessory-more-filters summary{cursor:pointer;font-weight:800;color:var(--accessory-ink)}.accessory-more-filters[open]{display:grid;gap:8px}.accessory-checkbox{display:flex!important;gap:8px;align-items:flex-start;font-weight:600!important}.accessory-checkbox input{width:auto;margin-top:4px}.accessory-results{min-width:0}.accessory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.accessory-card{background:var(--accessory-cream);border:1px solid var(--accessory-line);border-radius:26px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 16px 35px rgba(30,50,28,.07)}.accessory-card.is-unavailable{opacity:1;border-style:dashed;background:#f4f0e7}.accessory-card-image{position:relative;display:block;aspect-ratio:1.16;background:linear-gradient(145deg,#e6efdf,#f6ecdc);overflow:hidden}.accessory-card-image img{width:100%;height:100%;object-fit:cover}.accessory-image-placeholder{width:100%;height:100%;min-height:270px;display:grid;place-content:center;justify-items:center;gap:10px;color:#53674f}.accessory-image-placeholder svg{width:54px;height:54px}.accessory-format-badge{position:absolute;top:14px;left:14px;display:flex;align-items:center;gap:6px;border-radius:999px;background:rgba(18,56,24,.94);color:#fff;padding:8px 12px;font-size:.75rem;font-weight:800}.accessory-format-badge svg{width:15px;height:15px}.accessory-card-body{padding:20px;display:flex;flex-direction:column;gap:10px;flex:1}.accessory-category{text-transform:uppercase;letter-spacing:.12em;font-size:.71rem;font-weight:900;color:var(--accessory-sage-text)}.accessory-card h3{font-family:Georgia,serif;font-size:1.5rem;line-height:1.08;margin:0}.accessory-card h3 a{color:var(--accessory-ink);text-decoration:none}.accessory-card p{color:var(--accessory-muted);line-height:1.55;margin:0}.accessory-card-facts{display:grid;gap:6px;color:var(--accessory-muted);font-size:.82rem}.accessory-card-facts span{display:flex;gap:7px;align-items:center}.accessory-card-facts svg{width:15px}.accessory-card-swatches{display:flex;gap:6px;min-height:24px}.accessory-swatch{width:22px;height:22px;border-radius:50%;background:var(--swatch);border:2px solid #fff;box-shadow:0 0 0 1px #aeb8aa}.accessory-card-price{display:flex;align-items:end;justify-content:space-between;border-top:1px solid var(--accessory-line);padding-top:13px;margin-top:auto}.accessory-card-price span{font-size:.75rem;color:var(--accessory-muted)}.accessory-card-price strong{font-family:Georgia,serif;font-size:1.55rem;color:var(--accessory-ink)}.accessory-empty{grid-column:1/-1;text-align:center;background:var(--accessory-cream);border:1px solid var(--accessory-line);border-radius:24px;padding:50px;color:var(--accessory-muted)}.accessory-empty h1,.accessory-empty h3{font-family:Georgia,serif;color:var(--accessory-ink)}.accessory-empty svg{width:38px;height:38px;color:var(--accessory-sage-text)}
.accessory-product-page{max-width:1260px;margin:0 auto;padding:34px 36px 80px}.accessory-breadcrumb{display:flex;gap:9px;color:var(--accessory-muted);margin-bottom:24px}.accessory-breadcrumb a{color:var(--accessory-ink);font-weight:700}.accessory-product-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.9fr);gap:36px}.accessory-product-gallery,.accessory-product-copy{background:var(--accessory-cream);border:1px solid var(--accessory-line);border-radius:28px;overflow:hidden}.accessory-product-gallery{min-height:560px;background:linear-gradient(145deg,#e6efdf,#f6ecdc)}.accessory-product-gallery img{width:100%;height:100%;min-height:560px;object-fit:cover}.accessory-product-copy{padding:34px}.accessory-product-copy h1{font-size:clamp(2.8rem,5vw,5rem);line-height:.95;margin:12px 0 20px;color:var(--accessory-ink)}.accessory-lead{font-size:1.08rem;line-height:1.65;color:var(--accessory-muted)}.accessory-fulfilment-panel{display:grid;gap:5px;background:#edf4e8;border-radius:16px;padding:15px;margin:22px 0}.accessory-fulfilment-panel strong{color:var(--accessory-ink)}.accessory-fulfilment-panel span{color:var(--accessory-muted)}.accessory-variant-choices h2{font-size:1rem;color:var(--accessory-ink)}.accessory-variant-button{width:100%;display:flex;align-items:center;gap:12px;text-align:left;padding:13px;border:1px solid var(--accessory-line);border-radius:15px;background:#fff;margin:7px 0;color:var(--accessory-ink)}.accessory-variant-button span{display:grid;gap:2px;flex:1}.accessory-variant-button small{color:var(--accessory-muted)}.accessory-variant-button em{font-size:.72rem;color:#9a5c2c}.accessory-variant-button.is-selected{border:2px solid var(--accessory-sage);background:#f1f6ed}.accessory-variant-button:disabled{opacity:.55}.accessory-buy-panel{display:grid;grid-template-columns:1fr 90px auto;gap:12px;align-items:end;border-top:1px solid var(--accessory-line);padding-top:20px;margin-top:20px}.accessory-buy-panel>div{display:grid}.accessory-buy-panel>div strong{font-family:Georgia,serif;font-size:2rem;color:var(--accessory-ink)}.accessory-buy-panel>div small{color:var(--accessory-muted)}.accessory-buy-panel label{font-size:.76rem;font-weight:700}.accessory-buy-panel input{width:100%;padding:11px;border:1px solid var(--accessory-line);border-radius:12px}.accessory-account-note,.accessory-linked{display:flex;gap:8px;align-items:flex-start;color:var(--accessory-muted);font-size:.86rem;line-height:1.5}.accessory-account-note svg{width:19px;flex:0 0 auto}.accessory-product-information{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px}.accessory-product-information article,.accessory-product-information aside{background:var(--accessory-cream);border:1px solid var(--accessory-line);border-radius:24px;padding:28px}.accessory-product-information h2{font-family:Georgia,serif;color:var(--accessory-ink);font-size:2rem}.accessory-rich-copy{line-height:1.75;color:var(--accessory-muted)}.accessory-licence{display:flex;gap:13px;background:#edf4e8;border-radius:16px;padding:16px;margin-top:20px}.accessory-licence svg{color:var(--accessory-sage);flex:0 0 auto}.accessory-licence p{margin:5px 0 0;color:var(--accessory-muted);line-height:1.55}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1100px){.accessory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.accessory-product-hero{grid-template-columns:1fr}.accessory-product-gallery{min-height:420px}.accessory-product-gallery img{min-height:420px}}@media(max-width:800px){.accessory-hero{grid-template-columns:1fr;padding:50px 22px}.accessory-shop-layout{grid-template-columns:1fr;padding:24px 18px}.accessory-filters{position:static}.accessory-product-page{padding:24px 16px 60px}.accessory-product-information{grid-template-columns:1fr}}@media(max-width:600px){.accessory-grid{grid-template-columns:1fr}.accessory-buy-panel{grid-template-columns:1fr}.accessory-buy-panel .button{grid-column:1/-1}.accessory-product-copy{padding:24px}.accessory-product-gallery{min-height:320px}.accessory-product-gallery img{min-height:320px}}
.accessory-quantity-price-detail{margin:.65rem 0 0;padding:.75rem .9rem;border:1px solid #6f8f60;border-radius:.8rem;background:#f3f6ed;color:#1f3a24;font-weight:650;line-height:1.45}.accessory-buy-panel select{min-height:44px;max-width:100%;border:1px solid #64705f;border-radius:.65rem;background:#fffaf1;color:#18251b;font:inherit;padding:.55rem 2rem .55rem .7rem}.accessory-buy-panel select:focus-visible{outline:3px solid #174d2a;outline-offset:3px}@media(max-width:620px){.accessory-buy-panel,.accessory-buy-panel>*{min-width:0;width:100%}}

/* Missing optional photographs reveal the same calm placeholder without a raw missing-file request. */
.accessory-card-image>img{position:relative;z-index:2}
.accessory-image-fallback{position:absolute;inset:0;z-index:1;display:grid;place-content:center;justify-items:center;gap:10px;color:#7b9274}
.accessory-image-fallback svg{width:54px;height:54px}
.accessory-image-frame{position:relative;width:100%;height:100%;min-height:360px;background:linear-gradient(145deg,#e6efdf,#f6ecdc);overflow:hidden}
.accessory-image-frame>img{position:relative;z-index:2;width:100%;height:100%;object-fit:cover}
.accessory-format-badge{z-index:3}

.accessory-filter-field{display:grid;gap:8px}
.accessory-filter-field[hidden],.accessory-more-filters[hidden],.accessory-filters[hidden]{display:none!important}
.accessory-shop-layout.is-empty-catalogue{grid-template-columns:minmax(0,900px);justify-content:center}
.accessory-shop-layout.is-empty-catalogue .accessory-empty{padding:70px 32px}

/* Transparent filament swatches keep their hue over a self-contained
   checkerboard. The fixed .55 layer is presentation only; catalogue colours
   remain strict six-digit RGB values. */
.accessory-swatch{position:relative;isolation:isolate;display:inline-block;flex:0 0 auto;overflow:hidden}
.accessory-swatch.is-transparent{background-color:#fff;background-image:linear-gradient(45deg,#ccd1cc 25%,transparent 25%),linear-gradient(-45deg,#ccd1cc 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#ccd1cc 75%),linear-gradient(-45deg,transparent 75%,#ccd1cc 75%);background-position:0 0,0 5px,5px -5px,-5px 0;background-size:10px 10px;box-shadow:0 0 0 1px #687066}
.accessory-swatch.is-transparent::before{content:"";position:absolute;inset:0;z-index:1;background:var(--swatch);opacity:.55}
.accessory-swatch.is-transparent::after{content:"";position:absolute;inset:2px 5px 10px 4px;z-index:2;border-radius:999px;border-top:2px solid rgba(255,255,255,.78);transform:rotate(-18deg)}
.accessory-variant-swatch{width:28px;height:28px}
.accessory-selected-details{display:flex;align-items:center;gap:10px}
@media (prefers-color-scheme:dark){.accessory-swatch.is-transparent{background-color:#f7f7f4;background-image:linear-gradient(45deg,#747b75 25%,transparent 25%),linear-gradient(-45deg,#747b75 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#747b75 75%),linear-gradient(-45deg,transparent 75%,#747b75 75%);box-shadow:0 0 0 1px #d9ded8}}

.accessory-rich-copy ul,.accessory-compatibility ul{margin:.8rem 0 1.15rem;padding-left:1.35rem}
.accessory-rich-copy li,.accessory-compatibility li{margin:.35rem 0;line-height:1.55}
.accessory-compatibility{display:grid;gap:16px;margin:0 0 24px;padding:0 0 22px;border-bottom:1px solid var(--accessory-line)}
.accessory-compatibility section{min-width:0}.accessory-compatibility h3{margin:0;color:var(--accessory-ink);font-size:1rem}.accessory-compatibility ul{color:var(--accessory-muted)}
.accessory-server-summary{grid-template-columns:1fr}.accessory-server-information .accessory-rich-copy:empty,.accessory-server-information .accessory-compatibility:empty{display:none}

/* Exact-option product gallery. Every visible image belongs to the selected
   option (or is explicitly shared); the square frame stays stable as options
   change and does not reveal sibling photographs. */
.accessory-product-hero{grid-template-columns:minmax(0,1.08fr) minmax(350px,.92fr);gap:24px;align-items:start}
.accessory-product-gallery{display:grid;gap:10px;min-height:0;background:transparent;border:0;border-radius:0;overflow:visible}
.accessory-main-photo,.accessory-image-frame{position:relative;aspect-ratio:1/1;min-height:0;overflow:hidden;border:1px solid var(--accessory-line);border-radius:26px;background:radial-gradient(circle at 50% 30%,rgba(255,255,255,.92),rgba(232,222,201,.58) 72%),var(--accessory-cream)}
.accessory-main-photo img,.accessory-image-frame>img,.accessory-product-gallery img{width:100%;height:100%;min-height:0;object-fit:cover}
.accessory-thumbnail-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(68px,78px));gap:9px}
.accessory-thumbnail{aspect-ratio:1/1;padding:0;overflow:hidden;border:1px solid var(--accessory-line);border-radius:13px;background:var(--accessory-cream);cursor:pointer}
.accessory-thumbnail img{width:100%;height:100%;min-height:0;object-fit:cover}
.accessory-thumbnail.is-selected{border:3px solid var(--accessory-sage);box-shadow:0 0 0 2px #fff inset}
.accessory-variant-grid{display:grid;gap:8px}
.accessory-variant-button{margin:0;min-height:64px}
.accessory-variant-button[title]{cursor:pointer}
.accessory-variant-button em{display:block;flex:0 0 100%}
.accessory-related-products{margin-top:28px;padding:28px;border:1px solid var(--accessory-line);border-radius:24px;background:var(--accessory-cream)}
.accessory-related-products h2{margin:.35rem 0 1rem;font-family:Georgia,serif;color:var(--accessory-ink)}
.accessory-related-grid,.accessory-related-products ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin:0;padding:0;list-style:none}
.accessory-related-grid a,.accessory-related-products li{display:grid;gap:5px;padding:16px;border:1px solid var(--accessory-line);border-radius:15px;background:#fff;text-decoration:none;color:var(--accessory-ink)}
.accessory-related-products li span,.accessory-related-grid span{color:var(--accessory-sage-text);font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.accessory-related-products li a,.accessory-related-grid strong{font-weight:800;color:var(--accessory-ink)}
.accessory-related-grid small{color:var(--accessory-muted)}
@media(max-width:1100px){.accessory-product-hero{grid-template-columns:1fr}.accessory-product-gallery,.accessory-product-gallery img{min-height:0}}
@media(max-width:600px){.accessory-product-gallery,.accessory-product-gallery img{min-height:0}.accessory-thumbnail-row{grid-template-columns:repeat(4,minmax(0,1fr))}.accessory-related-products{padding:20px}}

/* Variant-media release refinements: keep the title balanced, prevent the
   text-column rule from stretching circular swatches, and make related
   products useful without turning descriptions into a link authority. */
.accessory-product-copy h1{font-size:clamp(2.15rem,3.4vw,3.7rem);line-height:1.02;text-wrap:balance}
.accessory-variant-button>span:not(.accessory-swatch){display:grid;gap:2px;flex:1}
.accessory-variant-button>.accessory-swatch{display:inline-block;flex:0 0 auto}
.accessory-thumbnail{position:relative}
.accessory-thumbnail-label{position:absolute;inset:auto 3px 3px;display:block;padding:3px 5px;border-radius:8px;background:rgba(18,56,24,.9);color:#fff;font-size:.64rem;font-weight:800;line-height:1.1;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.accessory-related-grid a.accessory-related-card,.accessory-related-products li{padding:0;overflow:hidden}
.accessory-related-products li>a.accessory-related-card{display:grid;grid-template-columns:94px 1fr;text-decoration:none;color:inherit}
.accessory-related-image{display:block;aspect-ratio:1/1;overflow:hidden;background:linear-gradient(145deg,#e6efdf,#f6ecdc)}
.accessory-related-image img{width:100%;height:100%;object-fit:cover}
.accessory-related-placeholder{display:block;width:100%;height:100%;background:linear-gradient(145deg,#e6efdf,#f6ecdc)}
.accessory-related-copy{display:grid;align-content:center;gap:5px;padding:14px}
.accessory-related-products .accessory-related-copy>span,.accessory-related-grid .accessory-related-copy>span{color:var(--accessory-muted);font-size:.82rem;font-weight:500;text-transform:none;letter-spacing:normal}
.accessory-related-cta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding:14px;border:1px solid var(--accessory-line);border-radius:15px;background:#f7f4e9}
.accessory-related-cta>span{display:grid;gap:3px}
.accessory-related-cta small{color:var(--accessory-muted)}
@media(max-width:600px){.accessory-related-cta{align-items:stretch;flex-direction:column}.accessory-related-cta .button{width:100%}}

/* Customer-facing exact-option facts use labelled rows instead of a raw,
   duplicated contract string. Catalogue measurements remain unchanged. */
.accessory-selected-facts{display:grid;gap:0;margin:18px 0 0;padding:2px 16px;border:1px solid var(--accessory-line);border-radius:16px;background:#fffdf8}
.accessory-selected-facts>div{display:grid;grid-template-columns:minmax(112px,.42fr) minmax(0,1fr);gap:14px;padding:11px 0;border-bottom:1px solid rgba(18,56,24,.11)}
.accessory-selected-facts>div:last-child{border-bottom:0}
.accessory-selected-facts dt{color:var(--accessory-sage-text);font-size:.78rem;font-weight:850;letter-spacing:.02em}
.accessory-selected-facts dd{display:flex;align-items:center;gap:9px;min-width:0;margin:0;color:var(--accessory-ink);line-height:1.45}
.accessory-buy-panel{grid-template-columns:1fr minmax(145px,auto) auto}
.accessory-buy-panel select,.accessory-limited-offer-panel select{min-height:44px;font-family:inherit;font-size:1rem;line-height:1.3}
.accessory-variant-button small:empty{display:none}

/* Directional colour counterparts use one calm surface and one solid action.
   The stored relationship remains direction-neutral; fulfilment and genuine
   target availability determine the customer wording. */
.accessory-related-cta.accessory-related-counterpart{display:block;overflow:hidden;padding:0;border:0;border-radius:18px;background:linear-gradient(135deg,#fffaf1,#eef4e8);box-shadow:0 10px 24px rgba(18,56,24,.1)}
.accessory-related-cta.accessory-related-ready-stock{background:linear-gradient(135deg,#eff5e9,#dfead9)}
.accessory-related-colours-copy{display:grid;gap:7px;padding:18px 18px 15px}
.accessory-related-colours-copy>strong{color:var(--accessory-ink);font-family:Georgia,serif;font-size:1.15rem}
.accessory-related-colours-copy p{margin:0;color:var(--accessory-muted);line-height:1.5}
.accessory-related-route{display:flex;align-items:center;gap:7px;width:max-content;max-width:100%;padding:5px 9px;border-radius:999px;background:rgba(79,117,72,.13);color:var(--accessory-sage-text);font-size:.76rem;font-weight:850;line-height:1.2}
.accessory-related-route svg{width:16px;height:16px;flex:0 0 auto}
.accessory-related-swatches{display:flex;flex-wrap:wrap;gap:7px;margin-top:4px}
.accessory-related-swatches .accessory-swatch{width:24px;height:24px}
.accessory-related-colours-action{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:48px;padding:11px 18px;background:var(--accessory-ink);color:#fff;font-size:1rem;font-weight:850;line-height:1.25;text-decoration:none;white-space:nowrap}
.accessory-related-colours-action:hover{background:#205428;color:#fff}
.accessory-related-colours-action:focus-visible{outline:3px solid #fff;outline-offset:-5px;box-shadow:0 0 0 3px var(--accessory-ink)}
@media(max-width:600px){.accessory-selected-facts>div{grid-template-columns:1fr;gap:4px}.accessory-related-counterpart{width:100%}.accessory-related-colours-action{width:100%;box-sizing:border-box}}
