/* Accessories catalogue: scoped additions, existing site styles remain intact. */
.ac-hero{padding:60px 0 48px;background:var(--cream)}
.ac-hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center}
.ac-breadcrumb{font-size:13px;color:var(--muted);margin:0 0 24px}
.ac-breadcrumb a{text-decoration:underline;text-underline-offset:3px}
.ac-hero h1{font-size:clamp(38px,4.6vw,66px);line-height:1.04;letter-spacing:-.045em;margin:16px 0 22px;max-width:680px}
.ac-intro{font-size:18px;line-height:1.55;max-width:600px;color:var(--muted)}
.ac-hero .actions{margin-top:28px;display:flex;gap:12px;flex-wrap:wrap}
.ac-visual{background:white;border:1px solid var(--line);padding:20px 24px 16px;margin:0}
.ac-visual img{width:100%;height:220px;object-fit:contain;display:block}
.ac-visual figcaption{font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:14px;line-height:1.4}
.ac-section{padding:56px 0 76px;scroll-margin-top:96px}
.ac-section h2,.ac-help h2{font-size:clamp(27px,3vw,40px);letter-spacing:-.035em;line-height:1.12;margin:0 0 16px}
.ac-section-lead{color:var(--muted);max-width:760px;line-height:1.6;margin:0 0 28px}
.ac-tools{padding:22px;background:var(--sage);margin-bottom:18px;display:none}
.ac-enhanced .ac-tools{display:block}
.ac-tabs{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:20px}
.ac-tabs button{border:1px solid #c4ccc0;background:white;color:var(--ink);border-radius:2px;padding:11px 17px;font:inherit;cursor:pointer;min-height:44px}
.ac-tabs button[aria-pressed=true]{background:var(--dark);border-color:var(--dark);color:white}
.ac-search-row{display:grid;grid-template-columns:minmax(160px,1fr) minmax(130px,.5fr) auto;gap:16px;align-items:end}
.ac-field label{font-size:13px;display:block;margin:0 0 7px}
.ac-field input,.ac-field select{border:1px solid #b6c1b3;border-radius:2px;padding:12px;background:#fff;color:var(--ink);width:100%;min-height:46px;font:inherit;box-sizing:border-box}
.ac-reset{background:transparent;border:0;text-decoration:underline;text-underline-offset:4px;padding:13px 4px;min-height:46px;font:inherit;color:var(--ink);cursor:pointer}
.ac-count{font-size:13px;color:var(--muted);margin:18px 0 20px}
.ac-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.ac-card{border:1px solid var(--line);background:#fff;min-width:0;display:flex;flex-direction:column}
.ac-card[hidden],.ac-empty[hidden]{display:none!important}
.ac-photo{display:block;position:relative;background:#fff;margin:0;border-bottom:1px solid var(--line)}
.ac-photo img{width:100%;height:225px;object-fit:scale-down;display:block;padding:16px;box-sizing:border-box}
.ac-expand{display:none;position:absolute;bottom:12px;right:12px;min-height:40px;padding:8px 12px;background:var(--cream);color:var(--ink);border:1px solid var(--line);cursor:pointer;font:inherit;font-size:12px}
.ac-enhanced .ac-expand{display:block}
.ac-card-body{padding:23px 24px;display:flex;flex-direction:column;flex:1}
.ac-category-label{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 8px}
.ac-card h3{font-size:23px;letter-spacing:-.02em;line-height:1.15;margin:0 0 10px}
.ac-spec{font-size:12px;font-weight:600;overflow-wrap:anywhere;color:#3f574b;margin:0 0 14px}
.ac-description{font-size:15px;line-height:1.5;margin:0 0 18px;color:var(--muted)}
.ac-card details{font-size:13px;line-height:1.5;margin-top:auto}
.ac-card summary{cursor:pointer;padding:6px 0;text-underline-offset:3px;text-decoration:underline;min-height:32px}
.ac-card details p{margin:8px 0 12px}
.ac-source{font-size:12px;text-decoration:underline;text-underline-offset:3px;color:var(--muted)}
.ac-empty{padding:30px;border:1px solid var(--line);background:var(--cream)}
.ac-help{background:var(--sage);padding:56px 0}
.ac-help-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.ac-help p,.ac-help li{color:var(--muted);font-size:16px;line-height:1.65}
.ac-help ol{padding-left:22px;margin:0 0 28px}
.ac-help li{padding-left:6px;margin-bottom:8px}
.ac-credit{font-size:12px!important;margin-top:28px;line-height:1.6}
.ac-reference-note{padding:22px 0 0;margin:26px 0 0;border-top:1px solid var(--line);color:var(--muted);font-size:13px;line-height:1.6}
.ac-promo{padding:40px 0;background:var(--sage)}
.ac-promo-inner{display:grid;grid-template-columns:160px 1fr auto;gap:30px;align-items:center}
.ac-promo img{display:block;background:#fff;width:160px;height:125px;object-fit:contain;padding:12px}
.ac-promo h2{font-size:29px;line-height:1.1;margin:0 0 8px;letter-spacing:-.025em}
.ac-promo p{font-size:15px;line-height:1.5;color:var(--muted);margin:0;max-width:580px}
.ac-home-link{margin-top:18px;font-size:14px}
.ac-home-link a{text-decoration:underline;text-underline-offset:4px}
.ac-dialog{padding:0;background:#fff;border:0;width:min(960px,calc(100vw - 32px));max-height:92dvh;color:var(--ink)}
.ac-dialog::backdrop{background:rgba(5,24,15,.76)}
.ac-dialog-head{padding:18px 24px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px}
:root body .ac-dialog-head h2{font-size:21px;margin:0;letter-spacing:-.02em;max-width:none}
.ac-dialog-close{background:var(--cream);border:1px solid var(--line);font:inherit;cursor:pointer;min-width:44px;min-height:44px;padding:10px;color:var(--ink)}
.ac-dialog-body{padding:24px}
.ac-dialog-body img{width:100%;height:min(45vh,430px);object-fit:scale-down;display:block}
.ac-dialog-body p{font-size:14px;line-height:1.55;max-width:780px}
.ac-dialog button:focus-visible,.ac-tabs button:focus-visible,.ac-expand:focus-visible,.ac-field input:focus-visible,.ac-field select:focus-visible,.ac-reset:focus-visible{outline:3px solid #8a6426;outline-offset:3px}
@media(max-width:1100px){.ac-hero-grid{gap:34px}.ac-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ac-promo-inner{grid-template-columns:125px 1fr}.ac-promo img{width:125px;height:110px}.ac-promo .btn{grid-column:2;justify-self:start}.ac-help-grid{gap:36px}}
@media(max-width:700px){.ac-hero{padding:28px 0 36px}.ac-hero-grid,.ac-help-grid{grid-template-columns:1fr;gap:26px}.ac-hero h1{font-size:40px}.ac-intro{font-size:16px}.ac-visual img{height:160px}.ac-grid{grid-template-columns:1fr}.ac-section{padding:36px 0 44px}.ac-tools{padding:15px}.ac-tabs{gap:7px}.ac-tabs button{padding:10px 12px;font-size:14px}.ac-search-row{grid-template-columns:1fr 1fr;gap:12px}.ac-field:first-child{grid-column:1/-1}.ac-reset{justify-self:start;align-self:end}.ac-card h3{font-size:24px}.ac-photo img{height:220px}.ac-help{padding:38px 0}.ac-promo-inner{grid-template-columns:90px 1fr;gap:18px}.ac-promo img{width:90px;height:105px;padding:8px}.ac-promo h2{font-size:25px}.ac-promo p{font-size:14px}.ac-promo .btn{grid-column:1/-1;justify-self:stretch}.ac-dialog-head{padding:14px}.ac-dialog-head h2{font-size:18px}.ac-dialog-body{padding:16px}.ac-dialog-body img{height:32vh}}
@media(max-width:700px){:root body .ac-dialog-head h2{font-size:18px}}
@media(max-width:700px){.ac-search-row{grid-template-columns:minmax(0,1fr) auto}.ac-field select{font-size:14px}.ac-field{min-width:0}}

/* Customer catalogue: category and plain-language part search. */
.ac-search-row{grid-template-columns:minmax(0,1fr) auto}
@media(max-width:700px){.ac-search-row{grid-template-columns:minmax(0,1fr) auto}.ac-field:first-child{grid-column:auto}.ac-field input{font-size:15px}}

/* Preserve original assembly geometry; increase tonal separation only. */
[data-accessories] img[src$="/cordless-cassette-assembly.png"]{filter:saturate(.35) brightness(.6) contrast(5)}
