@import url('https://fonts.googleapis.com/css2?family=EB+Garamond:wght@400;500;600&family=Open+Sans:wght@400;500;600;700&display=swap');
:root{--pink:#e61658;--ink:#302c33;--muted:#67636b;--paper:#f4f3f2;--line:#e3e1e0;--serif:'EB Garamond',Georgia,serif;--sans:'Open Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.75;background:white}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--pink);outline-offset:5px}img{max-width:100%;height:auto;display:block}button{cursor:pointer}h1,h2,h3,h4{font-family:var(--serif);font-weight:500;line-height:1.12;margin:0 0 24px}h1{font-size:clamp(46px,5.3vw,76px)}h2{font-size:clamp(36px,3.8vw,52px)}h3{font-size:30px}p{margin:0 0 22px}.wrap{width:min(1240px,calc(100% - 80px));margin:auto}.eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--pink);margin-bottom:18px}.small{font-size:13px;color:var(--muted)}.lead{font-size:19px;line-height:1.85}.muted{color:var(--muted)}.skip{position:absolute;left:16px;top:-100px;background:white;z-index:20;padding:10px}.skip:focus{top:10px}
.header{background:white;border-bottom:1px solid var(--line)}.header-inner{min-height:135px;display:flex;align-items:center;justify-content:space-between;gap:36px}.logo img{width:226px;height:auto}.nav{display:flex;gap:29px;align-items:center;font-size:14px}.nav a{padding:12px 0}.nav a:hover,.nav a[aria-current=page]{color:var(--pink)}.button,.nav .button{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:15px 25px;background:var(--pink);color:white;border:1px solid var(--pink);font-size:14px;font-weight:600;min-height:52px;transition:background .2s}.button:hover,.nav .button:hover{background:#c40e47;color:white}.button.light{background:white;border-color:white;color:var(--ink)}.button.outline{background:transparent;border-color:var(--line);color:var(--ink)}.button.outline:hover{border-color:var(--pink);color:var(--pink)}.text-link{display:inline-flex;align-items:center;gap:16px;border-bottom:1px solid var(--pink);padding:0 0 5px;font-size:14px}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);padding:8px 14px}
.hero{min-height:620px;position:relative;display:flex;align-items:center;overflow:hidden;background:#302c33}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,15,18,.81),rgba(16,15,18,.39) 53%,rgba(16,15,18,.04))}.hero-content{position:relative;z-index:1;color:white;padding-top:75px;padding-bottom:80px}.hero-content .eyebrow{color:white;opacity:.8}.hero-content h1{max-width:690px}.hero-content p{max-width:560px;font-size:19px;line-height:1.8}.hero-links{display:flex;align-items:center;gap:30px;margin-top:32px}.hero-links .text-link{border-color:#ffffff80}.intro{padding:100px 0}.intro-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:100px;align-items:start}.intro-grid h2{max-width:440px}.section{padding:90px 0}.section.soft{background:var(--paper)}.section-top{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:40px}.section-top h2{margin-bottom:0}.section-top p{margin-bottom:0}.brand-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 28px}.brand-card{display:block}.brand-photo{aspect-ratio:1.48;background:#eeedeb;overflow:hidden}.brand-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.brand-card:hover img{transform:scale(1.035)}.brand-card h3{font-size:31px;margin:22px 0 7px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand-card p{font-size:14px;color:var(--muted);margin:0}.brand-monogram{height:100%;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:42px;background:#e9e7e5}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px}.split img{width:100%;aspect-ratio:1.15;object-fit:cover}.split p{color:var(--muted)}.cta{padding:75px 0;background:var(--pink);color:white}.cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta h2{margin-bottom:12px}.cta p{margin:0}.footer{background:#302c33;color:white;padding:70px 0 22px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:50px}.footer .foot-logo{font-family:var(--serif);font-size:35px}.footer p,.footer a{font-size:14px;color:#d8d4da}.footer h3{font:600 13px var(--sans);letter-spacing:.1em;text-transform:uppercase;margin-bottom:22px}.footer a{display:block;margin:9px 0}.footer a:hover{color:white}.footer-bottom{border-top:1px solid #ffffff20;margin-top:45px;padding-top:20px;display:flex;justify-content:space-between;font-size:12px;color:#c6c0c9}
.crumbs{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--muted);padding:25px 0}.crumbs a:hover{color:var(--pink)}.page-head{padding:52px 0 64px}.page-head p{max-width:700px}.page-head h1{margin-bottom:25px}.brand-head{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center;padding:22px 0 66px}.brand-head h1{font-size:clamp(44px,4.6vw,67px)}.brand-head>img{width:100%;aspect-ratio:1.36;object-fit:cover}.brand-nav{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:30px;border-bottom:1px solid var(--line)}.brand-nav select{min-width:260px}.catalog-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:25px}.catalog-head h2{margin-bottom:0}.filters{display:grid;grid-template-columns:1fr 260px auto;gap:16px;margin:28px 0 35px;align-items:end}.field label{font-size:14px;font-weight:600;display:block;margin-bottom:7px}.field input,.field select,select{width:100%;padding:13px 15px;border:1px solid #c9c5c9;background:white;border-radius:0;color:var(--ink);height:52px}.search-field{position:relative}.search-field input{padding-right:45px}.search-field:after{content:'⌕';position:absolute;right:16px;bottom:6px;font-size:28px;pointer-events:none}.clear-filter{border:0;background:none;text-decoration:underline;font-size:14px;padding:15px 0}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 26px}.product-card{display:flex;flex-direction:column;min-width:0}.product-image{background:#f7f7f6;aspect-ratio:1.32;display:flex;align-items:center;justify-content:center;padding:25px;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:contain;mix-blend-mode:normal;transition:transform .3s}.product-card:hover .product-image img{transform:scale(1.035)}.product-card .kind{font-size:12px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);margin:19px 0 8px}.product-card h3,.product-card h4{font-size:29px;margin:0 0 9px}.product-card .card-link{color:var(--pink);font-size:14px;margin-top:auto}.no-image{font-family:var(--serif);font-size:25px;color:#6c6770;text-align:center}.product-card[hidden]{display:none}.empty{padding:45px;background:var(--paper);text-align:center;grid-column:1/-1}.pagination{display:flex;align-items:center;justify-content:center;gap:25px;margin-top:50px}.pagination button{border:1px solid var(--line);background:white;padding:11px 20px}.pagination button:disabled{opacity:.35;cursor:default}.product-layout{display:grid;grid-template-columns:1.12fr 1fr;gap:65px;padding:30px 0 70px}.product-visual{background:#f7f7f6;min-height:450px;display:flex;align-items:center;justify-content:center;padding:45px;position:sticky;top:30px;align-self:start}.product-visual img{width:100%;max-height:510px;object-fit:contain;mix-blend-mode:normal}.product-info h1{font-size:clamp(42px,4vw,61px)}.product-info .lead{font-size:18px}.product-info .button{margin:10px 0 20px}.product-type{font-size:13px;color:var(--muted);margin-bottom:20px}.product-meta{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.product-meta p{font-size:13px;margin-bottom:10px}.detail-nav{display:flex;gap:35px;border-bottom:1px solid var(--line);margin-bottom:45px}.detail-nav a{padding:19px 0;font-size:14px}.detail-nav a:first-child{border-bottom:2px solid var(--pink)}.detail-grid{display:grid;grid-template-columns:1fr 2fr;gap:80px}.specs{width:100%;border-collapse:collapse;font-size:14px}.specs th,.specs td{padding:16px 18px;vertical-align:top;text-align:left;border-bottom:1px solid var(--line)}.specs th{font-weight:500;width:42%;color:var(--muted)}.specs tr:nth-child(odd){background:#f7f6f5}.source-note{font-size:12px;color:var(--muted);margin-top:18px}.source-note a{text-decoration:underline}.downloads{margin-top:55px}.download{display:flex;justify-content:space-between;gap:25px;padding:18px 0;border-bottom:1px solid var(--line);font-size:14px}.content-page{max-width:830px;padding:30px 0 80px}.content-page h2{margin-top:45px}.content-page p{font-size:18px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-bottom:80px}.contact-card{background:var(--paper);padding:42px}.contact-card a{color:var(--pink)}.contact-card h3{margin-top:30px}.contact-card h3:first-child{margin-top:0}.contact-form{display:grid;gap:20px}.contact-form textarea{width:100%;border:1px solid #c9c5c9;padding:14px;min-height:150px}.notice{padding:15px 20px;background:var(--paper);font-size:13px}.link-row{display:flex;gap:25px;flex-wrap:wrap;margin-top:25px}.brand-search{max-width:450px;margin-bottom:35px}.brand-count{font-size:13px;color:var(--muted)}
@media(min-width:1500px){.hero{min-height:690px}}@media(max-width:1100px){.wrap{width:calc(100% - 48px)}.header-inner{min-height:110px;gap:20px}.logo img{width:185px}.nav{gap:18px;font-size:13px}.nav .button{padding:12px 15px}.intro-grid{gap:55px}.split{gap:45px}.brand-head{gap:40px}.product-layout{gap:40px}.detail-grid{gap:45px}.footer-grid{gap:28px}}
@media(max-width:800px){.header-inner{min-height:100px;position:relative}.logo img{width:175px}.menu-toggle{display:block}.nav{display:none;position:absolute;left:-24px;right:-24px;top:100%;background:white;z-index:10;padding:18px 25px 28px;box-shadow:0 10px 15px #0001}.nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.nav .button{margin-top:14px}.hero{min-height:600px}.hero:after{background:linear-gradient(90deg,#16151acc,#16151a44)}.hero-content{padding-top:65px;padding-bottom:65px}.hero-content h1{max-width:500px}.hero-content p{font-size:17px;max-width:450px}.intro,.section{padding:65px 0}.intro-grid,.split,.brand-head,.detail-grid,.contact-grid{grid-template-columns:1fr;gap:30px}.intro-grid h2{max-width:550px}.brand-grid,.product-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr);gap:40px}.brand-head{padding-top:20px}.brand-head>img{aspect-ratio:1.8}.product-layout{grid-template-columns:1fr;gap:35px}.product-visual{position:static;min-height:330px}.product-visual img{max-height:370px}.filters{grid-template-columns:1fr 220px}.clear-filter{grid-column:1/-1;text-align:left;padding:0}.cta .wrap{display:block}.cta .button{margin-top:28px}.contact-grid{gap:40px}.page-head{padding:30px 0 45px}}
@media(max-width:520px){.wrap{width:calc(100% - 36px)}.hero{min-height:620px}.hero-content h1{font-size:51px}.hero-content p{font-size:16px}.hero-links{align-items:flex-start;flex-direction:column;gap:22px}.section-top{display:block}.section-top .text-link{margin-top:20px}.brand-grid{grid-template-columns:1fr;gap:35px}.brand-card h3{margin-top:16px}.product-grid{gap:30px 16px}.product-image{padding:12px;aspect-ratio:1}.product-card h3,.product-card h4{font-size:24px;overflow-wrap:anywhere}.product-card .kind{font-size:12px}.brand-nav{display:block}.brand-nav .field{margin-top:16px}.filters{grid-template-columns:1fr}.clear-filter{grid-column:auto}.product-visual{padding:22px;min-height:280px}.detail-nav{gap:25px}.specs th,.specs td{padding:13px 10px;font-size:13px;overflow-wrap:anywhere}.footer-grid{grid-template-columns:1fr 1fr;gap:32px 20px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:10px}.contact-card{padding:28px}.cta{padding:55px 0}.pagination{gap:12px;font-size:13px}.pagination button{padding:10px 13px}}
.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}[hidden]{display:none!important}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.product-info,.detail-grid>div,.brand-head>div{min-width:0}.product-info h1,.specs td{overflow-wrap:anywhere}

/* Product photos retain the manufacturer’s original colours and contrast. */
.product-image,.product-visual{background:#fff;border:1px solid #edeaec}.product-background{max-width:780px}.product-background p{font-size:18px;line-height:1.85;margin:0 0 22px}.product-background p:last-child{margin-bottom:0}.product-story{padding-top:0}.detail-nav{flex-wrap:wrap}.brand-photo.packshot{background:#fff;border:1px solid #edeaec}.brand-photo.packshot img{object-fit:contain;padding:24px}.brand-head>img.packshot{object-fit:contain;background:#fff;padding:28px;border:1px solid #edeaec}

.product-image img.archive-photo,.product-visual img.archive-photo{width:auto;height:auto;max-width:150px;max-height:150px}.brand-photo{background:#fff}.brand-head>img{background:#fff}

.product-image img.roomy-packshot{object-fit:cover}.product-visual img.roomy-packshot{aspect-ratio:1.35;object-fit:cover}.product-background .source-note{font-size:13px;line-height:1.6;margin-top:28px}.detail-nav a{min-height:48px}
.brand-group+ .brand-group{margin-top:72px;padding-top:48px;border-top:1px solid var(--line)}.brand-group>h2{font-size:clamp(30px,3vw,42px);margin-bottom:30px}.brand-group[hidden]{display:none}

/* Restore the original contact strip and photographic page banners. */
.top-contact{background:var(--paper);border-bottom:1px solid var(--line);font-size:13px}
.top-contact .wrap{min-height:40px;display:flex;align-items:center;justify-content:flex-end;gap:28px}
.top-contact a:hover{color:var(--pink)}
.top-contact a{display:inline-flex;align-items:center;gap:8px}.contact-icon{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.product-info .pdf-download{display:flex;width:fit-content;margin-top:0;margin-bottom:18px}.product-info .pdf-download:hover{background:white;color:var(--pink)}
.nav{gap:22px;white-space:nowrap}.logo{flex-shrink:0}
.page-banner{position:relative;isolation:isolate;overflow:hidden;background:#302c33;color:white;padding:85px 0;min-height:340px;display:flex;align-items:center}
.page-banner>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center}
.page-banner:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#211d24cc,#211d246b 60%,#211d2433)}
.page-banner h1,.page-banner h2{max-width:820px;margin-bottom:0}
.demo-banner{min-height:390px}.demo-banner h2{margin-bottom:30px;max-width:800px}
.hero{flex-direction:column;align-items:stretch;justify-content:center}
.hero-content{padding-top:65px;padding-bottom:100px}
.hero-content h1{max-width:640px}.hero-content p{max-width:630px;font-size:18px;line-height:1.8}
.hero:after{background:linear-gradient(90deg,#151218df,#15121877 48%,#1512180d 78%);pointer-events:none}
.hero-controls{position:absolute;z-index:2;left:0;right:0;bottom:22px;display:flex;gap:12px;align-items:center;color:#fff;font-size:13px}
.hero-controls button{background:#211d246e;color:white;border:1px solid #ffffffaa;min-height:40px;min-width:40px;padding:6px 12px}
.hero-controls button:hover{background:#211d24}.hero-controls button:focus-visible{outline-color:white}
.home-assortment{background:var(--pink);color:white;padding:60px 0}
.home-assortment .section-top{margin:0;align-items:center}.home-assortment p{max-width:780px;margin-top:20px}
.home-assortment .button{flex-shrink:0}
.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin:35px 0 25px}
.content-page>p:first-child{font-size:19px;line-height:1.85}.content-page>h2:first-child{margin-top:0}
@media(max-width:1100px){.header-inner{position:relative}.menu-toggle{display:block}.nav{display:none;position:absolute;left:-24px;right:-24px;top:100%;background:white;z-index:10;padding:18px 25px 28px;box-shadow:0 10px 15px #0001}.nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.nav .button{margin-top:14px}}
@media(max-width:800px){.page-banner{min-height:300px;padding:65px 0}.page-banner h1{font-size:clamp(40px,7vw,60px)}.hero-content{padding-bottom:95px}.process-grid{grid-template-columns:1fr;gap:20px}.home-assortment .section-top{display:block}.home-assortment .button{margin-top:26px}.hero-content p{max-width:580px}.hero:after{background:linear-gradient(90deg,#151218da,#15121877 70%,#15121844)}}
@media(max-width:520px){.top-contact .wrap{justify-content:space-between;gap:12px;font-size:12px}.page-banner{min-height:260px;padding:48px 0}.hero-content h1{font-size:48px}.hero-content p{font-size:16px}.hero-content{padding-top:45px}.hero-links{gap:16px}.hero-controls{bottom:18px}.home-assortment{padding:45px 0}.nav{left:-18px;right:-18px}}

/* Original manufacturer photos, framed consistently around the visible product. */
.product-image{padding:28px;background:#fff}
.product-packshot{display:block;width:100%;height:100%;overflow:hidden;transition:transform .3s}
.product-card:hover .product-packshot{transform:scale(1.025)}
.product-visual .product-packshot{height:auto;aspect-ratio:1.3;max-height:510px}
.product-image .archive-photo,.product-visual .archive-photo{max-width:220px;height:auto;object-fit:contain}
@media(max-width:600px){.product-image{padding:18px}.product-visual .product-packshot{max-height:350px}}

.manufacturer-description{margin:1rem 0 1.5rem;line-height:1.7;max-width:42rem}.brand-pricelists{padding:1.5rem 0 2rem;border-bottom:1px solid var(--line,#e3e1e0);margin-bottom:1rem}.brand-pricelists h2{font-size:1.4rem;margin:0 0 1rem}.brand-pricelist{margin:0 0 1rem}.brand-pricelist .small{margin:.6rem 0 0}

/* Speaker series stay together, with installation products in their own section. */
.filters.has-series{grid-template-columns:minmax(180px,1fr) minmax(160px,220px) minmax(160px,220px) auto}
.catalog-family+ .catalog-family{margin-top:64px;padding-top:40px;border-top:1px solid var(--line)}
.catalog-family>h2{font-size:clamp(28px,3vw,38px);margin:0 0 28px}
.catalog-series+ .catalog-series{margin-top:38px}
.catalog-series>h3{font-size:25px;margin:0 0 20px;color:var(--pink)}
@media(max-width:1000px){.filters.has-series{grid-template-columns:1fr 1fr}.filters.has-series .search-field{grid-column:1/-1}.filters.has-series .clear-filter{grid-column:1/-1;text-align:left;padding:0}}
@media(max-width:560px){.filters.has-series{grid-template-columns:1fr}.catalog-family+ .catalog-family{margin-top:42px;padding-top:28px}}

.original-website-description{margin:1rem 0 1.5rem;line-height:1.7;max-width:42rem}

/* Original finish photographs, grouped under the same speaker model. */
.finish-count{display:block;color:var(--muted);font-size:12px;margin:0 0 10px}
.finish-media{position:sticky;top:30px;align-self:start;min-width:0}
.finish-media .product-visual{position:static;width:100%;aspect-ratio:1.15;min-height:0}
.finish-media .product-visual img,.finish-media .product-visual svg{height:100%;max-height:510px;width:100%;object-fit:contain}
.finish-caption{font-size:13px;color:var(--muted);text-align:center;margin:13px 0 0}
.finish-picker{margin:26px 0 24px;padding-top:22px;border-top:1px solid var(--line)}
.finish-picker .field{max-width:440px}
.finish-choices{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px}
.finish-choice{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:8px;width:108px;min-height:112px;padding:10px 7px;border:1px solid var(--line);background:white;color:var(--ink);font-size:11px;line-height:1.4;text-align:center}
.finish-choice img{width:72px;height:66px;object-fit:contain}
.finish-choice[aria-pressed=true]{border:2px solid var(--pink);padding:9px 6px;background:#fff8fa}
.finish-choice:hover{border-color:var(--pink)}
.finish-choice span{overflow-wrap:anywhere}
.finish-thumb-empty{height:66px;display:grid;place-items:center;color:var(--muted);font-size:22px}
.finish-note{margin:14px 0 0;max-width:440px}
.finish-photo-missing{text-align:center;color:var(--muted);font-size:15px;max-width:290px;margin:0}
.finish-fallback{margin:20px 0;font-size:14px}.finish-fallback a{text-decoration:underline}
@media(max-width:800px){.finish-media{position:static}.finish-media .product-visual{aspect-ratio:1.4;max-height:440px}.finish-media .product-visual img,.finish-media .product-visual svg{max-height:350px}}
@media(max-width:520px){.finish-choice{width:calc((100% - 20px)/3);max-width:130px}.finish-media .product-visual{aspect-ratio:1.2}.finish-picker{margin-top:20px}}
