/*
Theme Name: 悅色交友
Theme URI: https://69sex.net/
Author: 沐思
Author URI: https://muse-imc.com
Description: A reusable WordPress + WooCommerce catalog theme for 69sex-style editorial showcase sites. It preserves price visibility, removes front-end cart flow, supports homepage hero slides, booking CTA settings, footer editable content, WooCommerce catalog filters, and blog/sidebar layouts.
Version: 4.1.7
Requires at least: 6.4
Tested up to: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: 69sex-editorial-noir
Tags: dark, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready, ecommerce
*/

/*
Design note for this file:
整體樣式維持 editorial noir 調性，但菜單頁與商品頁需更靠近 React Demo 的高密度資訊節奏：大圖、窄欄資料、明確對比與快速操作。
*/
:root {
  --bg: #0b0910;
  --bg-soft: #14111a;
  --panel: #17131d;
  --panel-strong: #201928;
  --line: rgba(255, 255, 255, 0.1);
  --line-strong: rgba(216, 176, 94, 0.34);
  --text: #f7f1e8;
  --muted: #b8a99a;
  --gold: #d8b05e;
  --gold-soft: rgba(216, 176, 94, 0.16);
  --shadow-lg: 0 26px 70px rgba(0, 0, 0, 0.32);
  --radius-lg: 28px;
  --radius-md: 20px;
  --radius-sm: 14px;
  --container: min(1240px, calc(100vw - 40px));
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  background:
    radial-gradient(circle at top left, rgba(216, 176, 94, 0.08), transparent 32%),
    linear-gradient(180deg, #09070d 0%, #0b0910 42%, #130f17 100%);
  color: var(--text);
  font-family: "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;
  line-height: 1.6;
}

a {
  color: inherit;
  text-decoration: none;
}

img {
  max-width: 100%;
  display: block;
}

.container {
  width: var(--container);
  margin: 0 auto;
}

.section-space {
  padding: 72px 0;
}

.section-space--tight-top {
  padding-top: 40px;
}

.editorial-panel {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.02));
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  backdrop-filter: blur(14px);
}

.eyebrow,
.product-kicker,
.detail-label,
.metric-label,
.summary-identity-item span,
.shop-intro-panel__stats span,
.product-info-strip__item span,
.summary-spec-table th,
.product-code {
  font-size: 0.74rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--muted);
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 22px;
  border-radius: 999px;
  border: 1px solid transparent;
  font-weight: 700;
  transition: transform .2s ease, border-color .2s ease, background-color .2s ease;
}

.button:hover {
  transform: translateY(-2px);
}

.button-primary {
  background: linear-gradient(135deg, #f0d089 0%, #c9923e 100%);
  color: #17120d;
  box-shadow: 0 12px 28px rgba(216, 176, 94, 0.26);
}

.button-link {
  border-color: var(--line);
  background: rgba(255,255,255,0.03);
  color: var(--text);
}

.text-link {
  font-weight: 700;
  color: var(--gold);
}

.product-chip,
.tag-pill,
.toolbar-chip,
.pill-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,0.03);
  color: var(--text);
  font-size: 0.84rem;
}

.product-chip--gold,
.toolbar-chip--alt,
.pill-count {
  border-color: var(--line-strong);
  background: var(--gold-soft);
  color: #f5d89d;
}

.product-chip--soft {
  background: rgba(11, 9, 16, 0.56);
}

.tag-pill--muted {
  color: var(--muted);
}

.flag-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: rgba(11,9,16,0.58);
  border: 1px solid rgba(255,255,255,0.16);
  font-size: 1.1rem;
}

.page-hero,
.hero-banner {
  padding: 84px 0 28px;
}

.page-hero h1,
.hero-banner h1,
.shop-intro-panel h2,
.product-story-card h2,
.section-heading h2,
.product-summary-top--detail h2 {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 600;
  line-height: 1.05;
  letter-spacing: -0.02em;
}

.page-hero h1,
.hero-banner h1 {
  font-size: clamp(2.8rem, 6vw, 5rem);
}

.page-hero p,
.hero-banner p,
.product-content-intro,
.prose-editorial,
.stat-card p,
.empty-panel p,
.toolbar-left p {
  color: #ddd1c5;
}

.shop-section--demo {
  position: relative;
}

.shop-intro-panel {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(220px, 0.7fr);
  gap: 24px;
  padding: 28px 30px;
  margin-bottom: 20px;
}

.shop-intro-panel__stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.shop-intro-panel__stats div {
  padding: 18px 20px;
  border-radius: var(--radius-md);
  background: rgba(255,255,255,0.03);
  border: 1px solid var(--line);
}

.shop-intro-panel__stats strong {
  display: block;
  margin-top: 6px;
  font-size: 2rem;
  font-family: Georgia, "Times New Roman", serif;
}

.shop-filter-bar {
  padding: 20px 22px;
  margin-bottom: 20px;
}

.filter-form {
  display: grid;
  gap: 16px;
}

.filter-form--toolbar {
  grid-template-columns: repeat(4, minmax(0, 1fr)) auto;
  align-items: end;
}

.filter-form label {
  display: grid;
  gap: 8px;
}

.filter-form select {
  width: 100%;
  min-height: 48px;
  border-radius: 14px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,0.04);
  color: var(--text);
  padding: 0 14px;
}

.filter-actions,
.filter-actions--toolbar {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.shop-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}

.shop-toolbar--demo {
  padding: 0 4px;
}

.toolbar-left {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.toolbar-left p {
  margin: 0;
  font-size: 1rem;
}

.active-filter-list {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 18px;
}

.product-grid {
  display: grid;
  gap: 22px;
}

.product-grid.three-cols {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.product-grid.four-cols,
.product-grid--menu {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.product-card {
  display: grid;
  background: rgba(18,14,22,0.88);
}

.product-card--demo {
  border-radius: 26px;
}

.product-card-media-link {
  display: block;
}

.product-media {
  position: relative;
  min-height: 340px;
  overflow: hidden;
  border-radius: 26px 26px 0 0;
  background: linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0.02));
}

.product-media--portrait {
  aspect-ratio: 0.78;
  min-height: auto;
}

.product-media--stage {
  aspect-ratio: 1.02;
  min-height: auto;
  border-radius: 22px;
}

.product-cover-image,
.gallery-main-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.product-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(8,6,12,0.08) 12%, rgba(8,6,12,0.2) 44%, rgba(8,6,12,0.86) 100%);
}

.product-media-top,
.product-media-bottom {
  position: absolute;
  inset-inline: 18px;
  z-index: 2;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.product-media-top {
  top: 18px;
}

.product-media-bottom {
  bottom: 18px;
  align-items: flex-end;
}

.product-media-bottom--stage {
  bottom: 22px;
}

.product-card-title {
  margin: 6px 0 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.7rem;
  line-height: 1.02;
}

.product-price,
.single-price {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.55rem;
  color: #f7dfae;
  white-space: nowrap;
}

.product-card-body {
  display: grid;
  gap: 16px;
  padding: 18px;
}

.product-card-meta,
.product-summary-top,
.tag-list,
.gallery-thumbs,
.single-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.product-card-meta--stacked {
  gap: 8px;
}

.product-info-strip,
.summary-identity-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.summary-identity-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.product-info-strip__item,
.summary-identity-item {
  padding: 14px 16px;
  border-radius: 16px;
  background: rgba(255,255,255,0.03);
  border: 1px solid var(--line);
}

.product-info-strip__item strong,
.summary-identity-item strong {
  display: block;
  margin-top: 4px;
  font-size: 1rem;
}

.metrics-grid {
  display: grid;
  gap: 10px;
}

.metrics-grid--three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.metrics-grid--four,
.metrics-grid--detail {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.metric-card {
  padding: 14px 12px;
  border-radius: 16px;
  background: rgba(255,255,255,0.03);
  border: 1px solid var(--line);
}

.metric-value {
  margin-top: 6px;
  font-size: 1rem;
  font-weight: 700;
  color: var(--text);
}

.detail-pair-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.detail-panel,
.detail-block,
.summary-table-wrap,
.product-story-card,
.product-stage-card,
.product-summary-card--demo {
  padding: 18px;
  border-radius: 22px;
  background: rgba(255,255,255,0.02);
  border: 1px solid var(--line);
}

.detail-pair-grid--compact .detail-panel {
  padding: 14px 16px;
}

.detail-panel p,
.detail-block p {
  margin: 6px 0 0;
}

.product-detail-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(340px, 0.75fr);
  gap: 24px;
}

.product-detail-layout--demo {
  align-items: start;
}

.product-gallery-column,
.product-summary-column {
  display: grid;
  gap: 20px;
}

.product-stage-head,
.product-summary-top--detail {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 16px;
}

.gallery-thumbs--stage {
  margin-top: 14px;
}

.gallery-thumb {
  width: 86px;
  height: 104px;
  padding: 0;
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid transparent;
  background: transparent;
  cursor: pointer;
  opacity: 0.7;
  transition: opacity .2s ease, border-color .2s ease, transform .2s ease;
}

.gallery-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gallery-thumb:hover,
.gallery-thumb.is-active {
  opacity: 1;
  transform: translateY(-2px);
  border-color: var(--line-strong);
}

.product-story-card__head {
  margin-bottom: 12px;
}

.prose-editorial > *:first-child {
  margin-top: 0;
}

.prose-editorial > *:last-child {
  margin-bottom: 0;
}

.summary-spec-table {
  width: 100%;
  border-collapse: collapse;
}

.summary-spec-table th,
.summary-spec-table td {
  padding: 13px 0;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  text-align: left;
}

.summary-spec-table td {
  font-weight: 700;
  color: var(--text);
}

.single-actions--stacked {
  display: grid;
  gap: 12px;
}

.pagination-wrap {
  margin-top: 26px;
}

.pagination-wrap .nav-links {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.pagination-wrap .page-numbers {
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,0.03);
}

.pagination-wrap .page-numbers.current {
  background: var(--gold-soft);
  border-color: var(--line-strong);
  color: #f7dfae;
}

.empty-panel {
  padding: 30px;
}

.empty-panel--large {
  text-align: center;
}

@media (max-width: 1180px) {
  .product-grid.four-cols,
  .product-grid--menu {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .filter-form--toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .product-detail-layout,
  .shop-intro-panel {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 820px) {
  .section-space {
    padding: 56px 0;
  }

  .product-grid.three-cols,
  .product-grid.four-cols,
  .product-grid--menu,
  .metrics-grid--detail,
  .metrics-grid--four,
  .product-info-strip,
  .summary-identity-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .shop-toolbar,
  .product-stage-head,
  .product-summary-top--detail,
  .product-media-bottom {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 640px) {
  :root {
    --container: min(100vw - 24px, 100%);
  }

  .page-hero,
  .hero-banner {
    padding-top: 64px;
  }

  .product-grid.three-cols,
  .product-grid.four-cols,
  .product-grid--menu,
  .metrics-grid--detail,
  .metrics-grid--four,
  .metrics-grid--three,
  .detail-pair-grid,
  .product-info-strip,
  .summary-identity-grid,
  .shop-intro-panel__stats,
  .filter-form--toolbar {
    grid-template-columns: 1fr;
  }

  .product-card-body,
  .shop-filter-bar,
  .shop-intro-panel,
  .product-stage-card,
  .product-summary-card--demo,
  .product-story-card,
  .detail-block,
  .summary-table-wrap {
    padding: 16px;
  }

  .gallery-thumb {
    width: 72px;
    height: 88px;
  }
}

/*
Design note for this block:
以下樣式專門把 /shop 與 /product 收斂到 Demo 偏好的展示式版面：左側篩選牆、右側結果牆、卡片資訊分層，以及單頁右欄決策卡。
*/
.shop-shell,
.shop-layout--editorial {
  display: grid;
  grid-template-columns: minmax(260px, 300px) minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}

.shop-sidebar,
.shop-filter-sidebar {
  position: sticky;
  top: 32px;
}

.shop-filter-sidebar .editorial-panel,
.shop-sidebar .editorial-panel {
  padding: 24px;
}

.shop-filter-stack {
  display: grid;
  gap: 18px;
}

.shop-filter-stack .form-row,
.shop-filter-stack .filter-group {
  display: grid;
  gap: 10px;
}

.shop-filter-stack label,
.shop-filter-stack .filter-label {
  font-size: 0.72rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--muted);
}

.shop-filter-stack input,
.shop-filter-stack select,
.shop-filter-stack .search-field,
.shop-filter-stack .filter-control {
  width: 100%;
  min-height: 46px;
  padding: 0 14px;
  border-radius: 16px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,0.04);
  color: var(--text);
}

.shop-filter-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.shop-results-column {
  min-width: 0;
}

.shop-results-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: end;
  padding: 24px 28px;
  margin-bottom: 20px;
}

.shop-results-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
}

.shop-results-head .woocommerce-ordering,
.shop-results-head .catalog-ordering {
  margin: 0;
}

.shop-results-head select {
  min-height: 46px;
  padding: 0 16px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,0.04);
  color: var(--text);
}

.product-grid--editorial,
.product-grid.four-cols,
.product-grid.three-cols {
  align-items: stretch;
}

.product-card--editorial,
.product-card--dense,
.product-grid .product-card {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.product-card__media,
.product-media--card {
  position: relative;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  border-radius: calc(var(--radius-lg) - 8px);
}

.product-card__media img,
.product-media--card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.product-card__body,
.product-card__content {
  display: grid;
  gap: 16px;
  padding: 20px 20px 3px;
}

.product-card__header,
.product-card__title-row {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 16px;
}

.product-card__title,
.product-card__content h3,
.product-grid .product-card h3 {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.00rem;
  line-height: 1.05;
}

.product-card__price,
.product-grid .product-price {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.15rem;
  color: #f5d89d;
  white-space: nowrap;
}

.product-card__meta,
.product-card__identity {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.product-card__meta-item,
.product-card__identity .meta-item {
  padding: 10px 13px;
  border-radius: 16px;
  background: rgb(0 0 0 / 3%);
  border: 1px solid rgb(59 59 59 / 6%);
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

.product-card__meta-item span,
.product-card__identity .meta-item span {
  display: inline;
  margin-bottom: 0;
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
  white-space: nowrap;
  flex-shrink: 0;
}

.product-card__meta-item strong,
.product-card__identity .meta-item strong {
  font-size: 0.9rem;
  color: var(--text);
}

.product-card__tags,
.product-card__services {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.product-card__footer,
.product-card__actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-top: auto;
}

.single-product-section--editorial .product-detail-layout--editorial {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(330px, 0.72fr);
  gap: 24px;
  align-items: start;
}

.product-stage-card--hero,
.product-summary-card--editorial,
.product-story-card--overview,
.product-story-card--services {
  padding: 24px;
}

.product-stage-head--editorial,
.product-summary-top--editorial {
  display: grid;
  gap: 18px;
}

.product-stage-headline {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 18px;
}

.product-stage-headline h1 {
  margin: 6px 0 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2rem, 3.2vw, 3rem);
  line-height: 0.98;
}

.product-media--editorial-stage {
  min-height: 580px;
  border-radius: calc(var(--radius-lg) - 6px);
}

.product-media-bottom--editorial {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 18px;
}

.gallery-thumbs--editorial {
  margin-top: 16px;
}

.product-story-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
  gap: 20px;
  margin-top: 22px;
}

.detail-pair-grid--single-page {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 16px;
}

.detail-panel {
  padding: 16px 18px;
  border-radius: 18px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.06);
}

.detail-panel p {
  margin: 8px 0 0;
}

.product-summary-column--editorial {
  position: sticky;
  top: 28px;
}

.product-summary-caption {
  margin: 10px 0 0;
  color: #ddd1c5;
}

.summary-identity-grid--editorial,
.summary-metrics-grid--editorial {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.summary-identity-item,
.metric-card {
  padding: 14px 16px;
  border-radius: 18px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.06);
}

.metric-card span {
  display: block;
  margin-bottom: 6px;
  font-size: 0.72rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--muted);
}

.metric-card strong {
  font-size: 1.08rem;
}

.summary-table-wrap--editorial {
  margin-top: 18px;
}

.summary-spec-table--editorial {
  width: 100%;
  border-collapse: collapse;
}

.summary-spec-table--editorial th,
.summary-spec-table--editorial td {
  padding: 14px 0;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  vertical-align: top;
}

.summary-spec-table--editorial td {
  text-align: right;
  color: #f3e8d8;
}

.single-actions--editorial {
  margin-top: 22px;
}

.section-heading--split {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 18px;
}

@media (max-width: 1080px) {
  .shop-shell,
  .shop-layout--editorial,
  .single-product-section--editorial .product-detail-layout--editorial,
  .product-story-grid {
    grid-template-columns: 1fr;
  }

  .shop-sidebar,
  .shop-filter-sidebar,
  .product-summary-column--editorial {
    position: static;
  }

  .shop-results-head,
  .section-heading--split,
  .product-stage-headline,
  .product-media-bottom--editorial {
    grid-template-columns: 1fr;
    display: grid;
    align-items: start;
  }
}

@media (max-width: 720px) {
  .shop-filter-sidebar .editorial-panel,
  .shop-sidebar .editorial-panel,
  .product-stage-card--hero,
  .product-summary-card--editorial,
  .product-story-card--overview,
  .product-story-card--services {
    padding: 18px;
  }

  .product-card__meta,
  .product-card__identity,
  .summary-identity-grid--editorial,
  .summary-metrics-grid--editorial,
  .detail-pair-grid--single-page {
    grid-template-columns: 1fr;
  }

  .product-media--editorial-stage {
    min-height: 420px;
  }
}

.home-feature-card {
  overflow: hidden;
  border: 1px solid rgba(255,255,255,0.08);
  box-shadow: 0 24px 70px rgba(0,0,0,0.28);
}

.home-feature-card__media {
  display: block;
  min-height: 0;
}

.home-feature-card__body {
  gap: 5px;
}

.home-feature-card__header {
  align-items: flex-start;
}

.home-feature-card__eyebrow {
  margin-bottom: 10px;
}

.home-feature-card__summary {
  margin: 0;
  color: rgba(244,238,230,0.72);
  line-height: 1.75;
}

.home-feature-card__identity {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.home-feature-card__services {
  margin-top: -2px;
}

.home-feature-card__meta {
  font-size: 0.76rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.58);
}

.home-feature-card__footer {
  margin-top: 2px;
}

.product-grid--menu-archive.two-cols {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.product-grid--menu-archive.three-cols {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 640px) {
  .product-grid--menu-archive.two-cols,
  .product-grid--menu-archive.three-cols {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-feature-card__header,
  .home-feature-card__footer {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* Design note for this file section:
新版頁首需要更貼齊內容區，故統一把 page hero 與 hero banner 的上下留白清空，並用後段覆寫壓過舊版媒體查詢。 */
.page-hero,
.hero-banner {
  padding: 0 !important;
}

.page-hero-grid,
.page-hero-grid--shop {
  padding: 1.5rem 0 1.2rem !important;
}

/* 白底紅色配色 — body 背景覆寫 */
body.sex69-color-white_red {
  background:
    radial-gradient(circle at top left, rgba(192, 21, 42, 0.06), transparent 32%),
    linear-gradient(180deg, #ffffff 0%, #f9f4f4 42%, #fff5f6 100%);
  color: rgba(20, 10, 12, 0.92);
  --line: rgba(0, 0, 0, 0.1);
  --line-strong: rgba(192, 21, 42, 0.25);
  --shadow: 0 2px 12px rgba(0,0,0,0.06);
}
body.sex69-color-custom {
  background:
    radial-gradient(circle at top left, rgba(var(--accent-gold-rgb, 192, 21, 42), 0.06), transparent 32%),
    linear-gradient(180deg, #ffffff 0%, #f9f4f4 42%, #fff5f6 100%);
  color: rgba(20, 10, 12, 0.92);
  --line: rgba(0, 0, 0, 0.1);
  --line-strong: var(--accent-gold);
  --shadow: 0 2px 12px rgba(0,0,0,0.06);
}

/* 白底配色按鈕主色改為紅色 */
body.sex69-color-white_red .button-primary,
body.sex69-color-white_red .button-booking--primary {
  background: linear-gradient(135deg, #e8374a 0%, #a50f1f 100%);
  color: #ffffff;
  box-shadow: 0 12px 28px rgba(192, 21, 42, 0.28);
}

/* 白底配色金色文字改為紅色 */
body.sex69-color-white_red .text-link,
body.sex69-color-white_red .product-price,
body.sex69-color-white_red .single-price,
body.sex69-color-white_red .product-card__price ,
body.sex69-color-custom .product-card__price {
  color: #C0152A;
}

/* 白底配色 accent line */
body.sex69-color-white_red .product-chip--gold {
  border-color: rgba(192, 21, 42, 0.32);
  background: rgba(192, 21, 42, 0.08);
  color: #C0152A;
}

/* ═══════════════════════════════════════════════════════
   白底紅色配色 — 完整系統覆寫
   透過 CSS 變數 + 選擇器雙重覆蓋，確保全站一致
═══════════════════════════════════════════════════════ */

body.sex69-color-white_red {
  /* 紅白配色固定紅色變數 */
  --accent-gold:        #C0152A;
  --accent-gold-soft:   #E8374A;
  --accent-ivory:       #1A0508;
  --bg:                 #FFFFFF;
  --bg-soft:            #F9F4F4;
  --panel:              rgba(192, 21, 42, 0.04);
  --panel-soft:         rgba(192, 21, 42, 0.02);
  --border:             rgba(0, 0, 0, 0.12);
  --line:               rgba(0, 0, 0, 0.12);
  --line-strong:        rgba(192, 21, 42, 0.25);
  --shadow:             0 4px 16px rgba(0, 0, 0, 0.08);
  --text:               rgba(20, 10, 12, 0.92);
  --muted:              rgba(20, 10, 12, 0.58);
  --muted-soft:         rgba(20, 10, 12, 0.38);
  --text-strong:        #140A0C;
  --header-bg:          rgba(255, 255, 255, 0.94);
  --nav-link:           rgba(20, 10, 12, 0.76);
  --ghost-bg:           rgba(192, 21, 42, 0.03);
  --ghost-border:       rgba(192, 21, 42, 0.14);
  --button-primary-text:#FFFFFF;
  --glow-top:           rgba(192, 21, 42, 0.10);
  --glow-right:         rgba(192, 21, 42, 0.07);
  --glow-left:          rgba(192, 21, 42, 0.04);
  --grain-dot:          rgba(20, 10, 12, 0.04);
  --booking-shadow:     0 18px 36px rgba(192, 21, 42, 0.22);
  --radius-lg:          1.8rem;
  --radius-md:          1.4rem;
  --radius-sm:          999px;

  background:
    radial-gradient(circle at top left, rgba(192, 21, 42, 0.06), transparent 32%),
    linear-gradient(180deg, #ffffff 0%, #f9f4f4 42%, #fff5f6 100%);
  color: rgba(20, 10, 12, 0.92);
}

/* 自訂配色：用 functions.php 輸出的 CSS 變數（--accent-gold 等）動態套用 */
body.sex69-color-custom {
  --bg:                 #FFFFFF;
  --bg-soft:            #F9F4F4;
  --border:             rgba(0, 0, 0, 0.12);
  --line:               rgba(0, 0, 0, 0.12);
  --shadow:             0 4px 16px rgba(0, 0, 0, 0.08);
  --text:               rgba(20, 10, 12, 0.92);
  --muted:              rgba(20, 10, 12, 0.58);
  --muted-soft:         rgba(20, 10, 12, 0.38);
  --text-strong:        #140A0C;
  --header-bg:          rgba(255, 255, 255, 0.94);
  --nav-link:           rgba(20, 10, 12, 0.76);
  --button-primary-text:#FFFFFF;
  --grain-dot:          rgba(20, 10, 12, 0.04);
  --radius-lg:          1.8rem;
  --radius-md:          1.4rem;
  --radius-sm:          999px;
  background:
    linear-gradient(180deg, #ffffff 0%, #f9f4f4 42%, #fff5f6 100%);
  color: rgba(20, 10, 12, 0.92);
}

/* Header */
body.sex69-color-white_red .site-header ,
body.sex69-color-custom .site-header {
  background: rgba(255, 255, 255, 0.94);
  border-bottom-color: rgba(192, 21, 42, 0.12);
}
body.sex69-color-white_red .mobile-nav-panel ,
body.sex69-color-custom .mobile-nav-panel {
  background: rgba(255, 255, 255, 0.98);
  border-color: rgba(192, 21, 42, 0.12);
}

/* 導覽選單 */
body.sex69-color-white_red .primary-menu a,
body.sex69-color-white_red .mobile-menu a ,
body.sex69-color-custom .mobile-menu a {
  color: rgba(20, 10, 12, 0.76);
}
body.sex69-color-white_red .primary-menu a:hover,
body.sex69-color-white_red .mobile-menu a:hover {
  color: #C0152A;
}
body.sex69-color-custom .primary-menu a:hover,
body.sex69-color-custom .mobile-menu a:hover {
  color: var(--accent-gold-dark, color-mix(in srgb, var(--accent-gold) 80%, #000 20%));
  color: color-mix(in srgb, var(--accent-gold) 75%, #000 25%);
}
body.sex69-color-white_red .mobile-menu li a ,
body.sex69-color-custom .mobile-menu li a {
  border-bottom-color: rgba(192, 21, 42, 0.1);
}

/* Brand */
body.sex69-color-white_red .brand-mark {
  border-color: rgba(192, 21, 42, 0.3);
  color: #C0152A;
}
body.sex69-color-white_red .brand-title ,
body.sex69-color-custom .brand-title {
  color: #140A0C;
}
body.sex69-color-white_red .brand-subtitle ,
body.sex69-color-custom .brand-subtitle {
  color: rgba(20, 10, 12, 0.52);
}

/* 漢堡按鈕 */
body.sex69-color-white_red .mobile-nav-toggle span ,
body.sex69-color-custom .mobile-nav-toggle span {
  background: #140A0C;
}

/* 按鈕 */
body.sex69-color-white_red .button-primary,
body.sex69-color-white_red .button-booking--primary {
  background: linear-gradient(135deg, #e8374a 0%, #a50f1f 100%);
  color: #ffffff;
  box-shadow: 0 12px 28px rgba(192, 21, 42, 0.28);
}
body.sex69-color-white_red .button-link,
body.sex69-color-white_red .button-secondary,
body.sex69-color-white_red .button-booking--secondary ,
body.sex69-color-custom .button-booking--secondary {
  border-color: rgba(192, 21, 42, 0.24);
  color: #140A0C;
  background: rgba(192, 21, 42, 0.04);
}
body.sex69-color-white_red .button-link:hover,
body.sex69-color-white_red .button-secondary:hover ,
body.sex69-color-custom .button-secondary:hover {
  border-color: rgba(192, 21, 42, 0.5);
  background: rgba(192, 21, 42, 0.08);
}

/* 文字連結與價格 */
body.sex69-color-white_red .text-link ,
body.sex69-color-custom .text-link {
  color: #C0152A;
}
body.sex69-color-white_red .product-price,
body.sex69-color-white_red .single-price,
body.sex69-color-white_red .product-card__price,
body.sex69-color-white_red .product-card-compact-price,
body.sex69-color-white_red .woocommerce-Price-amount ,
body.sex69-color-custom .woocommerce-Price-amount {
  color: #C0152A;
}

/* Editorial panel 卡片 */
body.sex69-color-white_red .editorial-panel ,
body.sex69-color-custom .editorial-panel {
  background: linear-gradient(180deg, rgba(255,255,255,0.9), rgba(249,244,244,0.85));
  border-color: rgba(192, 21, 42, 0.12);
  box-shadow: 0 8px 32px rgba(20, 10, 12, 0.08);
}

/* 白底硬寫邊框修正 */
body.sex69-color-white_red [style*="rgba(255,255,255"],
body.sex69-color-white_red .site-glow--top,
body.sex69-color-white_red .site-glow--right,
body.sex69-color-white_red .site-glow--left ,
body.sex69-color-custom .site-glow--left {
  opacity: 0.6;
}

/* Chip / Tag pill */
body.sex69-color-white_red .product-chip,
body.sex69-color-white_red .tag-pill,
body.sex69-color-white_red .toolbar-chip ,
body.sex69-color-custom .toolbar-chip {
  border-color: rgba(192, 21, 42, 0.16);
  background: rgba(192, 21, 42, 0.04);
  color: rgba(20, 10, 12, 0.82);
}
body.sex69-color-white_red .product-chip--gold,
body.sex69-color-white_red .toolbar-chip--alt,
body.sex69-color-white_red .pill-count {
  border-color: rgba(192, 21, 42, 0.32);
  background: rgba(192, 21, 42, 0.08);
  color: #C0152A;
}

/* Select / Input */
body.sex69-color-white_red select,
body.sex69-color-white_red input,
body.sex69-color-white_red textarea ,
body.sex69-color-custom textarea {
  color: rgba(20, 10, 12, 0.88);
  border-color: rgba(192, 21, 42, 0.16);
  background: rgba(255, 255, 255, 0.8);
}
body.sex69-color-white_red select option ,
body.sex69-color-custom select option {
  background: #fff;
  color: #140A0C;
}

/* 篩選表單 */
body.sex69-color-white_red .filter-form label ,
body.sex69-color-custom .filter-form label {
  border-color: rgba(192, 21, 42, 0.14);
  background: rgba(255, 255, 255, 0.7);
}
body.sex69-color-white_red .filter-form label span ,
body.sex69-color-custom .filter-form label span {
  color: rgba(20, 10, 12, 0.48);
}

/* 商品卡片 */
body.sex69-color-white_red .product-card ,
body.sex69-color-custom .product-card {
  background: rgba(255, 255, 255, 0.88);
}
body.sex69-color-white_red .product-card-title--menu a,
body.sex69-color-white_red .product-card__title ,
body.sex69-color-custom .product-card__title {
  color: #140A0C;
}
body.sex69-color-white_red .product-overlay ,
body.sex69-color-custom .product-overlay {
  background: linear-gradient(180deg, rgba(255,244,244,0.05) 12%, rgba(20,10,12,0.12) 44%, rgba(20,10,12,0.72) 100%);
}
body.sex69-color-white_red .product-info-strip__item,
body.sex69-color-white_red .metric-card,
body.sex69-color-white_red .summary-identity-item ,
body.sex69-color-custom .summary-identity-item {
  background: rgba(192, 21, 42, 0.04);
  border: 1px solid rgba(0, 0, 0, 0.15) !important;
  border-color: rgba(0, 0, 0, 0.15) !important;
}
body.sex69-color-white_red .product-info-strip__item strong,
body.sex69-color-white_red .metric-value ,
body.sex69-color-custom .metric-value {
  color: #140A0C;
}

/* 頁眉文字 eyebrow */
body.sex69-color-white_red .eyebrow,
body.sex69-color-white_red .product-kicker,
body.sex69-color-white_red .detail-label,
body.sex69-color-white_red .metric-label ,
body.sex69-color-custom .metric-label {
  color: rgba(20, 10, 12, 0.75);
}

/* Hero */
body.sex69-color-white_red .hero-shell ,
body.sex69-color-custom .hero-shell {
  border-color: rgba(192, 21, 42, 0.12);
}
body.sex69-color-white_red .hero-dot ,
body.sex69-color-custom .hero-dot {
  border-color: rgba(192, 21, 42, 0.18);
  background: rgba(255, 255, 255, 0.7);
  color: rgba(20, 10, 12, 0.72);
}
body.sex69-color-white_red .hero-dot.is-active ,
body.sex69-color-custom .hero-dot.is-active {
  border-color: #C0152A;
  background: rgba(192, 21, 42, 0.08);
  color: #C0152A;
}
body.sex69-color-white_red .hero-copy h1,
body.sex69-color-white_red .hero-copy p ,
body.sex69-color-custom .hero-copy p {
  color: #fff;
}

/* 分頁 */
body.sex69-color-white_red .page-numbers ,
body.sex69-color-custom .page-numbers {
  border-color: rgba(192, 21, 42, 0.18);
  background: rgba(255, 255, 255, 0.7);
  color: rgba(20, 10, 12, 0.76);
}
body.sex69-color-white_red .page-numbers.current ,
body.sex69-color-custom .page-numbers.current {
  background: rgba(192, 21, 42, 0.1);
  border-color: rgba(192, 21, 42, 0.36);
  color: #C0152A;
}

/* 分隔線 */
body.sex69-color-white_red hr,
body.sex69-color-white_red .border-line ,
body.sex69-color-custom .border-line {
  border-color: rgba(192, 21, 42, 0.12);
}

/* 頁尾 */
body.sex69-color-white_red .site-footer {
  border-top-color: rgba(192, 21, 42, 0.12);
  background: #f9f4f4;
  color: rgba(20, 10, 12, 0.72);
}
body.sex69-color-custom .site-footer {
  background: #ffffff;
  color: rgba(20, 10, 12, 0.72);
}
body.sex69-color-white_red .site-footer a ,
body.sex69-color-custom .site-footer a {
  color: rgba(20, 10, 12, 0.64);
}
body.sex69-color-white_red .site-footer a:hover ,
body.sex69-color-custom .site-footer a:hover {
  color: #C0152A;
}

/* 結果頭部排序欄 */
body.sex69-color-white_red .shop-results-head,
body.sex69-color-white_red .shop-results-toolbar select ,
body.sex69-color-custom .shop-results-toolbar select {
  color: rgba(20, 10, 12, 0.88);
  border-color: rgba(192, 21, 42, 0.14);
  background: rgba(255, 255, 255, 0.7);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23111111' d='M6 8L1 3h10z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 0.75rem center !important;
  background-size: 0.65em !important;
}
body.sex69-color-custom .shop-results-toolbar__group label,
body.sex69-color-custom .shop-results-toolbar__group span {
  color: rgba(20, 10, 12, 0.60);
}

/* 價格滑桿 */
body.sex69-color-white_red .price-range-track ,
body.sex69-color-custom .price-range-track {
  background: rgba(192, 21, 42, 0.15);
}
body.sex69-color-white_red .price-range-fill ,
body.sex69-color-custom .price-range-fill {
  background: linear-gradient(90deg, #C0152A, #e8374a);
}
body.sex69-color-white_red .price-range-thumb ,
body.sex69-color-custom .price-range-thumb {
  background: #C0152A;
  border-color: #fff;
  box-shadow: 0 0 0 3px rgba(192, 21, 42, 0.2);
}

/* Grain overlay 白底不需要 */
body.sex69-color-white_red .grain-overlay ,
body.sex69-color-custom .grain-overlay {
  display: none;
}

/* 小圓角手機標籤 */
body.sex69-color-white_red .product-card-meta-tag ,
body.sex69-color-custom .product-card-meta-tag {
  color: rgba(20, 10, 12, 0.55);
  background: rgba(192, 21, 42, 0.06);
  border-color: rgba(192, 21, 42, 0.18);
}

/* ═══════════════════════════════════════════════════════
   白紅配色補丁 v2 — Hero、按鈕、section 背景修正
═══════════════════════════════════════════════════════ */

/* Hero shell 改白底 */
body.sex69-color-white_red .hero-shell ,
body.sex69-color-custom .hero-shell {
  background: linear-gradient(180deg, rgba(249,244,244,0.98), rgba(255,245,246,0.96));
  border-color: rgba(192, 21, 42, 0.12);
  box-shadow: 0 24px 60px rgba(20, 10, 12, 0.1);
}
body.sex69-color-white_red .hero-copy h1 ,
body.sex69-color-custom .hero-copy h1 {
  color: #140A0C;
}
body.sex69-color-white_red .hero-copy p ,
body.sex69-color-custom .hero-copy p {
  color: rgba(20, 10, 12, 0.72);
}
body.sex69-color-white_red .hero-navigation ,
body.sex69-color-custom .hero-navigation {
  border-top-color: rgba(192, 21, 42, 0.1);
  background: rgba(255, 255, 255, 0.6);
}
body.sex69-color-white_red .hero-sidebar ,
body.sex69-color-custom .hero-sidebar {
  border-left-color: rgba(192, 21, 42, 0.1);
  background: rgba(255, 255, 255, 0.5);
}

/* Section 背景 */
body.sex69-color-white_red .section-space,
body.sex69-color-white_red .home-section,
body.sex69-color-white_red .shop-section ,
body.sex69-color-custom .shop-section {
  background: transparent;
}

/* 所有主要按鈕強制紅色（覆寫 color-mix 產生的深色）*/
body.sex69-color-white_red .button.button-primary,
body.sex69-color-white_red a.button.button-primary,
body.sex69-color-white_red button.button.button-primary,
body.sex69-color-white_red .button.button-booking.button-primary,
body.sex69-color-white_red a.button.button-booking.button-primary,
body.sex69-color-white_red button.button.button-booking.button-primary,
body.sex69-color-white_red .button-booking--primary {
  background: linear-gradient(135deg, #e8374a 0%, #a50f1f 100%) !important;
  color: #ffffff !important;
  border-color: rgba(192, 21, 42, 0.4) !important;
  box-shadow: 0 14px 32px rgba(192, 21, 42, 0.28) !important;
}
body.sex69-color-white_red .button.button-primary:hover,
body.sex69-color-white_red a.button.button-primary:hover,
body.sex69-color-white_red .button.button-booking.button-primary:hover,
body.sex69-color-white_red a.button.button-booking.button-primary:hover ,


/* 次要按鈕 */
body.sex69-color-white_red .button.button-booking.button-booking--secondary,
body.sex69-color-white_red a.button.button-booking.button-booking--secondary ,
body.sex69-color-custom a.button.button-booking.button-booking--secondary {
  background: rgba(192, 21, 42, 0.06) !important;
  border-color: rgba(192, 21, 42, 0.28) !important;
  color: #C0152A !important;
}

/* Header 立即預約按鈕（桌面 desktop-booking） */
body.sex69-color-white_red .desktop-booking ,
body.sex69-color-custom .desktop-booking {
  background: linear-gradient(135deg, #e8374a 0%, #a50f1f 100%) !important;
  color: #ffffff !important;
  border-color: transparent !important;
}

/* 精選名單區塊背景 */
body.sex69-color-white_red .home-feature-card,
body.sex69-color-white_red .product-card--demo ,
body.sex69-color-custom .product-card--demo {
  background: rgba(255, 255, 255, 0.88);
  border-color: rgba(192, 21, 42, 0.1);
}

/* 首頁各 section 白底 */
body.sex69-color-white_red .intro-section,
body.sex69-color-white_red .areas-section,
body.sex69-color-white_red .featured-section,
body.sex69-color-white_red .steps-section ,
body.sex69-color-custom .steps-section {
  background: transparent;
}

/* site-shell 背景修正 */
body.sex69-color-white_red .site-shell ,
body.sex69-color-custom .site-shell {
  background: transparent;
}
body.sex69-color-white_red .site-glow--top ,
body.sex69-color-custom .site-glow--top {
  background: radial-gradient(circle, rgba(192, 21, 42, 0.08), transparent 60%);
}
body.sex69-color-white_red .site-glow--right ,
body.sex69-color-custom .site-glow--right {
  background: rgba(192, 21, 42, 0.05);
}
body.sex69-color-white_red .site-glow--left ,
body.sex69-color-custom .site-glow--left {
  background: rgba(192, 21, 42, 0.04);
}

/* 漢堡線條 */
body.sex69-color-white_red .mobile-nav-toggle span ,
body.sex69-color-custom .mobile-nav-toggle span {
  background-color: #140A0C !important;
}

/* 精選名單標題、內文 */
body.sex69-color-white_red .home-feature-card__summary ,
body.sex69-color-custom .home-feature-card__summary {
  color: rgba(20, 10, 12, 0.68);
}
body.sex69-color-white_red .home-feature-card__meta ,
body.sex69-color-custom .home-feature-card__meta {
  color: rgba(20, 10, 12, 0.48);
}
body.sex69-color-white_red h1, 
body.sex69-color-white_red h2,
body.sex69-color-white_red h3,
body.sex69-color-white_red h4 ,
body.sex69-color-custom h4 {
  color: #140A0C;
}
body.sex69-color-white_red p ,
body.sex69-color-custom p {
  color: rgba(20, 10, 12, 0.78);
}
/* Hero 圖片區：粉紅漸層背景 */
body.sex69-color-white_red .hero-slide-overlay {
  background:
    linear-gradient(125deg, rgba(4,4,6,0.88), rgba(19,19,25,0.65) 42%, transparent 100%),
    radial-gradient(circle at top right, rgba(192,21,42,0.22), transparent 28%),
    radial-gradient(circle at bottom left, rgba(192,21,42,0.12), transparent 30%) !important;
}
body.sex69-color-white_red .hero-copy h1 ,
body.sex69-color-custom .hero-copy h1 {
  color: #2a0a0e !important;
}
body.sex69-color-white_red .hero-copy .eyebrow ,
body.sex69-color-custom .hero-copy .eyebrow {
  color: #C0152A !important;
}
body.sex69-color-white_red .hero-copy p ,
body.sex69-color-custom .hero-copy p {
  color: rgba(42, 10, 14, 0.75) !important;
}
/* 瀏覽菜單按鈕：白色 */
body.sex69-color-white_red .button.button-ghost,
body.sex69-color-white_red a.button.button-ghost ,
body.sex69-color-custom a.button.button-ghost {
  background: #ffffff !important;
  color: #2a0a0e !important;
  border-color: rgba(192, 21, 42, 0.2) !important;
  box-shadow: 0 2px 12px rgba(192,21,42,0.1) !important;
}
body.sex69-color-white_red .button.button-ghost:hover,
body.sex69-color-white_red a.button.button-ghost:hover ,
body.sex69-color-custom a.button.button-ghost:hover {
  background: #fff5f6 !important;
  border-color: rgba(192, 21, 42, 0.4) !important;
}

/* soft-box 邊框修正 */
body.sex69-color-white_red .soft-box,
body.sex69-color-white_red .metric-card ,
body.sex69-color-custom .metric-card {
  border: 1px solid rgba(0,0,0,0.1) !important;
  background: rgba(0,0,0,0.02) !important;
}

/* 下拉箭頭改深色 */
body.sex69-color-white_red .filter-form select,
body.sex69-color-white_red .shop-results-toolbar select,
body.sex69-color-white_red select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23333333' d='M6 8L1 3h10z'/%3E%3C/svg%3E") !important;
}
body.sex69-color-custom .shop-results-toolbar select,
body.sex69-color-custom select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23111111' d='M6 8L1 3h10z'/%3E%3C/svg%3E") !important;
}

/* 價格範圍背景改淺色 */
body.sex69-color-white_red .price-range-control,
body.sex69-color-white_red [data-range-control] ,
body.sex69-color-custom [data-range-control] {
  background: rgba(0,0,0,0.04) !important;
  border: 1px solid rgba(0,0,0,0.1) !important;
  border-radius: 1.35rem !important;
  padding: 0.75rem 1rem !important;
}
body.sex69-color-white_red .price-range-track ,
body.sex69-color-custom .price-range-track {
  background: rgba(0,0,0,0.08) !important;
}
body.sex69-color-white_red .price-range-head span ,
body.sex69-color-custom .price-range-head span {
  color: rgba(0,0,0,0.5) !important;
}
body.sex69-color-white_red .price-range-head strong ,
body.sex69-color-custom .price-range-head strong {
  color: #c0152a !important;
}

/* 頁尾查看部落格按鈕改白底深字 */
body.sex69-color-white_red .footer-actions .button.button-link,
body.sex69-color-white_red .footer-actions a.button.button-link,
body.sex69-color-white_red .button.button-link,
body.sex69-color-white_red a.button.button-link ,
body.sex69-color-custom a.button.button-link {
  background: #ffffff !important;
  color: #2a0a0e !important;
  border: 1px solid rgba(192,21,42,0.25) !important;
  box-shadow: 0 2px 12px rgba(192,21,42,0.08) !important;
  border-radius: 999px !important;
}

/* 規格表欄位值顏色加深 */
body.sex69-color-white_red .summary-spec-table--editorial td ,
body.sex69-color-custom .summary-spec-table--editorial td {
  color: rgba(20,10,12,0.85) !important;
}
body.sex69-color-white_red .summary-spec-table--editorial th,
body.sex69-color-white_red .summary-spec-table--editorial td ,
body.sex69-color-custom .summary-spec-table--editorial td {
  border-bottom-color: rgba(0,0,0,0.08) !important;
}

/* editorial-panel 陰影減輕 */
body.sex69-color-white_red .editorial-panel ,
body.sex69-color-custom .editorial-panel {
  box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
}

/* 白底配色：meta-item 框線加深 */
body.sex69-color-white_red .product-card__meta-item,
body.sex69-color-white_red .product-card__identity .meta-item ,
body.sex69-color-custom .product-card__identity .meta-item {
  background: rgba(0,0,0,0.03) !important;
  border: 1px solid rgba(0,0,0,0.12) !important;
}

/* 返回菜單按鈕改白底 */
body.sex69-color-white_red .single-actions--editorial .button-link,
body.sex69-color-white_red .single-actions--editorial a.button-link ,
body.sex69-color-custom .single-actions--editorial a.button-link {
  background: #ffffff !important;
  color: #2a0a0e !important;
  border: 1px solid rgba(0,0,0,0.15) !important;
  box-shadow: none !important;
}

/* 白底配色：各容器邊框加深 */
/* 預約流程步驟 */
body.sex69-color-white_red .feature-note,
body.sex69-color-white_red .soft-box,
body.sex69-color-white_red .settings-grid .soft-box ,
body.sex69-color-custom .settings-grid .soft-box {
  border: 1px solid rgba(0,0,0,0.12) !important;
  background: rgba(0,0,0,0.02) !important;
}
/* Hero 側欄說明區 */
body.sex69-color-white_red .hero-admin-note,
body.sex69-color-white_red .hero-admin-grid > div ,
body.sex69-color-custom .hero-admin-grid > div {
  border: 1px solid rgba(0,0,0,0.1) !important;
  background: rgba(0,0,0,0.02) !important;
}
/* 首頁精選名單卡片 */
body.sex69-color-white_red .home-feature-card,
body.sex69-color-white_red .product-card ,
body.sex69-color-custom .product-card {
  border: 1px solid rgba(0,0,0,0.1) !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
}
/* stat-card / 介紹區卡片 */
body.sex69-color-white_red .stat-card,
body.sex69-color-white_red .feature-card,
body.sex69-color-white_red .category-card {
  border: 1px solid rgba(0,0,0,0.1) !important;
  background: rgba(0,0,0,0.02) !important;
}
body.sex69-color-custom .category-card {
  background: #ffffff !important;
}

/* 頂欄選單懸停光芒改為突出色 */
body.sex69-color-white_red .primary-menu a::after,
body.sex69-color-white_red .mobile-menu a::after,
body.sex69-color-white_red .fallback-menu a::after {
  background: linear-gradient(90deg, transparent, #C0152A, transparent);
  box-shadow: 0 0 24px 6px rgba(192, 21, 42, 0.45);
}
body.sex69-color-custom .primary-menu a::after,
body.sex69-color-custom .mobile-menu a::after,
body.sex69-color-custom .fallback-menu a::after {
  background: linear-gradient(90deg, transparent, var(--accent-gold), transparent);
  box-shadow: 0 0 24px 6px rgba(var(--accent-gold-rgb, 192, 21, 42), 0.45);
}

/* 文章單頁標題縮小 */
.single-post .page-title {
  font-size: clamp(1.6rem, 3vw, 2.6rem) !important;
}
@media (max-width: 640px) {
  .single-post .page-title {
    font-size: clamp(1.4rem, 5vw, 2rem) !important;
  }
}

/* 文章單頁 hero 標題區佔滿整行 */
.single-post .page-hero-grid {
  grid-template-columns: 1fr !important;
}

/* 預約流程區塊上方留白 */
.booking-section-wrap {
  padding-top: 3.5rem !important;
}
@media (max-width: 640px) {
  .booking-section-wrap {
    padding-top: 2rem !important;
  }
}

/* 地區導覽區塊上方留白 */
.areas-section-wrap {
  padding-top: 2.5rem !important;
}
@media (max-width: 640px) {
  .areas-section-wrap {
    padding-top: 1.5rem !important;
  }
}

/* 相關商品滾動條 — 白底配色 */
body.sex69-color-white_red .related-scroll-track,
body.sex69-color-custom .related-scroll-track {
  scrollbar-color: rgba(0,0,0,0.25) transparent;
}
body.sex69-color-white_red .related-scroll-track::-webkit-scrollbar-thumb,
body.sex69-color-custom .related-scroll-track::-webkit-scrollbar-thumb {
  background: rgba(0,0,0,0.25);
}

/* Hero overlay 配色光暈 */
body.sex69-color-editorial_noir .hero-slide-overlay {
  background:
    linear-gradient(125deg, rgba(4,4,6,0.92), rgba(19,19,25,0.72) 42%, transparent 100%),
    radial-gradient(circle at top right, rgba(212,182,134,0.22), transparent 28%),
    radial-gradient(circle at bottom left, rgba(133,35,52,0.15), transparent 30%) !important;
}

/* ── 全屏 Banner 各配色 overlay ── */
/* 黑金 */
body.sex69-color-editorial_noir .hero-fs-overlay {
  background:
    linear-gradient(to top, rgba(4,4,6,0.85) 0%, rgba(4,4,6,0.4) 50%, rgba(4,4,6,0.05) 100%),
    linear-gradient(to right, rgba(4,4,6,0.6) 0%, transparent 65%),
    radial-gradient(ellipse at bottom left, rgba(212,182,134,0.12), transparent 50%);
}
/* 紅白 */
body.sex69-color-white_red .hero-fs-overlay {
  background:
    linear-gradient(to top, rgba(30,5,10,0.82) 0%, rgba(30,5,10,0.45) 50%, rgba(30,5,10,0.08) 100%),
    linear-gradient(to right, rgba(192,21,42,0.35) 0%, transparent 60%),
    radial-gradient(ellipse at bottom left, rgba(192,21,42,0.18), transparent 50%);
}
body.sex69-color-white_red .hero-fs-eyebrow {
  color: #e8384f;
}
/* 紅白配色下的 ghost 按鈕 */
body.sex69-color-white_red .hero-fs-ghost {
  background: rgba(255,255,255,0.18) !important;
  border-color: rgba(255,255,255,0.5) !important;
  color: #ffffff !important;
}
