/* FS Sound Catalog Skin v0.1.1 */
body.fs-catalog-skin {
  --fs-bg: oklch(0.145 0.018 238);
  --fs-surface: oklch(0.19 0.024 238);
  --fs-surface-2: oklch(0.225 0.028 238);
  --fs-text: oklch(0.965 0.012 85);
  --fs-muted: oklch(0.75 0.018 238);
  --fs-primary: oklch(0.73 0.145 222);
  --fs-primary-dark: oklch(0.52 0.14 224);
  --fs-champagne: oklch(0.82 0.08 78);
  --fs-border: oklch(0.95 0.01 238 / 0.13);
  --fs-border-strong: oklch(0.95 0.01 238 / 0.25);
  --fs-shadow: 0 24px 70px oklch(0.04 0.02 238 / 0.3);
  --fs-radius: 1.5rem;
  --fs-sans: "Avenir Next", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  --fs-serif: Georgia, "Times New Roman", serif;
  background: var(--fs-bg);
  color: var(--fs-text);
  font-family: var(--fs-sans);
}

.fs-catalog-skin #top-bar-wrap,
.fs-catalog-skin #site-header,
.fs-catalog-skin #footer-widgets,
.fs-catalog-skin #footer-bottom {
  border-color: var(--fs-border);
  background: var(--fs-bg);
  color: var(--fs-text);
}

.fs-catalog-skin #site-header { box-shadow: none; }
.fs-catalog-skin #site-logo .fs-catalog-logo-link {
  display: inline-flex;
  width: min(11.75rem, 100%);
  height: 100%;
  align-items: center;
}
.fs-catalog-skin #site-logo .fs-catalog-logo {
  display: block;
  width: 100%;
  height: auto;
  max-height: 3.25rem;
  object-fit: contain;
}
.fs-catalog-skin #site-logo #site-logo-inner a,
.fs-catalog-skin #site-navigation-wrap .dropdown-menu > li > a,
.fs-catalog-skin .oceanwp-mobile-menu-icon a,
.fs-catalog-skin #footer-widgets a,
.fs-catalog-skin #footer-bottom a { color: var(--fs-text); }
.fs-catalog-skin #site-navigation-wrap .dropdown-menu > li > a:hover,
.fs-catalog-skin #site-navigation-wrap .dropdown-menu > .current-menu-item > a,
.fs-catalog-skin #footer-widgets a:hover { color: var(--fs-primary); }

.fs-catalog-skin .page-header {
  border: 0;
  background: var(--fs-surface);
}
.fs-catalog-skin .page-header-title,
.fs-catalog-skin .site-breadcrumbs,
.fs-catalog-skin .site-breadcrumbs a { color: var(--fs-text); }
.fs-catalog-skin .page-header-title {
  font-family: var(--fs-serif);
  font-weight: 400;
  letter-spacing: -0.03em;
}

.fs-catalog-skin #main,
.fs-catalog-skin #content-wrap { background: var(--fs-bg); }
.fs-catalog-skin #content-wrap { padding-top: clamp(2rem, 5vw, 5rem); }
.fs-catalog-skin #primary { border: 0; }
.fs-catalog-skin #right-sidebar,
.fs-catalog-skin #left-sidebar {
  border-color: var(--fs-border);
  color: var(--fs-muted);
}
.fs-catalog-skin .sidebar-box .widget-title {
  border-color: var(--fs-primary);
  color: var(--fs-text);
  font-weight: 800;
  letter-spacing: 0.12em;
}
.fs-catalog-skin .widget_product_categories a,
.fs-catalog-skin .widget_layered_nav a { color: var(--fs-muted); }
.fs-catalog-skin .widget_product_categories a:hover,
.fs-catalog-skin .widget_layered_nav a:hover { color: var(--fs-primary); }

.fs-catalog-hero {
  position: relative;
  overflow: hidden;
  margin: 0 0 clamp(2.5rem, 6vw, 5rem);
  padding: clamp(2rem, 5vw, 4.5rem);
  border: 1px solid var(--fs-border);
  border-radius: calc(var(--fs-radius) + .4rem);
  background: linear-gradient(135deg, var(--fs-surface-2), var(--fs-surface));
  box-shadow: var(--fs-shadow);
  isolation: isolate;
}
.fs-catalog-hero::after {
  position: absolute;
  z-index: -1;
  right: -9rem;
  bottom: -12rem;
  width: 28rem;
  height: 28rem;
  border: 1px solid var(--fs-border-strong);
  border-radius: 50%;
  content: "";
}
.fs-catalog-eyebrow {
  margin: 0 0 1rem;
  color: var(--fs-primary);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.fs-catalog-hero h2,
.fs-catalog-cta h2 {
  margin: 0 0 1.25rem;
  color: var(--fs-text);
  font-family: var(--fs-serif);
  font-size: clamp(2.45rem, 6vw, 4.75rem);
  font-weight: 400;
  letter-spacing: -.035em;
  line-height: 1;
}
.fs-catalog-hero > p:not(.fs-catalog-eyebrow),
.fs-catalog-cta p:not(.fs-catalog-eyebrow) {
  max-width: 43rem;
  color: var(--fs-muted);
  font-size: 1.05rem;
}
.fs-catalog-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.75rem; }
.fs-catalog-button,
.fs-catalog-skin a.button,
.fs-catalog-skin button.button,
.fs-catalog-skin .woocommerce button.button,
.fs-catalog-skin .woocommerce input.button {
  display: inline-flex;
  min-height: 3.1rem;
  align-items: center;
  justify-content: center;
  padding: .75rem 1.3rem;
  border: 1px solid var(--fs-primary);
  border-radius: 999px;
  background: var(--fs-primary);
  color: oklch(0.13 0.025 238);
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .07em;
  line-height: 1.2;
  text-transform: uppercase;
  transition: transform 160ms ease, background 160ms ease, box-shadow 160ms ease;
}
.fs-catalog-button:hover,
.fs-catalog-skin a.button:hover,
.fs-catalog-skin button.button:hover,
.fs-catalog-skin .woocommerce button.button:hover,
.fs-catalog-skin .woocommerce input.button:hover {
  background: oklch(0.8 0.15 222);
  color: oklch(0.13 0.025 238);
  box-shadow: 0 10px 30px oklch(0.73 0.145 222 / .2);
  transform: translateY(-2px);
}
.fs-catalog-button--ghost {
  border-color: var(--fs-border-strong);
  background: transparent;
  color: var(--fs-text);
}
.fs-catalog-button--ghost:hover { border-color: var(--fs-primary); background: var(--fs-surface-2); color: var(--fs-text); }

.fs-catalog-skin .woocommerce-result-count { color: var(--fs-muted); }
.fs-catalog-skin .woocommerce-ordering .orderby {
  min-height: 2.9rem;
  border-color: var(--fs-border-strong);
  border-radius: 999px;
  background: var(--fs-surface);
  color: var(--fs-text);
}
.fs-catalog-skin .woocommerce ul.products { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.fs-catalog-skin .woocommerce ul.products::before,
.fs-catalog-skin .woocommerce ul.products::after { display: none; }
.fs-catalog-skin .woocommerce ul.products li.product {
  position: relative;
  float: none;
  width: auto;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--fs-border);
  border-radius: var(--fs-radius);
  background: var(--fs-surface);
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}
.fs-catalog-skin .woocommerce ul.products li.product:hover {
  border-color: var(--fs-border-strong);
  box-shadow: 0 18px 45px oklch(0.04 0.02 238 / .24);
  transform: translateY(-4px);
}
.fs-catalog-skin .woocommerce ul.products li.product .woo-entry-inner { padding: 0 1.25rem 1.5rem; }
.fs-catalog-skin .woocommerce ul.products li.product .woo-entry-image { margin: 0 -1.25rem 1.25rem; background: oklch(0.97 0.01 85); }
.fs-catalog-skin .woocommerce ul.products li.product .woo-entry-image img,
.fs-catalog-skin .woocommerce ul.products li.product > a img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: contain;
  transition: transform 360ms ease;
}
.fs-catalog-skin .woocommerce ul.products li.product:hover img { transform: scale(1.025); }
.fs-catalog-skin .woocommerce ul.products li.product .woocommerce-loop-product__title,
.fs-catalog-skin .woocommerce ul.products li.product .title {
  color: var(--fs-text);
  font-family: var(--fs-serif);
  font-size: clamp(1.35rem, 2vw, 1.75rem);
  font-weight: 400;
  line-height: 1.16;
}
.fs-catalog-skin .woocommerce ul.products li.product .price { color: var(--fs-champagne); }
.fs-catalog-skin .woocommerce-pagination ul.page-numbers { border: 0; }
.fs-catalog-skin .woocommerce-pagination ul.page-numbers li { border: 0; }
.fs-catalog-skin .woocommerce-pagination .page-numbers a,
.fs-catalog-skin .woocommerce-pagination .page-numbers span {
  border: 1px solid var(--fs-border);
  border-radius: 999px;
  background: var(--fs-surface);
  color: var(--fs-text);
}
.fs-catalog-skin .woocommerce-pagination .page-numbers .current { border-color: var(--fs-primary); background: var(--fs-primary); color: var(--fs-bg); }

.fs-catalog-skin div.product { color: var(--fs-text); }
.fs-catalog-skin div.product .product_title {
  color: var(--fs-text);
  font-family: var(--fs-serif);
  font-size: clamp(2.6rem, 5vw, 4.8rem);
  font-weight: 400;
  letter-spacing: -.035em;
  line-height: 1;
}
.fs-catalog-skin div.product .summary .price { color: var(--fs-champagne); }
.fs-catalog-skin div.product .woocommerce-product-gallery {
  overflow: hidden;
  border: 1px solid var(--fs-border);
  border-radius: var(--fs-radius);
  background: oklch(0.97 0.01 85);
}
.fs-catalog-skin div.product .summary {
  padding: clamp(1rem, 4vw, 2.5rem);
  border: 1px solid var(--fs-border);
  border-radius: var(--fs-radius);
  background: var(--fs-surface);
}
.fs-catalog-skin div.product .product_meta,
.fs-catalog-skin div.product .product_meta a { color: var(--fs-muted); }
.fs-catalog-skin .woocommerce-tabs { margin-top: 4rem; }
.fs-catalog-skin .woocommerce-tabs ul.tabs { border-color: var(--fs-border); }
.fs-catalog-skin .woocommerce-tabs ul.tabs li a { color: var(--fs-muted); }
.fs-catalog-skin .woocommerce-tabs ul.tabs li.active a { border-color: var(--fs-primary); color: var(--fs-text); }
.fs-catalog-skin .woocommerce-tabs .panel,
.fs-catalog-skin .related.products,
.fs-catalog-skin .upsells.products { color: var(--fs-muted); }
.fs-catalog-skin.single-product .woocommerce-Tabs-panel table {
  display: block;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.fs-catalog-skin .woocommerce-tabs h2,
.fs-catalog-skin .related.products > h2,
.fs-catalog-skin .upsells.products > h2 {
  color: var(--fs-text);
  font-family: var(--fs-serif);
  font-size: clamp(2rem, 4vw, 3.2rem);
  font-weight: 400;
}

.fs-catalog-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 2rem;
  margin: clamp(4rem, 8vw, 7rem) 0 2rem;
  padding: clamp(2rem, 5vw, 4rem);
  border-radius: calc(var(--fs-radius) + .4rem);
  background: var(--fs-champagne);
  color: oklch(0.16 0.025 78);
}
.fs-catalog-cta h2 { max-width: 13ch; color: oklch(0.16 0.025 78); }
.fs-catalog-cta p:not(.fs-catalog-eyebrow) { color: oklch(0.32 0.025 78); }
.fs-catalog-cta .fs-catalog-eyebrow { color: var(--fs-primary-dark); }
.fs-catalog-cta .fs-catalog-button { background: var(--fs-bg); color: var(--fs-text); }

.fs-catalog-version {
  position: fixed;
  z-index: 20;
  right: .6rem;
  bottom: .45rem;
  padding: .25rem .45rem;
  border: 1px solid var(--fs-border);
  border-radius: .35rem;
  background: oklch(0.12 0.02 238 / .88);
  color: var(--fs-muted);
  font-size: .62rem;
  line-height: 1;
  backdrop-filter: blur(.5rem);
}

.fs-catalog-skin :focus-visible { outline: 3px solid var(--fs-primary); outline-offset: 4px; }

@media (max-width: 959px) {
  .fs-catalog-skin .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fs-catalog-cta { grid-template-columns: 1fr; align-items: start; }
}

@media (max-width: 579px) {
  .fs-catalog-skin #content-wrap { padding-top: 1.5rem; }
  .fs-catalog-hero { padding: 1.5rem; border-radius: var(--fs-radius); }
  .fs-catalog-actions { flex-direction: column; }
  .fs-catalog-actions .fs-catalog-button { width: 100%; }
  .fs-catalog-skin .woocommerce ul.products { grid-template-columns: 1fr; }
  .fs-catalog-skin .woocommerce ul.products li.product .woo-entry-inner { padding-inline: 1rem; }
  .fs-catalog-skin .woocommerce ul.products li.product .woo-entry-image { margin-inline: -1rem; }
  .fs-catalog-skin div.product .summary { margin-top: 1rem; padding: 1.25rem; }
  .fs-catalog-cta { padding: 1.5rem; border-radius: var(--fs-radius); }
}

@media (prefers-reduced-motion: reduce) {
  .fs-catalog-skin *,
  .fs-catalog-skin *::before,
  .fs-catalog-skin *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}
