/* TONVERA — platform-inspired hierarchy, restrained materials and product accents.
   Product screenshots and performance artwork remain the original assets. */
:root {
  color-scheme: light;
  --bg-deep: #ffffff;
  --bg-mid: #f5f5f7;
  --bg-dark: #e8e8ed;
  --bg-card: #ffffff;
  --bg-card2: #f5f5f7;
  --text: #1d1d1f;
  --text-muted: #606066;
  --text-dim: #616166;
  --border: #d2d2d7;
  --focus-ring: #0066cc;
  --surface-radius: 28px;
  --pink: #0066cc;
  --pink-hot: #0055ad;
  --violet: #66508d;
  --cyan: #176b65;
  --purple: #66508d;
  --product-accent: #78523a;
  --action: #0071e3;
  --info-ink: #0055ad;
  --info-surface: #eaf3ff;
  --success-ink: #17633a;
  --success-surface: #edf8f0;
  --warning-ink: #77520c;
  --warning-surface: #fff6df;
  --danger-ink: #aa2441;
  --danger-surface: #fff0f2;
  --grad-active: linear-gradient(120deg, #e7a575, #f0c9a8);
  --select-surface: #ffffff;
  --select-border: #85858b;
  --select-border-hover: #606066;
  --select-ring: rgba(0,102,204,.2);
  --select-option-hover: #eaf3ff;
  --radius-lg: 24px;
}

html:lang(en), html:lang(ms), html:lang(ja), html:lang(zh-CN), html:lang(zh-TW), html:lang(ta) {
  --font-ui: -apple-system, BlinkMacSystemFont, system-ui, 'Segoe UI', 'Yu Gothic UI', 'Microsoft JhengHei', 'Microsoft YaHei', 'Noto Sans SC', 'Noto Sans Tamil', sans-serif;
  --font-ui-strong: 'DM Sans', var(--font-ui);
  --font-brand-display: 'Manrope', var(--font-ui);
  --font-heading: 'DM Sans', var(--font-ui);
  --font-display: var(--font-heading);
  --font-display-tight: var(--font-heading);
  --font-body-tracking: 0;
  --font-display-tracking: -.035em;
  --font-ui-tracking: .01em;
}
html:lang(ta) { --font-ui: -apple-system, BlinkMacSystemFont, system-ui, 'Noto Sans Tamil', 'Nirmala UI', sans-serif; }
body { font-size: 1.0625rem; line-height: 1.6; }
button { font-family: var(--font-ui-strong); }
input, select, textarea { font-family: var(--font-ui); }
/* Self-hosted display faces distinguish the brand; system fallbacks cover each locale. */
:where(a, button, input, textarea, select, [tabindex]):focus-visible {
  outline: 3px solid var(--focus-ring) !important;
  outline-offset: 4px !important;
  box-shadow: none !important;
}
:where(button, a, input, select, textarea) { -webkit-tap-highlight-color: transparent; }
[id] { scroll-margin-top: 100px; }
.lang-option, .lang-dropdown__value { font-family: var(--font-ui) !important; }
#page-cover { background: #f5f5f7; }
.page-cover__logo { height: auto; color: #1d1d1f; filter: none; animation: none; text-shadow: none; }
.page-cover__track { border-color: #d2d2d7; }
.page-cover__arc { background: conic-gradient(from 0deg, #0071e3 0%, #0071e3 72%, transparent 74%); }
.page-cover__status { color: #606066; font-size: .8125rem; letter-spacing: 0; text-transform: none; }
.page-cover__status--slow { color: #78523a; }

.tonvera-wordmark, .tonvera-display { font-family: var(--font-brand-display); font-weight: 700; }
.hero__title, .landing-product-nav__copy strong, .hero__product-shot figcaption > span:first-child { font-family: var(--font-brand-display); }
.hero__strapline, .brand-chapter h2, .brand-story__copy h2, .section-title,
.feature-block__body h3, .acct-card__head h1, .acct-dash__head h1,
.support-head h1, .support-detail-head h1, .cc-hero__title { font-family: var(--font-heading); }
.tonvera-wordmark { letter-spacing: .06em; color: var(--text); }
.nav-link { display: inline-flex; align-items: center; min-height: 44px; letter-spacing: 0; }
.nav-link:hover, .nav-link.active { text-shadow: none; }
.nav-user { min-width: 44px; min-height: 44px; }
.lang-dropdown__trigger { min-height: 44px; font-size: .8125rem; }
.lang-dropdown__menu { border-radius: 18px; padding: 8px; transition: none; }
.lang-option { min-height: 44px; background: transparent; border-radius: 10px; font-size: .875rem; }
.lang-switcher__icon, .lang-switcher::after { filter: none; }
#spa-rigs { --product-accent: #78523a; }
#spa-bass { --product-accent: #176b65; }
#spa-stage { --product-accent: #66508d; }
#spa-band { --product-accent: #556828; --band-accent: #556828; --band-accent-soft: #556828; background: var(--bg-deep); }
.hero__aurora, .hero__canvas, .hero::before, .hero::after { display: none; }
.hero__badge {
  background: transparent; border: 0; border-radius: 0; padding: 0;
  backdrop-filter: none; font-size: .875rem; letter-spacing: .015em;
  text-transform: none; color: var(--text-muted); transform: none; opacity: 1;
}
.hero__badge-dot { animation: none; box-shadow: none; width: 6px; height: 6px; }
.hero__title {
  color: var(--text); background: none; filter: none; animation: none;
  transform: none; opacity: 1; font-size: 1.1rem; line-height: 1.15;
  letter-spacing: .06em; margin: .5rem 0 0; font-weight: 600;
}
.hero__title em {
  display: inline-block; margin-top: .12em; font-style: normal;
  letter-spacing: -.045em; background: none; -webkit-text-fill-color: currentColor;
}
.hero__by { text-shadow: none; letter-spacing: 0; font-size: .9375rem; }
.hero__subtitle, .hero__cta, .hero__by { transform: none; opacity: 1; }
.hero__subtitle { display: block; -webkit-line-clamp: unset; overflow: visible; overflow-wrap: anywhere; }
.hero__mockup-scan { display: none; }
.brand-continuity { color: var(--text-muted); font-size: .875rem; line-height: 1.55; letter-spacing: 0; font-weight: 400; }
.hero > .hero__inner > .brand-continuity { margin: -.25rem 0 .25rem; }
.hero--landing .hero__inner.container { padding: 0; margin: 0 auto; align-items: center; text-align: center; }
.hero--landing .hero__logo.tonvera-display { margin: 0; filter: none; line-height: 1.2; }
.hero--landing .hero__strapline { overflow-wrap: anywhere; text-wrap: balance; }
.brand-explore { display: inline-flex; align-items: center; justify-content: center; border: 1px solid transparent; border-radius: 999px; transition: background .18s; }
.brand-explore:hover { transform: none; }
.landing-product-nav__item { backdrop-filter: none; text-align: left; }
.landing-product-nav__item:hover { transform: none; }
.landing-product-nav__dot { display: none; }
.brand-chapter { display: grid; }
.brand-chapter h2 { letter-spacing: -.035em; text-wrap: balance; }
.brand-chapter > p:last-child { line-height: 1.6; color: var(--text-muted); }
.section-tag { color: var(--product-accent); letter-spacing: 0; font-size: .875rem; font-weight: 500; text-shadow: none; text-transform: none; }
.section-header::before { display: none; }
.section-title { background: none; color: var(--text); -webkit-text-fill-color: currentColor; filter: none; font-weight: 600; letter-spacing: -.04em; min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
.section-sub { color: var(--text-muted); }
.products .section-header { text-align: left; }
.product-card__title { color: var(--text); font-family: var(--font-brand-display); font-weight: 600; }
.product-card__body p { display: block; color: var(--text-muted); font-family: var(--font-ui); letter-spacing: 0; -webkit-line-clamp: unset; }
.product-card__tag, .product-card__tag--soon { background: none; border: 0; border-radius: 0; padding: 0; }
.product-card__link { display: inline-flex; align-items: center; min-height: 44px; font-family: var(--font-ui); }
.btn { min-height: 44px; border-radius: 999px; font-size: 1rem; font-weight: 500; letter-spacing: 0; text-transform: none; }
.btn--primary, .btn--band { background: var(--action); color: #fff; border-color: var(--action); box-shadow: none; text-shadow: none; }
.btn--primary:hover, .btn--band:hover { background: #0066cc; color: #fff; border-color: #0066cc; box-shadow: none; }
.btn--ghost, .btn--band-ghost { background: var(--bg-card); color: var(--pink); border-color: var(--border); box-shadow: none; }
.btn--ghost:hover, .btn--band-ghost:hover { background: var(--info-surface); color: var(--info-ink); border-color: var(--pink); box-shadow: none; }
.hero__cta-main::after { display: none; }
.feature-block__title, .spec-card h3 { color: var(--text); text-shadow: none; }
.module-tab.active, .module-tab:hover { background: var(--info-surface); color: var(--info-ink); border-color: var(--pink); box-shadow: none; }
.feature-block__visual, .spec-card, .dl-card { background: var(--bg-card); border-color: var(--border); border-radius: 24px; box-shadow: none; }
.feature-quicknav__link, .module-tab { min-height: 44px; font-size: .875rem; letter-spacing: 0; }
.footer__brand .brand-continuity { margin-top: 12px; font-size: .875rem; }
.footer__links a, .footer__email { display: inline-flex; align-items: center; min-height: 44px; font-size: .875rem; }
.legal-page, .legal-hero, .legal-main, .acct { background: var(--bg-mid); }
.legal-hero__link, .legal-hero__link--active, .legal-card { background: var(--bg-card); border-color: var(--border); box-shadow: none; }
.legal-card a { color: var(--pink); text-decoration-color: currentColor; }
.acct__aurora, .cc-hero__aurora { display: none; }

/* The same surfaces continue through account, community and reference pages. */
.acct-card, .acct-dash__panel, .acct-dash__section, .acct-device-card, .acct-product-card,
.acct-preset-card, .community-card, .pack-card, .support-panel,
.cc-card, .cc-note-card {
  background: var(--bg-card); border-color: var(--border); border-radius: 20px;
  box-shadow: none;
}
.acct-card { padding: 32px; border-radius: var(--surface-radius); }
.acct-card__head h1 { font-weight: 600; letter-spacing: -.025em; }
.acct-card__links a, .acct-card__footer a, .acct-dash__nav a { min-height: 44px; }
.acct-modal__box, .push-modal__card, .dl-dialog__box,
.support-close-modal__dialog, .acct-recaptcha-modal__dialog {
  background: var(--bg-card); color: var(--text); border-color: var(--border); border-radius: 24px;
  box-shadow: 0 24px 80px #0003; max-height: calc(100dvh - 32px); overflow-y: auto;
}
.acct-modal__body p, .push-modal__description, .support-close-modal__body { font-size: 1rem; }
.acct-field span, .acct-modal__field span { color: var(--text); font-size: .875rem; font-weight: 500; }
.acct-field input, .acct-field select, .acct-modal__input {
  min-height: 48px; font-size: 1rem; background: var(--bg-card);
  border: 1px solid var(--select-border); border-radius: 12px; color: var(--text);
}
.acct-field input::placeholder, .acct-modal__input::placeholder { color: var(--text-dim); opacity: 1; }
.acct-field input:focus, .acct-field select:focus, .acct-modal__input:focus {
  outline: 3px solid var(--focus-ring); outline-offset: 2px; border-color: var(--focus-ring); box-shadow: none;
}
.nav-link:focus-visible, .nav-user:focus-visible, .lang-option:focus-visible,
.feature-quicknav__link:focus-visible, .footer__links a:focus-visible {
  outline: 3px solid var(--focus-ring); outline-offset: 3px; box-shadow: none;
}
.push-modal__close, .dl-dialog__close, .acct-recaptcha-modal__close,
.support-close-modal__close { min-width: 44px; min-height: 44px; }
.star-rating--interactive { display: flex; justify-content: center; gap: 4px; flex-wrap: wrap; }
.star-rating--interactive button.star-rating__star {
  width: 44px; min-height: 44px; border: 1px solid var(--border); border-radius: 10px;
  background: var(--bg-card); color: var(--text-muted); padding: 0; font-size: 1.5rem;
}
.star-rating--interactive button.star-rating__star--filled,
.star-rating--interactive button.star-rating__star:hover { color: var(--warning-ink); }
::-webkit-scrollbar-thumb { background: #85858b; }

/* One light palette continues from editorial pages into every customer workflow. */
.nav, .nav.scrolled {
  background: rgba(250,250,252,.92);
  border-color: #d2d2d7;
  backdrop-filter: saturate(180%) blur(20px);
  -webkit-backdrop-filter: saturate(180%) blur(20px);
  box-shadow: none;
}
.nav__inner, .nav.scrolled .nav__inner { max-width: 1200px; min-height: 64px; padding-block: 6px; }
.nav .tonvera-wordmark { color: #1d1d1f; font-size: 1rem; letter-spacing: .035em; }
.nav-link { color: #414145; font-size: .75rem; font-weight: 400; }
.nav-link:hover, .nav-link:focus-visible, .nav-link.active { color: #000; }
.nav-link::after { display: none; }
.nav-user, .nav-menu-toggle, .lang-switcher {
  color: #414145; background: transparent; border-color: transparent; border-radius: 12px;
  box-shadow: none;
}
.nav-user:hover, .nav-user:focus-visible, .nav-menu-toggle:hover, .lang-switcher:hover { color: #1d1d1f; background: #e8e8ed; border-color: transparent; box-shadow: none; }
.nav-user svg, .nav-menu-toggle__icon i { color: #414145; }
.nav-menu-toggle__icon i { background: #414145; }
.lang-switcher__icon { color: #414145; }
.lang-switcher::after { border-right-color: #414145; border-bottom-color: #414145; }
.lang-dropdown__trigger, .lang-dropdown__trigger:hover, .lang-dropdown__trigger:focus { color: #414145; }
.lang-dropdown__menu { color: #1d1d1f; background: #fff; border-color: #d2d2d7; box-shadow: 0 12px 36px #0002; }
.lang-option { color: #414145; }
.lang-option:hover, .lang-option:focus { color: #1d1d1f; background: #f5f5f7; border-color: transparent; }
.lang-option.active { color: #fff; background: #0071e3; border-color: #0071e3; }

#spa-landing { background: #fff; }
#spa-landing .container { width: min(1200px, 100% - 80px); }
#spa-landing .not-found { background: #fff; border-color: #d2d2d7; box-shadow: none; backdrop-filter: none; text-align: left; }
#spa-landing .not-found__title { color: #1d1d1f; letter-spacing: -.04em; min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
#spa-landing .not-found__eyebrow { color: #606066; }
#spa-landing .not-found .btn--primary { background: #0071e3; border-color: #0071e3; color: #fff; }
#spa-landing .not-found .btn--ghost { background: #fff; border-color: #0066cc; color: #0066cc; }
.hero.hero--landing {
  background: #f5f5f7; padding: 136px 40px 64px;
  gap: 48px; display: flex; flex-direction: column; align-items: center;
}
.hero--landing .hero__inner.container { width: 100%; max-width: 1060px; gap: 0; }
.hero--landing .hero__badge { display: none; }
.hero--landing .hero__logo.tonvera-display { font-size: 1.25rem; font-weight: 600; letter-spacing: .055em; }
.hero--landing .brand-continuity { font-size: .8125rem; margin: 6px 0 0; }
.hero--landing .hero__strapline {
  margin-top: 28px; max-width: min(100%, 17ch); font-size: clamp(3.5rem, 6.2vw, 6rem);
  font-weight: 650; line-height: 1.04; letter-spacing: -.055em; color: #1d1d1f;
}
.hero--landing .hero__subtitle { max-width: min(100%, 48ch); margin: 24px 0; font-size: 1.3125rem; line-height: 1.5; color: #606066; }
.brand-explore {
  padding: 11px 22px; gap: 12px; background: #0071e3; color: #fff;
  border-color: #0071e3; font-size: 1rem; font-weight: 400; min-height: 48px;
}
.brand-explore:hover { background: #0066cc; color: #fff; }
.brand-explore:active { background: #0055ad; }
.landing-product-nav {
  display: flex; justify-content: center; flex-wrap: wrap; gap: 0;
  width: auto; max-width: 100%; margin: 30px 0 0;
}
.landing-product-nav__item {
  display: flex; gap: 10px; min-height: 44px; padding: 6px 20px;
  border: 0; border-right: 1px solid #d2d2d7; border-radius: 0;
  background: transparent; box-shadow: none;
}
.landing-product-nav__item:last-child { border-right: 0; }
.landing-product-nav__item:hover { background: transparent; border-color: #d2d2d7; }
.landing-product-nav__copy strong { color: #414145; font-size: .8125rem; font-weight: 500; }
.landing-product-nav__copy small { display: none; }
.landing-product-nav__arrow { color: #0066cc; }
.hero__product-shot { width: min(1200px, 100%); margin: 0; position: relative; }
.hero__product-shot picture {
  display: block; overflow: hidden; border: 8px solid #e8e8ed; border-radius: 18px;
  background: #f5f5f7; box-shadow: 0 24px 54px -24px #0003;
}
.hero__product-shot img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: contain; }
.hero__product-shot figcaption {
  display: flex; justify-content: center; gap: 12px; flex-wrap: wrap;
  margin-top: 24px; color: #67676d; font-size: .8125rem; line-height: 1.5;
}
.hero__product-shot figcaption > span:first-child { color: #414145; font-weight: 500; }
.brand-chapter {
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); column-gap: 100px;
  padding-block: 76px; border: 0;
}
.brand-chapter > .section-tag { grid-column: 1; margin-bottom: 8px; color: #67676d; }
.brand-chapter h2 { grid-column: 1; font-size: 2rem; line-height: 1.15; font-weight: 600; }
.brand-chapter > p:last-child { grid-column: 2; grid-row: 1 / 3; align-self: center; max-width: 52ch; font-size: 1.0625rem; }
#spa-landing .products { background: #fff; padding: 40px 0 100px; }
#spa-landing .products > .container { width: min(1440px, 100% - 48px); }
#spa-landing .products .section-header { max-width: 1200px; margin: 0 auto 48px; padding-inline: 16px; }
#spa-landing .section-header::before { display: none; }
#spa-landing .section-tag { color: #606066; font-size: 1rem; font-weight: 500; margin-bottom: 16px; }
#spa-landing .section-title { max-width: min(100%, 24ch); font-size: clamp(2.25rem, 4vw, 3.5rem); line-height: 1.1; font-weight: 600; text-wrap: balance; overflow-wrap: anywhere; }
#spa-landing .product-grid { grid-template-columns: minmax(0, 1fr); gap: 24px; margin: 0; }
#spa-landing .product-card {
  display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  align-items: center; min-height: 550px; gap: 36px; padding: 64px;
  border: 0; border-radius: 0; background: #f5f5f7; box-shadow: none; transition: none;
}
#spa-landing .product-card:hover { transform: none; box-shadow: none; }
#spa-landing .product-card__body { grid-column: 1; grid-row: 1; padding: 0; gap: 18px; }
#spa-landing .product-card__media { grid-column: 2; grid-row: 1; aspect-ratio: auto; border: 0; background: transparent; overflow: visible; }
#spa-landing .product-card__media picture { display: block; border: 5px solid #e8e8ed; border-radius: 12px; overflow: hidden; background: #f5f5f7; box-shadow: 0 24px 40px -22px #0003; }
#spa-landing .product-card__media img { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: contain; }
#spa-landing .product-card__title { font-size: clamp(2rem, 3vw, 3rem); line-height: 1.1; letter-spacing: -.045em; text-shadow: none; }
#spa-landing .product-card__body p { min-height: 0; max-width: 42ch; font-size: 1.1875rem; line-height: 1.5; margin: 0; overflow: visible; }
#spa-landing .product-card__body .brand-continuity { font-size: .8125rem; margin-top: -10px; }
#spa-landing .product-card__tag { color: #78523a; font-size: .875rem; letter-spacing: 0; text-transform: none; }
#spa-landing .product-card__link { color: #0066cc; font-size: 1.0625rem; font-weight: 400; margin-top: 6px; }
#spa-landing .product-card__link:hover { text-decoration: underline; text-underline-offset: 4px; }
#spa-landing .product-card--bass { background: #edf4f2; grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); }
#spa-landing .product-card--bass .product-card__body { grid-column: 2; }
#spa-landing .product-card--bass .product-card__media { grid-column: 1; }
#spa-landing .product-card--bass .product-card__tag { color: #176b65; }
#spa-landing .product-card--stage {
  grid-template-columns: minmax(0, 1fr); background: #f3f0f8; color: var(--text); padding: 76px 88px; gap: 44px;
}
#spa-landing .product-card--stage .product-card__body { grid-column: 1; grid-row: 1; align-items: center; text-align: center; }
#spa-landing .product-card--stage .product-card__body p { max-width: 52ch; }
#spa-landing .product-card--stage .product-card__media { grid-column: 1; grid-row: 2; }
#spa-landing .product-card--stage .product-card__title { font-size: clamp(2.5rem, 4.5vw, 4.5rem); }
#spa-landing .product-card--stage .product-card__tag { color: #66508d; }
#spa-landing .product-card--stage .product-card__link { color: #0066cc; }
#spa-landing .product-card--band { background: #f5f5f7; }
#spa-landing .product-card--band .product-card__tag { color: #556828; }

.brand-story { position: relative; overflow: hidden; background: var(--bg-deep); color: var(--text); }
.brand-story__copy { position: relative; z-index: 1; padding-block: 96px 64px; text-align: center; }
#spa-landing .brand-story .section-tag { color: var(--text-muted); }
.brand-story__copy h2 { max-width: 19ch; margin-inline: auto; font-size: clamp(2.5rem, 4.8vw, 4.75rem); line-height: 1.08; letter-spacing: -.045em; font-weight: 600; text-wrap: balance; overflow-wrap: anywhere; }
.brand-story__copy > p:last-child { max-width: 58ch; margin: 24px auto 0; color: var(--text-muted); font-size: 1.1875rem; line-height: 1.55; }
.brand-story__art { width: min(1440px, 100%); margin: 0 auto; }
.brand-story__art picture, .brand-story__art img { display: block; width: 100%; }
.brand-story__art img { height: auto; aspect-ratio: 2 / 1; object-fit: cover; object-position: center 48%; }
#spa-landing .community-landing { padding: 100px 0; background: #f5f5f7; border: 0; }
#spa-landing .community-landing .section-header { margin-bottom: 24px; }
#spa-landing .community-landing .section-title { margin-inline: auto; }
#spa-landing .community-landing__desc { color: #606066; font-size: 1.1875rem; line-height: 1.55; }
#spa-landing .community-landing .btn { color: #fff; background: #0071e3; border-color: #0071e3; box-shadow: none; }

/* Product detail pages keep the same light shell; images retain their actual colors. */
.hero:not(.hero--landing) { background: #f5f5f7; padding: 128px 32px 80px; min-height: 0; }
.hero:not(.hero--landing) .hero__inner { width: min(1200px, 100%); max-width: 1200px; gap: 14px; }
.hero:not(.hero--landing) .hero__title { color: #1d1d1f; }
.hero:not(.hero--landing) .hero__title em { color: #1d1d1f; font-weight: 650; font-size: clamp(4rem, 8vw, 7.5rem); }
.hero:not(.hero--landing) .hero__by { color: #606066; }
.hero:not(.hero--landing) .hero__subtitle { color: #606066; font-size: 1.3125rem; max-width: min(100%, 50ch); margin: 8px auto; }
.hero:not(.hero--landing) .hero__cta { margin-top: 12px; gap: 20px; }
.hero:not(.hero--landing) :is(.btn--primary, .btn--band) { color: #fff; background: #0071e3; border-color: #0071e3; box-shadow: none; text-shadow: none; }
.hero:not(.hero--landing) :is(.btn--ghost, .btn--band-ghost) { color: #0066cc; background: transparent; border-color: transparent; box-shadow: none; }
.hero__title--band em { display: block; }
.band-grid { display: none; }
.hero:not(.hero--landing) .hero__keyvisual { display: none; }
.hero:not(.hero--landing) .hero__mockup { width: 100%; max-width: 1200px; margin-top: 40px; padding: 0; transform: none; opacity: 1; }
.hero:not(.hero--landing) .hero__mockup-frame { border: 8px solid #e8e8ed; border-radius: 18px; padding: 0; background: #f5f5f7; box-shadow: 0 24px 54px -24px #0003; transform: none; }
.hero:not(.hero--landing) .hero__mockup-frame img { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: contain; transform: none; opacity: 1; border-radius: 0; }
.hero__mockup-glow, .hero__mockup-reflection { display: none; }
.features, .stage-features, .band-features, .specs, .download, .stage-release, .band-download { background: var(--bg-deep); }
.specs, .stage-release, .band-download { background: var(--bg-mid); }
.features { padding-block: 100px 48px; }
.feature-block__media { background: var(--bg-mid); border: 1px solid var(--border); padding: 0; animation: none; box-shadow: none; border-radius: 14px; }
.feature-block__media img, .feature-block__media:hover img { aspect-ratio: 16 / 9; object-fit: contain; transform: none; border-radius: 0; }
.feature-block__scan, .download__bg { display: none; }
.feature-block__body h3, .spec-item h4 { color: var(--text); text-shadow: none; }
.feature-block__eyebrow { padding: 0; color: var(--text-muted); background: none; font-size: .9375rem; font-weight: 500; letter-spacing: 0; text-transform: none; }
.feature-tag, .feature-quicknav__link, .spec-item, .dl-latest, .dl-requirements { background: var(--bg-card); color: var(--text); border-color: var(--border); box-shadow: none; }
.feature-quicknav { padding: 12px; background: var(--bg-mid); }
.feature-quicknav__link:hover, .feature-quicknav__link:focus-visible { color: var(--info-ink); background: var(--info-surface); border-color: var(--pink); }
.dl-latest__version { color: var(--text); background: none; -webkit-text-fill-color: currentColor; filter: none; animation: none; }
/* Copper is a light surface: download labels need dark ink in every state. */
.download :is(.dl-btn--win, .dl-latest__badge) { color: #151719; text-shadow: none; box-shadow: none; }
.footer, .footer--legal { background: #f5f5f7; border-color: #d2d2d7; padding-block: 56px 32px; }
.footer .tonvera-wordmark { color: #1d1d1f; font-size: 1.125rem; }
.footer__brand p, .footer__copy, .footer__links a, .footer__email, .footer__brand .brand-continuity { color: #606066; }
.footer__links a:hover, .footer__links a:focus-visible, .footer__email:hover, .footer__email:focus-visible { color: #0066cc; text-shadow: none; }
.footer__push { color: #414145; background: transparent; border-color: #b4b4bc; box-shadow: none; }
.footer__push:hover, .footer__push:focus-visible { color: #1d1d1f; background: #e8e8ed; border-color: #b4b4bc; box-shadow: none; }
.footer__copy { border-color: #d2d2d7; }

/* Detailed product surfaces, including secondary downloads and history states. */
.feature-tag { color: var(--product-accent); background: var(--bg-mid); }
.spec-item:hover, .spec-item--band:hover { border-color: var(--select-border); box-shadow: none; }
.spec-item--band .spec-item__icon { color: var(--product-accent); background: #eef3e6; border-color: var(--border); }
.specs__grid { scrollbar-color: #85858b var(--bg-mid); }
.specs__grid::-webkit-scrollbar-track { background: var(--bg-mid); }
.specs__grid::-webkit-scrollbar-thumb { background: #85858b; }
.band-requirements, .dl-history { background: var(--bg-card); border-color: var(--border); box-shadow: none; }
.band-requirements__grid > div, .dl-requirement { background: var(--bg-mid); border-color: var(--border); }
.band-requirements h3, .dl-requirements__header h3, .dl-requirement strong { color: var(--text); }
.band-requirements__grid span { color: var(--text-muted); }
.download :is(.dl-btn--offline, .dl-btn--mac, .dl-btn--ipad, .dl-btn--cc) {
  background: var(--bg-card); color: var(--pink); border-color: var(--border); box-shadow: none; text-shadow: none;
}
.download :is(.dl-btn--offline, .dl-btn--mac, .dl-btn--ipad):not(.dl-btn--disabled):hover,
.download .dl-btn--cc:hover, .dl-table__link:hover {
  background: var(--info-surface); color: var(--info-ink); border-color: var(--pink); box-shadow: none;
}
.dl-history__toggle:hover, .dl-history__toggle[aria-expanded="true"] { color: var(--text); background: var(--bg-mid); }
.dl-table th, .dl-table td { border-color: var(--border); }
.dl-table__ver { background: none; color: var(--text); -webkit-text-fill-color: currentColor; }
.dl-table__link { background: var(--bg-card); color: var(--pink); border-color: var(--border); }
.dl-loading__spinner, .acct-spinner { border-color: var(--border); border-top-color: var(--pink); }

/* Customer accounts, authentication and the preset community share solid surfaces. */
.acct .btn, .acct-modal .btn, .acct-recaptcha-modal .btn,
.acct-tab-btn, .acct-page-btn, .acct-sidebar__link {
  min-width: 0; max-width: 100%; min-height: 44px; height: auto;
  white-space: normal; overflow-wrap: anywhere; text-align: center; line-height: 1.45;
}
.acct .btn > span, .acct-modal .btn > span, .acct-recaptcha-modal .btn > span { min-width: 0; }
.acct .btn > svg, .acct-modal .btn > svg, .acct-recaptcha-modal .btn > svg { flex-shrink: 0; }
.acct-modal__actions { flex-wrap: wrap; }
.acct-modal__actions .btn { flex: 1 1 140px; }
.acct-card__head h1, .acct-dash__head h1, .acct-dash__section-head h2,
.acct-dash__link-card h2, .acct-modal__box h3, .acct-recaptcha-modal__dialog h2 {
  min-width: 0; max-width: 100%; white-space: normal; overflow-wrap: anywhere;
}
.acct-card__head h1, .acct-dash__head h1, .acct-dash__section-head h2,
.acct-passkey-card__body strong, .acct-product-card__info strong,
.acct-device-card__top strong, .acct-dash__link-card h2,
.acct-preset-card__head strong, .acct-preset__info strong,
.acct-modal__box h3, .acct-recaptcha-modal__dialog h2,
.pack-card__name, .community-card__name { color: var(--text); }
.acct-passkey-card, .acct-preset, .pack-detail__item { background: var(--bg-mid); border-color: var(--border); }
.acct-product-card:hover, .acct-preset-card:hover, .acct-preset:hover,
.community-card:hover, .pack-card:hover { border-color: var(--select-border); }
.acct-preset-card--imported { border-color: var(--border); }
.acct-preset--fav { border-color: var(--warning-ink); }
.acct-sso-context, .acct-passkey-card__icon { background: var(--info-surface); color: var(--info-ink); border-color: var(--border); }
.acct-sso-context span { color: var(--info-ink); filter: none; }
.acct-auth-divider::before, .acct-auth-divider::after { background: var(--border); }
.acct-passkey-login, .acct-product-card__icon, .acct-preset__tag { background: var(--bg-mid); color: var(--text-muted); border-color: var(--border); }
.acct-passkey-login:hover { background: var(--info-surface); color: var(--info-ink); border-color: var(--pink); }
.acct-resend-btn:disabled, .acct-resend-btn[aria-disabled="true"],
.acct-resend-btn:disabled:hover, .acct-resend-btn[aria-disabled="true"]:hover {
  color: var(--text-muted); background: var(--bg-mid); border-color: var(--border); box-shadow: none;
}
.acct-tab-btn, .acct-page-btn { min-height: 44px; background: var(--bg-card); color: var(--text-muted); border-color: var(--border); }
.acct-tab-btn:hover, .acct-tab-btn--active, .acct-page-btn:hover, .acct-page-btn--active,
.acct-sidebar__link--active, .acct-sidebar__link--active svg {
  color: var(--info-ink); background: var(--info-surface); border-color: var(--pink);
}
.acct-sidebar__link { color: var(--text-muted); min-height: 44px; }
.acct-sidebar__link:hover, .acct-dash__link-card:hover { background: var(--bg-mid); color: var(--text); }
.acct-card__links a:hover, .acct-card__footer a:hover, .acct-back:hover { color: var(--info-ink); }
.acct-nickname__display { background: none; color: var(--text); -webkit-text-fill-color: currentColor; }
.acct-share-code { background: var(--bg-mid); color: var(--text); }
.acct-device-bar { background: var(--bg-dark); }
.acct-device-bar__fill { background: var(--success-ink); }
.pack-card__cover { background: var(--bg-mid); }
.pack-card__meta, .pack-detail__size, .community-card__author, .community-card__stats,
.star-rating__avg, .star-rating__count { color: var(--text-muted); }
.community-card__heart, .star-rating__star { color: var(--text-dim); }
.community-card__heart:hover, .community-card__heart--liked { color: var(--danger-ink); }
.star-rating__star--filled, .star-rating--interactive .star-rating__star:hover { color: var(--warning-ink); }
.acct-preset__origin { color: var(--info-ink); background: var(--info-surface); }
.acct-preset__published { color: var(--success-ink); border-color: var(--success-ink); }
.acct-alert { color: var(--text); background: var(--bg-mid); border-color: var(--border); }
.acct-alert--success, .acct-badge--active { color: var(--success-ink); background: var(--success-surface); border-color: var(--success-ink); }
.acct-alert--error, .acct-badge--expired { color: var(--danger-ink); background: var(--danger-surface); border-color: var(--danger-ink); }
.acct-passkey-otp__feedback { color: var(--info-ink); }
.acct-passkey-otp__feedback--error { color: var(--danger-ink); }
.acct-preset__delete { color: var(--danger-ink) !important; border-color: var(--danger-ink) !important; }
.acct-preset__delete:hover { background: var(--danger-surface) !important; }
.acct-recaptcha-modal[data-state="error"] .acct-recaptcha-modal__status,
.acct-recaptcha-modal[data-state="expired"] .acct-recaptcha-modal__status { color: var(--danger-ink) !important; }

/* Inputs and the shared custom listbox keep the same palette in all states. */
.community-search, .support-field input, .support-field textarea, .support-reply textarea {
  background: var(--bg-card); color: var(--text); border: 1px solid var(--select-border); border-radius: 12px; font-size: 1rem;
}
.community-search, .support-field input, .noah-select__trigger { min-height: 48px; }
.community-search::placeholder, .support-field input::placeholder,
.support-field textarea::placeholder, .support-reply textarea::placeholder { color: var(--text-dim); opacity: 1; }
.community-search:focus, .support-field input:focus, .support-field textarea:focus, .support-reply textarea:focus {
  border-color: var(--focus-ring); outline: 3px solid var(--focus-ring); outline-offset: 2px; box-shadow: none;
}
.noah-select__trigger, .noah-select__trigger:hover { background: var(--bg-card); color: var(--text); border-color: var(--select-border); box-shadow: none; }
.noah-select__arrow { color: var(--text-muted); filter: none; }
.noah-select__trigger:focus-visible, .noah-select--open .noah-select__trigger { border-color: var(--focus-ring); box-shadow: 0 0 0 3px var(--select-ring); }
.noah-select--invalid .noah-select__trigger { border-color: var(--danger-ink); }
.noah-select__menu { background: var(--select-surface); color: var(--text); color-scheme: light; border-color: var(--border); box-shadow: 0 12px 36px #0002; scrollbar-color: #85858b transparent; }
.noah-select__option { min-height: 44px; color: var(--text); }
.noah-select__option:hover, .noah-select__option:focus-visible, .noah-select__option--highlighted {
  background: var(--select-option-hover); color: var(--info-ink); border-color: transparent;
}
.noah-select__option[aria-selected="true"] { background: var(--action); color: #fff; border-color: var(--action); box-shadow: none; }
.noah-select__check { color: currentColor; }

/* Dialog content stays white; only the backdrop is a translucent scrim. */
.acct-modal__backdrop, .acct-recaptcha-modal__backdrop, .push-modal__backdrop,
.dl-dialog__backdrop, .support-close-modal__backdrop { background: rgba(29,29,31,.4); backdrop-filter: none; -webkit-backdrop-filter: none; }
.push-modal h2, .dl-dialog__name, .dl-dialog__pct, .support-close-modal__dialog h2 { color: var(--text); }
.push-modal__close, .dl-dialog__close, .acct-recaptcha-modal__close { color: var(--text-muted); background: var(--bg-mid); }
.push-modal__close:hover, .dl-dialog__close:hover, .acct-recaptcha-modal__close:hover,
.acct-recaptcha-modal__close:focus-visible { color: var(--text); background: var(--bg-dark); }
.push-modal__icon, .dl-dialog__icon { background: var(--info-surface); color: var(--info-ink); }
.push-modal__products legend, .dl-dialog__label, .dl-dialog__size { color: var(--text-muted); font-size: .8125rem; letter-spacing: 0; text-transform: none; }
.push-product { color: var(--text); background: var(--bg-mid); border-color: var(--border); min-height: 44px; }
.push-product:has(input:checked) { color: var(--info-ink); background: var(--info-surface); border-color: var(--pink); }
.push-product input { accent-color: var(--pink); }
.push-modal__hint { color: var(--warning-ink); background: var(--warning-surface); border-color: var(--warning-ink); }
.push-modal__status, .dl-dialog--done .dl-dialog__label, .dl-dialog__complete-text { color: var(--success-ink); }
.dl-dialog__check { color: var(--success-ink); background: var(--success-surface); }
.push-modal__status--error, .push-modal__disable, .push-modal__disable:hover,
.dl-dialog--error .dl-dialog__label, .dl-dialog__error-text { color: var(--danger-ink); }
.dl-dialog__bar { background: var(--bg-dark); }
.dl-dialog__fill { background: var(--action); }
.dl-dialog__retry-btn, .dl-dialog__retry-btn:hover { min-height: 44px; color: var(--danger-ink); background: var(--danger-surface); border-color: var(--danger-ink); }

/* Support inbox, conversations and close-ticket confirmation. */
.support-head h1, .support-detail-head h1, .support-panel__head h2,
.support-ticket__body > strong, .support-empty h2, .support-message__head strong,
.support-reply > label, .support-field { color: var(--text); }
.support-eyebrow, .support-ticket__kind { color: var(--pink); }
.support-panel__head, .support-list__more, .support-ticket, .support-reply { border-color: var(--border); }
.support-panel__head > span { color: var(--text-muted); background: var(--bg-mid); }
.support-ticket:hover, .support-ticket:focus-visible { background: var(--bg-mid); }
.support-ticket__accent { background: var(--action); box-shadow: none; }
.support-ticket__chevron { color: var(--text-muted); }
.support-status { color: var(--info-ink); background: var(--info-surface); border-color: var(--info-ink); }
.support-status--in_progress, .support-status--pending, .support-status--awaiting_staff { color: var(--warning-ink); background: var(--warning-surface); border-color: var(--warning-ink); }
.support-status--awaiting_user, .support-status--waiting_user, .support-status--awaiting_customer { color: var(--danger-ink); background: var(--danger-surface); border-color: var(--danger-ink); }
.support-status--resolved { color: var(--success-ink); background: var(--success-surface); border-color: var(--success-ink); }
.support-status--closed { color: var(--text-muted); background: var(--bg-mid); border-color: var(--border); }
.support-empty__icon { color: var(--info-ink); background: var(--info-surface); }
.support-back:hover { color: var(--info-ink); }
.support-upload__button, .support-upload__files li { color: var(--text); background: var(--bg-mid); border-color: var(--border); }
.support-upload__button:hover { color: var(--info-ink); background: var(--info-surface); border-color: var(--pink); }
.support-safety { color: var(--warning-ink); background: var(--warning-surface); border-color: var(--warning-ink); }
.support-safety svg { color: var(--warning-ink); }
.support-message:not(:last-child)::before { background: var(--border); }
.support-message__avatar, .support-message--team .support-message__avatar { color: var(--info-ink); background: var(--info-surface); border-color: var(--border); }
.support-message__content { background: var(--bg-card); border-color: var(--border); }
.support-message--team .support-message__content { background: var(--info-surface); border-color: var(--border); }
.support-message__body { color: var(--text); }
.support-attachment { color: var(--pink); background: var(--bg-mid); border-color: var(--border); }
.support-attachment:hover { color: var(--info-ink); background: var(--info-surface); border-color: var(--pink); }
.support-closed { color: var(--success-ink); background: var(--success-surface); border-color: var(--success-ink); }
.support-closed strong, .support-closed p { color: var(--success-ink); }
.support-close-button, .support-close-button:hover, .support-close-button:focus-visible, .support-close-modal__icon { color: var(--danger-ink); background: var(--danger-surface); border-color: var(--danger-ink); }
.support-close-modal__warning { color: var(--danger-ink); }
.support-close-modal__confirm { color: #fff; background: var(--danger-ink); border-color: var(--danger-ink); }
.support-close-modal__confirm:hover, .support-close-modal__confirm:focus-visible { color: #fff; background: #902039; border-color: #902039; }
.support-details dd { color: var(--text); }
.support-details dt { color: var(--text-muted); font-size: .8125rem; letter-spacing: 0; text-transform: none; }

/* Legal documents and MIDI reference tables use paper-like reading surfaces. */
.legal-hero { border-color: var(--border); backdrop-filter: none; }
.legal-hero__brand img { filter: none; }
.legal-hero__link:hover, .legal-hero__link:focus-visible, .legal-hero__link--active { background: var(--info-surface); color: var(--info-ink); border-color: var(--pink); box-shadow: none; }
.legal-card h1, .legal-card h2, .legal-card h3 { color: var(--text); }
.legal-card h1 { letter-spacing: -.035em; }
.legal-card code { background: var(--bg-mid); color: var(--text); }
.cc-page, .cc-hero, .cc-main { background: var(--bg-mid); }
.cc-hero__title { background: none; color: var(--text); -webkit-text-fill-color: currentColor; letter-spacing: -.035em; }
.cc-snav { background: var(--bg-mid); }
.cc-snav__btn { min-height: 44px; display: inline-flex; align-items: center; font-size: .8125rem; letter-spacing: 0; text-transform: none; }
.cc-snav__btn:hover, .cc-snav__btn.active { color: var(--info-ink); background: var(--info-surface); border-color: var(--pink); }
.cc-leg, .cc-card__head { background: var(--bg-card); border-color: var(--border); }
.cc-card__count { background: var(--bg-mid); color: var(--text-muted); }
.cc-leg__dot { box-shadow: none; }
.cc-row, .cc-pc-row { border-color: var(--border); }
.cc-row:hover, .cc-pc-row:hover, .cc-note-card:hover { background: var(--bg-mid); }
.cc-notes-grid { background: var(--border); }
.cc-note-card { border-radius: 0; }
.cc-badge, .cc-chip--on, .cc-chip--zone { color: var(--cyan); background: #edf4f2; border-color: var(--cyan); box-shadow: none; }
.cc-chip--range, .cc-chip--bump { color: var(--violet); background: #f3f0f8; border-color: var(--violet); }
.cc-chip--off { color: var(--danger-ink); background: var(--danger-surface); border-color: var(--danger-ink); }

@media (max-width: 1000px) {
  #spa-landing .product-card { padding: 44px 32px; gap: 30px; min-height: 460px; }
  #spa-landing .product-card--stage { padding: 64px 48px; }
  .brand-chapter { column-gap: 48px; }
}
@media (max-width: 860px) {
  .nav-links {
    color: #1d1d1f; background: #fff; border-color: #d2d2d7;
    /* Visibility must switch synchronously so a fast Tab enters the open menu. */
    transition: opacity var(--transition), transform var(--transition);
  }
  .nav-link:hover, .nav-link:focus-visible, .nav-link.active { color: #1d1d1f; background: #f5f5f7; }
  .hero.hero--landing { padding: 112px 24px 48px; gap: 40px; }
  .hero--landing .hero__strapline { font-size: clamp(3rem, 7vw, 4.25rem); }
  #spa-landing .container { width: calc(100% - 48px); }
  #spa-landing .hero__inner.container { width: 100%; }
  .brand-chapter { grid-template-columns: 1fr; gap: 14px; padding-block: 56px; }
  .brand-chapter > .section-tag, .brand-chapter h2, .brand-chapter > p:last-child { grid-column: 1; grid-row: auto; }
  #spa-landing .product-card, #spa-landing .product-card--bass { grid-template-columns: minmax(0, 1fr); padding: 52px 32px; gap: 36px; }
  #spa-landing .product-card .product-card__body { grid-column: 1; grid-row: 1; align-items: center; text-align: center; }
  #spa-landing .product-card .product-card__media { grid-column: 1; grid-row: 2; }
  #spa-landing .product-card__title { font-size: 2.75rem; }
  .hero:not(.hero--landing) { padding: 112px 24px 56px; }
}
@media (max-width: 600px) {
  .nav__inner, .nav.scrolled .nav__inner { min-height: 64px; }
  .hero.hero--landing { padding: 108px 20px 40px; gap: 32px; }
  .hero--landing .hero__strapline { font-size: clamp(2.6rem, 10.5vw, 3.5rem); line-height: 1.07; margin-top: 24px; }
  .hero--landing .hero__subtitle { font-size: 1.0625rem; margin: 20px 0; }
  .landing-product-nav { margin-top: 24px; }
  .landing-product-nav__item { padding: 6px 10px; gap: 6px; }
  .landing-product-nav__copy strong { font-size: .75rem; }
  .hero__product-shot picture, .hero:not(.hero--landing) .hero__mockup-frame { border-width: 4px; border-radius: 10px; }
  .hero__product-shot figcaption { font-size: .75rem; margin-top: 16px; gap: 4px 10px; }
  #spa-landing .container { width: calc(100% - 40px); }
  #spa-landing .products { padding: 24px 0 56px; }
  #spa-landing .products > .container { width: 100%; }
  #spa-landing .products .section-header { padding: 0 24px; margin-bottom: 32px; }
  #spa-landing .product-grid { gap: 12px; }
  #spa-landing .product-card { padding: 44px 20px; gap: 28px; }
  #spa-landing .product-card__title { font-size: 2.25rem; overflow-wrap: anywhere; }
  #spa-landing .product-card__body p { font-size: 1.0625rem; }
  #spa-landing .product-card__media picture { border-width: 4px; border-radius: 10px; }
  .brand-chapter { padding-block: 48px; }
  .brand-chapter h2 { font-size: 1.75rem; }
  .brand-story__copy { padding-block: 56px 36px; }
  .brand-story__copy h2 { font-size: 2.5rem; }
  .brand-story__copy > p:last-child { font-size: 1.0625rem; }
  .brand-story__art img { aspect-ratio: 1.2; object-position: 57% center; }
  #spa-landing .community-landing { padding: 64px 0; }
  #spa-landing .community-landing__desc { font-size: 1.0625rem; }
  #spa-landing .community-landing__cta { flex-direction: column; align-items: center; }
  #spa-landing .community-landing__cta .btn {
    width: min(100%, 420px); min-width: 0; max-width: 100%;
    white-space: normal; overflow-wrap: anywhere; text-align: center; line-height: 1.45;
  }
  .hero:not(.hero--landing) { padding: 108px 20px 48px; }
  .hero:not(.hero--landing) .hero__title em { font-size: clamp(3.5rem, 14vw, 5rem); }
  .hero:not(.hero--landing) .hero__subtitle { font-size: 1.0625rem; }
  .hero:not(.hero--landing) .hero__cta { gap: 8px; }
  .hero .btn, .stage-release .btn {
    min-width: 0; max-width: 100%; white-space: normal;
    overflow-wrap: anywhere; text-align: center; line-height: 1.45;
  }
  .footer { padding-block: 40px 24px; }
}

/* Preference-aware alternatives keep the interface usable without effects. */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  [data-reveal] { opacity: 1 !important; transform: none !important; }
  .hero__mockup, .hero__mockup-frame, .hero__mockup img { transform: none !important; opacity: 1 !important; }
}
@media (prefers-reduced-transparency: reduce), (prefers-contrast: more) {
  .nav, .nav.scrolled { background: #f5f5f7; backdrop-filter: none; -webkit-backdrop-filter: none; }
  .lang-dropdown__menu, .nav-links { background: #fff; }
}
@media (prefers-contrast: more) {
  :root { --text-muted: #414145; --text-dim: #414145; --border: #77777e; }
  .product-card, .hero__keyvisual, .landing-product-nav__item { border-color: var(--border); }
}
@media (forced-colors: active) {
  :where(a, button, input, textarea, select, [tabindex]):focus-visible { outline-color: Highlight !important; }
  .brand-explore, .btn, .product-card, .landing-product-nav__item { border: 1px solid ButtonText; }
  .noah-select__trigger, .noah-select__menu, .noah-select__option { background: Canvas; color: CanvasText; forced-color-adjust: auto; }
  .noah-select__option[aria-selected="true"] { background: Highlight; color: HighlightText; }
}
