
/* ── Works with: what Volumio plays and plays to, drawn with the product pages' components ── */
.ww-hero .hero__name{max-width:11em;font-size:clamp(2.6rem,1.6rem + 4vw,4.75rem);line-height:1}

/* Hero: the logos in two rows, streaming services drifting left and systems drifting right, optically balanced by height (--h).
   Each track holds its list four times and moves by a quarter of its width, so the loop has no seam even on ultra-wide screens;
   the copies are aria-hidden with empty alts, so readers and crawlers get each name once. Hover pauses both; reduced motion lays them out still */
.ww-marquees{--gap:clamp(44px,5vw,72px);margin:clamp(40px,6vw,72px) 0 0}
.ww-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.ww-marquee + .ww-marquee{margin-top:clamp(4px,1vw,12px)}
.ww-marquee__track{display:flex;width:max-content;animation:ww-drift 48s linear infinite}
.ww-marquee--rev .ww-marquee__track{animation-direction:reverse;animation-duration:54s}
.ww-marquees:hover .ww-marquee__track{animation-play-state:paused}
.ww-logos{display:flex;align-items:center;gap:var(--gap);margin:0;padding:12px var(--gap) 12px 0;list-style:none}
.ww-logos li{display:flex;align-items:flex-start;gap:6px}
.ww-logos img{display:block;width:auto;height:var(--h);max-width:none}
.ww-logos .ww-star{width:10px;height:10px;margin-top:-4px}
.ww-hero .ww-legend{margin:16px auto 0;color:var(--paper-ink-2)}
.ww-hero .ww-legend a{color:var(--paper-ink);text-decoration-color:#276b4e}
@keyframes ww-drift{to{transform:translate3d(-25%,0,0)}}
@media (max-width:600px){.ww-marquees{--gap:36px}.ww-marquee__track{animation-duration:36s}.ww-marquee--rev .ww-marquee__track{animation-duration:40s}.ww-logos img{height:calc(var(--h) * .8)}}
@media (prefers-reduced-motion:reduce){
  .ww-marquees{max-width:calc(var(--wrap) + 2 * var(--gutter));margin-inline:auto;padding-inline:var(--gutter);box-sizing:border-box}
  .ww-marquee{-webkit-mask-image:none;mask-image:none}
  .ww-marquee__track{animation:none;width:auto}
  .ww-logos{flex-wrap:wrap;gap:24px var(--gap);padding:0}
  .ww-logos[aria-hidden]{display:none}
}

/* What works: the tech specs grid, with the name first and a star for Premium on your own hardware (the star the get-started chips use) */
.ww-star{flex:none;width:16px;height:16px;color:var(--green-hi)}
.ww-hero .ww-star{color:#276b4e}
.ww-legend{display:flex;align-items:center;gap:10px;margin:0 0 clamp(24px,3vw,32px);font-size:1rem;line-height:1.375rem;color:var(--ink-2)}
.ww-legend a,.ww-qs a{font-weight:600;color:var(--ink);text-decoration:underline;text-decoration-color:var(--green);text-underline-offset:3px}
.ww-grid .spec dt{font-size:1.0625rem;line-height:1.5rem;font-weight:600;color:var(--ink)}
.ww-grid .spec dt .ww-star{width:12px;height:12px;margin:0 0 3px 6px;vertical-align:middle}
.ww-grid .spec dd{font-size:1rem;line-height:1.375rem;color:var(--ink-2);font-variant-numeric:normal}
.ww-more{margin:clamp(28px,3.5vw,40px) 0 0;max-width:40em;font-size:1.0625rem;line-height:1.625rem;color:var(--ink-2)}

/* Built into the devices: the four streamers in the family row */
.ww-family{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none;margin:0}
.ww-family img{filter:none;mix-blend-mode:multiply}
@media (max-width:1000px){.ww-family{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.ww-family{grid-template-columns:minmax(0,1fr)}}
.ww-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:clamp(28px,3.5vw,40px)}
.ww-diy{margin:20px 0 0;font-size:1rem;line-height:1.5rem;color:var(--paper-ink-2)}
.ww-diy a{font-weight:600;color:var(--paper-ink);text-decoration:underline;text-decoration-color:#276b4e;text-underline-offset:3px}

/* Questions */
.ww-qs{max-width:880px;border-top:1px solid var(--hairline)}
.ww-q{border-bottom:1px solid var(--hairline)}
.ww-q summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:16px 0;font-size:1.1875rem;line-height:1.75rem;font-weight:600;color:var(--ink);cursor:pointer;list-style:none}
.ww-q summary::-webkit-details-marker{display:none}
.ww-q summary svg{flex:none;width:22px;height:22px;color:var(--ink-2);transition:transform var(--dur-fast) var(--ease)}
.ww-q[open] summary svg{transform:rotate(180deg)}
.ww-q summary:focus-visible{outline:2px solid var(--green);outline-offset:4px;border-radius:6px}
.ww-q p{margin:0 0 24px;max-width:40em;font-size:1.0625rem;line-height:1.6875rem;color:var(--ink-2)}
@media (prefers-reduced-motion:reduce){.ww-q summary svg{transition:none}}
