/* LuminaQA monochrome design system. Loaded after the legacy layout sheet. */
:root {
    --bg-base: #fff;
    --bg-surface: #fff;
    --bg-surface-strong: #f5f5f7;
    --bg-surface-glass: #fff;
    --bg-elevated: #f5f5f7;
    --bg-panel-highlight: #f5f5f7;
    --bg-panel-highlight-strong: #ededed;
    --bg-purple-highlight: #f5f5f7;
    --accent-cyan: #171717;
    --accent-cyan-rgb: 23, 23, 23;
    --accent-cyan-dim: #f0f0f0;
    --accent-purple: #171717;
    --accent-purple-rgb: 23, 23, 23;
    --accent-purple-dim: #ededed;
    --accent-green: #292929;
    --accent-green-rgb: 41, 41, 41;
    --accent-green-dim: #ededed;
    --text-primary: #1d1d1f;
    --text-secondary: #48484a;
    --text-muted: #606064;
    --border-color: #d9d9dc;
    --border-radius-sm: 10px;
    --border-radius-md: 16px;
    --border-radius-lg: 24px;
    --shadow-soft: 0 12px 32px rgba(0, 0, 0, .055);
    --shadow-glow-cyan: none;
    --shadow-glow-purple: none;
    --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Roboto, Arial, sans-serif;
    --transition-fast: .2s ease;
    --transition-normal: .24s ease;
}

* { -webkit-tap-highlight-color: rgba(0, 0, 0, .08); }
html { scroll-behavior: smooth; }
body { background: #fff; color: var(--text-primary); line-height: 1.55; overflow-x: clip; }
button, input, select, textarea { font: inherit; }
button:disabled, .btn:disabled { opacity: .48; cursor: not-allowed; }
a, button, select, summary { cursor: pointer; }
:where(a, button, input, select, textarea, [tabindex]):focus-visible {
    outline: 2px solid #171717;
    outline-offset: 3px;
}
:where(input:not([type="radio"]):not([type="checkbox"]), select, textarea):focus-visible {
    outline: none;
}
::selection { background: #d8d8d8; color: #171717; }
::-webkit-scrollbar-thumb, ::-webkit-scrollbar-thumb:hover { background: #b9b9bc; }

.container { max-width: 1240px; padding-inline: 32px; }
main { margin-top: 72px; }
.glass-panel { background: #fff; border: 1px solid var(--border-color); box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; }
.text-gradient-cyan, .text-gradient-purple { background: none; color: var(--text-primary); -webkit-text-fill-color: currentColor; }
.bg-gradient-neon { background: #171717; }

/* Shared navigation, footer, buttons and icon controls */
.header-wrapper, .header-wrapper.scrolled {
    height: 72px; padding: 0 32px; background: rgba(255, 255, 255, .96);
    border: 0; border-bottom: 1px solid #e7e7e7; box-shadow: none;
    backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
}
.logo-container { gap: 10px; font-size: 1.18rem; font-weight: 700; letter-spacing: -.04em; }
.logo-icon, .footer-brand-logo { border-radius: 7px; box-shadow: none; }
.nav-links { gap: clamp(16px, 2.8vw, 38px); }
.nav-links a { font-size: .9rem; font-weight: 500; color: #505054; }
.nav-links a:hover, .nav-links a.active { color: #111; }
.nav-links a::after { height: 2px; background: #111; }
.header-actions { gap: 8px; }
.action-btn, .mobile-nav-toggle { width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; color: #1d1d1f; padding: 0; font-size: 1.08rem; }
.action-btn:hover, .mobile-nav-toggle:hover { background: #f1f1f1; color: #111; filter: none; }
.action-badge { min-width: 19px; height: 19px; padding: 0 4px; display: grid; place-items: center; border: 2px solid #fff; border-radius: 50%; background: #171717; color: #fff; box-shadow: none; font-size: .65rem; }
.mobile-nav-toggle { display: none; }
gf-footer { display: block; margin-top: 88px; padding: 64px 0 30px; background: #f5f5f7; border-top: 1px solid #e5e5e7; }
.footer-grid { grid-template-columns: minmax(230px, 1.8fr) repeat(3, minmax(130px, 1fr)); gap: 36px; margin-bottom: 56px; }
.footer-brand h3 { font-size: 1.25rem; letter-spacing: -.04em; }
.footer-desc, .footer-links a, .contact-info-list, .footer-bottom { color: #55555a; }
.footer-column h4 { font-size: .88rem; margin-bottom: 20px; }
.footer-column h4::after { display: none; }
.footer-links a { display: inline-flex; align-items: center; min-height: 36px; }
.footer-links a:hover { color: #111; padding-left: 0; text-decoration: underline; text-underline-offset: 3px; }
.contact-info-list li i { color: #555; }
.footer-bottom { padding-top: 24px; }

.btn { min-height: 46px; padding: 11px 22px; border-radius: 999px; font-size: .9rem; font-weight: 600; border: 1px solid transparent; transition: background .2s, border-color .2s, color .2s; }
.btn-primary, .card-add-btn { background: #171717; color: #fff; border-color: #171717; box-shadow: none; }
.btn-primary:hover, .card-add-btn:hover { background: #3a3a3a; border-color: #3a3a3a; color: #fff; box-shadow: none; transform: none; }
.btn-secondary { background: #fff; color: #171717; border: 1px solid #b8b8bc; }
.btn-secondary:hover { background: #f5f5f7; border-color: #6f6f73; transform: none; }
.btn-icon, .qty-btn, .cart-qty-btn { border: 1px solid #d9d9dc; border-radius: 10px; background: #fff; color: #1d1d1f; }
.btn-icon:hover, .qty-btn:hover, .cart-qty-btn:hover { border-color: #777; background: #f5f5f7; color: #111; }
.qty-btn, .cart-qty-btn, .cart-item-remove, .thumb-item { min-width: 44px; min-height: 44px; }
.btn-icon.active { background: #171717; color: #fff; border-color: #171717; filter: none; }

/* Home editorial sections */
.section-eyebrow { color: #66666a; font-size: .7rem; font-weight: 700; letter-spacing: .16em; margin-bottom: 22px; }
.section-eyebrow::before { display: none; }
.home-section { margin-bottom: 108px; }
.section-header { margin-bottom: 32px; gap: 20px; }
.section-title-wrap h2, .home-usecase-intro h2 { font-size: clamp(2rem, 3.2vw, 3rem); font-weight: 700; letter-spacing: -.055em; line-height: 1.12; }
.section-title-wrap p, .home-usecase-intro p { color: #606064; font-size: 1rem; }
.home-category-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.home-category-card, .home-category-card:nth-child(1), .home-category-card:nth-child(2) { grid-column: auto; min-height: 420px; grid-template-rows: 1fr 190px; background: #f5f5f7; border: 1px solid #f0f0f1; border-radius: 20px; box-shadow: none; }
.home-category-card:hover { transform: none; border-color: #a6a6aa; box-shadow: none; }
.home-category-copy { padding: 26px 28px 10px; }
.home-category-icon { width: 40px; height: 40px; border-radius: 50%; background: #fff; color: #222; }
.home-category-tag { color: #656569; font-weight: 600; }
.home-category-count { background: #fff; border-color: #e1e1e3; color: #45454a; font-weight: 600; }
.home-category-card h3 { font-size: clamp(1.5rem, 2vw, 2rem); letter-spacing: -.045em; font-weight: 700; }
.home-category-card p { color: #606064; }
.home-category-link { font-weight: 600; }
.home-category-media { background: url('./product-placeholder.svg') center/30% no-repeat; }
.home-category-media img { padding: 0 20px 16px; }
.home-usecase-band { grid-template-columns: 1fr; padding: clamp(24px, 4vw, 56px); gap: 28px; background: #f5f5f7; border: 0; border-radius: 24px; }
.home-usecase-intro { padding: 0; max-width: 680px; }
.home-usecase-grid { gap: 12px; }
.home-usecase-card { background: #fff; border: 1px solid #e7e7e9; border-radius: 16px; padding: 24px; }
.home-usecase-card i { color: #222; font-size: 1.15rem; }
.home-usecase-card h3 { font-weight: 600; }
.home-usecase-card p { color: #606064; }

/* Catalog and shared product cards */
.catalog-layout { grid-template-columns: 248px minmax(0, 1fr); gap: 32px; margin-top: 52px; }
.filters-sidebar { top: 96px; padding: 22px; border-radius: 16px; background: #f5f5f7; border: 0; }
.filter-group { margin-bottom: 0; }
.filter-group h3 { font-size: .84rem; font-weight: 700; border-color: #dedee0; }
.filter-options { gap: 4px; }
.filter-btn-pill { min-height: 42px; background: transparent; border: 1px solid transparent; border-radius: 9px; font-size: .88rem; color: #4b4b4e; }
.filter-btn-pill:hover { background: #e9e9eb; color: #111; border-color: transparent; }
.filter-btn-pill.active { background: #171717; border-color: #171717; color: #fff; }
.filter-btn-pill.active span { background: #fff; color: #171717; }
.search-box { height: 48px; margin-bottom: 28px; background: #fff; border: 1px solid #c8c8cc; border-radius: 10px; }
.search-box:focus-within { border-color: #171717; box-shadow: 0 0 0 2px #d6d6d6; }
.search-box input { min-width: 0; }
.sort-select { min-height: 44px; border-color: #c8c8cc; border-radius: 9px; }
.sort-select:focus-visible { border-color: #171717; box-shadow: 0 0 0 2px #d6d6d6; }
.results-count { color: #626266; }
.products-grid { gap: 16px; }
.prod-card { background: #fff; border: 1px solid #e5e5e7; padding: 14px; border-radius: 17px; box-shadow: none; }
.prod-card:hover { transform: none; border-color: #acacb0; box-shadow: none; }
.card-media { aspect-ratio: 1 / 1; background-color: #f5f5f7; border-radius: 12px; margin-bottom: 16px; }
.card-img { padding: 12px; }
.prod-card:hover .card-img { transform: none; }
.badge-tag { border-radius: 5px; font-weight: 600; letter-spacing: .02em; }
.badge-tag.sale { background: #fff; color: #171717; border: 1px solid #d7d7da; }
.badge-tag.hot { background: #171717; color: #fff; }
.card-wishlist-btn { width: 44px; height: 44px; background: #fff; color: #171717; border-color: #dedee0; }
.card-wishlist-btn:hover { color: #111; background: #ededee; border-color: #777; }
.card-wishlist-btn.active { color: #fff; background: #171717; border-color: #171717; }
.card-category { color: #67676b; font-weight: 600; }
.card-category, .detail-meta-tag, .cart-item-category { text-transform: none; }
.card-title { font-weight: 600; }
.stars, .dist-bar-fill { color: #3b3b3b; background: #555; }
.stars { background: none; }
.card-savings { color: #535357; }
.card-add-btn { border-radius: 9px; }

/* Detail: large image stage, calm specs and review panels */
.detail-layout { gap: clamp(28px, 5vw, 72px); margin-top: 52px; }
.detail-gallery, .detail-info { min-width: 0; }
.gallery-main-wrap { background: #f5f5f7; border: 0; border-radius: 20px; box-shadow: none; }
.gallery-main-img { object-fit: contain; }
.thumb-item { border: 1px solid #d5d5d8; border-radius: 10px; background: #f5f5f7; }
.thumb-item:hover, .thumb-item.active { border-color: #171717; }
.detail-title { font-weight: 700; letter-spacing: -.045em; line-height: 1.1; }
.detail-price-final { color: #171717; }
.detail-meta-tag, .detail-sales-tag, .detail-save-badge { background: #f1f1f2; color: #343437; border-color: #dedee0; box-shadow: none; }
.detail-variant-btn { min-height: 44px; background: #fff; border-color: #cfcfd2; }
.detail-variant-btn.active { background: #171717; border-color: #171717; color: #fff; }
.detail-variant-btn:focus-visible { outline-color: #171717; }
.tabs-nav { border-color: #dedee0; }
.tab-link { min-height: 48px; color: #55555a; }
.tab-link:hover, .tab-link.active { color: #171717; }
.tab-link.active::after { background: #171717; }
.reviews-summary-card, .review-item, .seller-reply-item { background: #f7f7f8; border: 1px solid #e4e4e6; box-shadow: none; }
.specs-table tr { border-color: #e4e4e6; }

/* Cart, coupon, checkout, success, account, content */
.cart-drawer-overlay, .modal-overlay { background: rgba(0, 0, 0, .5); }
.cart-drawer, .modal-container { background: #fff; box-shadow: none; }
.cart-drawer-header, .cart-drawer-footer { background: #fff; border-color: #e5e5e7; }
.cart-drawer-footer .cart-summary-line, .cart-drawer-footer .cart-summary-line span,
.cart-drawer-footer .cart-summary-line.total, .cart-drawer-footer .cart-summary-line.total span {
    color: #1d1d1f;
}
.cart-drawer-footer .cart-summary-line.total { border-top-color: #d9d9dc; }
.cart-item-img, .summary-item-image { background: #f5f5f7; border: 1px solid #e6e6e8; }
.cart-item-remove:hover { color: #171717; background: #ededee; }
.cart-summary-line.total { border-color: #dedee0; }
.cart-discount-row, .cart-discount-row span:last-child, .checkout-summary .cart-discount-row, .checkout-summary .cart-discount-row span:last-child, .checkout-summary .cart-summary-line[style*='var(--accent-green)'] { color: #303033 !important; }
.modal-container { border: 1px solid #e4e4e6; border-radius: 20px; }
.modal-close, .close-drawer-btn { width: 44px; height: 44px; border-radius: 50%; color: #171717; }
.modal-close:hover, .close-drawer-btn:hover { color: #171717; background: #f0f0f0; }
.coupon-card { background: #f5f5f7; border: 1px solid #dedee0; box-shadow: none; }
.coupon-value, .coupon-title, .coupon-code { color: #171717; }
.checkout-layout { gap: 32px; margin-top: 52px; }
.checkout-card, .checkout-summary, .auth-container, .account-menu, .order-card { background: #fff; border: 1px solid #e1e1e4; box-shadow: none; border-radius: 18px; }
.payment-method-card, .payment-method-option { background: #f7f7f8; border-color: #d9d9dc; box-shadow: none; }
.payment-method-icon { background: #e8e8ea; color: #171717; }
.form-input-wrap { min-height: 48px; height: auto; background: #fff; border-color: #bcbcc0; }
.form-input-wrap:focus-within { border-color: #171717; box-shadow: 0 0 0 2px #d6d6d6; }
.phone-prefix-block { min-height: 48px; height: auto; background: #f5f5f7; color: #171717; }
.form-group label { color: #343437; }
.error-msg { color: #303033; }
.form-group.invalid .form-input-wrap { border-color: #171717; border-width: 2px; }
.discount-applied-badge { background: #f1f1f2; border-color: #d9d9dc; color: #303033; }
.success-card { box-shadow: none; border: 1px solid #e1e1e4; background: #fff; }
.success-icon { background: #171717; color: #fff; border: 0; box-shadow: none; }
.legal-wrapper { max-width: 820px; margin-top: 52px; padding: clamp(26px, 5vw, 64px); border: 1px solid #e1e1e4; box-shadow: none; }
.legal-title { font-weight: 700; letter-spacing: -.045em; }
.legal-meta { color: #606064; letter-spacing: .04em; }
.legal-content h3 { border-color: #e3e3e5; }
.account-layout { gap: 28px; margin-top: 52px; }
.user-avatar { background: #171717; box-shadow: none; }
.account-menu-btn:hover { background: #f0f0f1; }
.account-menu-btn.active { color: #171717; background: #f0f0f1; border-color: #171717; }
.order-card-total span, .order-item-inline-name:hover { color: #171717; }
.toast-container { top: 88px; }
.toast { border: 1px solid #d5d5d8; border-left: 4px solid #171717; border-radius: 10px; box-shadow: 0 12px 32px rgba(0,0,0,.1); }
.toast.success, .toast.error { border-left-color: #171717; }
.about-hero-wrap { margin: 60px auto 64px; max-width: 780px; }
.about-hero-wrap h2 { font-size: clamp(2.3rem, 4.4vw, 4rem); font-weight: 700; letter-spacing: -.055em; line-height: 1.1; }
.about-content-wrap { max-width: 900px; color: #48484a; }
.about-features-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.about-feature-box { background: #f5f5f7; border: 0; box-shadow: none; padding: 28px; }
.about-feature-box i { color: #171717; }
.about-feature-box p { color: #606064; }
.auth-container { margin-top: 52px; }
.auth-header h2 { font-weight: 700; letter-spacing: -.04em; }
.auth-toggle-link a { color: #171717; text-decoration: underline; text-underline-offset: 3px; }
.auth-toggle-link a:hover { text-shadow: none; }
.contact-hero { margin-top: 56px; gap: 28px; }
.contact-hero-copy { padding: 38px 0; }
.contact-hero-title { font-weight: 700; letter-spacing: -.055em; }
.contact-highlight-chip { background: #f5f5f7; border-color: #e4e4e6; box-shadow: none; }
.contact-highlight-chip i { color: #171717; }
.contact-hero-aside, .contact-info-card, .contact-summary-card, .contact-support-tile { background: #f5f5f7; border: 1px solid #e6e6e8; box-shadow: none; }
.contact-aside-block { background: #fff; border-color: #e2e2e4; }
.contact-status-dot { background: #171717; box-shadow: 0 0 0 5px #e2e2e2; }
.contact-card-head i { background: #e6e6e8; color: #171717; }
.contact-value-link, .contact-value-link:hover, .contact-support-tile i, .contact-check-item i { color: #171717; }
.contact-summary-divider { background: #d6d6d8; }

/* Original video frames, held in place while scrolling */
gf-home { display: block; }
.home-motion-section { position: relative; height: 420svh; margin-bottom: 56px; background: #000; --sequence-cue-opacity: 1; --sequence-cta-opacity: 0; }
.home-motion-sticky { position: sticky; top: 72px; height: calc(100svh - 72px); overflow: hidden; background: #000; }
.home-motion-visual, .home-motion-poster, .home-motion-canvas { position: absolute; inset: 0; width: 100%; height: 100%; }
.home-motion-visual { background: #000; }
.home-motion-poster { object-fit: contain; background: #000; }
.home-motion-canvas { object-fit: contain; opacity: 0; }
.home-motion-canvas.is-ready { opacity: 1; }
.home-motion-title { position: absolute; z-index: 2; top: clamp(28px, 6vh, 72px); left: clamp(24px, 6vw, 96px); max-width: calc(100% - 48px); color: #fff; font-size: clamp(2.6rem, 7vw, 6.8rem); font-weight: 700; line-height: .95; letter-spacing: -.075em; text-shadow: 0 2px 22px rgba(0,0,0,.55); opacity: var(--sequence-cue-opacity); pointer-events: none; }
.home-motion-scroll-cue { position: absolute; z-index: 2; left: 50%; bottom: clamp(24px, 4vh, 44px); transform: translateX(-50%); display: flex; align-items: center; gap: 12px; padding: 10px 16px; border: 1px solid rgba(255,255,255,.35); border-radius: 999px; background: rgba(0,0,0,.62); color: #fff; font-size: .73rem; font-weight: 650; letter-spacing: .12em; text-transform: uppercase; white-space: nowrap; opacity: var(--sequence-cue-opacity); pointer-events: none; }
.home-motion-finale { position: absolute; z-index: 2; left: clamp(24px, 6vw, 96px); bottom: clamp(24px, 4vh, 44px); display: flex; align-items: center; gap: 20px; padding: 11px 12px 11px 24px; border: 1px solid rgba(255,255,255,.22); border-radius: 999px; background: rgba(0,0,0,.76); color: #fff; white-space: nowrap; opacity: var(--sequence-cta-opacity); pointer-events: none; }
.home-motion-finale:not([inert]) { pointer-events: auto; }
.home-motion-finale span { font-size: .85rem; font-weight: 650; letter-spacing: -.01em; }
.home-motion-finale .btn { color: #111; background: #fff; border-color: #fff; min-height: 42px; padding: 9px 16px; }
.home-motion-finale .btn:hover { color: #111; background: #e9e9eb; border-color: #e9e9eb; }
.home-motion-section.is-fallback, .home-motion-section.is-reduced { height: calc(100svh - 72px); }
.home-motion-section.is-fallback .home-motion-sticky, .home-motion-section.is-reduced .home-motion-sticky { position: relative; top: 0; height: 100%; }
.home-motion-section.is-fallback .home-motion-finale, .home-motion-section.is-reduced .home-motion-finale { opacity: 1; pointer-events: auto; }
.home-motion-section.is-fallback .home-motion-scroll-cue, .home-motion-section.is-reduced .home-motion-scroll-cue { display: none; }
/* Brand-led home and catalog discovery */
[hidden] { display: none !important; }
#home-brands { scroll-margin-top: 100px; }
.home-brand-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.home-brand-card { min-width: 0; min-height: 360px; position: relative; display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; border-radius: 20px; padding: 24px; background: #f5f5f7; border: 1px solid #ececee; }
.home-brand-card:hover { background: #eeeef0; border-color: #a6a6aa; }
.home-brand-card-head { display: flex; justify-content: space-between; align-items: center; gap: 8px; position: relative; z-index: 1; }
.home-brand-index { font-size: .72rem; color: #65656a; letter-spacing: .1em; }
.home-brand-count { font-size: .72rem; color: #57575c; white-space: nowrap; }
.home-brand-card-copy { position: relative; z-index: 1; align-self: flex-start; max-width: 100%; }
.home-brand-card h3 { font-size: clamp(1.8rem, 2.6vw, 2.55rem); line-height: 1.05; font-weight: 700; letter-spacing: -.055em; }
.home-brand-card p { color: #505054; margin: 8px 0 14px; font-size: .9rem; }
.home-brand-card-copy > span { display: inline-flex; align-items: center; gap: 10px; font-size: .87rem; font-weight: 650; }
.home-brand-card img { position: absolute; width: 68%; height: 56%; right: -8%; top: 15%; object-fit: contain; opacity: .85; mix-blend-mode: multiply; }
.home-brand-card:focus-visible, .home-price-card:focus-visible { outline: 2px solid #171717; outline-offset: 4px; }
.home-empty-note { grid-column: 1 / -1; padding: 32px; border-radius: 16px; background: #f5f5f7; color: #55555a; }
.home-price-section { background: #f5f5f7; padding: 80px 0; }
.home-price-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.home-price-card { min-height: 260px; display: flex; flex-direction: column; align-items: flex-start; padding: 28px; position: relative; border-radius: 18px; background: #fff; border: 1px solid #e4e4e6; }
.home-price-card:hover { border-color: #a6a6aa; background: #fafafa; }
.home-price-number { font-size: .74rem; color: #606064; letter-spacing: .06em; margin-bottom: auto; }
.home-price-card h3 { font-size: clamp(1.45rem, 2.15vw, 2rem); line-height: 1.14; letter-spacing: -.045em; font-weight: 700; max-width: 90%; }
.home-price-card p { color: #606064; font-size: .9rem; margin-top: 10px; }
.home-price-arrow { position: absolute; right: 25px; bottom: 25px; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: #171717; color: #fff; }
#featured-products-list { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.home-accessory-band { display: grid; grid-template-columns: 1fr 1fr; align-items: center; min-height: 300px; overflow: hidden; border-radius: 24px; background: #f5f5f7; }
.home-accessory-copy { padding: clamp(28px, 5vw, 60px); }
.home-accessory-copy h2, .home-support-band h2 { font-size: clamp(2rem, 3vw, 3rem); line-height: 1.12; font-weight: 700; letter-spacing: -.055em; }
.home-accessory-copy p { color: #55555a; margin: 14px 0 25px; }
.home-accessory-media { height: 100%; min-height: 300px; display: grid; place-items: center; background: #ededee; }
.home-accessory-media img { max-width: 80%; max-height: 270px; object-fit: contain; }
.home-support-band { display: flex; justify-content: space-between; align-items: end; gap: 32px; padding: clamp(28px, 5vw, 60px); border-radius: 24px; background: #171717; color: #fff; }
.home-support-band .section-eyebrow, .home-support-band p, .home-support-actions span { color: #d0d0d2; }
.home-support-band p { margin-top: 14px; }
.home-support-actions { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; max-width: 300px; }
.home-support-actions .btn-primary { background: #fff; color: #171717; border-color: #fff; }
.home-support-actions .btn-primary:hover { background: #e4e4e6; border-color: #e4e4e6; color: #171717; }
.home-support-actions span { font-size: .82rem; line-height: 1.5; }
.catalog-intro { padding-top: 56px; max-width: 720px; }
.catalog-intro h1 { font-size: clamp(2.4rem, 4vw, 4rem); line-height: 1.08; font-weight: 700; letter-spacing: -.055em; }
.catalog-intro p { color: #606064; margin-top: 16px; font-size: 1rem; }
.filters-sidebar .filter-group + .filter-group { margin-top: 28px; }
.catalog-clear { margin-top: 25px; padding: 10px 0; min-height: 44px; color: #171717; text-decoration: underline; text-underline-offset: 3px; font-size: .9rem; font-weight: 600; }
.catalog-legacy-note { margin-top: 20px; color: #55555a; font-size: .83rem; }
.catalog-empty-state { grid-column: 1 / -1; min-height: 300px; padding: 60px 24px; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; background: #f5f5f7; border-radius: 16px; }
.catalog-empty-state i { font-size: 1.8rem; color: #4c4c50; margin-bottom: 18px; }
.catalog-empty-state h3 { font-size: 1.3rem; }
.catalog-empty-state p { color: #606064; margin: 8px 0 20px; }

@media (max-width: 1200px) {
    .container { padding-inline: 24px; }
}
@media (max-width: 900px) {
    .home-brand-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #featured-products-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .home-price-grid { grid-template-columns: 1fr; }
    .home-price-card { min-height: 210px; }
    .home-support-band { align-items: flex-start; flex-direction: column; }
    .header-wrapper { padding-inline: 24px; }
    .mobile-nav-toggle { display: inline-flex; }
    .nav-links { border: 1px solid #e4e4e6; border-radius: 14px; background: #fff; box-shadow: 0 14px 30px rgba(0,0,0,.08); }
    .nav-links a { min-height: 44px; }
    .catalog-layout { grid-template-columns: 1fr; gap: 24px; }
    .filters-sidebar { display: block; position: static; padding: 18px; }
    .filter-options { flex-direction: row; flex-wrap: wrap; gap: 8px; }
    .filter-btn-pill { min-height: 44px; padding: 8px 14px; }
    .filter-group h3 { border: 0; padding: 0; }
    .search-box { margin-bottom: 18px; }
    .about-features-grid { grid-template-columns: 1fr; }
    .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
    .home-motion-section { height: 390svh; margin-bottom: 32px; }
    .home-motion-sticky { top: 64px; height: calc(100svh - 64px); }
    .home-motion-section.is-fallback, .home-motion-section.is-reduced { height: calc(100svh - 64px); }
    .home-motion-scroll-cue { bottom: 18px; font-size: .63rem; }
    .home-motion-title { top: 26px; left: 20px; max-width: 65%; font-size: clamp(2rem, 10vw, 3.4rem); }
    .home-motion-finale { left: 50%; bottom: 18px; transform: translateX(-50%); max-width: calc(100% - 24px); gap: 10px; padding: 8px 9px 8px 14px; }
    .home-motion-finale span { font-size: .72rem; }
    .home-motion-finale .btn { min-height: 38px; padding: 7px 11px; font-size: .72rem; }
    .home-brand-grid { grid-template-columns: 1fr; }
    .home-brand-card { min-height: 275px; }
    .home-brand-card img { width: 48%; height: 65%; right: 0; top: 15%; }
    .home-price-section { padding: 60px 0; }
    .home-price-card { min-height: 190px; }
    .home-accessory-band { grid-template-columns: 1fr; }
    .home-accessory-media { min-height: 210px; }
    .home-accessory-media img { max-height: 175px; }
    .home-support-actions { width: 100%; }
    .catalog-intro { padding-top: 36px; }
    main { margin-top: 64px; }
    .container { padding-inline: 18px; }
    .header-wrapper, .header-wrapper.scrolled { height: 64px; padding-inline: 14px; }
    .logo-container { font-size: 1.05rem; }
    .header-actions { gap: 0; }
    .action-btn, .mobile-nav-toggle { width: 44px; height: 44px; }
    .home-section { margin-bottom: 76px; }
    .home-category-grid { grid-template-columns: 1fr; }
    .home-category-card, .home-category-card:nth-child(1), .home-category-card:nth-child(2) { grid-column: auto; min-height: 365px; grid-template-rows: 1fr 165px; }
    .home-usecase-grid { grid-template-columns: 1fr; }
    .section-header { align-items: flex-start; }
    .catalog-layout, .detail-layout, .checkout-layout, .account-layout { margin-top: 28px; }
    .catalog-toolbar { gap: 12px; flex-wrap: wrap; }
    .sort-select-wrap { min-width: 0; }
    .sort-select { max-width: 100%; }
    .products-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .prod-card { padding: 9px; }
    .card-media { margin-bottom: 10px; }
    .card-title { font-size: .9rem; }
    .price-final { font-size: 1.04rem; }
    .card-footer { align-items: stretch; flex-direction: column; }
    .card-add-btn { width: 100%; min-height: 44px; }
    .about-hero-wrap { margin: 38px auto 48px; }
    .contact-hero { margin-top: 32px; }
    .contact-hero-copy { padding: 8px 0; }
    .contact-layout, .contact-support-grid { grid-template-columns: 1fr; }
    .footer-grid { grid-template-columns: 1fr 1fr; gap: 30px 18px; }
    .footer-brand { grid-column: 1 / -1; }
    gf-footer { margin-top: 64px; padding-top: 50px; }
    .legal-wrapper, .auth-container, .checkout-card, .checkout-summary, .success-card { padding: 24px 18px; }
    .toast-container { top: 72px; right: 16px; }
}
@media (max-width: 370px) {
    .logo-icon { display: none; }
    .logo-container { font-size: 1rem; }
    .products-grid { grid-template-columns: 1fr !important; }
    .footer-grid { grid-template-columns: 1fr; }
    .footer-brand { grid-column: auto; }
}
@media (prefers-reduced-motion: reduce) {
    .home-motion-section { height: calc(100svh - 72px); margin-bottom: 56px; }
    .home-motion-sticky { position: relative; top: 0; height: 100%; }
    .home-motion-canvas, .home-motion-scroll-cue { display: none; }
    .home-motion-finale { opacity: 1; pointer-events: auto; }
    *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
@media (max-width: 600px) and (prefers-reduced-motion: reduce) {
    .home-motion-section { height: calc(100svh - 64px); }
}
