/*
 Theme Name:   Astra Child - VSeeBox
 Theme URI:    https://vseebox.local
 Description:  VSeeBox 外贸电商站子主题，基于 Astra
 Author:       VSeeBox Dev Team
 Author URI:   https://vseebox.local
 Template:     astra
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  https://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  astra-child-vseebox
*/

/* ============================================
   VSeeBox 全局样式
   ============================================ */

/* ---------- Google Fonts ----------
   Kumbh Sans is enqueued in functions.php for the whole site. */

/* ---------- CSS 变量 ---------- */
:root {
  /* 品牌渐变 */
  --vb-gradient: linear-gradient(135deg, #7B2FE0 0%, #E950CC 100%);

  /* 表面层级 */
  --vb-background: #150529;
  --vb-surface: #150529;
  --vb-surface-container-low: #1c0834;
  --vb-surface-container: #240c41;
  --vb-surface-container-high: #2b0f4d;
  --vb-surface-container-highest: #33125b;
  --vb-surface-bright: #3c1668;

  /* 文字颜色 */
  --vb-on-surface: #f0dfff;
  --vb-on-surface-variant: #bf9ceb;
  --vb-on-background: #f0dfff;

  /* 品牌色 */
  --vb-primary: #b586ff;
  --vb-primary-dim: #914af6;
  --vb-primary-container: #9953ff;
  --vb-secondary: #ffade6;
  --vb-secondary-dim: #fb60dc;

  /* 功能色 */
  --vb-error: #fd6f85;
  --vb-success: #22C55E;
  --vb-warning: #F59E0B;

  /* 边框 */
  --vb-outline: #8766b1;
  --vb-outline-variant: #57387f;

  /* 圆角 */
  --vb-radius-btn: 12px;
  --vb-radius-card: 16px;
  --vb-radius-lg: 24px;

  /* 移动端统一留白 */
  --vb-mobile-gutter: 16px;
  --vb-mobile-section-gutter: 20px;
  --vb-mobile-card-gutter-total: calc(var(--vb-mobile-section-gutter) * 2);

  /* 字体 */
  --vb-font: "Kumbh Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  --vb-heading-font: var(--vb-font);
}

@media (max-width: 767px) {
    body.single-product .vb-pdp-page .vb-pdp-feature-section,
    body.single-product .vb-pdp-page .vb-pdp-stories,
    body.single-product .vb-pdp-page .vb-pdp-box,
    body.single-product .vb-pdp-page .vb-pdp-reviews,
    body.single-product .vb-pdp-page .vb-pdp-setup,
    body.single-product .vb-pdp-page .vb-pdp-bundles {
        font-size: 16px !important;
        line-height: 24px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-feature-section,
    body.single-product .vb-pdp-page .vb-pdp-box,
    body.single-product .vb-pdp-page .vb-pdp-reviews,
    body.single-product .vb-pdp-page .vb-pdp-setup,
    body.single-product .vb-pdp-page .vb-pdp-bundles {
        padding-top: 96px !important;
        padding-bottom: 96px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-section-heading {
        margin: 0 auto 64px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-section-heading h2,
    body.single-product .vb-pdp-page .vb-pdp-box h2,
    body.single-product .vb-pdp-page .vb-pdp-reviews h2,
    body.single-product .vb-pdp-page .vb-pdp-setup h2 {
        font-size: 36px !important;
        font-weight: 700 !important;
        line-height: 40px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-section-heading p,
    body.single-product .vb-pdp-page .vb-pdp-feature-card p,
    body.single-product .vb-pdp-page .vb-pdp-story p,
    body.single-product .vb-pdp-page .vb-pdp-review-card p,
    body.single-product .vb-pdp-page .vb-pdp-setup p {
        font-size: 16px !important;
        line-height: 24px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-feature-grid {
        gap: 32px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-feature-card {
        min-height: 0 !important;
        padding: 32px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-feature-card h3 {
        font-size: 24px !important;
        line-height: 32px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-feature-card p {
        margin-bottom: 0 !important;
        line-height: 26px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-feature-card p {
        margin-bottom: 0 !important;
        line-height: 26px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-stories {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 24px 96px !important;
        gap: 24px !important;
        box-sizing: border-box !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-story {
        width: 100% !important;
        min-height: 0 !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-story--large {
        height: 382px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-story--small {
        height: 216px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-story div {
        right: 40px !important;
        bottom: 40px !important;
        left: 40px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-story h3 {
        font-weight: 700 !important;
        line-height: 36px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-story--small h3 {
        line-height: 32px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-box__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 32px !important;
        text-align: center !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-box__grid > div {
        display: block !important;
        width: 100% !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-box__grid .material-symbols-outlined {
        display: flex !important;
        width: 100% !important;
        aspect-ratio: 1 / 1 !important;
        align-items: center !important;
        justify-content: center !important;
        margin: 0 0 16px !important;
        padding: 24px !important;
        border: 1px solid rgba(87, 56, 127, 0.1) !important;
        border-radius: 16px !important;
        background: #240c41 !important;
        color: var(--vb-primary) !important;
        font-size: 48px !important;
        line-height: 48px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-box__grid strong {
        display: block !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        line-height: 24px !important;
        overflow-wrap: normal !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-reviews__head {
        align-items: flex-end !important;
        flex-direction: column !important;
        gap: 32px !important;
        margin-bottom: 64px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-reviews__head > div {
        width: auto !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-rating {
        font-size: 16px !important;
        line-height: 24px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-reviews__head > a {
        min-height: 48px !important;
        padding: 12px 32px !important;
        font-size: 16px !important;
        line-height: 24px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-reviews__head > div {
        width: auto !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-review-grid {
        gap: 32px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-review-card {
        height: 264px !important;
        min-height: 264px !important;
        padding: 32px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-quote {
        position: absolute !important;
        top: -16px !important;
        left: -16px !important;
        display: block !important;
        color: var(--vb-primary) !important;
        font-size: 36px !important;
        line-height: 40px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-review-card p {
        margin-bottom: 24px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-setup__card {
        display: block !important;
        padding: 32px !important;
        border-radius: 32px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-setup h2 {
        margin-bottom: 24px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-setup__steps > div {
        gap: 24px !important;
        margin-top: 48px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-setup__steps > div:first-of-type {
        margin-top: 0 !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-setup h3 {
        font-size: 20px !important;
        font-weight: 700 !important;
        line-height: 28px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-video {
        aspect-ratio: 1 / 1 !important;
        margin-top: 64px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-bundles h2 {
        margin-bottom: 64px !important;
        font-size: 30px !important;
        line-height: 36px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-bundle-grid article {
        align-items: center !important;
        flex-direction: row !important;
        gap: 24px !important;
        height: 234px !important;
        min-height: 234px !important;
        padding: 24px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-bundle-grid img {
        width: 128px !important;
        height: 128px !important;
        flex: 0 0 128px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-bundle-grid h3 {
        font-size: 20px !important;
        font-weight: 700 !important;
        line-height: 28px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-bundle-grid p {
        font-size: 14px !important;
        line-height: 20px !important;
    }

}

@media (max-width: 767px) {
    body.single-product .vb-pdp-page .vb-pdp-feature-card p {
        margin-bottom: 0 !important;
        line-height: 26px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-reviews__head > div {
        width: auto !important;
    }
}

/* ============================================
   VSeeBox WooCommerce System Pages
   Cart / Checkout / My Account
   自行补齐版：客户未提供独立 UI 参考，按 Shop/PDP/Thank You 风格统一。
   ============================================ */

body.woocommerce-cart,
body.woocommerce-checkout:not(.woocommerce-order-received),
body.woocommerce-account {
    background:
        radial-gradient(circle at 82% 8%, rgba(123, 47, 224, 0.18), transparent 32rem),
        radial-gradient(circle at 10% 36%, rgba(233, 80, 204, 0.1), transparent 28rem),
        var(--vb-background);
    color: var(--vb-on-surface);
}

/* ============================================
   VSeeBox Policy Pages
   Plain text legal pages styled to match the site.
   ============================================ */

.vb-policy-page {
    min-height: 100vh;
    background-color: var(--vb-background);
    background:
        radial-gradient(circle at 75% 0%, rgba(181, 134, 255, 0.13), transparent 34rem),
        linear-gradient(180deg, var(--vb-background) 0%, var(--vb-background) 35%);
    color: var(--vb-on-surface);
}

body.vb-policy-body .site-content .ast-container,
body.vb-policy-body #primary,
body.vb-policy-body #main,
body.vb-policy-body .ast-article-single {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 76px 0 0;
    background: transparent;
}

.vb-policy-page,
.vb-policy-page * {
    box-sizing: border-box;
}

.vb-policy-hero,
.vb-policy-shell {
    width: calc(100% - 96px);
    max-width: 1360px;
    margin-right: auto;
    margin-left: auto;
}

.vb-policy-hero {
    display: grid;
    min-height: 520px;
    padding: 168px 0 88px;
    align-items: end;
}

.vb-policy-hero__content {
    max-width: 860px;
}

.vb-policy-eyebrow,
.vb-policy-toc > span,
.vb-policy-meta span,
.vb-policy-contact span {
    color: var(--vb-primary);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.vb-policy-hero h1 {
    margin: 16px 0 24px;
    color: #fff;
    font-family: var(--vb-heading-font);
    font-size: clamp(48px, 6vw, 86px);
    font-weight: 900;
    line-height: 1.02;
    letter-spacing: 0;
}

.vb-policy-hero p {
    max-width: 760px;
    margin: 0;
    color: rgba(240, 223, 255, 0.76);
    font-size: clamp(17px, 1.6vw, 21px);
    line-height: 1.72;
}

.vb-policy-meta {
    display: inline-flex;
    gap: 14px;
    align-items: center;
    margin-top: 36px;
    padding: 12px 16px;
    border: 1px solid rgba(135, 102, 177, 0.3);
    border-radius: var(--vb-radius-btn);
    background: rgba(36, 12, 65, 0.72);
}

.vb-policy-meta strong {
    color: #fff;
    font-size: 14px;
}

.vb-policy-shell {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 44px;
    padding-bottom: 112px;
    align-items: start;
}

.vb-policy-toc {
    position: sticky;
    top: 104px;
    padding: 22px;
    border: 1px solid rgba(87, 56, 127, 0.34);
    border-radius: var(--vb-radius-card);
    background: rgba(28, 8, 52, 0.7);
    box-shadow: 0 24px 90px rgba(0, 0, 0, 0.26);
}

.vb-policy-toc ol {
    display: grid;
    gap: 10px;
    margin: 18px 0 0;
    padding: 76px 0 0;
    list-style: none;
}

.vb-policy-toc a {
    display: block;
    padding: 10px 12px;
    border-radius: 10px;
    color: rgba(240, 223, 255, 0.72);
    font-size: 13px;
    font-weight: 750;
    line-height: 1.35;
    text-decoration: none;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.vb-policy-toc a:hover,
.vb-policy-toc a:focus {
    background: rgba(123, 47, 224, 0.18);
    color: #fff;
}

.vb-policy-card {
    padding: 48px;
    border: 1px solid rgba(87, 56, 127, 0.34);
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(60, 22, 104, 0.54), rgba(28, 8, 52, 0.64)),
        rgba(28, 8, 52, 0.86);
    box-shadow: 0 36px 120px rgba(0, 0, 0, 0.34);
}

.vb-policy-intro {
    display: grid;
    gap: 18px;
    padding-bottom: 34px;
    border-bottom: 1px solid rgba(87, 56, 127, 0.34);
}

.vb-policy-intro p,
.vb-policy-section p {
    margin: 0;
    color: rgba(240, 223, 255, 0.76);
    font-size: 16px;
    line-height: 1.82;
}

.vb-policy-section {
    scroll-margin-top: 112px;
    padding: 42px 0;
    border-bottom: 1px solid rgba(87, 56, 127, 0.24);
}

.vb-policy-section:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.vb-policy-section h2 {
    margin: 0 0 20px;
    color: #fff;
    font-family: var(--vb-heading-font);
    font-size: clamp(24px, 2.4vw, 34px);
    font-weight: 800;
    line-height: 1.22;
    letter-spacing: 0;
}

.vb-policy-subsection {
    margin-top: 28px;
}

.vb-policy-subsection h3 {
    margin: 0 0 12px;
    color: var(--vb-secondary);
    font-size: 18px;
    font-weight: 850;
    line-height: 1.32;
}

.vb-policy-list {
    display: grid;
    gap: 12px;
    margin: 18px 0 0;
    padding: 0;
    list-style: none;
}

.vb-policy-list li {
    position: relative;
    padding-left: 22px;
    color: rgba(240, 223, 255, 0.74);
    font-size: 15px;
    line-height: 1.72;
}

.vb-policy-list li::before {
    position: absolute;
    top: 0.72em;
    left: 0;
    width: 7px;
    height: 7px;
    border-radius: 999px;
    background: var(--vb-gradient);
    content: "";
}

.vb-policy-contact {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin-top: 24px;
}

.vb-policy-contact > div {
    padding: 20px;
    border: 1px solid rgba(135, 102, 177, 0.28);
    border-radius: var(--vb-radius-card);
    background: rgba(21, 5, 41, 0.52);
}

.vb-policy-contact a,
.vb-policy-contact strong {
    display: block;
    margin-top: 8px;
    color: #fff;
    font-size: 16px;
    font-weight: 850;
    text-decoration: none;
    word-break: break-word;
}

.vb-policy-contact a:hover {
    color: var(--vb-secondary);
}

@media (max-width: 1024px) {
    .vb-policy-hero,
    .vb-policy-shell {
        width: calc(100% - 48px);
    }

    .vb-policy-shell {
        grid-template-columns: 1fr;
    }

    .vb-policy-toc {
        position: static;
    }

    .vb-policy-toc ol {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .vb-policy-hero,
    .vb-policy-shell {
        width: calc(100% - 32px);
    }

    .vb-policy-hero {
        min-height: 0;
        padding: 128px 0 54px;
    }

    .vb-policy-hero h1 {
        max-width: 8ch;
        font-size: clamp(38px, 13vw, 48px);
        overflow-wrap: normal;
    }

    .vb-policy-hero p {
        font-size: 16px;
    }

    .vb-policy-meta {
        max-width: 100%;
        flex-wrap: wrap;
    }

    .vb-policy-card {
        padding: 28px 20px;
        border-radius: 20px;
    }

    .vb-policy-toc ol,
    .vb-policy-contact {
        grid-template-columns: 1fr;
    }

    .vb-policy-section {
        padding: 34px 0;
    }
}

body.woocommerce-cart .site-content .ast-container,
body.woocommerce-checkout:not(.woocommerce-order-received) .site-content .ast-container,
body.woocommerce-account .site-content .ast-container {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0;
    padding-right: 0;
    padding-left: 0;
}

body.woocommerce-cart #primary,
body.woocommerce-cart #main,
body.woocommerce-checkout:not(.woocommerce-order-received) #primary,
body.woocommerce-checkout:not(.woocommerce-order-received) #main,
body.woocommerce-account #primary,
body.woocommerce-account #main {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
}

body.woocommerce-cart .entry-content,
body.woocommerce-checkout:not(.woocommerce-order-received) .entry-content,
body.woocommerce-account .entry-content {
    width: min(100% - 96px, 1360px);
    margin-right: auto;
    margin-left: auto;
    padding: 148px 0 104px;
}

body.woocommerce-cart .entry-content::before,
body.woocommerce-checkout:not(.woocommerce-order-received) .entry-content::before,
body.woocommerce-account .entry-content::before {
    display: block;
    margin-bottom: 10px;
    color: var(--vb-primary);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

body.woocommerce-cart .entry-content::before {
    content: "Secure cart";
}

body.woocommerce-checkout:not(.woocommerce-order-received) .entry-content::before {
    content: "Secure checkout";
}

body.woocommerce-account .entry-content::before {
    content: none;
}

body.woocommerce-cart .entry-content::after,
body.woocommerce-checkout:not(.woocommerce-order-received) .entry-content::after,
body.woocommerce-account .entry-content::after {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-top: 44px;
    color: rgba(240, 223, 255, 0.66);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

body.woocommerce-cart .entry-content::after {
    content: "Free tracking included   •   30-day returns   •   VSeeBox support";
}

body.woocommerce-checkout:not(.woocommerce-order-received) .entry-content::after {
    content: "Encrypted checkout   •   Free shipping estimate   •   Order confirmation by email";
}

body.woocommerce-account .entry-content::after {
    content: none;
}

body.woocommerce-cart .entry-content > .woocommerce,
body.woocommerce-cart .wp-block-woocommerce-cart,
body.woocommerce-checkout:not(.woocommerce-order-received) .entry-content > .woocommerce,
body.woocommerce-checkout:not(.woocommerce-order-received) .wp-block-woocommerce-checkout,
body.woocommerce-account .entry-content > .woocommerce {
    width: 100%;
    max-width: none;
    margin: 0;
}

body.woocommerce-cart .entry-content > .woocommerce::before,
body.woocommerce-checkout:not(.woocommerce-order-received) .entry-content > .woocommerce::before,
body.woocommerce-account .entry-content > .woocommerce::before,
body.woocommerce-cart .wp-block-woocommerce-cart::before,
body.woocommerce-checkout:not(.woocommerce-order-received) .wp-block-woocommerce-checkout::before {
    display: block;
    margin: 0 0 42px;
    color: #fff;
    font-family: var(--vb-heading-font);
    font-size: clamp(44px, 5vw, 68px);
    font-weight: 900;
    line-height: 1.04;
    letter-spacing: 0;
}

body.woocommerce-cart .wp-block-woocommerce-cart::before,
body.woocommerce-cart .entry-content > .woocommerce::before {
    content: "Review your cart";
}

body.woocommerce-checkout:not(.woocommerce-order-received) .wp-block-woocommerce-checkout::before,
body.woocommerce-checkout:not(.woocommerce-order-received) .entry-content > .woocommerce::before {
    content: "Complete your order";
}

body.woocommerce-account .entry-content > .woocommerce::before {
    content: none;
}

body.woocommerce-cart .wp-block-woocommerce-cart,
body.woocommerce-checkout:not(.woocommerce-order-received) .wp-block-woocommerce-checkout {
    color: var(--vb-on-surface);
}

body.woocommerce-cart table,
body.woocommerce-checkout:not(.woocommerce-order-received) table,
body.woocommerce-account table {
    border-color: rgba(87, 56, 127, 0.44);
}

body.woocommerce-cart .wc-block-cart,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-checkout {
    gap: 80px;
}

body.woocommerce-cart .wc-block-cart {
    display: grid !important;
    grid-template-columns: minmax(0, 1.55fr) minmax(360px, 0.85fr);
    align-items: start;
}

body.woocommerce-cart .wc-block-cart__main,
body.woocommerce-cart .wc-block-cart__sidebar {
    width: 100% !important;
    max-width: none !important;
}

body.woocommerce-cart .wc-block-cart__sidebar {
    position: sticky;
    top: 112px;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-sidebar-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1.42fr) minmax(360px, 0.78fr);
    align-items: start;
    gap: 80px;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-main,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-sidebar {
    width: 100% !important;
    max-width: none !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-sidebar {
    position: sticky;
    top: 112px;
}

body.woocommerce-cart .wc-block-cart-items,
body.woocommerce-cart .wc-block-cart__totals-title,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-sidebar-layout,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-checkout__form {
    color: var(--vb-on-surface);
}

body.woocommerce-cart .wc-block-cart-items__header,
body.woocommerce-cart .wc-block-cart-items__row,
body.woocommerce-cart .wc-block-components-totals-wrapper,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-totals-wrapper,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-order-summary,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-checkout-step,
body.woocommerce-account form.login,
body.woocommerce-account form.lost_reset_password,
body.woocommerce-account .woocommerce-MyAccount-content,
body.woocommerce-account .woocommerce-MyAccount-navigation {
    border-color: rgba(87, 56, 127, 0.38) !important;
}

body.woocommerce-cart .wc-block-cart__sidebar,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-sidebar,
body.woocommerce-account form.login,
body.woocommerce-account form.lost_reset_password,
body.woocommerce-account .woocommerce-MyAccount-content,
body.woocommerce-account .woocommerce-MyAccount-navigation {
    border: 1px solid rgba(87, 56, 127, 0.38);
    border-radius: 24px;
    background: rgba(28, 8, 52, 0.82);
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.24);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

body.woocommerce-cart .wc-block-cart__sidebar,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-sidebar {
    padding: 28px;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block {
    width: 100%;
    max-width: 100%;
    color: var(--vb-on-surface);
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid {
    width: 100%;
    max-width: 100%;
    margin-top: 34px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    box-sizing: border-box;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new > h2,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__title {
    margin: 0 0 22px;
    color: #fff;
    font-family: var(--vb-heading-font);
    font-size: clamp(26px, 3vw, 38px);
    font-weight: 900;
    line-height: 1.12;
    letter-spacing: 0;
    text-align: center;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product {
    display: flex;
    flex-direction: column;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 14px !important;
    border: 1px solid rgba(87, 56, 127, 0.34);
    border-radius: 18px;
    background: rgba(51, 18, 91, 0.58);
    box-sizing: border-box;
    overflow: hidden;
    text-align: left;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1;
    margin: 0 0 14px;
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img {
    display: block;
    width: auto;
    max-width: 88%;
    height: auto;
    max-height: 88%;
    margin: 0 auto;
    object-fit: contain;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title {
    color: #fff;
    font-size: 15px;
    font-weight: 900;
    line-height: 1.25;
    text-align: left;
    text-decoration: none !important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price {
    display: block;
    margin-top: 8px;
    color: #fff;
    font-size: 19px;
    font-weight: 900;
    line-height: 1.2;
    text-align: left;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price del {
    margin-right: 6px;
    color: rgba(240, 223, 255, 0.44);
    font-weight: 700;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price ins {
    color: #fff;
    text-decoration: none;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart {
    margin-top: auto;
    padding-top: 16px;
    text-align: left;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .add_to_cart_button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    min-width: 128px;
    min-height: 42px;
    padding: 0 18px !important;
    border: 1px solid rgba(181, 134, 255, 0.46) !important;
    border-radius: 999px !important;
    background: rgba(28, 8, 52, 0.72) !important;
    color: #fff !important;
    font-size: 13px;
    font-weight: 900;
    line-height: 1;
    text-align: center;
    text-decoration: none !important;
    box-shadow: none;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link:hover,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .add_to_cart_button:hover {
    border-color: rgba(181, 134, 255, 0.72) !important;
    background: rgba(51, 18, 91, 0.92) !important;
    color: #fff !important;
}

body.woocommerce-cart .wc-block-cart-items__row {
    border-top: 1px solid rgba(87, 56, 127, 0.42);
}

body.woocommerce-cart .wc-block-cart-item__image img,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-order-summary-item__image img {
    border-radius: 14px;
    background: #fff;
}

body.woocommerce-cart .wc-block-components-product-name,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-product-name {
    color: #fff;
    font-weight: 900;
    text-decoration: none !important;
}

body.woocommerce-cart .wc-block-components-product-metadata,
body.woocommerce-cart .wc-block-components-product-metadata__description,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-product-metadata,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-product-metadata__description,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-checkout-step__description,
body.woocommerce-account .woocommerce-form-login__rememberme,
body.woocommerce-account .woocommerce-LostPassword,
body.woocommerce-account .woocommerce-privacy-policy-text,
body.woocommerce-account .woocommerce-form-row em {
    color: rgba(240, 223, 255, 0.58);
}

body.woocommerce-account .woocommerce-privacy-policy-text a {
    color: #c99bff;
    font-weight: 700;
    text-decoration: none;
}

body.woocommerce-account .woocommerce-privacy-policy-text a:hover {
    color: #ffffff;
    text-decoration: underline;
    text-underline-offset: 4px;
}

body.woocommerce-cart .wc-block-cart-item__prices,
body.woocommerce-cart .wc-block-cart-item__total,
body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    color: #fff;
    font-weight: 900;
}

body.woocommerce-cart .wc-block-cart-item__quantity .wc-block-components-quantity-selector,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-quantity-selector {
    border-color: rgba(181, 134, 255, 0.34);
    border-radius: 10px;
    background: rgba(51, 18, 91, 0.58);
}

body.woocommerce-cart .wc-block-cart-item__remove-link,
body.woocommerce-cart .wc-block-components-totals-coupon-link,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-totals-coupon-link,
body.woocommerce-account a {
    color: var(--vb-primary);
}

body.woocommerce-cart .wc-block-components-button,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-button,
body.woocommerce-account button.button,
body.woocommerce-account .woocommerce-button,
body.woocommerce-account input[type="submit"] {
    min-height: 52px;
    border: 0 !important;
    border-radius: 14px !important;
    background: var(--vb-gradient) !important;
    color: #fff !important;
    font-weight: 900 !important;
    text-decoration: none !important;
    box-shadow: 0 16px 38px rgba(123, 47, 224, 0.24);
}

body.woocommerce-cart .wc-block-components-button:hover,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-button:hover,
body.woocommerce-account button.button:hover,
body.woocommerce-account .woocommerce-button:hover,
body.woocommerce-account input[type="submit"]:hover {
    color: #fff !important;
    filter: brightness(1.08);
}

body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-checkout__form {
    padding: 0;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-checkout-step {
    margin-bottom: 24px;
    padding: 28px !important;
    border: 1px solid rgba(87, 56, 127, 0.34);
    border-radius: 24px;
    background: rgba(28, 8, 52, 0.62);
}

body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-checkout-step__title,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-title,
body.woocommerce-cart .wc-block-cart__totals-title,
body.woocommerce-account h2,
body.woocommerce-account h3 {
    color: #fff;
    font-family: var(--vb-heading-font);
    font-weight: 900;
    letter-spacing: 0;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-text-input input,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-form .wc-block-components-text-input input[type="email"],
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-form .wc-block-components-text-input input[type="tel"],
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-form .wc-block-components-text-input input[type="text"] {
    min-height: 56px;
    padding: 18px 16px 6px !important;
    border: 1px solid rgba(181, 134, 255, 0.34) !important;
    border-radius: 14px !important;
    background: rgba(21, 5, 41, 0.82) !important;
    color: #fff !important;
    box-shadow: none !important;
}

body.woocommerce-account input[type="text"],
body.woocommerce-account input[type="email"],
body.woocommerce-account input[type="password"] {
    min-height: 52px;
    border: 1px solid rgba(181, 134, 255, 0.32) !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, 0.96) !important;
    color: #170628 !important;
    box-shadow: none !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-text-input,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-combobox {
    color: #fff;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-text-input label,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-combobox label {
    color: rgba(240, 223, 255, 0.68) !important;
    transform-origin: left top;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-text-input input:focus,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-text-input input:not(:placeholder-shown),
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input:focus,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input[aria-expanded="true"] {
    border-color: rgba(181, 134, 255, 0.68) !important;
    background: rgba(28, 8, 52, 0.94) !important;
    color: #fff !important;
    outline: none !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-text-input input::placeholder,
body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input::placeholder {
    color: rgba(240, 223, 255, 0.36);
}

body.woocommerce-checkout:not(.woocommerce-order-received) label,
body.woocommerce-account label {
    color: rgba(240, 223, 255, 0.76);
    font-weight: 800;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-checkbox .wc-block-components-checkbox__mark {
    fill: #fff;
}

body.woocommerce-account .entry-content > .woocommerce {
    max-width: 620px;
    margin-right: auto;
    margin-left: auto;
}

body.woocommerce-account form.login,
body.woocommerce-account form.lost_reset_password {
    margin: 0 auto;
    padding: 44px 46px;
    border-radius: 24px;
    background:
        radial-gradient(circle at 100% 0%, rgba(181, 134, 255, 0.12), transparent 18rem),
        rgba(28, 8, 52, 0.76);
}

body.woocommerce-account .entry-content > .woocommerce:has(form.lost_reset_password) {
    width: 100%;
    max-width: 480px;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.woocommerce-account form.lost_reset_password {
    width: 100%;
    min-width: 0;
    max-width: 480px;
    padding: 40px !important;
    border: 0 !important;
    border-radius: 16px !important;
    background: rgba(60, 22, 104, 0.4) !important;
    outline: 0 !important;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.24) !important;
    box-sizing: border-box;
}

body.woocommerce-account form.lost_reset_password p:first-child {
    margin: 0 0 24px;
    color: #bf9ceb;
    font-family: var(--vb-font);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.55;
}

body.woocommerce-account form.lost_reset_password .form-row {
    width: 100%;
    margin: 0 0 24px;
}

body.woocommerce-account form.lost_reset_password input[type="text"],
body.woocommerce-account form.lost_reset_password input[type="email"],
body.woocommerce-account form.lost_reset_password input[type="password"] {
    width: 100%;
    height: 56px;
    min-height: 0;
    padding: 16px !important;
    border: 0 !important;
    border-bottom: 2px solid transparent !important;
    border-radius: 12px !important;
    background: #000000 !important;
    color: #f0dfff !important;
    font-family: var(--vb-font);
    font-size: 16px !important;
    font-weight: 400;
    line-height: 1.5;
    box-shadow: none !important;
    box-sizing: border-box;
}

body.woocommerce-account form.lost_reset_password input::placeholder {
    color: #69696e;
    opacity: 1;
}

body.woocommerce-account form.lost_reset_password input[type="text"]:focus,
body.woocommerce-account form.lost_reset_password input[type="email"]:focus,
body.woocommerce-account form.lost_reset_password input[type="password"]:focus {
    border-bottom-color: #E950CC !important;
    background: #000000 !important;
    color: #f0dfff !important;
    outline: none !important;
}

body.woocommerce-account form.lost_reset_password button.button,
body.woocommerce-account form.lost_reset_password .woocommerce-button,
body.woocommerce-account form.lost_reset_password .woocommerce-Button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    height: 56px;
    margin: 0 !important;
    padding: 0 16px !important;
    border-radius: 12px !important;
    font-family: var(--vb-font);
    font-size: 18px !important;
    line-height: 1;
    box-sizing: border-box;
}

body.woocommerce-account form.login h2,
body.woocommerce-account .entry-content > .woocommerce > h2 {
    margin: 0 0 30px;
    color: #fff;
    font-size: clamp(34px, 4vw, 48px);
    line-height: 1.1;
    text-align: center;
}

body.woocommerce-account form.login p,
body.woocommerce-account form.lost_reset_password p {
    margin-bottom: 18px;
}

body.woocommerce-account form.login .form-row,
body.woocommerce-account form.lost_reset_password .form-row {
    padding: 0;
}

body.woocommerce-account .show-password-input {
    color: #170628;
}

body.woocommerce-account .woocommerce-form-login__rememberme {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 2px 0 18px;
}

body.woocommerce-account .woocommerce-form-login__rememberme input {
    width: 16px;
    height: 16px;
    margin: 0;
}

body.woocommerce-account form.login .woocommerce-button,
body.woocommerce-account form.lost_reset_password .woocommerce-button {
    width: 100%;
    margin-top: 6px;
}

body.woocommerce-account .woocommerce-LostPassword,
body.woocommerce-account .woocommerce-form-login + p,
body.woocommerce-account form.login + p {
    text-align: center;
}

body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-error,
body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .woocommerce-error,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-message,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-info,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-error {
    border: 1px solid rgba(181, 134, 255, 0.36);
    border-radius: 16px;
    background: rgba(60, 22, 104, 0.72);
    color: var(--vb-on-surface);
}

body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-error {
    max-width: 620px;
    margin: 0 auto 22px;
    padding: 16px 18px;
}

body.woocommerce-account .entry-content > .woocommerce:has(.vb-account-login-stage) > .woocommerce-notices-wrapper:has(> .woocommerce-message),
body.woocommerce-account .entry-content > .woocommerce:has(.vb-account-login-stage) > .woocommerce-notices-wrapper:has(> .woocommerce-info),
body.woocommerce-account .entry-content > .woocommerce:has(.vb-account-login-stage) > .woocommerce-notices-wrapper:has(> .woocommerce-error) {
    box-sizing: border-box;
    position: fixed;
    top: 92px;
    left: 0;
    z-index: 10001;
    width: 100%;
    padding: 0 16px;
    pointer-events: none;
}

body.woocommerce-account .entry-content > .woocommerce:has(.vb-account-login-stage) > .woocommerce-notices-wrapper > .woocommerce-message,
body.woocommerce-account .entry-content > .woocommerce:has(.vb-account-login-stage) > .woocommerce-notices-wrapper > .woocommerce-info,
body.woocommerce-account .entry-content > .woocommerce:has(.vb-account-login-stage) > .woocommerce-notices-wrapper > .woocommerce-error {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding: 16px 48px 16px 46px;
    line-height: 1.45;
    pointer-events: auto;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.28);
}

body.woocommerce-account .entry-content > .woocommerce:has(.vb-account-login-stage) > .woocommerce-notices-wrapper > .woocommerce-error::before,
body.woocommerce-account .entry-content > .woocommerce:has(.vb-account-login-stage) > .woocommerce-notices-wrapper > .woocommerce-info::before,
body.woocommerce-account .entry-content > .woocommerce:has(.vb-account-login-stage) > .woocommerce-notices-wrapper > .woocommerce-message::before {
    top: 17px;
    left: 18px;
}

body.woocommerce-account .entry-content > .woocommerce:has(.vb-account-login-stage) .vb-notice-close {
    position: absolute;
    top: 12px;
    right: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    min-height: 0;
    padding: 0 !important;
    border: 1px solid rgba(240, 223, 255, 0.2) !important;
    border-radius: 50% !important;
    background: rgba(21, 5, 41, 0.34) !important;
    color: #ffffff !important;
    line-height: 1;
    cursor: pointer;
    box-shadow: none !important;
    transition: border-color 0.2s ease, background 0.2s ease, opacity 0.2s ease;
}

body.woocommerce-account .entry-content > .woocommerce:has(.vb-account-login-stage) .vb-notice-close:hover {
    border-color: rgba(240, 223, 255, 0.48) !important;
    background: rgba(240, 223, 255, 0.12) !important;
}

body.woocommerce-account .entry-content > .woocommerce:has(.vb-account-login-stage) .vb-notice-close span,
body.woocommerce-account .entry-content > .woocommerce:has(.vb-account-login-stage) .vb-notice-close span::before {
    display: block;
    width: 10px;
    height: 2px;
    border-radius: 2px;
    background: rgba(255, 255, 255, 0.86);
    content: "";
}

body.woocommerce-account .entry-content > .woocommerce:has(.vb-account-login-stage) .vb-notice-close span {
    transform: rotate(45deg);
}

body.woocommerce-account .entry-content > .woocommerce:has(.vb-account-login-stage) .vb-notice-close span::before {
    transform: rotate(90deg);
}

body.woocommerce-account .woocommerce-message a.button,
body.woocommerce-account .woocommerce-info a.button,
body.woocommerce-account .woocommerce-error a.button {
    float: none;
    display: inline-flex;
    min-height: 40px;
    margin: 10px 0 0;
    padding: 10px 18px;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-error {
    padding-left: 18px;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message::before,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info::before,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-error::before {
    content: none !important;
    display: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation {
    float: left;
    width: 28%;
    padding: 22px;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    margin: 0;
    padding: 0;
    border: 0 !important;
    background: transparent !important;
    list-style: none;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li {
    margin: 0;
    border: 0 !important;
    background: transparent !important;
    list-style: none;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li a {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 48px;
    padding: 13px 14px;
    border: 1px solid rgba(181, 134, 255, 0.18);
    border-radius: 12px;
    background: rgba(28, 8, 52, 0.58);
    color: rgba(240, 223, 255, 0.72);
    font-weight: 800;
    text-decoration: none;
    transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
    border-color: rgba(181, 134, 255, 0.52);
    background: rgba(181, 134, 255, 0.18);
    color: #fff;
}

body.woocommerce-account .woocommerce-MyAccount-content {
    float: right;
    width: 69%;
    padding: 32px;
}

body.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation)::after {
    display: table;
    clear: both;
    content: "";
}

/* ============================================
   登录/注册页 — 1:1 还原 docs/ui_other/vseebox_login_v2/code.html
   ============================================ */

/* 登录页全局字体覆盖：跟随全站 Kumbh Sans 字体策略 */
body.woocommerce-account.woocommerce-page:not(.logged-in),
body.woocommerce-account .vb-account-login-stage,
body.woocommerce-account .vb-account-login-stage * {
    font-family: var(--vb-font);
}

/* Material Symbols 图标在登录页内强制使用图标字体，不能被全站字体覆盖 */
body.woocommerce-account .vb-account-login-stage .material-symbols-outlined {
    font-family: 'Material Symbols Outlined' !important;
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: 'liga';
    -webkit-font-smoothing: antialiased;
}

/* 登录页时清空全局 myaccount 卡片样式（避免 form.login 双层卡片） */
body.woocommerce-account .entry-content:has(.vb-account-login-stage),
body.woocommerce-account #main:has(.vb-account-login-stage),
body.woocommerce-account #primary:has(.vb-account-login-stage) {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.woocommerce-account .entry-content > .woocommerce:has(.vb-account-login-stage) {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 登录页所有外层容器：去掉边框/玻璃背景/伪元素 clearfix，避免出现页面四周边线框 */
body.woocommerce-account .entry-content:has(.vb-account-login-stage),
body.woocommerce-account .entry-content:has(.vb-account-login-stage) > .woocommerce,
body.woocommerce-account #main:has(.vb-account-login-stage),
body.woocommerce-account #primary:has(.vb-account-login-stage),
body.woocommerce-account .site-content .ast-container:has(.vb-account-login-stage) {
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

body.woocommerce-account .entry-content:has(.vb-account-login-stage)::before,
body.woocommerce-account .entry-content:has(.vb-account-login-stage)::after,
body.woocommerce-account .entry-content:has(.vb-account-login-stage) > .woocommerce::before,
body.woocommerce-account .entry-content:has(.vb-account-login-stage) > .woocommerce::after {
    content: none !important;
    display: none !important;
}

body.woocommerce-account .vb-account-login-stage form.login,
body.woocommerce-account .vb-account-login-stage form.lost_reset_password,
body.woocommerce-account .vb-account-login-stage form.register {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* 舞台容器：在视口高度内承载光球和卡片，footer 跟随其下 */
.vb-account-login-stage {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 48px;
    width: 100%;
    min-height: calc(100vh - 80px); /* 80px ≈ fixed Header 高度 */
    padding: 96px 24px 48px;
    overflow: hidden;
    box-sizing: border-box;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
}

/* 注册卡显示时（.is-register-mode 命中），保持和登录态一致的居中规则 */
.vb-account-login-stage.is-register-mode {
    justify-content: center;
}

/* 注册态：隐藏登录卡，只显示注册卡 */
.vb-account-login-stage.is-register-mode .vb-account-login:not(.vb-account-login--register) {
    display: none !important;
}

.vb-account-login-stage.is-register-mode .vb-account-login--register {
    display: block;
}

/* 参考稿氛围光球 */
.vb-account-login__ambient {
    position: absolute;
    width: 40vw;
    height: 40vw;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(123, 47, 224, 0.15) 0%, rgba(21, 5, 41, 0) 70%);
    filter: blur(60px);
    pointer-events: none;
    z-index: 0;
}

.vb-account-login__ambient--tl {
    top: -10%;
    left: -10%;
}

.vb-account-login__ambient--br {
    right: -10%;
    bottom: -10%;
}

/* 全屏点状纹理 */
.vb-account-login__pixel {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgba(181, 134, 255, 0.1) 1px, transparent 1px);
    background-size: 20px 20px;
    opacity: 0.2;
    pointer-events: none;
    z-index: 0;
}

/* 卡片容器 */
.vb-account-login {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 480px;
}

/* 注册卡默认隐藏，点击 Sign Up 后通过 :target 显示 */
.vb-account-login--register {
    display: none;
}

.vb-account-login--register:target {
    display: block;
}

/* 登录卡：玻璃质感，参考稿 glass-card */
.vb-account-login__panel {
    padding: 40px;
    border: 0;
    border-radius: 16px;
    background: rgba(60, 22, 104, 0.4);
    outline: 1px solid rgba(87, 56, 127, 0.2);
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.24);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.vb-account-login__header {
    margin-bottom: 40px;
    text-align: center;
}

.vb-account-login__panel h2 {
    margin: 0 0 8px;
    color: #f0dfff;
    font-family: var(--vb-font);
    font-size: 38px;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: 0;
    text-align: center;
}

.vb-account-login__intro,
.vb-account-login__note {
    margin: 0;
    color: #bf9ceb;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    text-align: center;
}

/* 表单 row */
.vb-account-login__panel .form-row {
    margin: 0 0 24px;
    padding: 0;
}

/* Label：12px 全大写小字 */
.vb-account-login__panel label {
    display: block;
    margin-bottom: 8px;
    margin-left: 4px;
    color: #bf9ceb;
    font-family: var(--vb-font);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    line-height: 1.4;
    text-transform: uppercase;
}

/* 强制 label 可见，覆盖 Astra/WooCommerce 默认 label 样式 */
body.woocommerce-account .vb-account-login__panel form .form-row > label,
body.woocommerce-account .vb-account-login__panel .woocommerce-form-row > label {
    display: block !important;
    visibility: visible !important;
    position: static !important;
    width: auto !important;
    height: auto !important;
    margin: 0 0 8px 4px !important;
    padding: 0 !important;
    overflow: visible !important;
    clip: auto !important;
    color: #bf9ceb !important;
    font-family: var(--vb-font) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
    line-height: 1.4 !important;
    text-transform: uppercase !important;
}

/* 内嵌 screen-reader-text 仍按规范隐藏（不影响 label 主文本） */
body.woocommerce-account .vb-account-login__panel label .screen-reader-text {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* required 星号 */
body.woocommerce-account .vb-account-login__panel label .required {
    color: #fb60dc !important;
    text-decoration: none !important;
}

/* 输入框：黑底圆角 12px */
.vb-account-login__panel input[type="text"],
.vb-account-login__panel input[type="email"],
.vb-account-login__panel input[type="password"] {
    width: 100%;
    height: 56px;
    min-height: 0;
    padding: 16px !important;
    border: 0 !important;
    border-bottom: 2px solid transparent !important;
    border-radius: 12px !important;
    background: #000000 !important;
    color: #f0dfff !important;
    font-family: var(--vb-font);
    font-size: 16px !important;
    font-weight: 400;
    line-height: 1.5;
    box-shadow: none !important;
    transition: border-bottom-color 0.2s ease;
    box-sizing: border-box;
}

.vb-account-login__panel input::placeholder {
    color: #69696e;
    opacity: 1;
}

.vb-account-login__panel input[type="text"]:focus,
.vb-account-login__panel input[type="email"]:focus,
.vb-account-login__panel input[type="password"]:focus {
    border-bottom-color: #E950CC !important;
    background: #000000 !important;
    color: #f0dfff !important;
    outline: none !important;
}

/* 密码切换按钮 */
.vb-account-login__password-field {
    position: relative;
    display: block;
}

.vb-account-login__password-field input[type="password"],
.vb-account-login__password-field input[type="text"] {
    padding-right: 56px !important;
}

.vb-account-login__password-toggle {
    position: absolute;
    top: 50%;
    right: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    min-height: 0;
    margin: 0;
    padding: 0;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #bf9ceb !important;
    box-shadow: none !important;
    transform: translateY(-50%);
    cursor: pointer;
    transition: color 0.2s ease;
}

.vb-account-login__password-toggle:hover {
    color: #b586ff !important;
    background: transparent !important;
}

.vb-account-login__password-icon {
    display: block;
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
}

.vb-account-login__password-icon--hide,
.vb-account-login__password-toggle.is-visible .vb-account-login__password-icon--show {
    display: none;
}

.vb-account-login__password-toggle.is-visible .vb-account-login__password-icon--hide {
    display: block;
}

/* Remember me + Forgot password 同一行 */
.vb-account-login__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0 0 24px;
    font-size: 14px;
}

.vb-account-login__row a {
    color: #b586ff;
    font-family: var(--vb-font);
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: color 0.2s ease;
}

.vb-account-login__row a:hover {
    color: #fb60dc;
    text-decoration: none;
}

.vb-account-login__row .woocommerce-form-login__rememberme {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    margin: 0 !important;
    padding: 0;
    color: #bf9ceb !important;
    font-family: var(--vb-font);
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
    cursor: pointer;
}

.vb-account-login__row .woocommerce-form-login__rememberme:hover {
    color: #f0dfff !important;
}

/* 自定义 Remember Me 复选框：参考稿紫色风格 */
.vb-account-login__row .woocommerce-form-login__rememberme input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    position: relative;
    display: inline-block;
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    min-height: 0;
    margin: 0;
    padding: 0;
    border: 1.5px solid #57387f !important;
    border-radius: 6px !important;
    background: #1c0834 !important;
    box-shadow: none !important;
    cursor: pointer;
    transition: border-color 0.15s ease, background 0.15s ease;
    accent-color: #b586ff;
}

.vb-account-login__row .woocommerce-form-login__rememberme input[type="checkbox"]:hover {
    border-color: #b586ff !important;
}

.vb-account-login__row .woocommerce-form-login__rememberme input[type="checkbox"]:checked {
    border-color: #b586ff !important;
    background: linear-gradient(135deg, #7B2FE0 0%, #E950CC 100%) !important;
}

.vb-account-login__row .woocommerce-form-login__rememberme input[type="checkbox"]:checked::after {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 6px;
    height: 11px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: translate(-50%, -60%) rotate(45deg);
    content: "";
}

.vb-account-login__row .woocommerce-form-login__rememberme input[type="checkbox"]:focus,
.vb-account-login__row .woocommerce-form-login__rememberme input[type="checkbox"]:focus-visible {
    outline: 2px solid rgba(181, 134, 255, 0.5) !important;
    outline-offset: 2px;
}

/* Sign In 按钮：渐变 */
.vb-account-login__panel button.button,
.vb-account-login__panel button.woocommerce-button {
    display: block;
    width: 100%;
    height: 56px;
    min-height: 0;
    margin: 0 0 4px;
    padding: 0 16px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #7B2FE0 0%, #E950CC 100%) !important;
    color: #2e0062 !important;
    font-family: var(--vb-font);
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1;
    letter-spacing: 0;
    text-transform: none !important;
    box-shadow: 0 16px 38px rgba(123, 47, 224, 0.24) !important;
    cursor: pointer;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.vb-account-login__panel button.button:hover,
.vb-account-login__panel button.woocommerce-button:hover {
    color: #2e0062 !important;
    filter: none !important;
    box-shadow: 0 20px 44px rgba(123, 47, 224, 0.32) !important;
}

.vb-account-login__panel button.button:active,
.vb-account-login__panel button.woocommerce-button:active {
    transform: scale(0.96);
}

/* 分隔线 + Or continue with */
.vb-account-login__divider {
    display: flex;
    align-items: center;
    gap: 16px;
    margin: 16px 0;
    padding: 16px 0;
    color: #69696e;
    font-family: var(--vb-font);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-align: center;
    text-transform: uppercase;
}

.vb-account-login__divider::before,
.vb-account-login__divider::after {
    flex: 1;
    height: 1px;
    background: rgba(87, 56, 127, 0.2);
    content: "";
}

.vb-account-login__divider span {
    flex-shrink: 0;
}

/* Google 按钮 */
.vb-account-login__google {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
    height: 52px;
    min-height: 0;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(87, 56, 127, 0.2) !important;
    border-radius: 12px !important;
    background: rgba(51, 18, 91, 0.5) !important;
    color: #f0dfff !important;
    font-family: var(--vb-font);
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1;
    text-transform: none !important;
    box-shadow: none !important;
    cursor: pointer;
    transition: background 0.2s ease;
}

.vb-account-login__google:hover {
    background: rgba(51, 18, 91, 1) !important;
    color: #f0dfff !important;
    filter: none !important;
}

.vb-account-login__google-icon {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
}

/* 卡片底部 Sign Up 链接 */
.vb-account-login__footer {
    margin-top: 40px;
    text-align: center;
}

.vb-account-login__footer p {
    margin: 0;
    color: #bf9ceb;
    font-family: var(--vb-font);
    font-size: 16px;
    font-weight: 400;
}

.vb-account-login__signup-link {
    margin-left: 6px;
    color: #b586ff;
    font-weight: 700;
    text-decoration: none;
    transition: text-decoration 0.2s ease;
}

.vb-account-login__signup-link:hover {
    text-decoration: underline;
    text-underline-offset: 4px;
}

/* 卡片下方居中渐变细线 */
.vb-account-login__accent {
    width: 128px;
    height: 2px;
    margin: 32px auto 0;
    background: linear-gradient(90deg, transparent, #b586ff, transparent);
    opacity: 0.5;
}

/* 登录页 body 还原参考稿纯色背景（光球由 .vb-account-login__ambient 提供） */
body.woocommerce-account:has(.vb-account-login-stage) {
    background: #150529 !important;
}

/* 隐藏 Astra Addon 注入的重复切换链接（"Already a member? Login"），我们已有 in-page Sign In 切换 */
body.woocommerce-account .vb-account-login-stage .ast-woo-form-actions {
    display: none !important;
}

/* 高特异性覆盖：抵消旧 body.woocommerce-account form.login {} 等全局样式 */
body.woocommerce-account .vb-account-login-stage form.login,
body.woocommerce-account .vb-account-login-stage form.lost_reset_password,
body.woocommerce-account .vb-account-login-stage form.register,
body.woocommerce-account .vb-account-login__panel form.login,
body.woocommerce-account .vb-account-login__panel form.register {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

body.woocommerce-account .vb-account-login__panel h2 {
    margin: 0 0 8px;
    color: #f0dfff;
    font-family: var(--vb-font);
    font-size: 38px;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: 0;
    text-align: center;
}

body.woocommerce-account .vb-account-login__intro,
body.woocommerce-account .vb-account-login__note {
    margin: 0;
    color: #bf9ceb;
    font-family: var(--vb-font);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    text-align: center;
}

body.woocommerce-account .vb-account-login__panel input[type="text"],
body.woocommerce-account .vb-account-login__panel input[type="email"],
body.woocommerce-account .vb-account-login__panel input[type="password"] {
    width: 100%;
    height: 56px;
    min-height: 0;
    padding: 16px !important;
    border: 0 !important;
    border-bottom: 2px solid transparent !important;
    border-radius: 12px !important;
    background: #000000 !important;
    color: #f0dfff !important;
    font-family: var(--vb-font);
    font-size: 16px !important;
    box-shadow: none !important;
}

body.woocommerce-account .vb-account-login__panel input[type="text"]:focus,
body.woocommerce-account .vb-account-login__panel input[type="email"]:focus,
body.woocommerce-account .vb-account-login__panel input[type="password"]:focus {
    border-bottom-color: #E950CC !important;
    background: #000000 !important;
    color: #f0dfff !important;
    outline: none !important;
}

body.woocommerce-account .vb-account-login__panel button.button,
body.woocommerce-account .vb-account-login__panel button.woocommerce-button {
    display: block;
    width: 100%;
    height: 56px;
    min-height: 0;
    margin: 0 0 4px;
    padding: 0 16px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #7B2FE0 0%, #E950CC 100%) !important;
    color: #2e0062 !important;
    font-family: var(--vb-font);
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1;
    text-transform: none !important;
    box-shadow: 0 16px 38px rgba(123, 47, 224, 0.24) !important;
}

body.woocommerce-account .vb-account-login__row .woocommerce-form-login__rememberme {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    margin: 0 !important;
    color: #bf9ceb !important;
    font-family: var(--vb-font);
    font-size: 14px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

body.woocommerce-account .vb-account-login__row .woocommerce-form-login__rememberme input {
    appearance: none;
    -webkit-appearance: none;
    width: 20px;
    height: 20px;
    min-height: 0;
    margin: 0;
    border: 1.5px solid #57387f !important;
    border-radius: 6px !important;
    background: #1c0834 !important;
    accent-color: #b586ff;
}

body.woocommerce-account .vb-account-login__row .woocommerce-form-login__rememberme input:checked {
    border-color: #b586ff !important;
    background: linear-gradient(135deg, #7B2FE0 0%, #E950CC 100%) !important;
}

body.woocommerce-account .vb-account-login__row a,
body.woocommerce-account .vb-account-login__signup-link {
    color: #b586ff;
}

body.woocommerce-account .vb-account-login__panel label {
    color: #bf9ceb;
    font-family: var(--vb-font);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    line-height: 1.4;
    text-transform: uppercase;
}

@media (max-width: 1024px) {
    body.woocommerce-cart .entry-content,
    body.woocommerce-checkout:not(.woocommerce-order-received) .entry-content,
    body.woocommerce-account .entry-content {
        width: min(100% - 48px, 1360px);
    }

    body.woocommerce-cart .wc-block-cart,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-checkout {
        gap: 40px;
    }

    body.woocommerce-cart .wc-block-cart,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-sidebar-layout {
        grid-template-columns: 1fr;
    }

    body.woocommerce-cart .wc-block-cart__sidebar,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-sidebar {
        position: static;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation,
    body.woocommerce-account .woocommerce-MyAccount-content {
        float: none;
        width: 100%;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation {
        margin-bottom: 24px;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation ul {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .vb-account-login {
        width: 100%;
    }
}

@media (max-width: 767px) {
    body.woocommerce-cart .entry-content,
    body.woocommerce-checkout:not(.woocommerce-order-received) .entry-content,
    body.woocommerce-account .entry-content {
        width: auto;
        max-width: none;
        margin-right: 24px;
        margin-left: 24px;
        padding: 116px 0 72px;
    }

    body.woocommerce-cart .entry-content > .woocommerce::before,
    body.woocommerce-checkout:not(.woocommerce-order-received) .entry-content > .woocommerce::before,
    body.woocommerce-account .entry-content > .woocommerce::before,
    body.woocommerce-cart .wp-block-woocommerce-cart::before,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wp-block-woocommerce-checkout::before {
        margin-bottom: 28px;
        font-size: 38px;
        overflow-wrap: anywhere;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart,
    body.woocommerce-cart .wc-block-cart,
    body.woocommerce-cart .wc-block-cart__main,
    body.woocommerce-cart .wc-block-cart__sidebar,
    body.woocommerce-cart .wc-block-cart-items,
    body.woocommerce-cart .wc-block-cart-items__row,
    body.woocommerce-cart .wc-block-cart-item__wrap,
    body.woocommerce-cart .wc-block-components-sidebar,
    body.woocommerce-cart .wc-block-components-main {
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart.alignwide,
    body.woocommerce-cart .wp-block-woocommerce-cart.alignfull,
    body.woocommerce-cart .wc-block-cart {
        width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    body.woocommerce-cart .wc-block-cart {
        gap: 24px;
        justify-items: start;
    }

    body.woocommerce-cart .wc-block-cart__main,
    body.woocommerce-cart .wc-block-cart__sidebar {
        width: calc(100vw - 48px) !important;
        max-width: calc(100vw - 48px) !important;
    }

    body.woocommerce-cart .wc-block-cart-items__row {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    body.woocommerce-cart .wc-block-cart-item__wrap {
        overflow-wrap: anywhere;
    }

    body.woocommerce-cart .wc-block-cart__sidebar {
        padding: 20px !important;
    }

    body.woocommerce-cart .wc-block-components-totals-item {
        gap: 16px;
        min-width: 0;
    }

    body.woocommerce-cart .wc-block-components-totals-item__label {
        min-width: 0;
    }

    body.woocommerce-cart .wc-block-components-totals-item__value {
        flex: 0 0 auto;
        white-space: nowrap;
    }

    body.woocommerce-cart .wc-block-components-button {
        width: 100%;
        min-width: 0;
    }

    body.woocommerce-cart .wc-block-components-express-payment,
    body.woocommerce-cart .wc-block-components-express-payment__content,
    body.woocommerce-cart .wc-block-components-express-payment__event-buttons,
    body.woocommerce-cart [id^="express-payment-method-"],
    body.woocommerce-cart .paypal-buttons {
        max-width: 100% !important;
        min-width: 0 !important;
        overflow: hidden;
    }

    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block,
    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new,
    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid,
    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products,
    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product {
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box;
    }

    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new,
    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid {
        width: 100%;
        margin-top: 28px;
        padding: 0;
        border-radius: 0;
    }

    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new > h2,
    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__title {
        margin-bottom: 18px;
        font-size: 26px;
    }

    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
        grid-template-columns: minmax(0, 1fr);
        gap: 16px;
    }

    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product {
        padding: 12px !important;
        border-radius: 16px;
    }

    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title {
        font-size: 15px;
        overflow-wrap: anywhere;
    }

    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price {
        margin-top: 8px;
        font-size: 18px;
    }

    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link,
    body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .add_to_cart_button {
        min-width: 118px;
        min-height: 40px;
        padding-right: 16px !important;
        padding-left: 16px !important;
        font-size: 13px;
        white-space: normal;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .wp-block-woocommerce-checkout,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-checkout,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-sidebar-layout,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-main,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-sidebar,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-checkout__form,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-checkout-step,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-checkout-step__content,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-order-summary,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-totals-wrapper {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .wp-block-woocommerce-checkout.alignwide,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wp-block-woocommerce-checkout.alignfull {
        width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-sidebar-layout {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 24px;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-main,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-sidebar {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-checkout-step__heading,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-checkout-step__heading-container {
        min-width: 0;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-checkout-step__title,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-title {
        font-size: 24px;
        line-height: 1.15;
        overflow-wrap: anywhere;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-form .wc-block-components-text-input,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-combobox,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-address-form,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-address-form > *,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-country-input,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-state-input {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-form .wc-block-components-text-input input,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input {
        width: 100% !important;
        min-height: 56px;
        min-width: 0 !important;
        padding: 18px 16px 6px !important;
        font-size: 16px;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-order-summary-item {
        display: grid;
        grid-template-columns: 64px minmax(0, 1fr);
        gap: 12px;
        align-items: start;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-order-summary-item__image,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-order-summary-item__image img {
        width: 64px !important;
        max-width: 64px !important;
        min-width: 0 !important;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-order-summary-item__description,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-product-name,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-product-metadata,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-product-metadata__description {
        min-width: 0;
        overflow-wrap: anywhere;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-totals-item {
        gap: 14px;
        min-width: 0;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-totals-item__label {
        min-width: 0;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-totals-item__value,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-formatted-money-amount {
        max-width: 100%;
        overflow-wrap: anywhere;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-payment-methods,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-radio-control,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-radio-control__option,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-payment-method-label,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-express-payment,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-express-payment__content,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-express-payment__event-buttons,
    body.woocommerce-checkout:not(.woocommerce-order-received) [id^="express-payment-method-"],
    body.woocommerce-checkout:not(.woocommerce-order-received) .paypal-buttons {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box;
        overflow: hidden;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-express-payment {
        margin-top: 6px;
        margin-bottom: 24px;
        padding-top: 6px;
        overflow: visible;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-express-payment__title,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-express-payment legend {
        display: block;
        margin: 0 0 12px;
        padding: 0;
        color: rgba(240, 223, 255, 0.82);
        font-size: 14px;
        font-weight: 900;
        line-height: 1.4;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        overflow: visible;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-express-payment__content,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-express-payment__event-buttons,
    body.woocommerce-checkout:not(.woocommerce-order-received) [id^="express-payment-method-"],
    body.woocommerce-checkout:not(.woocommerce-order-received) .paypal-buttons {
        overflow: hidden;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-checkout__actions,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-checkout__actions_row {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 12px;
        width: 100%;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-button {
        width: 100%;
        min-width: 0;
    }

    body.woocommerce-cart .wc-block-cart__sidebar,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-sidebar,
    body.woocommerce-checkout:not(.woocommerce-order-received) .wc-block-components-checkout-step,
    body.woocommerce-account form.lost_reset_password,
    body.woocommerce-account .woocommerce-MyAccount-content,
    body.woocommerce-account .woocommerce-MyAccount-navigation {
        padding: 22px !important;
        border-radius: 20px;
    }

    /* 登录页移动端：1:1 还原参考稿 */
    .vb-account-login-stage {
        gap: 32px;
        padding: 96px 24px 48px;
    }

    .vb-account-login {
        max-width: 100%;
    }

    .vb-account-login__panel {
        padding: 32px 24px;
        border-radius: 16px;
    }

    .vb-account-login__panel h2 {
        font-size: 32px;
    }

    .vb-account-login__intro,
    .vb-account-login__note {
        font-size: 15px;
    }

    .vb-account-login__header {
        margin-bottom: 32px;
    }

    .vb-account-login__panel .form-row {
        margin-bottom: 20px;
    }

    .vb-account-login__panel label {
        font-size: 11px;
    }

    .vb-account-login__panel input[type="text"],
    .vb-account-login__panel input[type="email"],
    .vb-account-login__panel input[type="password"] {
        height: 52px;
        padding: 14px !important;
        border-radius: 12px !important;
        font-size: 16px !important;
    }

    .vb-account-login__row {
        gap: 12px;
        font-size: 13px;
    }

    .vb-account-login__row .woocommerce-form-login__rememberme,
    .vb-account-login__row a {
        font-size: 13px;
    }

    .vb-account-login__panel button.button,
    .vb-account-login__panel button.woocommerce-button {
        height: 52px;
        font-size: 16px !important;
    }

    .vb-account-login__divider {
        margin: 12px 0;
        padding: 12px 0;
        gap: 12px;
        font-size: 11px;
    }

    .vb-account-login__google {
        height: 48px;
        font-size: 14px !important;
    }

    .vb-account-login__footer {
        margin-top: 32px;
    }

    .vb-account-login__footer p {
        font-size: 14px;
    }

    body.woocommerce-account form.lost_reset_password {
        width: 100% !important;
        max-width: 100%;
        padding: 32px 24px !important;
    }

    body.woocommerce-account form.lost_reset_password button.button,
    body.woocommerce-account form.lost_reset_password .woocommerce-button,
    body.woocommerce-account form.lost_reset_password .woocommerce-Button {
        width: 100% !important;
    }
}

.elementor-kit-15 {
  --e-global-typography-primary-font-family: var(--vb-heading-font) !important;
  --e-global-typography-secondary-font-family: var(--vb-heading-font) !important;
  --e-global-typography-text-font-family: var(--vb-font) !important;
  --e-global-typography-accent-font-family: var(--vb-font) !important;
}

/* ---------- 全局基础 ---------- */
html {
  overflow-x: hidden;
}

body {
  font-family: var(--vb-font);
  background-color: var(--vb-background);
  color: var(--vb-on-background);
  overflow-x: hidden;
  max-width: 100vw;
}

/* 去掉汉堡按钮的浏览器默认 focus 样式（蓝色圆形） */
#vb-menu-toggle,
#vb-menu-toggle:focus,
#vb-menu-toggle:focus-visible,
#vb-menu-toggle:active {
  outline: none !important;
  box-shadow: none !important;
  background: none !important;
  -webkit-tap-highlight-color: transparent !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--vb-heading-font);
}

/* ---------- 旧页面字体覆盖 ----------
   早期 Elementor HTML Widget 写入过 Kumbh Sans 内联字体。
   这里用新字体策略统一覆盖已完成页面，避免旧数据继续影响前台显示。 */
.home .elementor-widget-html,
.home .elementor-widget-html :where(:not(.material-symbols-outlined)),
.vb-faq-page,
.vb-faq-page :where(:not(.material-symbols-outlined)),
.vb-contact-page,
.vb-contact-page :where(:not(.material-symbols-outlined)),
.vb-about-page,
.vb-about-page :where(:not(.material-symbols-outlined)),
.vb-warranty-page,
.vb-warranty-page :where(:not(.material-symbols-outlined)),
.vb-legal-page,
.vb-legal-page :where(:not(.material-symbols-outlined)),
.vb-static-page,
.vb-static-page :where(:not(.material-symbols-outlined)) {
  font-family: var(--vb-font) !important;
}

.vb-channel-list-page {
    scroll-behavior: smooth;
}

.vb-channel-list-page main {
    margin-left: auto !important;
    margin-right: auto !important;
    flex: none !important;
    width: 100%;
    max-width: 1280px;
}

/* 左侧分类导航侧边栏：仅在超宽屏下显示，纯浮动不占空间 */
.vb-channel-list-page aside {
    display: none !important;
}

@media (min-width: 1536px) {
    .vb-channel-list-page aside {
        display: flex !important;
    }
}

.vb-channel-list-page [id] {
    scroll-margin-top: 100px;
}

@media (min-width: 768px) {
    .vb-affiliate-program-page > main > section:first-child {
        padding-top: 136px !important;
    }

    .vb-affiliate-program-page > main > section:first-child > .grid {
        gap: 32px !important;
    }
}

.vb-affiliate-program-page .bg-nebula-gradient.bg-clip-text,
.vb-affiliate-program-page .bg-gradient-to-r.bg-clip-text,
.vb-affiliate-program-page .bg-gradient-to-br.bg-clip-text {
    background-clip: text !important;
    -webkit-background-clip: text !important;
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
}

.vb-affiliate-program-page form input,
.vb-affiliate-program-page form textarea,
.vb-affiliate-program-page form select {
    width: 100% !important;
    min-height: 56px !important;
    padding: 16px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background-color: #000 !important;
    box-shadow: none !important;
    color: #f0dfff !important;
    font: inherit !important;
    line-height: 1.4 !important;
    caret-color: #b586ff !important;
}

.vb-affiliate-program-page form textarea {
    min-height: 128px !important;
    resize: vertical;
}

.vb-affiliate-program-page form input::placeholder,
.vb-affiliate-program-page form textarea::placeholder {
    color: rgba(191, 156, 235, 0.55) !important;
    opacity: 1 !important;
}

.vb-affiliate-program-page form select {
    appearance: none !important;
    -webkit-appearance: none !important;
    background-image: linear-gradient(45deg, transparent 50%, #bf9ceb 50%), linear-gradient(135deg, #bf9ceb 50%, transparent 50%) !important;
    background-position: calc(100% - 22px) 50%, calc(100% - 16px) 50% !important;
    background-size: 6px 6px, 6px 6px !important;
    background-repeat: no-repeat !important;
}

.vb-affiliate-program-page form :is(input, textarea, select):focus {
    background-color: #000 !important;
    outline: none !important;
    box-shadow: 0 0 0 2px #b586ff !important;
}

.vb-affiliate-program-page form > a.bg-nebula-gradient,
.vb-affiliate-program-page form > button.bg-nebula-gradient {
    display: block !important;
    width: 100% !important;
    padding: 20px 24px !important;
    border: 0 !important;
    border-radius: 12px !important;
    color: #fff !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-decoration: none !important;
}

.vb-affiliate-program-page > main > section.max-w-4xl,
.vb-affiliate-program-page > main > section > .max-w-3xl {
    width: 100% !important;
    max-width: none !important;
}

.vb-affiliate-program-page > main > section.max-w-4xl > form {
    width: 100% !important;
}

.vb-affiliate-program-page .vb-affiliate-native-select {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.vb-affiliate-program-page .vb-affiliate-select {
    position: relative;
    z-index: 20;
    width: 100%;
}

.vb-affiliate-program-page .vb-affiliate-select__button {
    display: flex !important;
    width: 100% !important;
    min-height: 56px !important;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0 !important;
    padding: 16px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: #000 !important;
    box-shadow: none !important;
    color: #f0dfff !important;
    cursor: pointer;
    font: inherit !important;
    line-height: 1.4 !important;
    text-align: left !important;
    text-decoration: none !important;
    transition: background-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.vb-affiliate-program-page .vb-affiliate-select__label {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.vb-affiliate-program-page .vb-affiliate-select__icon {
    flex: 0 0 auto;
    color: #bf9ceb;
    font-size: 20px;
    line-height: 1;
    transition: color 0.2s ease, transform 0.2s ease;
}

.vb-affiliate-program-page .vb-affiliate-select__button:hover,
.vb-affiliate-program-page .vb-affiliate-select__button:focus-visible,
.vb-affiliate-program-page .vb-affiliate-select.is-open .vb-affiliate-select__button {
    background: #150529 !important;
    box-shadow: 0 0 0 2px #b586ff, 0 16px 36px rgba(21, 5, 41, 0.35) !important;
    color: #fff !important;
    outline: 0 !important;
}

.vb-affiliate-program-page .vb-affiliate-select__button:active {
    transform: scale(0.98);
}

.vb-affiliate-program-page .vb-affiliate-select.is-open {
    z-index: 60;
}

.vb-affiliate-program-page .vb-affiliate-select.is-open .vb-affiliate-select__icon {
    color: #fff;
    transform: rotate(180deg);
}

.vb-affiliate-program-page .vb-affiliate-select__menu {
    position: absolute;
    top: calc(100% + 10px);
    left: 0;
    display: grid;
    width: 100%;
    gap: 4px;
    padding: 8px;
    border-radius: 16px;
    background: rgba(60, 22, 104, 0.94);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.34), inset 0 0 0 1px rgba(181, 134, 255, 0.18);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    opacity: 0;
    pointer-events: none;
    transform: translateY(-6px) scale(0.98);
    transform-origin: top left;
    transition: opacity 0.18s ease, transform 0.18s ease;
}

.vb-affiliate-program-page .vb-affiliate-select.is-open > .vb-affiliate-select__menu {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0) scale(1);
}

.vb-affiliate-program-page .vb-affiliate-select__option {
    display: flex !important;
    width: 100% !important;
    min-height: 40px;
    align-items: center;
    margin: 0 !important;
    padding: 10px 12px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #bf9ceb !important;
    cursor: pointer;
    font: inherit !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    text-align: left !important;
    text-decoration: none !important;
    transition: background-color 0.18s ease, color 0.18s ease;
}

.vb-affiliate-program-page .vb-affiliate-select__option:hover,
.vb-affiliate-program-page .vb-affiliate-select__option:focus-visible {
    background: rgba(181, 134, 255, 0.12) !important;
    color: #fff !important;
    outline: 0 !important;
}

.vb-affiliate-program-page .vb-affiliate-select__option.is-selected {
    background: linear-gradient(135deg, rgba(123, 47, 224, 0.92), rgba(233, 80, 204, 0.92)) !important;
    color: #fff !important;
}

@media (max-width: 767px) {
    .vb-static-page.vb-affiliate-program-page > main > section:first-child > .grid > :is(.glass-card, [class*="rounded"]) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-static-page.vb-affiliate-program-page > main > section:nth-of-type(2) > .overflow-hidden {
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch !important;
    }

    .vb-static-page.vb-affiliate-program-page table {
        display: table !important;
        width: 720px !important;
        min-width: 720px !important;
        max-width: none !important;
        table-layout: fixed !important;
        overflow: visible !important;
    }

    .vb-static-page.vb-affiliate-program-page table thead,
    .vb-static-page.vb-affiliate-program-page table tbody {
        display: table-row-group !important;
        width: auto !important;
    }

    .vb-static-page.vb-affiliate-program-page table thead {
        display: table-header-group !important;
    }

    .vb-static-page.vb-affiliate-program-page table tr {
        display: table-row !important;
        width: auto !important;
    }

    .vb-static-page.vb-affiliate-program-page table th,
    .vb-static-page.vb-affiliate-program-page table td {
        display: table-cell !important;
        width: 33.333% !important;
        white-space: normal !important;
    }
}

/* Setup Guide: match the reference shell with a fixed left wizard rail. */
.vb-setup-guide-page {
    scroll-behavior: smooth;
    font-family: var(--vb-font) !important;
}

html:has(.vb-setup-guide-page) {
    font-size: 100% !important;
}

body:has(.vb-setup-guide-page) {
    background: #150529 !important;
    font-family: var(--vb-font) !important;
}

.vb-footer--setup-guide,
.vb-footer--setup-guide * {
    box-sizing: border-box;
}

.vb-footer--setup-guide {
    display: flex;
    width: 100%;
    margin-top: 5rem;
    padding: 3rem 2rem;
    align-items: center;
    justify-content: space-between;
    border-top: 4px solid #7b2fe0;
    background: #150529;
    color: #64748b;
    font-family: var(--vb-font);
}

.vb-footer--setup-guide__copyright,
.vb-footer--setup-guide__links a {
    color: #64748b;
    font-size: 0.75rem;
    font-weight: 400;
    line-height: 1rem;
    letter-spacing: 0.05rem;
    text-transform: uppercase;
    text-decoration: none;
}

.vb-footer--setup-guide__links {
    display: flex;
    gap: 2rem;
}

.vb-footer--setup-guide__links a:hover,
.vb-footer--setup-guide__links a:focus-visible {
    color: #ffffff;
}

@media (max-width: 767px) {
    .vb-footer--setup-guide {
        min-height: 188px;
        flex-direction: column;
        justify-content: center;
        padding: 3rem 2rem;
        gap: 1.5rem;
    }

    .vb-footer--setup-guide__copyright {
        margin-bottom: 0;
        text-align: center;
    }

}

.vb-setup-guide-page main {
    margin-left: auto;
    margin-right: auto !important;
    flex: none !important;
    width: 100%;
    max-width: 1280px;
}

.vb-setup-guide-page aside {
    display: none !important;
}

@media (min-width: 1536px) {
    .vb-setup-guide-page aside {
        display: flex !important;
    }
}

@media (min-width: 1024px) {
    .vb-setup-guide-page aside {
        display: flex !important;
    }

    .vb-setup-guide-page > main {
        max-width: 1280px;
        width: auto;
        margin-left: 16rem !important;
        margin-right: auto !important;
        padding-top: 5rem !important;
        min-height: 100vh;
    }
}

.vb-setup-guide-page > main > section:first-of-type {
    text-align: left !important;
}

.vb-setup-guide-page :is(h1, h2, h3, h4, h5, h6, p, ul, ol) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.vb-setup-guide-page h4:not([class*="leading-"]) {
    line-height: 1.5 !important;
}

.vb-setup-guide-page [class~="text-5xl"] {
    font-size: 3rem !important;
    line-height: 1 !important;
}

.vb-setup-guide-page [class~="leading-[1.1]"] {
    line-height: 1.1 !important;
}

@media (min-width: 768px) {
    .vb-setup-guide-page [class~="md:text-7xl"] {
        font-size: 4.5rem !important;
        line-height: 1 !important;
    }
}

.vb-setup-guide-page [class~="mb-1"] { margin-bottom: 0.25rem !important; }
.vb-setup-guide-page [class~="mb-2"] { margin-bottom: 0.5rem !important; }
.vb-setup-guide-page [class~="mb-3"] { margin-bottom: 0.75rem !important; }
.vb-setup-guide-page [class~="mb-4"] { margin-bottom: 1rem !important; }
.vb-setup-guide-page [class~="mb-6"] { margin-bottom: 1.5rem !important; }
.vb-setup-guide-page [class~="mb-8"] { margin-bottom: 2rem !important; }
.vb-setup-guide-page [class~="mb-10"] { margin-bottom: 2.5rem !important; }
.vb-setup-guide-page [class~="mb-12"] { margin-bottom: 3rem !important; }
.vb-setup-guide-page [class~="mb-16"] { margin-bottom: 4rem !important; }
.vb-setup-guide-page [class~="mt-1"] { margin-top: 0.25rem !important; }
.vb-setup-guide-page [class~="mt-4"] { margin-top: 1rem !important; }
.vb-setup-guide-page [class~="mt-12"] { margin-top: 3rem !important; }

.vb-static-page.vb-setup-guide-page a,
.vb-static-page.vb-setup-guide-page a:hover,
.vb-static-page.vb-setup-guide-page a:focus,
.vb-static-page.vb-setup-guide-page a:visited {
    text-decoration: none !important;
}

.vb-static-page.vb-setup-guide-page a:not([class*="text-"]),
.vb-static-page.vb-setup-guide-page a:not([class*="text-"]):hover,
.vb-static-page.vb-setup-guide-page a:not([class*="text-"]):focus,
.vb-static-page.vb-setup-guide-page a:not([class*="text-"]):visited {
    color: inherit !important;
}

.vb-static-page.vb-setup-guide-page a[class*="text-slate-400"],
.vb-static-page.vb-setup-guide-page a[class*="text-slate-400"]:hover,
.vb-static-page.vb-setup-guide-page a[class*="text-slate-400"]:focus,
.vb-static-page.vb-setup-guide-page a[class*="text-slate-400"]:visited {
    color: #94a3b8 !important;
}

.vb-static-page.vb-setup-guide-page a[class*="text-white"],
.vb-static-page.vb-setup-guide-page a[class*="text-white"]:hover,
.vb-static-page.vb-setup-guide-page a[class*="text-white"]:focus,
.vb-static-page.vb-setup-guide-page a[class*="text-white"]:visited {
    color: #ffffff !important;
}

.vb-static-page.vb-setup-guide-page aside a[href^="#"]:not(.vb-setup-nav-active) {
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    color: #94a3b8 !important;
}

.vb-static-page.vb-setup-guide-page aside a[href^="#"]:not(.vb-setup-nav-active):hover,
.vb-static-page.vb-setup-guide-page aside a[href^="#"]:not(.vb-setup-nav-active):focus {
    background: rgba(51, 18, 91, 0.5) !important;
    background-image: none !important;
    color: #94a3b8 !important;
}

.vb-static-page.vb-setup-guide-page aside a[href^="#"].vb-setup-nav-active,
.vb-static-page.vb-setup-guide-page aside a[href^="#"].vb-setup-nav-active:hover,
.vb-static-page.vb-setup-guide-page aside a[href^="#"].vb-setup-nav-active:focus,
.vb-static-page.vb-setup-guide-page aside a[href^="#"].vb-setup-nav-active:visited {
    background: linear-gradient(to right, #7b2fe0, #e950cc) !important;
    color: #ffffff !important;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1) !important;
}

.vb-static-page.vb-setup-guide-page > main > section:nth-of-type(5) > div:first-child > div > button {
    border: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
}

.vb-static-page.vb-setup-guide-page > main > section:nth-of-type(5) > div:first-child > div > button:not(.vb-setup-model-tab-active),
.vb-static-page.vb-setup-guide-page > main > section:nth-of-type(5) > div:first-child > div > button:not(.vb-setup-model-tab-active):active {
    background: transparent !important;
    background-image: none !important;
    color: #f0dfff !important;
}

.vb-static-page.vb-setup-guide-page > main > section:nth-of-type(5) > div:first-child > div > button:not(.vb-setup-model-tab-active):hover,
.vb-static-page.vb-setup-guide-page > main > section:nth-of-type(5) > div:first-child > div > button:not(.vb-setup-model-tab-active):focus,
.vb-static-page.vb-setup-guide-page > main > section:nth-of-type(5) > div:first-child > div > button:not(.vb-setup-model-tab-active):focus-visible {
    background: #33125b !important;
    background-image: none !important;
    color: #f0dfff !important;
}

.vb-static-page.vb-setup-guide-page > main > section:nth-of-type(5) > div:first-child > div > button.vb-setup-model-tab-active,
.vb-static-page.vb-setup-guide-page > main > section:nth-of-type(5) > div:first-child > div > button.vb-setup-model-tab-active:hover,
.vb-static-page.vb-setup-guide-page > main > section:nth-of-type(5) > div:first-child > div > button.vb-setup-model-tab-active:focus,
.vb-static-page.vb-setup-guide-page > main > section:nth-of-type(5) > div:first-child > div > button.vb-setup-model-tab-active:active {
    background: linear-gradient(135deg, #7b2fe0, #e950cc) !important;
    color: #ffffff !important;
}

.vb-static-page.vb-setup-guide-page > main > section:nth-of-type(6) .relative.group.cursor-pointer.aspect-video {
    aspect-ratio: 16 / 9 !important;
}

.vb-static-page.vb-setup-guide-page > main > section:nth-of-type(6) .relative.group.cursor-pointer.aspect-video > img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center 44% !important;
}

.vb-setup-guide-page > main > section:first-of-type > div:first-child {
    margin-left: 0 !important;
    margin-right: auto !important;
}

.vb-setup-guide-page > main > section:first-of-type .flex.flex-wrap.gap-4.mb-12 {
    align-items: center;
    justify-content: flex-start !important;
}

.vb-setup-guide-page > main > section:first-of-type .flex.flex-wrap.gap-4.mb-12 button {
    display: block !important;
    padding: 0.5rem 1.25rem !important;
    border: 0 !important;
    border-radius: 0.75rem !important;
    box-shadow: none !important;
    font-family: var(--vb-font) !important;
    font-size: 1rem !important;
    font-weight: 500 !important;
    line-height: 1.5rem !important;
    text-decoration: none !important;
    transform: none;
    transition: color 0.2s ease, background-color 0.2s ease, outline-color 0.2s ease, transform 0.2s ease !important;
}

.vb-setup-guide-page > main > section:first-of-type .flex.flex-wrap.gap-4.mb-12 button:not(.vb-model-selected) {
    background: #33125b !important;
    color: #f0dfff !important;
    outline: 0 solid transparent !important;
}

.vb-setup-guide-page > main > section:first-of-type .flex.flex-wrap.gap-4.mb-12 button:hover {
    background: #e950cc !important;
    color: #ffffff !important;
    outline: 0 solid transparent !important;
}

.vb-setup-guide-page > main > section:first-of-type .flex.flex-wrap.gap-4.mb-12 button.vb-model-selected {
    background: rgba(60, 22, 104, 0.6) !important;
    color: #ffffff !important;
    outline: 1px solid rgba(87, 56, 127, 0.2) !important;
    border: 1px solid rgba(233, 80, 204, 0.3) !important;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.vb-setup-guide-page > main > section:first-of-type .flex.flex-wrap.gap-4.mb-12 button.vb-model-selected:hover {
    background: #e950cc !important;
    outline-color: rgba(233, 80, 204, 0.3) !important;
}

.vb-setup-guide-page > main > section:first-of-type .flex.flex-wrap.gap-4.mb-12 button:focus-visible {
    outline: 1px solid rgba(233, 80, 204, 0.45) !important;
}

.vb-setup-guide-page > main > section:first-of-type .flex.flex-wrap.gap-4.mb-12 button:active {
    transform: scale(0.98);
}

@media (max-width: 1023px) {
    .vb-setup-guide-page > main {
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

@media (max-width: 767px) {
    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page),
    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > main {
        max-width: 100vw !important;
        overflow-x: hidden !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > main {
        width: 100% !important;
        padding: 5rem 1rem 0 !important;
        margin: 0 auto !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > main > section,
    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > section {
        width: 100% !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > main > section:first-of-type,
    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > section:first-of-type {
        padding-top: 4rem !important;
        padding-bottom: 4rem !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > main > section[class*="py-20"],
    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > section[class*="py-20"] {
        padding-top: 5rem !important;
        padding-bottom: 5rem !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) .grid > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="rounded-[20px]"], [class*="rounded-[24px]"], [class*="rounded-[32px]"]) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-static-page.vb-setup-guide-page,
    .vb-static-page.vb-setup-guide-page > main {
        max-width: 100vw !important;
        overflow-x: hidden !important;
    }

    .vb-static-page.vb-setup-guide-page > main {
        width: 100% !important;
        padding: 5rem 1rem 0 !important;
        margin: 0 auto !important;
    }

    .vb-static-page.vb-setup-guide-page > main > section,
    .vb-static-page.vb-setup-guide-page > section {
        width: 100% !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-static-page.vb-setup-guide-page > main > section:first-of-type,
    .vb-static-page.vb-setup-guide-page > section:first-of-type {
        padding-top: 4rem !important;
        padding-bottom: 4rem !important;
    }

    .vb-static-page.vb-setup-guide-page > main > section[class*="py-20"],
    .vb-static-page.vb-setup-guide-page > section[class*="py-20"] {
        padding-top: 5rem !important;
        padding-bottom: 5rem !important;
    }

    .vb-static-page.vb-setup-guide-page > main > section[class*="p-8"],
    .vb-static-page.vb-setup-guide-page > section[class*="p-8"] {
        padding: 2rem !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > main > section[class*="p-8"],
    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > section[class*="p-8"] {
        width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding: 2rem !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > main > section[class*="py-20"][class*="p-8"],
    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > section[class*="py-20"][class*="p-8"] {
        padding: 5rem 2rem !important;
    }

    .vb-static-page.vb-setup-guide-page .grid > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="rounded-[20px]"], [class*="rounded-[24px]"], [class*="rounded-[32px]"]) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) .grid > .bg-surface-container-low.p-8.rounded-3xl {
        padding: 2rem !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) h1[class~="text-5xl"] {
        font-size: 3rem !important;
        line-height: 1.1 !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) h2[class~="text-3xl"] {
        font-size: 1.875rem !important;
        line-height: 2.25rem !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) [class~="grid-cols-2"] {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) [class~="grid-cols-2"] a,
    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) [class~="grid-cols-2"] a span {
        overflow-wrap: normal !important;
        word-break: normal !important;
    }
}

.vb-setup-guide-page [id] {
    scroll-margin-top: 100px;
}

.vb-setup-guide-page table,
.vb-setup-guide-page table thead,
.vb-setup-guide-page table tbody,
.vb-setup-guide-page table tr,
.vb-setup-guide-page table td,
.vb-setup-guide-page table th {
    border: none !important;
    outline: none !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    box-shadow: none !important;
}

.vb-setup-guide-page table {
    margin: 0 !important;
}

.vb-why-vseebox-page table,
.vb-why-vseebox-page table.glass-card,
.vb-why-vseebox-page table thead,
.vb-why-vseebox-page table tbody,
.vb-why-vseebox-page table tr,
.vb-why-vseebox-page table td,
.vb-why-vseebox-page table th {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

/* authorization-proof: 表格移动端列宽对齐 */
.vb-authorization-proof-page table {
    display: table !important;
    table-layout: fixed !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-x: auto !important;
}

.vb-authorization-proof-page table thead,
.vb-authorization-proof-page table tbody {
    display: table-header-group !important;
    display: table-row-group !important;
    min-width: 0 !important;
    width: 100% !important;
    table-layout: fixed !important;
}

.vb-authorization-proof-page table td,
.vb-authorization-proof-page table th {
    min-width: 0 !important;
    white-space: normal !important;
    word-break: break-word !important;
}

/* authorization-proof: Shop with confidence CTA 内边距 */
.vb-authorization-proof-page > main > section:last-of-type > .signature-gradient {
    padding: 56px 30px !important;
}

@media (min-width: 768px) {
    .vb-authorization-proof-page > main > section:last-of-type > .signature-gradient {
        padding: 80px 64px !important;
    }
}

.vb-authorization-proof-page > main > section:last-of-type > .signature-gradient h2 {
    font-size: clamp(2rem, 8vw, 3.75rem) !important;
    line-height: 1.08 !important;
}

.vb-authorization-proof-page > main > section:last-of-type > .signature-gradient :is(a, button) {
    padding-left: 28px !important;
    padding-right: 28px !important;
    white-space: nowrap !important;
}

@media (max-width: 640px) {
    .vb-authorization-proof-page > main > section:last-of-type > .signature-gradient :is(a, button) {
        width: 100% !important;
        max-width: 320px !important;
        margin-right: auto !important;
        margin-left: auto !important;
    }
}

.home .elementor-widget-html h1,
.home .elementor-widget-html h2,
.home .elementor-widget-html h3,
.home .elementor-widget-html h4,
.home .elementor-widget-html h5,
.home .elementor-widget-html h6,
.vb-faq-page :is(h1, h2, h3, h4, h5, h6),
.vb-contact-page :is(h1, h2, h3, h4, h5, h6),
.vb-about-page :is(h1, h2, h3, h4, h5, h6),
.vb-warranty-page :is(h1, h2, h3, h4, h5, h6),
.vb-legal-page :is(h1, h2, h3, h4, h5, h6),
.vb-static-page :is(h1, h2, h3, h4, h5, h6) {
  font-family: var(--vb-heading-font) !important;
}

.vb-reviews-page {
  display: block;
  padding-top: 56px;
}

.vb-download-page > main {
  padding-top: 64px;
}

body:has(.vb-download-page),
body:has(.vb-download-page) .site,
body:has(.vb-download-page) .site-content,
body:has(.vb-download-page) .ast-container,
body:has(.vb-download-page) .elementor,
body:has(.vb-download-page) .elementor-section,
body:has(.vb-download-page) .elementor-container,
body:has(.vb-download-page) .elementor-widget-wrap,
body:has(.vb-download-page) .elementor-widget-html,
body:has(.vb-download-page) .elementor-widget-container {
  background: #150529 !important;
}

body:has(.vb-download-page) .vb-download-page > main > section:nth-of-type(2) > .flex.items-center > h2 {
  margin-bottom: 0 !important;
}

body:has(.vb-download-page) .vb-download-page button.bg-white.text-on-primary-container,
body:has(.vb-download-page) .vb-download-page button.bg-white.text-on-primary-container:hover,
body:has(.vb-download-page) .vb-download-page button.bg-white.text-on-primary-container:focus,
body:has(.vb-download-page) .vb-download-page button.bg-white.text-on-primary-container:focus-visible,
body:has(.vb-download-page) .vb-download-page button.bg-white.text-on-primary-container:active {
  background-color: rgb(255, 255, 255) !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #000000 !important;
  outline: 0 !important;
}

body:has(.vb-download-page) .vb-download-page button.bg-white.text-on-primary-container:hover {
  opacity: 0.9 !important;
}

.vb-reviews-page > section.max-w-4xl {
  width: 100% !important;
  max-width: 1280px !important;
}

.vb-faq-page .vb-faq-body {
  width: 100% !important;
  max-width: 896px !important;
  padding-right: 32px !important;
  padding-left: 32px !important;
}

.vb-faq-page .vb-faq-jump a,
.vb-faq-page .vb-faq-jump a:hover,
.vb-faq-page .vb-faq-jump a:focus,
.vb-faq-page .vb-faq-jump span {
  text-decoration: none !important;
}

.vb-faq-page .vb-faq-tech-row,
.vb-faq-page .vb-faq-tech-row:hover,
.vb-faq-page .vb-faq-tech-row:focus,
.vb-faq-page .vb-faq-tech-row span {
  text-decoration: none !important;
}

.vb-troubleshooting-guide-page input[placeholder="Search for your issue..."] {
  height: auto !important;
  min-height: 64px !important;
  padding: 20px 24px 20px 56px !important; /* 修正被写反的左右内边距，使左侧搜索图标和文本不重叠 */
  border: 0 !important;
  border-radius: 16px !important;
  background: #000 !important;
  box-shadow: none !important;
  color: #fff !important;
  font-size: 18px !important;
  line-height: 1.4 !important;
  caret-color: #b586ff !important;
}

.vb-troubleshooting-guide-page input[placeholder="Search for your issue..."]::placeholder {
  color: rgba(191, 156, 235, 0.4) !important;
  opacity: 1 !important;
}

.vb-troubleshooting-guide-page input[placeholder="Search for your issue..."]:focus {
  background: #000 !important;
  border: 0 !important;
  box-shadow: 0 0 0 2px #b586ff !important;
  outline: none !important;
}

.vb-troubleshooting-guide-page #overview > .max-w-5xl {
  max-width: 1024px !important; /* 修正被错误放大的最大宽度，对齐 Kumbh 5xl (1024px) 原厂设计 */
}

/* ---------- Troubleshooting Guide 像素级还原补充样式 ---------- */

body:has(.vb-static-page.vb-troubleshooting-guide-page),
body:has(.vb-static-page.vb-troubleshooting-guide-page) .site,
body:has(.vb-static-page.vb-troubleshooting-guide-page) .site-content,
body:has(.vb-static-page.vb-troubleshooting-guide-page) .elementor,
body:has(.vb-static-page.vb-troubleshooting-guide-page) .elementor-section,
body:has(.vb-static-page.vb-troubleshooting-guide-page) .elementor-container,
body:has(.vb-static-page.vb-troubleshooting-guide-page) .elementor-widget-wrap,
body:has(.vb-static-page.vb-troubleshooting-guide-page) .elementor-widget-container,
.vb-static-page.vb-troubleshooting-guide-page,
.vb-static-page.vb-troubleshooting-guide-page > main {
    background: #150529 !important;
    color: #f0dfff !important;
}

/* 1. 标题字体修复：将所有带有 .font-headline 的标题强制覆盖为 Plus Jakarta Sans 字体 */
.vb-static-page.vb-reference-kumbh.vb-troubleshooting-guide-page .font-headline,
.vb-static-page.vb-reference-kumbh.vb-troubleshooting-guide-page .font-headline :where(:not(.material-symbols-outlined)) {
    font-family: "Plus Jakarta Sans", sans-serif !important;
}

/* 2. 侧栏定位修正：恢复参考稿的 top-0 / pt-24 垂直节奏 */
@media (min-width: 768px) {
    .vb-static-page.vb-troubleshooting-guide-page aside {
        top: 0 !important;
        height: 100vh !important;
        padding-top: 6rem !important;
    }
}

.vb-static-page.vb-troubleshooting-guide-page #network,
.vb-static-page.vb-troubleshooting-guide-page #network :is(h3, p, span, .material-symbols-outlined) {
    color: #000000 !important;
}

.vb-static-page.vb-troubleshooting-guide-page #network button {
    color: #ffffff !important;
}

/* 3. 标题与段落 Astra 默认 margin 干扰清空与还原 */
.vb-troubleshooting-guide-page h1,
.vb-troubleshooting-guide-page h2,
.vb-troubleshooting-guide-page h3,
.vb-troubleshooting-guide-page p {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* 4. 原生 button 被 Astra 主题全局覆盖样式重构（如 Speed Test 按钮） */
.vb-troubleshooting-guide-page button.bg-black {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    height: 32px !important;
    padding: 8px 16px !important;
    border-radius: 8px !important;
    font-family: var(--vb-font) !important;
    font-size: 12px !important;
    line-height: 16px !important;
    font-weight: 700 !important;
    box-shadow: none !important;
    border: none !important;
    text-transform: none !important;
    color: #ffffff !important;
    background-color: #000000 !important;
    transition: transform 0.2s ease !important;
}
.vb-troubleshooting-guide-page button.bg-black:hover {
    transform: scale(1.05) !important;
}

/* 5. 修复移动端通用规则误伤：阻止 Buffering 模块里 w-12 h-12 rounded-2xl 小图标方块被拉伸 */
.vb-static-page.vb-troubleshooting-guide-page .w-12.h-12.rounded-2xl {
    width: 3rem !important;
    height: 3rem !important;
    flex: 0 0 3rem !important;
}

/* 6. 强力圆角保护：防止移动端下 rounded-[32px] 的大卡片圆角被强行缩到 20px */
.vb-troubleshooting-guide-page [class*="rounded-[32px]"],
.vb-troubleshooting-guide-page .rounded-\[32px\] {
    border-radius: 32px !important;
}

.vb-help-me-choose-page {
  display: block;
  padding-top: 56px;
  background:
    radial-gradient(circle at 50% 0%, rgba(123, 47, 224, 0.18), transparent 32rem),
    var(--vb-background);
  color: var(--vb-on-surface);
}

.vb-help-me-choose-page > main {
  background-color: var(--vb-background);
}

.vb-bundles-accessories-page {
  display: block;
  background: var(--vb-background);
  color: var(--vb-on-surface);
}

.vb-bundles-accessories-page > main {
  background: var(--vb-background);
}

.vb-compare-models-page {
  display: block;
  background: var(--vb-background);
  color: var(--vb-on-surface);
}

.vb-compare-models-page > main {
  background: var(--vb-background);
}

.vb-compare-models-page > main > section:first-of-type {
    padding-top: 144px !important;
}

.vb-compare-scroll-hint {
    margin-bottom: 16px;
    color: var(--vb-on-surface-variant);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.vb-compare-live-matrix {
    display: grid;
    gap: 4px 12px;
}

.vb-compare-live-matrix__label,
.vb-compare-live-matrix__cell,
.vb-compare-live-matrix__product {
    min-width: 0;
    padding: 16px 18px;
    color: var(--vb-on-surface);
}

.vb-compare-live-matrix__label {
    display: flex;
    align-items: center;
    color: var(--vb-on-surface-variant);
    font-weight: 800;
}

.vb-compare-live-matrix__label--head {
    align-items: end;
    padding-bottom: 28px;
    color: var(--vb-on-surface);
    font-family: var(--vb-heading-font);
    font-size: 20px;
    line-height: 1.35;
}

.vb-compare-live-matrix__product {
    display: grid;
    gap: 12px;
    justify-items: center;
    text-align: center;
    text-decoration: none;
}

.vb-compare-live-matrix__product.is-highlighted {
    border: 1px solid rgba(255, 173, 230, 0.4);
    border-radius: 16px 16px 0 0;
    background: rgba(60, 22, 104, 0.55);
    box-shadow: 0 -10px 30px -12px rgba(181, 134, 255, 0.42);
}

.vb-compare-live-matrix__badge {
    display: inline-flex;
    min-height: 26px;
    align-items: center;
    padding: 5px 10px;
    border-radius: 999px;
    background: var(--vb-surface-container-highest);
    color: var(--vb-on-surface-variant);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.vb-compare-live-matrix__product.is-highlighted .vb-compare-live-matrix__badge {
    background: var(--vb-gradient);
    color: #fff;
}

.vb-compare-live-matrix__image {
    width: 96px;
    height: 96px;
    object-fit: cover;
    border-radius: 10px;
}

.vb-compare-models-page > main > section:first-of-type .aspect-square,
.vb-compare-live-matrix__image-wrap,
.vb-compare-cost-card__image {
    overflow: hidden;
}

.vb-compare-models-page > main > section:first-of-type .aspect-square img,
.vb-compare-live-matrix__image,
.vb-compare-cost-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover !important;
    transform: translateX(-12%) scale(3.2);
    transform-origin: center;
}

.vb-compare-live-matrix__image-wrap {
    display: block;
    width: 112px;
    height: 96px;
    border-radius: 10px;
    background: var(--vb-surface-container-high);
}

.vb-compare-live-matrix__image {
    transform: translateX(-18%) scale(3.8);
}

.vb-compare-cost-card__image img {
    transform: translateX(-22%) scale(4.5);
}

.vb-compare-live-matrix__product strong {
    color: var(--vb-on-surface);
    font-weight: 900;
}

.vb-compare-live-matrix__cell {
    display: flex;
    min-height: 58px;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    background: rgba(28, 8, 52, 0.18);
    text-align: center;
}

.vb-compare-live-matrix__cell:nth-child(odd) {
    background: rgba(28, 8, 52, 0.28);
}

.vb-compare-live-matrix__cell.is-highlighted {
    color: #fff;
    font-weight: 850;
}

.vb-compare-live-matrix__cell .amount,
.vb-compare-cost-card__price .amount {
    color: inherit;
}

.vb-compare-cost-card {
    display: grid;
    width: 100%;
    max-width: 152px;
    gap: 12px;
    align-items: end;
    padding: 16px;
    border-radius: 16px;
    background: var(--vb-surface-container-highest);
    color: var(--vb-on-surface);
    text-align: center;
    text-decoration: none;
}

.vb-compare-cost-card.is-highlighted {
    max-width: 176px;
    border: 2px solid var(--vb-secondary);
    box-shadow: 0 0 30px rgba(233, 80, 204, 0.2);
}

.vb-compare-cost-card--cable {
    max-width: 192px;
    border: 1px solid rgba(253, 111, 133, 0.2);
    background: rgba(253, 111, 133, 0.1);
}

.vb-compare-cost-card__name {
    margin: 0;
    color: var(--vb-on-surface-variant);
    font-size: 12px;
    font-weight: 900;
}

.vb-compare-cost-card.is-highlighted .vb-compare-cost-card__name {
    color: var(--vb-secondary);
}

.vb-compare-cost-card--cable .vb-compare-cost-card__name {
    color: var(--vb-error);
    text-transform: uppercase;
}

.vb-compare-cost-card__image {
    display: flex;
    min-height: 80px;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 10px;
    background: var(--vb-gradient);
}

.vb-compare-cost-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    padding: 0;
}

.vb-compare-cost-card--cable .vb-compare-cost-card__image {
    background: rgba(100, 116, 139, 0.3);
}

.vb-compare-cost-card__price {
    color: var(--vb-on-surface);
    font-size: 20px;
    font-weight: 900;
}

@media (max-width: 767px) {
  .vb-reviews-page {
    padding-top: 40px;
  }

  .vb-faq-page .vb-faq-hero {
    width: 100% !important;
    max-width: none !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-right: var(--vb-mobile-gutter) !important;
    padding-left: var(--vb-mobile-gutter) !important;
  }

  .vb-faq-page .vb-faq-container {
    width: 100% !important;
    max-width: 1280px !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .vb-faq-page .vb-faq-body {
    width: 100% !important;
    max-width: 896px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding-right: var(--vb-mobile-gutter) !important;
    padding-left: var(--vb-mobile-gutter) !important;
  }

  .vb-faq-page :is(.vb-faq-stack, .vb-faq-section, .vb-faq-list, .vb-faq-item, .vb-faq-feature, .vb-faq-small-card, .vb-faq-tech, .vb-faq-warranty, .vb-faq-order, .vb-faq-contact, .vb-faq-form, .vb-faq-contact-method) {
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .vb-help-me-choose-page {
    padding-top: 40px;
    overflow-x: hidden;
    background: var(--vb-background) !important;
  }

  .vb-help-me-choose-page > main {
    overflow-x: hidden !important;
    background-color: var(--vb-background) !important;
  }

  .vb-bundles-accessories-page,
  .vb-bundles-accessories-page > main {
    max-width: 100vw !important;
    overflow-x: hidden !important;
    background: var(--vb-background) !important;
  }

  .vb-compare-models-page {
    background: var(--vb-background);
  }
}

/* ---------- 渐变文字工具类 ---------- */
.vb-text-gradient {
  background: var(--vb-gradient);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* ---------- 渐变背景工具类 ---------- */
.vb-gradient-brand {
  background: var(--vb-gradient);
}

/* ---------- 毛玻璃效果 ---------- */
.vb-glass {
  background: rgba(60, 22, 104, 0.4);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(87, 56, 127, 0.2);
}

/* ---------- Astra 返回顶部按钮 ----------
   Astra 默认图标在当前圆形按钮里略偏上，这里统一改为 flex 居中。 */
#ast-scroll-top {
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  padding: 0 !important;
}

#ast-scroll-top[style*="display: block"] {
  display: inline-flex !important;
}

#ast-scroll-top[style*="display: none"] {
  display: none !important;
}

#ast-scroll-top .ast-icon,
#ast-scroll-top .ahfb-svg-iconset,
#ast-scroll-top svg {
  display: block !important;
  margin: 0 !important;
  position: static !important;
}

#ast-scroll-top svg {
  transform: rotate(180deg) !important;
  transform-origin: center !important;
}

/* ============================================
   首页优化
   ============================================ */

/* 1. 隐藏页面标题（首页不需要显示 "Home"） */
.home .entry-title,
.home .page-title,
.home h1.entry-title,
.home .ast-page-title-wrap,
.home .ast-archive-description {
    display: none !important;
}

/* 隐藏 WooCommerce 系统页默认标题，保持与静态页面视觉一致 */
.woocommerce-cart .entry-title,
.woocommerce-cart .page-title,
.woocommerce-cart h1.entry-title,
.woocommerce-account .entry-title,
.woocommerce-account .page-title,
.woocommerce-account h1.entry-title,
.woocommerce-checkout .entry-title,
.woocommerce-checkout .page-title,
.woocommerce-checkout h1.entry-title,
.woocommerce-order-received .entry-title,
.woocommerce-order-received .page-title,
.woocommerce-order-received h1.entry-title,
.woocommerce-order-received .entry-header,
.woocommerce-order-received .ast-page-title-wrap,
.woocommerce-order-received .woocommerce-breadcrumb,
.single-product .woocommerce-breadcrumb,
.woocommerce-shop .woocommerce-breadcrumb,
.woocommerce-shop .woocommerce-products-header,
.woocommerce-shop .woocommerce-products-header__title,
.woocommerce-shop .page-title {
    display: none !important;
}

.woocommerce-cart .site-main,
.woocommerce-account .site-main,
.woocommerce-order-received .site-main,
.single-product .site-main,
.woocommerce-shop .site-main {
    padding-top: 72px;
}

.woocommerce-order-received .site-main {
    padding-top: 96px;
}

@media (max-width: 767px) {
    .woocommerce-cart .site-main,
    .woocommerce-account .site-main,
    .single-product .site-main,
    .woocommerce-shop .site-main {
        padding-top: 48px;
    }
}

/* ============================================
   WooCommerce Shop / Collection
   ============================================ */

.woocommerce-shop #content .ast-container,
.woocommerce-shop .site-content > .ast-container {
    max-width: 100%;
    padding: 0;
}

.woocommerce-shop #primary,
.woocommerce-shop .site-main {
    width: 100%;
    margin: 0;
}

.vb-shop-page {
    background: var(--vb-background);
    color: var(--vb-on-surface);
    font-size: 16px;
    line-height: 1.5;
    min-height: 100vh;
    padding-top: 65px !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.vb-shop-container {
    width: min(1280px, calc(100% - 64px));
    margin: 0 auto;
}

.vb-shop-hero {
    position: relative;
    overflow: hidden;
    padding: 64px 0 48px;
}

.vb-shop-hero__glow {
    position: absolute;
    top: -80px;
    right: 5%;
    width: 384px;
    height: 384px;
    border-radius: 50%;
    background: #7b2fe0;
    opacity: 0.1;
    filter: blur(120px);
}

.vb-shop-breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 16px;
    color: var(--vb-on-surface-variant);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.1em;
    line-height: 16px;
    text-transform: uppercase;
}

.vb-shop-breadcrumb .material-symbols-outlined {
    color: var(--vb-on-surface-variant);
    font-size: 10px;
    line-height: 1;
}

.vb-shop-breadcrumb span:last-child {
    color: var(--vb-on-surface);
}

.vb-shop-hero h1 {
    margin: 0 0 8px;
    color: var(--vb-on-surface);
    font-size: 54px;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -0.025em;
}

.vb-shop-hero p {
    max-width: 512px;
    margin: 0;
    color: var(--vb-on-surface-variant);
    font-size: 16px;
    line-height: 24px;
}

.vb-shop-filter {
    padding: 16px 0;
    background: var(--vb-surface-container-low);
    border-top: 1px solid rgba(87, 56, 127, 0.1);
    border-bottom: 1px solid rgba(87, 56, 127, 0.1);
}

.vb-shop-filter__inner,
.vb-shop-filter__groups,
.vb-shop-filter__group,
.vb-shop-sort {
    display: flex;
    align-items: center;
}

.vb-shop-filter__inner {
    justify-content: space-between;
    gap: 24px;
}

.vb-shop-filter__groups {
    flex-wrap: wrap;
    gap: 32px;
}

.vb-shop-filter__group {
    flex-wrap: wrap;
    gap: 12px;
}

.vb-shop-filter__buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.vb-shop-filter__group span,
.vb-shop-sort span {
    margin-right: 0;
    color: var(--vb-outline);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 16px;
    text-transform: uppercase;
}

.vb-shop-filter button {
    min-height: 34px;
    padding: 6px 16px;
    border: 1px solid rgba(87, 56, 127, 0.3);
    border-radius: 999px;
    background: transparent;
    color: var(--vb-on-surface);
    font-family: "Kumbh Sans", sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    outline: 0 !important;
    box-shadow: none !important;
    -webkit-tap-highlight-color: transparent;
    -webkit-focus-ring-color: transparent;
    appearance: none;
}

.vb-shop-filter button:hover {
    border-color: var(--vb-primary);
}

.vb-shop-filter button:focus,
.vb-shop-filter button:focus-visible,
.vb-shop-filter button:active {
    outline: 0 !important;
    box-shadow: none !important;
}

.vb-shop-filter button.is-active {
    border-color: rgba(181, 134, 255, 0.55);
    background: transparent;
    color: #fff;
}

.vb-shop-sort {
    gap: 12px;
    flex: 0 0 auto;
    color: var(--vb-on-surface);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    white-space: nowrap;
}

.vb-shop-sort select {
    min-width: 192px;
    width: 192px;
    height: 36px !important;
    min-height: 36px;
    border: 0;
    border-radius: 12px;
    background: var(--vb-surface-container-highest);
    color: var(--vb-on-surface);
    font-size: 14px;
    line-height: 20px;
    padding: 8px 16px;
    box-shadow: none;
}

.vb-shop-products {
    padding: 80px 0;
}

.woocommerce-shop .vb-product-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 32px;
    align-items: stretch;
}

.woocommerce-shop .vb-product-grid .vb-product-card.product,
.vb-product-card {
    float: none !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    clear: none !important;
    overflow: hidden;
    border-radius: 16px;
    background: var(--vb-surface-container-low);
    transition: transform 0.5s ease, box-shadow 0.5s ease;
}

.vb-product-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 24px 48px rgba(0, 0, 0, 0.22);
}

.vb-product-card__media {
    position: relative;
    display: block;
    height: 256px;
    overflow: hidden;
    background:
        radial-gradient(circle at 30% 20%, rgba(181, 134, 255, 0.28), transparent 34%),
        linear-gradient(135deg, #240c41 0%, #150529 100%);
}

.vb-product-card__media img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    transition: transform 0.7s ease;
}

.vb-product-card:hover .vb-product-card__media img {
    transform: scale(1.08);
}

.vb-product-card__badge {
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 2;
    padding: 4px 12px;
    border-radius: 999px;
    background: var(--vb-surface-bright);
    color: var(--vb-primary);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.vb-product-card__badge--gradient {
    background: var(--vb-gradient);
    color: #fff;
}

.vb-product-card__badge--success {
    border: 1px solid rgba(34, 197, 94, 0.3);
    background: rgba(34, 197, 94, 0.16);
    color: var(--vb-success);
}

.vb-product-card__overlay {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 24px;
    background: rgba(51, 18, 91, 0.92);
    color: var(--vb-on-surface);
    text-align: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.vb-product-card:hover .vb-product-card__overlay {
    opacity: 1;
}

.vb-product-card__overlay span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.vb-product-card__overlay .material-symbols-outlined {
    color: var(--vb-primary);
    font-size: 16px;
}

.vb-product-card__body {
    padding: 24px;
}

.vb-product-card__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 8px;
}

.vb-product-card h2 {
    margin: 0;
    color: var(--vb-on-surface);
    font-family: var(--vb-heading-font);
    font-size: 20px;
    font-weight: 700;
    line-height: 28px;
}

.vb-product-card h2 a {
    color: inherit;
    text-decoration: none;
}

.vb-product-card h2 a:hover {
    color: var(--vb-primary);
}

.vb-product-card__rating {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: var(--vb-warning);
    font-size: 12px;
    font-weight: 800;
}

.vb-product-card__rating .material-symbols-outlined {
    font-size: 14px;
    font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

.vb-product-card p {
    margin: 0 0 16px;
    color: var(--vb-on-surface-variant);
    font-size: 14px;
    line-height: 21px;
}

.vb-product-card__price {
    min-height: 34px;
    margin-bottom: 20px;
    color: var(--vb-primary);
    font-size: 24px;
    font-weight: 800;
    line-height: 1.2;
}

.vb-product-card__price del {
    margin-left: 8px;
    color: var(--vb-on-surface-variant);
    font-size: 14px;
    opacity: 0.75;
}

.vb-product-card__price ins {
    color: var(--vb-primary);
    text-decoration: none;
}

.vb-product-card__price .screen-reader-text,
.vb-compare-table .screen-reader-text {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.vb-product-card__best {
    display: inline-flex;
    max-width: 100%;
    margin-bottom: 20px;
    padding: 4px 8px;
    border-radius: 4px;
    background: var(--vb-surface-container);
    color: var(--vb-outline);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.08em;
    line-height: 1.3;
    text-transform: uppercase;
}

.vb-product-card__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 48px;
    border: 1px solid rgba(87, 56, 127, 0.3);
    border-radius: 12px;
    background: var(--vb-surface-container-highest);
    color: var(--vb-on-surface);
    font-size: 14px;
    font-weight: 800;
    text-decoration: none;
    transition: background-color 0.2s ease, box-shadow 0.2s ease;
}

.vb-product-card__button:hover {
    background: var(--vb-surface-bright);
    color: #fff;
}

.vb-product-card__button--primary {
    border-color: transparent;
    background: var(--vb-gradient);
    color: #fff;
}

.vb-product-card__button--primary:hover {
    box-shadow: 0 0 20px rgba(181, 134, 255, 0.4);
}

.vb-shop-empty {
    grid-column: 1 / -1;
    margin: 0;
    color: var(--vb-on-surface-variant);
}

.vb-shop-empty--filtered {
    padding: 32px;
    border: 1px solid rgba(87, 56, 127, 0.22);
    border-radius: 16px;
    background: var(--vb-surface-container-low);
    text-align: center;
}

.vb-product-card[hidden] {
    display: none !important;
}

.vb-compare-strip {
    position: relative;
    overflow: hidden;
    padding: 80px 0;
    background:
        radial-gradient(circle, rgba(87, 56, 127, 0.18) 1px, transparent 1px),
        var(--vb-surface-container-low);
    background-size: 24px 24px, auto;
}

.vb-section-heading {
    margin-bottom: 48px;
    text-align: center;
}

.vb-section-heading h2,
.vb-shop-quiz h2,
.vb-shop-bundles h2 {
    margin: 0;
    color: var(--vb-on-surface);
    font-family: var(--vb-heading-font);
    font-size: 38px;
    font-weight: 700;
    line-height: 1.2;
}

.vb-compare-strip .vb-shop-container {
    box-sizing: border-box;
}

.vb-compare-strip .vb-section-heading h2 {
    margin-bottom: 16px;
    line-height: 36px;
}

.vb-section-heading span {
    display: block;
    width: 96px;
    height: 4px;
    margin: 0 auto;
    border-radius: 999px;
    background: var(--vb-gradient);
}

.vb-compare-table-wrap {
    overflow-x: auto;
}

.vb-compare-table {
    width: 100%;
    min-width: 760px;
    margin: 0;
    border: 0 !important;
    border-width: 0 !important;
    border-style: none !important;
    border-collapse: collapse;
    border-spacing: 0;
    background: transparent;
    box-shadow: none !important;
}

.vb-compare-table th {
    padding: 24px 16px;
    border: 0 !important;
    border-bottom: 1px solid rgba(87, 56, 127, 0.2) !important;
    background: transparent;
    color: var(--vb-outline);
    font-size: 12px;
    font-weight: 700;
    line-height: 16px;
    letter-spacing: 0.1em;
    text-align: left;
    text-transform: uppercase;
    box-shadow: none !important;
}

.vb-compare-table td {
    padding: 24px 16px;
    border: 0 !important;
    border-bottom: 1px solid rgba(87, 56, 127, 0.1) !important;
    background: transparent;
    color: var(--vb-on-surface);
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    box-shadow: none !important;
}

.vb-compare-table tbody tr:last-child td {
    border-bottom: 0 !important;
}

.vb-compare-table td:first-child,
.vb-compare-table td:last-child {
    font-weight: 700;
}

.vb-compare-table td:first-child a {
    color: inherit;
    text-decoration: none;
}

.vb-compare-table td:last-child {
    color: var(--vb-primary);
}

.vb-compare-table tr.is-highlighted {
    background: rgba(181, 134, 255, 0.05);
}

.vb-compare-table tr:hover {
    background: rgba(60, 22, 104, 0.3);
}

.vb-compare-link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    margin: 32px 0 0;
    color: var(--vb-primary);
    font-weight: 700;
    line-height: 24px;
    text-decoration: none;
}

.vb-compare-link:hover {
    color: var(--vb-secondary);
}

.vb-compare-link .material-symbols-outlined {
    font-size: 20px;
}

.vb-shop-quiz {
    padding: 96px 0;
}

.vb-shop-quiz__card {
    position: relative;
    overflow: hidden;
    width: min(100%, 1024px);
    margin: 0 auto;
    padding: 48px;
    border-radius: 32px;
    background: rgba(60, 22, 104, 0.6);
    box-shadow: inset 0 0 0 1px rgba(87, 56, 127, 0.2);
    text-align: center;
    backdrop-filter: blur(16px);
}

.vb-shop-quiz__glow {
    position: absolute;
    top: -96px;
    left: -96px;
    width: 256px;
    height: 256px;
    border-radius: 50%;
    background: var(--vb-gradient);
    opacity: 0.2;
    filter: blur(80px);
}

.vb-shop-quiz h2,
.vb-shop-quiz p,
.vb-shop-quiz a {
    position: relative;
    z-index: 1;
}

.vb-shop-quiz p {
    max-width: 680px;
    margin: 24px auto 40px;
    color: var(--vb-on-surface-variant);
    font-size: 18px;
    line-height: 1.65;
}

.vb-shop-quiz a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 56px;
    padding: 0 40px;
    border: 1px solid rgba(181, 134, 255, 0.4);
    border-radius: 12px;
    background: rgba(181, 134, 255, 0.1);
    color: var(--vb-primary);
    font-weight: 800;
    text-decoration: none;
}

.vb-shop-quiz a:hover {
    background: rgba(181, 134, 255, 0.2);
}

.vb-shop-bundles {
    padding: 80px 0;
    background: var(--vb-surface);
}

.vb-shop-bundles__heading {
    display: flex;
    align-items: center;
    gap: 32px;
    margin-bottom: 48px;
}

.vb-shop-bundles__heading span {
    flex: 1;
    height: 2px;
    background: linear-gradient(90deg, rgba(87, 56, 127, 0.5), transparent);
}

.vb-bundle-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px;
}

.vb-bundle-card {
    display: grid;
    grid-template-columns: 1fr 2fr;
    overflow: hidden;
    border-radius: 16px;
    background: var(--vb-surface-container-high);
}

.vb-bundle-card__image {
    min-height: 220px;
    background:
        radial-gradient(circle at 35% 35%, rgba(233, 80, 204, 0.28), transparent 30%),
        linear-gradient(135deg, #33125b 0%, #1c0834 100%);
}

.vb-bundle-card__image--pro {
    background:
        radial-gradient(circle at 60% 35%, rgba(181, 134, 255, 0.32), transparent 32%),
        linear-gradient(135deg, #240c41 0%, #000 100%);
}

.vb-bundle-card__body {
    padding: 32px;
}

.vb-bundle-card__body > span {
    display: block;
    margin-bottom: 8px;
    color: var(--vb-secondary);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.vb-bundle-card h3 {
    margin: 0 0 8px;
    color: var(--vb-on-surface);
    font-family: var(--vb-heading-font);
    font-size: 24px;
    line-height: 1.25;
}

.vb-bundle-card p {
    margin: 0 0 24px;
    color: var(--vb-on-surface-variant);
    font-size: 14px;
    line-height: 1.6;
}

.vb-bundle-card__body div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.vb-bundle-card strong {
    color: var(--vb-primary);
    font-size: 24px;
}

.vb-bundle-card del {
    margin-left: 8px;
    color: var(--vb-on-surface-variant);
    font-size: 14px;
}

.vb-bundle-card a {
    flex: 0 0 auto;
    padding: 8px 24px;
    border-radius: 8px;
    background: var(--vb-surface-bright);
    color: var(--vb-on-surface);
    font-size: 14px;
    font-weight: 800;
    text-decoration: none;
}

.vb-bundle-card a:hover {
    background: rgba(181, 134, 255, 0.2);
}

.vb-shop-trust {
    padding: 64px 0;
    border-top: 1px solid rgba(87, 56, 127, 0.1);
}

.vb-shop-trust__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 48px;
    margin-bottom: 40px;
    text-align: center;
}

.vb-shop-trust__grid div {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}

.vb-shop-trust__grid .material-symbols-outlined {
    color: var(--vb-primary);
    font-size: 48px;
}

.vb-shop-trust__grid strong {
    color: var(--vb-on-surface);
    font-size: 14px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.vb-shop-trust__links {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px 32px;
}

.vb-shop-trust__links a {
    color: var(--vb-on-surface-variant);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-decoration: none;
    text-transform: uppercase;
}

.vb-shop-trust__links a:hover {
    color: var(--vb-primary);
}

@media (max-width: 1180px) {
    .vb-product-grid {
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    }
}

@media (min-width: 768px) {
    .vb-compare-strip .vb-shop-container {
        padding-right: 24px;
        padding-left: 24px;
    }
}

@media (max-width: 900px) {
    .vb-product-grid,
    .vb-bundle-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .vb-shop-filter__inner,
    .vb-shop-filter__groups {
        align-items: flex-start;
        flex-direction: column;
    }

    .vb-shop-sort,
    .vb-shop-sort select {
        width: 100%;
    }

    .vb-shop-sort {
        flex-wrap: nowrap;
    }

    .vb-bundle-card {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .vb-shop-page {
        padding-top: 65px !important;
    }

    body.woocommerce-shop .vb-shop-container {
        width: min(1280px, calc(100% - 48px));
        max-width: 1280px;
    }

    .vb-shop-hero {
        padding: 64px 0 48px;
    }

    .vb-shop-hero h1 {
        font-size: 54px;
    }

    .vb-shop-filter {
        padding: 16px 0;
    }

    .vb-shop-filter__inner {
        gap: 24px;
        min-width: 0;
    }

    .vb-shop-filter__groups {
        width: 100%;
        gap: 32px;
        min-width: 0;
    }

    .vb-shop-filter__group {
        display: flex;
        width: auto;
        min-width: 0;
        align-items: flex-start;
        gap: 12px;
    }

    .vb-shop-filter__buttons {
        gap: 8px;
    }

    .vb-shop-filter__group:nth-child(2) {
        flex-wrap: nowrap;
    }

    .vb-shop-filter__group:nth-child(2) > span {
        flex: 0 0 45.4px;
        line-height: 16px;
        white-space: normal;
    }

    .vb-shop-filter__group:nth-child(2) .vb-shop-filter__buttons {
        flex: 0 0 calc(100% - 57.4px);
        flex-wrap: nowrap;
    }

    .vb-shop-filter__group:nth-child(2) button {
        height: 54px;
        min-height: 54px;
    }

    .vb-shop-filter__group:nth-child(2) button:nth-child(1) {
        width: 76px;
    }

    .vb-shop-filter__group:nth-child(2) button:nth-child(2) {
        width: 76.5px;
    }

    .vb-shop-filter__group:nth-child(2) button:nth-child(3) {
        width: 73.7px;
    }

    .vb-shop-filter__group:nth-child(2) button:last-child {
        width: 74.4px;
        white-space: normal;
    }

    .vb-shop-filter__group span,
    .vb-shop-sort span {
        align-self: center;
        margin-right: 0;
    }

    .vb-shop-filter button {
        min-height: 34px;
        padding: 6px 16px;
    }

    .vb-shop-sort {
        width: 100%;
        flex-wrap: nowrap;
        gap: 12px;
    }

    .vb-shop-sort select {
        flex: 1 1 auto;
        width: auto;
        min-width: 0;
    }

    .woocommerce-shop .vb-product-grid,
    .vb-bundle-grid {
        grid-template-columns: 1fr;
    }

    .vb-product-card__media {
        height: 256px;
    }

    .vb-product-card p {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .vb-product-card:hover {
        transform: none;
    }

    .vb-section-heading h2,
    .vb-shop-quiz h2,
    .vb-shop-bundles h2 {
        font-size: 30px;
    }

    .vb-compare-strip,
    .vb-shop-bundles,
    .vb-shop-products {
        padding: 80px 0;
    }

    .vb-shop-quiz {
        padding: 96px 0;
    }

    .vb-shop-quiz__card {
        padding: 48px;
        border-radius: 32px;
    }

    .vb-shop-quiz p {
        margin-bottom: 40px;
        font-size: 18px;
    }

    .vb-shop-quiz a {
        min-height: 56px;
        padding: 0 40px;
    }

    .vb-shop-bundles__heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 16px;
    }

    .vb-shop-bundles__heading span {
        width: 100%;
        flex: none;
    }

    .vb-bundle-card__body div {
        align-items: flex-start;
        flex-direction: column;
    }

    .vb-shop-trust {
        padding: 64px 0;
    }

    .vb-shop-trust__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 48px;
    }
}

@media (max-width: 374px) {
    body.woocommerce-shop .vb-shop-container {
        width: min(1280px, calc(100% - 32px));
    }

    .vb-shop-filter__group {
        width: 100%;
    }

    .vb-shop-quiz__card {
        padding: 40px 24px;
    }

    .vb-shop-quiz a {
        width: 100%;
        padding: 0 20px;
    }
}

/* 2. Elementor 内容宽度与 Header 对齐
   Header 内部最大宽度是 1536px（max-w-screen-2xl），padding 32px
   Elementor 默认容器宽度通常是 1140px，需要扩展 */
.home .elementor-section.elementor-section-boxed > .elementor-container,
.home .elementor-container {
    width: 100%;
    max-width: 1280px !important;
    padding-left: 0;
    padding-right: 0;
}

/* Elementor section 全宽时也对齐 */
.home .elementor-section {
    width: 100%;
}

.home .elementor-widget-wrap.elementor-element-populated,
.page-id-84 .elementor-widget-wrap.elementor-element-populated {
    padding: 0 !important;
}

/* 3. 修复 Astra 默认内容区域的内边距干扰 */
.home #content .ast-container,
.home .site-content > .ast-container {
    max-width: 100%;
    padding: 0;
}

/* 隐藏 Astra 面包屑（首页不需要） */
.home .ast-breadcrumbs-wrapper {
    display: none !important;
}

html:has(body.home),
html:has(body.page-id-84) {
    font-size: 100% !important;
}

body.home,
body.page-id-84 {
    background: #150529 !important;
    line-height: 1.5;
}

body.home .elementor-element-vb-trust,
body.page-id-84 .elementor-element-vb-trust {
    padding-right: 0 !important;
    padding-bottom: 48px !important;
    padding-left: 0 !important;
}

body.home .elementor-element-vb-products,
body.page-id-84 .elementor-element-vb-products {
    padding-right: 0 !important;
    padding-bottom: 96px !important;
    padding-left: 0 !important;
}

body.home .elementor-element-vb-hiw,
body.page-id-84 .elementor-element-vb-hiw {
    padding-bottom: 70.41px !important;
}

body.home .elementor-element-vb-savings,
body.page-id-84 .elementor-element-vb-savings {
    padding-bottom: 150.16px !important;
}

body.home .elementor-element-vb-usecases,
body.page-id-84 .elementor-element-vb-usecases {
    padding-bottom: 93.61px !important;
}

body.home .elementor-element-vb-social,
body.page-id-84 .elementor-element-vb-social {
    padding-bottom: 90.82px !important;
}

body.home .elementor-element-vb-contenthub,
body.page-id-84 .elementor-element-vb-contenthub {
    padding-bottom: 60.27px !important;
}

body.home .elementor-element-vb-cta,
body.page-id-84 .elementor-element-vb-cta {
    padding-bottom: 79.4px !important;
}

body.home .elementor-element-vb-products h2,
body.home .elementor-element-vb-hiw h2,
body.home .elementor-element-vb-savings h2,
body.home .elementor-element-vb-usecases h2,
body.home .elementor-element-vb-social h2,
body.home .elementor-element-vb-contenthub h2,
body.page-id-84 .elementor-element-vb-products h2,
body.page-id-84 .elementor-element-vb-hiw h2,
body.page-id-84 .elementor-element-vb-savings h2,
body.page-id-84 .elementor-element-vb-usecases h2,
body.page-id-84 .elementor-element-vb-social h2,
body.page-id-84 .elementor-element-vb-contenthub h2 {
    line-height: 1.5 !important;
}

body.home .elementor-element-vb-products h3,
body.home .elementor-element-vb-usecases h3,
body.page-id-84 .elementor-element-vb-products h3,
body.page-id-84 .elementor-element-vb-usecases h3 {
    line-height: 28px !important;
}

body.home .elementor-element-vb-hiw h3,
body.home .elementor-element-vb-contenthub h3,
body.page-id-84 .elementor-element-vb-hiw h3,
body.page-id-84 .elementor-element-vb-contenthub h3 {
    line-height: 28px !important;
}

body.home .elementor-element-vb-products p,
body.home .elementor-element-vb-usecases p,
body.home .elementor-element-vb-contenthub p,
body.page-id-84 .elementor-element-vb-products p,
body.page-id-84 .elementor-element-vb-usecases p,
body.page-id-84 .elementor-element-vb-contenthub p {
    line-height: 20px !important;
    margin-bottom: 0 !important;
}

body.home .elementor-element-vb-social p,
body.page-id-84 .elementor-element-vb-social p {
    line-height: 26px !important;
}

body.home .elementor-element-vb-social [style*="color:#F59E0B"][style*="font-size:20px"],
body.page-id-84 .elementor-element-vb-social [style*="color:#F59E0B"][style*="font-size:20px"] {
    display: flex !important;
    height: 24px !important;
    margin-bottom: 16px !important;
    color: #fbbf24 !important;
    font-size: 0 !important;
    line-height: 24px !important;
}

body.home .elementor-element-vb-social [style*="color:#F59E0B"][style*="font-size:20px"]::before,
body.page-id-84 .elementor-element-vb-social [style*="color:#F59E0B"][style*="font-size:20px"]::before {
    content: "star";
    font-family: 'Material Symbols Outlined';
    font-size: 24px;
    line-height: 24px;
    text-shadow: 24px 0 #fbbf24, 48px 0 #fbbf24, 72px 0 #fbbf24, 96px 0 #fbbf24;
    font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

body.home .elementor-element-vb-social [style*="display:flex"][style*="gap:32px"] > div:nth-child(1) > p,
body.page-id-84 .elementor-element-vb-social [style*="display:flex"][style*="gap:32px"] > div:nth-child(1) > p,
body.home .elementor-element-vb-social [style*="display:flex"][style*="gap:32px"] > div:nth-child(2) > p,
body.page-id-84 .elementor-element-vb-social [style*="display:flex"][style*="gap:32px"] > div:nth-child(2) > p {
    font-size: 0 !important;
    line-height: 0 !important;
}

body.home .elementor-element-vb-social [style*="display:flex"][style*="gap:32px"] > div:nth-child(1) > p::before,
body.page-id-84 .elementor-element-vb-social [style*="display:flex"][style*="gap:32px"] > div:nth-child(1) > p::before {
    content: "\"Best investment I've made for my home entertainment. The interface is snappy and I haven't paid a single monthly fee in two years.\"";
    display: block;
    font-size: 16px;
    line-height: 26px;
}

body.home .elementor-element-vb-social [style*="display:flex"][style*="gap:32px"] > div:nth-child(2) > p::before,
body.page-id-84 .elementor-element-vb-social [style*="display:flex"][style*="gap:32px"] > div:nth-child(2) > p::before {
    content: "\"I was skeptical at first, but the sports coverage is unbeatable. NFL, NBA, European football... it's all there in high definition.\"";
    display: block;
    font-size: 16px;
    line-height: 26px;
}

body.home .elementor-element-vb-hero p,
body.page-id-84 .elementor-element-vb-hero p {
    line-height: 1.625 !important;
}

@media (min-width: 768px) {
    body.home .elementor-element-vb-trust [style*="justify-content:space-around"],
    body.page-id-84 .elementor-element-vb-trust [style*="justify-content:space-around"] {
        justify-content: space-between !important;
        padding-right: 32px !important;
        padding-left: 32px !important;
    }

    body.home .elementor-element-vb-trust [style*="font-size:30px"],
    body.page-id-84 .elementor-element-vb-trust [style*="font-size:30px"] {
        line-height: 36px !important;
    }

    body.home .elementor-element-vb-trust [style*="color:#F59E0B"],
    body.page-id-84 .elementor-element-vb-trust [style*="color:#F59E0B"] {
        display: block !important;
        color: #fbbf24 !important;
        font-size: 22.4px !important;
        line-height: 24px !important;
        letter-spacing: 0 !important;
    }

    body.home .elementor-element-vb-trust [style*="color:#F59E0B"]::before,
    body.page-id-84 .elementor-element-vb-trust [style*="color:#F59E0B"]::before {
        content: none;
    }

    body.home .elementor-element-vb-trust [style*="font-size:12px"][style*="font-weight:600"],
    body.page-id-84 .elementor-element-vb-trust [style*="font-size:12px"][style*="font-weight:600"] {
        line-height: 16px !important;
    }

    body.home .elementor-element-vb-social [style*="color:#F59E0B"][style*="font-size:20px"],
    body.page-id-84 .elementor-element-vb-social [style*="color:#F59E0B"][style*="font-size:20px"] {
        display: flex !important;
        height: 24px !important;
        margin-bottom: 16px !important;
        color: #fbbf24 !important;
        font-size: 0 !important;
        line-height: 24px !important;
    }

    body.home .elementor-element-vb-social [style*="color:#F59E0B"][style*="font-size:20px"]::before,
    body.page-id-84 .elementor-element-vb-social [style*="color:#F59E0B"][style*="font-size:20px"]::before {
        content: "star";
        font-family: 'Material Symbols Outlined';
        font-size: 24px;
        line-height: 24px;
        text-shadow: 24px 0 #fbbf24, 48px 0 #fbbf24, 72px 0 #fbbf24, 96px 0 #fbbf24;
        font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
    }

    body.home .elementor-element-vb-products .elementor-element-vb-products-w > div[style*="font-family:Kumbh Sans"],
    body.page-id-84 .elementor-element-vb-products .elementor-element-vb-products-w > div[style*="font-family:Kumbh Sans"] {
        box-sizing: border-box !important;
        padding-right: 32px !important;
        padding-left: 32px !important;
    }

    body.home .elementor-element-vb-usecases .elementor-element-vb-usecases-w > div[style*="font-family:Kumbh Sans"],
    body.page-id-84 .elementor-element-vb-usecases .elementor-element-vb-usecases-w > div[style*="font-family:Kumbh Sans"],
    body.home .elementor-element-vb-social .elementor-element-vb-social-w > div[style*="font-family:Kumbh Sans"],
    body.page-id-84 .elementor-element-vb-social .elementor-element-vb-social-w > div[style*="font-family:Kumbh Sans"],
    body.home .elementor-element-vb-contenthub .elementor-element-vb-contenthub-w > div[style*="font-family:Kumbh Sans"],
    body.page-id-84 .elementor-element-vb-contenthub .elementor-element-vb-contenthub-w > div[style*="font-family:Kumbh Sans"] {
        box-sizing: border-box !important;
        padding-right: 32px !important;
        padding-left: 32px !important;
    }

    body.home .elementor-element-vb-products [style*="font-size:24px"][style*="font-weight:900"],
    body.page-id-84 .elementor-element-vb-products [style*="font-size:24px"][style*="font-weight:900"] {
        line-height: 32px !important;
    }

    body.home .elementor-element-vb-products [style*="justify-content:space-between"] > a,
    body.page-id-84 .elementor-element-vb-products [style*="justify-content:space-between"] > a {
        font-size: 0 !important;
        gap: 4px !important;
    }

    body.home .elementor-element-vb-products [style*="justify-content:space-between"] > a::before,
    body.page-id-84 .elementor-element-vb-products [style*="justify-content:space-between"] > a::before {
        content: "Explore All";
        font-family: "Kumbh Sans", sans-serif;
        font-size: 16px;
        line-height: 24px;
        font-weight: 700;
        color: #150529;
    }

    body.home .elementor-element-vb-products [style*="justify-content:space-between"] > a::after,
    body.page-id-84 .elementor-element-vb-products [style*="justify-content:space-between"] > a::after {
        content: "arrow_forward";
        font-family: 'Material Symbols Outlined';
        font-size: 24px;
        line-height: 24px;
        font-weight: 400;
        color: #150529;
        font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
    }

    body.home .elementor-element-vb-hero,
    body.page-id-84 .elementor-element-vb-hero {
        display: flex !important;
        min-height: 100vh !important;
        align-items: center !important;
        padding-top: 96px !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    body.home .elementor-element-vb-hero > .elementor-container,
    body.page-id-84 .elementor-element-vb-hero > .elementor-container,
    body.home .elementor-element-vb-hero .elementor-column,
    body.page-id-84 .elementor-element-vb-hero .elementor-column,
    body.home .elementor-element-vb-hero .elementor-widget-wrap,
    body.page-id-84 .elementor-element-vb-hero .elementor-widget-wrap,
    body.home .elementor-element-vb-hero .elementor-widget,
    body.page-id-84 .elementor-element-vb-hero .elementor-widget,
    body.home .elementor-element-vb-hero .elementor-widget-container,
    body.page-id-84 .elementor-element-vb-hero .elementor-widget-container {
        height: auto !important;
    }

    body.home .elementor-element-vb-hero > .elementor-container,
    body.page-id-84 .elementor-element-vb-hero > .elementor-container {
        width: 100% !important;
        max-width: 1280px !important;
    }

    body.home .elementor-element-vb-hero [style*="grid-template-columns:1fr 1fr"],
    body.page-id-84 .elementor-element-vb-hero [style*="grid-template-columns:1fr 1fr"] {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 64px !important;
        width: 100% !important;
        max-width: 1280px !important;
        min-height: auto !important;
        margin-right: auto !important;
        margin-left: auto !important;
        padding: 0 32px !important;
    }

    body.home .elementor-element-vb-hero [style*="grid-template-columns:1fr 1fr"] > div:first-child > p:first-child,
    body.page-id-84 .elementor-element-vb-hero [style*="grid-template-columns:1fr 1fr"] > div:first-child > p:first-child {
        display: block !important;
        margin-bottom: 16px !important;
        font-size: 16px !important;
        line-height: 24px !important;
        letter-spacing: 0.2em !important;
    }

    body.home .elementor-element-vb-hero h1 br,
    body.page-id-84 .elementor-element-vb-hero h1 br {
        display: block !important;
    }

    /* 让 H1 span "No monthly fees." 保持默认 inline，避免被强制 inline-block 后
       高度锁死到 line-height 而把字母 y / p / g 等的 descender 裁掉。
       参考稿 `vseebox_homepage_v2/code.html` 的 span 是 inline，自然高度 67px。 */
    body.home .elementor-element-vb-hero h1 span,
    body.page-id-84 .elementor-element-vb-hero h1 span {
        display: inline !important;
    }

    /* 段落与参考稿一致：max-width = 576px (Tailwind max-w-xl)，
       覆盖 hero HTML inline 写的 max-width:560px，让换行结果与参考稿对齐。 */
    body.home .elementor-element-vb-hero p,
    body.page-id-84 .elementor-element-vb-hero p {
        max-width: 576px !important;
    }
}

@media (min-width: 1280px) {
    body.home #page .elementor-section.elementor-element-vb-hero.elementor-section-boxed > .elementor-container.elementor-container,
    body.page-id-84 #page .elementor-section.elementor-element-vb-hero.elementor-section-boxed > .elementor-container.elementor-container {
        width: 100% !important;
        max-width: 1280px !important;
    }

    /* H1 不强制 nowrap，跟参考稿一致让其按 max-width 自然换行成 3 行。
       原来 `white-space: nowrap !important;` 会把 "One box. Every channel." 压成单行，
       与 `vseebox_homepage_v2/code.html` 的 H1 行数不一致。 */
    body.home .elementor-element-vb-hero h1,
    body.page-id-84 .elementor-element-vb-hero h1 {
        white-space: normal !important;
    }
}

/* Hero 容器响应式跟随 Tailwind .container 的 mx-auto 断点，保证大屏下也与参考稿
   `vseebox_homepage_v2/code.html` 像素级一致（gap=64px，左右 32px gutter，按断点设置 max-width） */
@media (min-width: 1536px) {
    body.home #page .elementor-section.elementor-element-vb-hero.elementor-section-boxed > .elementor-container.elementor-container,
    body.page-id-84 #page .elementor-section.elementor-element-vb-hero.elementor-section-boxed > .elementor-container.elementor-container,
    body.home .elementor-element-vb-hero > .elementor-container,
    body.page-id-84 .elementor-element-vb-hero > .elementor-container,
    body.home .elementor-element-vb-hero [style*="grid-template-columns:1fr 1fr"],
    body.page-id-84 .elementor-element-vb-hero [style*="grid-template-columns:1fr 1fr"] {
        max-width: 1536px !important;
    }

    body.home .elementor-section.elementor-element-vb-trust.elementor-section-boxed > .elementor-container,
    body.page-id-84 .elementor-section.elementor-element-vb-trust.elementor-section-boxed > .elementor-container,
    body.home .elementor-section.elementor-element-vb-products.elementor-section-boxed > .elementor-container,
    body.page-id-84 .elementor-section.elementor-element-vb-products.elementor-section-boxed > .elementor-container,
    body.home .elementor-section.elementor-element-vb-hiw.elementor-section-boxed > .elementor-container,
    body.page-id-84 .elementor-section.elementor-element-vb-hiw.elementor-section-boxed > .elementor-container,
    body.home .elementor-section.elementor-element-vb-savings.elementor-section-boxed > .elementor-container,
    body.page-id-84 .elementor-section.elementor-element-vb-savings.elementor-section-boxed > .elementor-container,
    body.home .elementor-section.elementor-element-vb-usecases.elementor-section-boxed > .elementor-container,
    body.page-id-84 .elementor-section.elementor-element-vb-usecases.elementor-section-boxed > .elementor-container,
    body.home .elementor-section.elementor-element-vb-social.elementor-section-boxed > .elementor-container,
    body.page-id-84 .elementor-section.elementor-element-vb-social.elementor-section-boxed > .elementor-container,
    body.home .elementor-section.elementor-element-vb-contenthub.elementor-section-boxed > .elementor-container,
    body.page-id-84 .elementor-section.elementor-element-vb-contenthub.elementor-section-boxed > .elementor-container {
        width: 100% !important;
        max-width: 1536px !important;
    }

    body.home .elementor-element-vb-hiw .elementor-element-vb-hiw-w > div[style*="font-family:Kumbh Sans"],
    body.page-id-84 .elementor-element-vb-hiw .elementor-element-vb-hiw-w > div[style*="font-family:Kumbh Sans"],
    body.home .elementor-element-vb-usecases .elementor-element-vb-usecases-w > div[style*="font-family:Kumbh Sans"],
    body.page-id-84 .elementor-element-vb-usecases .elementor-element-vb-usecases-w > div[style*="font-family:Kumbh Sans"],
    body.home .elementor-element-vb-social .elementor-element-vb-social-w > div[style*="font-family:Kumbh Sans"],
    body.page-id-84 .elementor-element-vb-social .elementor-element-vb-social-w > div[style*="font-family:Kumbh Sans"],
    body.home .elementor-element-vb-contenthub .elementor-element-vb-contenthub-w > div[style*="font-family:Kumbh Sans"],
    body.page-id-84 .elementor-element-vb-contenthub .elementor-element-vb-contenthub-w > div[style*="font-family:Kumbh Sans"] {
        box-sizing: border-box !important;
        padding-right: 32px !important;
        padding-left: 32px !important;
    }

    body.home .elementor-element-vb-savings [style*="grid-template-columns:1fr 1fr"],
    body.page-id-84 .elementor-element-vb-savings [style*="grid-template-columns:1fr 1fr"] {
        box-sizing: border-box !important;
        width: auto !important;
        margin-right: 32px !important;
        margin-left: 32px !important;
        padding: 80px !important;
    }
}

body.home .elementor-element-vb-products [style*="grid-template-columns:repeat(5,1fr)"] > div,
body.page-id-84 .elementor-element-vb-products [style*="grid-template-columns:repeat(5,1fr)"] > div {
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    transition: box-shadow 0.15s cubic-bezier(0.4, 0, 0.2, 1);
}

body.home .elementor-element-vb-products [style*="grid-template-columns:repeat(5,1fr)"] > div:hover,
body.page-id-84 .elementor-element-vb-products [style*="grid-template-columns:repeat(5,1fr)"] > div:hover {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}

body.home .elementor-element-vb-products [style*="grid-template-columns:repeat(5,1fr)"] > div img,
body.page-id-84 .elementor-element-vb-products [style*="grid-template-columns:repeat(5,1fr)"] > div img,
body.home .elementor-element-vb-usecases [style*="grid-template-columns:repeat(4,1fr)"] > div img,
body.page-id-84 .elementor-element-vb-usecases [style*="grid-template-columns:repeat(4,1fr)"] > div img {
    transition: transform 0.15s cubic-bezier(0.4, 0, 0.2, 1);
}

body.home .elementor-element-vb-products [style*="grid-template-columns:repeat(5,1fr)"] > div:hover img,
body.page-id-84 .elementor-element-vb-products [style*="grid-template-columns:repeat(5,1fr)"] > div:hover img,
body.home .elementor-element-vb-usecases [style*="grid-template-columns:repeat(4,1fr)"] > div:hover img,
body.page-id-84 .elementor-element-vb-usecases [style*="grid-template-columns:repeat(4,1fr)"] > div:hover img {
    transform: scale(1.1);
}

body.home .elementor-element-vb-hiw [style*="grid-template-columns:repeat(3,1fr)"] > div > div:first-child,
body.page-id-84 .elementor-element-vb-hiw [style*="grid-template-columns:repeat(3,1fr)"] > div > div:first-child {
    transition: transform 0.15s cubic-bezier(0.4, 0, 0.2, 1);
}

body.home .elementor-element-vb-hiw [style*="grid-template-columns:repeat(3,1fr)"] > div:hover > div:first-child,
body.page-id-84 .elementor-element-vb-hiw [style*="grid-template-columns:repeat(3,1fr)"] > div:hover > div:first-child {
    transform: scale(1.1);
}

body.home .elementor-element-vb-usecases [style*="grid-template-columns:repeat(4,1fr)"] > div,
body.page-id-84 .elementor-element-vb-usecases [style*="grid-template-columns:repeat(4,1fr)"] > div {
    transition: transform 0.15s cubic-bezier(0.4, 0, 0.2, 1);
}

body.home .elementor-element-vb-usecases [style*="grid-template-columns:repeat(4,1fr)"] > div:hover,
body.page-id-84 .elementor-element-vb-usecases [style*="grid-template-columns:repeat(4,1fr)"] > div:hover {
    transform: translateY(-8px);
}

body.home .elementor-element-vb-contenthub [style*="grid-template-columns:repeat(3,1fr)"] > div,
body.page-id-84 .elementor-element-vb-contenthub [style*="grid-template-columns:repeat(3,1fr)"] > div {
    cursor: pointer;
}

body.home .elementor-element-vb-contenthub [style*="grid-template-columns:repeat(3,1fr)"] > div img,
body.page-id-84 .elementor-element-vb-contenthub [style*="grid-template-columns:repeat(3,1fr)"] > div img {
    transition: transform 0.15s cubic-bezier(0.4, 0, 0.2, 1);
}

body.home .elementor-element-vb-contenthub [style*="grid-template-columns:repeat(3,1fr)"] > div:hover img,
body.page-id-84 .elementor-element-vb-contenthub [style*="grid-template-columns:repeat(3,1fr)"] > div:hover img {
    transform: scale(1.05);
}

/* ---------- Material Symbols 图标基础样式 ---------- */
/* 字体加载前隐藏图标文字（如 play_arrow），避免闪烁 */
.material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
    font-family: 'Material Symbols Outlined';
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-smoothing: antialiased;
    visibility: hidden;
}
.material-symbols-outlined.vb-icons-ready {
    visibility: visible;
}

/* ============================================
   WooCommerce Product Detail / PDP
   ============================================ */

.single-product #content .ast-container,
.single-product .site-content > .ast-container {
    max-width: 100%;
    padding: 0;
}

.single-product #primary {
    width: 100%;
    margin: 0;
}

.vb-pdp-page {
    min-height: 100vh;
    padding: 112px 0 96px;
    overflow: hidden;
    background:
        radial-gradient(rgba(181, 134, 255, 0.1) 1px, transparent 1px),
        var(--vb-background);
    background-size: 20px 20px, auto;
    color: var(--vb-on-surface);
}

.vb-pdp-page *,
.vb-pdp-page *::before,
.vb-pdp-page *::after {
    box-sizing: border-box;
}

.vb-pdp-page :where(h1, h2, h3, h4, p) {
    margin-top: 0;
}

.vb-pdp-page :where(a) {
    text-decoration: none;
}

.vb-pdp-container {
    width: min(1280px, calc(100% - 48px));
    margin-right: auto;
    margin-left: auto;
}

.vb-pdp-glass {
    background: rgba(60, 22, 104, 0.6);
    outline: 1px solid rgba(87, 56, 127, 0.2);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.vb-pdp-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, 1fr);
    align-items: center;
    gap: 48px;
    padding: 48px 0 96px;
}

.vb-pdp-gallery {
    min-width: 0;
}

.vb-pdp-gallery__main {
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 16px;
}

.vb-pdp-gallery__main img,
.vb-pdp-gallery__thumbs img,
.vb-pdp-story img,
.vb-pdp-video img,
.vb-pdp-bundle-grid img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.vb-pdp-gallery__thumbs {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
    margin-top: 16px;
}

.vb-pdp-gallery__thumbs button {
    height: 80px;
    min-height: 80px;
    padding: 0;
    overflow: hidden;
    border: 1px solid rgba(87, 56, 127, 0.3);
    border-radius: 8px;
    background: var(--vb-surface-container);
    cursor: pointer;
}

.vb-pdp-gallery__thumbs button.is-active {
    border-color: var(--vb-primary);
    box-shadow: 0 0 0 1px rgba(181, 134, 255, 0.35);
}

.vb-pdp-summary {
    min-width: 0;
}

.vb-pdp-badge {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    margin-bottom: 16px;
    padding: 4px 12px;
    border-radius: 999px;
    background: var(--vb-secondary-container, #4c0041);
    color: var(--vb-secondary-dim);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.12em;
    line-height: 1;
    text-transform: uppercase;
}

.vb-pdp-summary h1 {
    margin-bottom: 16px;
    color: #fff;
    font-family: var(--vb-heading-font);
    font-size: clamp(48px, 5vw, 64px);
    font-weight: 700;
    line-height: 1.1;
}

.vb-pdp-subtitle {
    margin-bottom: 24px;
    color: var(--vb-on-surface-variant);
    font-size: 20px;
    font-weight: 600;
    line-height: 1.5;
}

.vb-pdp-price,
.vb-pdp-sticky__price {
    color: #fff;
    font-weight: 800;
}

.vb-pdp-price {
    display: flex;
    align-items: baseline;
    gap: 14px;
    min-height: 48px;
    margin-bottom: 32px;
    font-size: 40px;
    line-height: 1.1;
}

.vb-pdp-stock {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    margin: -16px 0 24px;
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 800;
}

.vb-pdp-stock--in {
    background: rgba(34, 197, 94, 0.16);
    color: #4ade80;
}

.vb-pdp-stock--out {
    background: rgba(239, 68, 68, 0.16);
    color: #f87171;
}

.vb-pdp-price del,
.vb-pdp-sticky__price del {
    order: 2;
    color: #64748b;
    font-size: 18px;
    opacity: 0.85;
}

.vb-pdp-price ins,
.vb-pdp-sticky__price ins {
    text-decoration: none;
}

.vb-pdp-price .screen-reader-text,
.vb-pdp-sticky__price .screen-reader-text {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.vb-pdp-cart-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 32px;
}

.vb-pdp-button,
.vb-pdp-sticky__actions a,
.vb-pdp-sticky__actions button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 56px;
    border-radius: 12px;
    font-size: 18px;
    font-weight: 800;
    line-height: 1;
    transition: transform 0.2s ease, filter 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}

.vb-pdp-button--primary,
.vb-pdp-sticky__actions button {
    border: 0;
    background: var(--vb-gradient);
    color: #fff;
    box-shadow: 0 16px 32px rgba(123, 47, 224, 0.25);
}

.vb-pdp-button--primary:hover,
.vb-pdp-sticky__actions button:hover {
    color: #fff;
    filter: brightness(1.1);
}

.vb-pdp-button--primary:disabled,
.vb-pdp-sticky__actions button:disabled {
    background: #475569;
    color: #cbd5e1;
    cursor: not-allowed;
    filter: none;
    opacity: 0.82;
    box-shadow: none;
}

.vb-pdp-button--secondary {
    border: 1px solid rgba(87, 56, 127, 0.2);
    background: var(--vb-surface-container-highest);
    color: #fff;
}

.vb-pdp-button--secondary:hover {
    background: var(--vb-surface-bright);
    color: #fff;
}

.vb-pdp-trust {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    padding-top: 24px;
    border-top: 1px solid rgba(87, 56, 127, 0.2);
}

.vb-pdp-trust a {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    color: #94a3b8;
    text-align: center;
}

.vb-pdp-trust .material-symbols-outlined,
.vb-pdp-feature-card > .material-symbols-outlined,
.vb-pdp-spec-strip .material-symbols-outlined,
.vb-pdp-box .material-symbols-outlined {
    color: var(--vb-primary);
}

.vb-pdp-trust strong {
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    line-height: 1.3;
    text-transform: uppercase;
}

.vb-pdp-spec-strip {
    padding: 40px 0;
    border-top: 1px solid rgba(87, 56, 127, 0.1);
    border-bottom: 1px solid rgba(87, 56, 127, 0.1);
    background: var(--vb-surface-container-low);
}

.vb-pdp-spec-strip .vb-pdp-container {
    overflow-x: auto;
}

.vb-pdp-spec-strip__inner {
    display: grid;
    grid-template-columns: repeat(8, minmax(96px, 1fr));
    align-items: start;
    min-width: 800px;
    gap: 32px;
}

.vb-pdp-spec-strip__inner div {
    display: grid;
    grid-template-rows: 36px auto;
    align-items: start;
    justify-items: center;
    align-self: start;
    min-width: 0;
    gap: 12px;
    text-align: center;
}

.vb-pdp-spec-strip__inner .material-symbols-outlined {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    font-size: 32px;
    line-height: 1;
}

.vb-pdp-spec-strip__inner strong {
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.vb-pdp-feature-section,
.vb-pdp-compare,
.vb-pdp-setup,
.vb-pdp-bundles {
    padding: 96px 0;
}

.vb-pdp-section-heading {
    max-width: 720px;
    margin: 0 auto 64px;
    text-align: center;
}

.vb-pdp-section-heading h2,
.vb-pdp-box h2,
.vb-pdp-compare h2,
.vb-pdp-reviews h2,
.vb-pdp-setup h2,
.vb-pdp-bundles h2 {
    margin-bottom: 16px;
    color: #fff;
    font-family: var(--vb-heading-font);
    font-size: 40px;
    font-weight: 700;
    line-height: 1.2;
}

.vb-pdp-section-heading p {
    margin-bottom: 0;
    color: var(--vb-on-surface-variant);
    font-size: 16px;
    line-height: 1.7;
}

.vb-pdp-feature-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 32px;
}

.vb-pdp-feature-card {
    min-height: 252px;
    padding: 32px;
    border-radius: 16px;
}

.vb-pdp-feature-card > .material-symbols-outlined {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    margin-bottom: 24px;
    border-radius: 12px;
    background: var(--vb-gradient);
    color: #fff;
}

.vb-pdp-feature-card h3 {
    margin-bottom: 16px;
    color: #fff;
    font-family: var(--vb-heading-font);
    font-size: 24px;
    font-weight: 700;
    line-height: 1.25;
}

.vb-pdp-feature-card p,
.vb-pdp-story p,
.vb-pdp-review-card p,
.vb-pdp-setup p,
.vb-pdp-bundle-grid p {
    color: var(--vb-on-surface-variant);
    line-height: 1.65;
}

.vb-pdp-stories {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(300px, 1fr);
    gap: 24px;
    padding-bottom: 96px;
}

.vb-pdp-story {
    position: relative;
    min-height: 600px;
    overflow: hidden;
    border-radius: 24px;
    background: var(--vb-surface-container-high);
}

.vb-pdp-story::after {
    position: absolute;
    inset: 0;
    content: "";
    background: linear-gradient(to top, rgba(21, 5, 41, 0.96), rgba(21, 5, 41, 0.2), transparent);
}

.vb-pdp-story--small::before {
    position: absolute;
    top: -10%;
    right: -10%;
    z-index: 1;
    width: 256px;
    height: 256px;
    border-radius: 50%;
    background: rgba(181, 134, 255, 0.2);
    content: "";
    filter: blur(100px);
}

.vb-pdp-story img {
    transition: transform 0.7s ease;
}

.vb-pdp-story:hover img {
    transform: scale(1.05);
}

.vb-pdp-story div {
    position: absolute;
    right: 40px;
    bottom: 40px;
    left: 40px;
    z-index: 2;
}

.vb-pdp-story h3 {
    margin-bottom: 8px;
    color: #fff;
    font-family: var(--vb-heading-font);
    font-size: 30px;
    line-height: 1.2;
}

.vb-pdp-story--small h3 {
    font-size: 24px;
}

.vb-pdp-story p {
    max-width: 560px;
    margin-bottom: 16px;
    color: #cbd5e1;
    font-style: italic;
}

.vb-pdp-story strong {
    color: var(--vb-primary);
    font-weight: 800;
}

.vb-pdp-story a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--vb-secondary);
    font-weight: 800;
}

.vb-pdp-box,
.vb-pdp-reviews {
    padding: 96px 0;
    background: var(--vb-surface-container-low);
}

.vb-pdp-box h2,
.vb-pdp-compare h2,
.vb-pdp-bundles h2 {
    margin-bottom: 64px;
    text-align: center;
}

.vb-pdp-box__grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 32px;
    text-align: center;
}

.vb-pdp-box__grid div {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.vb-pdp-box__grid .material-symbols-outlined {
    display: flex;
    aspect-ratio: 1;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(87, 56, 127, 0.1);
    border-radius: 16px;
    background: var(--vb-surface);
    font-size: 48px;
}

.vb-pdp-box__grid strong {
    color: #fff;
    font-size: 14px;
    font-weight: 800;
}

.vb-pdp-table-wrap {
    overflow-x: auto;
}

.vb-pdp-compare table {
    width: 100%;
    min-width: 760px;
    border: 0 !important;
    border-collapse: collapse;
    background: transparent;
    box-shadow: none !important;
}

.vb-pdp-compare :where(th, td) {
    padding: 24px;
    border: 0 !important;
    border-bottom: 1px solid rgba(87, 56, 127, 0.1) !important;
    background: transparent;
    box-shadow: none !important;
}

.vb-pdp-compare th {
    color: #94a3b8;
    font-size: 13px;
    font-weight: 700;
    text-align: left;
}

.vb-pdp-compare th:not(:first-child),
.vb-pdp-compare td:not(:first-child) {
    text-align: center;
}

.vb-pdp-compare th:nth-child(2),
.vb-pdp-compare td:nth-child(2) {
    background: rgba(36, 12, 65, 0.5);
    color: #fff;
    font-weight: 800;
}

.vb-pdp-compare th:nth-child(2) {
    border-radius: 16px 16px 0 0;
    color: var(--vb-secondary);
    font-size: 20px;
}

.vb-pdp-compare tbody tr:last-child td:nth-child(2) {
    border-radius: 0 0 16px 16px;
}

.vb-pdp-compare tbody tr:last-child td {
    border-bottom: 0 !important;
}

.vb-pdp-compare td:first-child {
    color: #fff;
    font-weight: 800;
}

.vb-pdp-compare td:nth-child(3),
.vb-pdp-compare td:nth-child(4),
.vb-pdp-compare small {
    color: #94a3b8;
}

.vb-pdp-compare small {
    display: block;
    margin-top: 4px;
    font-size: 12px;
}

.vb-pdp-ok {
    color: #22c55e;
}

.vb-pdp-no {
    color: #ef4444;
}

.vb-pdp-muted {
    color: #64748b;
}

.vb-pdp-reviews__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 32px;
    margin-bottom: 64px;
}

.vb-pdp-rating {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.vb-pdp-rating span,
.vb-pdp-stars span,
.vb-pdp-stars {
    overflow: hidden;
    color: #facc15;
    font-family: 'Material Symbols Outlined';
    font-size: 24px;
    font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
    line-height: 1;
    white-space: nowrap;
}

.vb-pdp-rating strong {
    color: #fff;
    font-size: 20px;
}

.vb-pdp-rating em {
    color: #94a3b8;
    font-style: normal;
}

.vb-pdp-reviews__head > a {
    min-height: 48px;
    padding: 12px 32px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.05);
    color: #fff;
    font-weight: 800;
}

.vb-pdp-reviews__head > a:hover {
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
}

.vb-pdp-review-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 32px;
}

.vb-pdp-review-card {
    position: relative;
    min-height: 240px;
    padding: 30px 32px 26px;
    border-radius: 16px;
}

.vb-pdp-quote {
    display: none;
}

.vb-pdp-stars {
    width: 132px;
    margin-bottom: 16px;
    transform: scale(0.75);
    transform-origin: left center;
}

.vb-pdp-review-card p {
    margin-bottom: 24px;
    font-style: italic;
}

.vb-pdp-review-card > div:last-child {
    display: flex;
    align-items: center;
    gap: 16px;
}

.vb-pdp-review-card > div:last-child > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    border-radius: 50%;
    background: var(--vb-surface-bright);
    color: #fff;
    font-weight: 800;
}

.vb-pdp-review-card strong {
    display: block;
    color: #fff;
}

.vb-pdp-review-card small {
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.vb-pdp-setup__card {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, 1fr);
    align-items: center;
    gap: 64px;
    overflow: hidden;
    padding: 80px;
    border-radius: 32px;
    background: var(--vb-surface-container);
}

.vb-pdp-setup__card::after {
    position: absolute;
    top: 0;
    right: 0;
    width: 33%;
    height: 100%;
    content: "";
    background: linear-gradient(to left, rgba(181, 134, 255, 0.1), transparent);
    pointer-events: none;
}

.vb-pdp-setup__steps,
.vb-pdp-video {
    position: relative;
    z-index: 1;
}

.vb-pdp-setup__steps > div {
    display: flex;
    gap: 24px;
    margin-top: 40px;
}

.vb-pdp-setup__steps span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    border: 2px solid var(--vb-primary);
    border-radius: 50%;
    color: var(--vb-primary);
    font-weight: 800;
}

.vb-pdp-setup h3 {
    margin-bottom: 8px;
    color: #fff;
    font-family: var(--vb-heading-font);
    font-size: 20px;
}

.vb-pdp-setup p {
    margin-bottom: 0;
}

.vb-pdp-video {
    display: block;
    aspect-ratio: 16 / 11;
    overflow: hidden;
    border-radius: 16px;
}

.vb-pdp-video::after {
    position: absolute;
    inset: 0;
    content: "";
    background: rgba(21, 5, 41, 0.05);
}

.vb-pdp-video .material-symbols-outlined {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: var(--vb-gradient);
    color: #fff;
    font-size: 40px;
    box-shadow: 0 24px 48px rgba(0, 0, 0, 0.35);
    transform: translate(-50%, -50%);
    transition: transform 0.25s ease;
}

.vb-pdp-video:hover .material-symbols-outlined {
    transform: translate(-50%, -50%) scale(1.1);
}

.vb-pdp-bundles {
    border-top: 1px solid rgba(87, 56, 127, 0.1);
}

.vb-pdp-bundles h2 {
    font-size: 30px;
}

.vb-pdp-bundle-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px;
}

.vb-pdp-bundle-grid article {
    display: flex;
    align-items: center;
    gap: 24px;
    padding: 24px;
    border-radius: 16px;
    background: var(--vb-surface-container);
}

.vb-pdp-bundle-grid img {
    width: 128px;
    height: 128px;
    flex: 0 0 128px;
    border-radius: 12px;
}

.vb-pdp-bundle-grid h3 {
    margin-bottom: 8px;
    color: #fff;
    font-family: var(--vb-heading-font);
    font-size: 20px;
}

.vb-pdp-bundle-grid p {
    margin-bottom: 16px;
    color: #94a3b8;
    font-size: 14px;
}

.vb-pdp-bundle-grid strong {
    color: var(--vb-secondary);
    font-size: 20px;
}

.vb-pdp-bundle-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.vb-pdp-bundle-grid a {
    display: inline-flex;
    min-height: 36px;
    align-items: center;
    justify-content: center;
    padding: 8px 16px;
    border-radius: 8px;
    background: rgba(181, 134, 255, 0.2);
    color: var(--vb-primary);
    font-size: 13px;
    font-weight: 800;
}

.vb-pdp-sticky {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 60;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 16px 24px;
    border-top: 1px solid rgba(87, 56, 127, 0.2);
    background: rgba(36, 12, 65, 0.9);
    box-shadow: 0 -16px 48px rgba(0, 0, 0, 0.3);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
}

.vb-pdp-sticky__info {
    display: flex;
    align-items: center;
    gap: 24px;
    min-width: 0;
}

.vb-pdp-sticky__info > div:first-child > span {
    display: block;
    margin-bottom: 4px;
    color: #94a3b8;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.vb-pdp-sticky__info strong {
    color: #fff;
    font-weight: 800;
}

.vb-pdp-sticky__info i {
    width: 1px;
    height: 32px;
    background: rgba(87, 56, 127, 0.3);
}

.vb-pdp-sticky__price {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 24px;
}

.vb-pdp-sticky__price del {
    font-size: 13px;
}

.vb-pdp-sticky__price em {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 3px 8px;
    border-radius: 4px;
    font-size: 12px;
    font-style: normal;
    font-weight: 800;
}

.vb-pdp-sticky__actions {
    display: flex;
    gap: 16px;
}

.vb-pdp-sticky__actions a,
.vb-pdp-sticky__actions button {
    min-height: 48px;
    padding: 12px 32px;
    border-radius: 12px;
    font-size: 14px;
    cursor: pointer;
}

.vb-pdp-sticky__actions a {
    border: 1px solid var(--vb-outline);
    background: transparent;
    color: #fff;
}

.vb-pdp-sticky__actions a:hover {
    background: var(--vb-surface-bright);
    color: #fff;
}

body.single-product {
    padding-bottom: 80px;
}

@media (min-width: 768px) {
    body.single-product #primary.vb-pdp-page,
    body.single-product .site-main.vb-pdp-page {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 72px !important;
    }

    body.single-product .vb-pdp-hero {
        padding: 96px 24px !important;
    }

    body.single-product .vb-pdp-feature-section,
    body.single-product .vb-pdp-compare,
    body.single-product .vb-pdp-setup,
    body.single-product .vb-pdp-bundles {
        padding-right: 24px !important;
        padding-left: 24px !important;
    }

    body.single-product .vb-pdp-spec-strip .vb-pdp-container,
    body.single-product .vb-pdp-box .vb-pdp-container,
    body.single-product .vb-pdp-reviews .vb-pdp-container {
        width: min(1280px, calc(100% - 48px));
        padding-right: 24px;
        padding-left: 24px;
        box-sizing: border-box;
    }

    body.single-product .vb-pdp-spec-strip__inner {
        display: flex;
        justify-content: space-between;
        width: 100%;
        min-width: 800px;
    }

    body.single-product .vb-pdp-spec-strip__inner div {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        width: auto;
        min-width: 0;
        gap: 12px;
    }

    body.single-product .vb-pdp-spec-strip__inner strong {
        line-height: 20px;
        white-space: nowrap;
        overflow-wrap: normal;
    }

    body.single-product .vb-pdp-summary > .vb-pdp-stock {
        display: none;
    }

    body.single-product .vb-pdp-summary h1 {
        font-size: 60px;
        line-height: 60px;
    }

    body.single-product .vb-pdp-subtitle {
        font-weight: 500;
        line-height: 28px;
    }

    body.single-product .vb-pdp-price {
        min-height: 0;
        font-size: 36px;
        line-height: 40.5px;
    }

    body.single-product .vb-pdp-trust {
        padding: 24px 0;
    }

    body.single-product .vb-pdp-section-heading h2,
    body.single-product .vb-pdp-box h2,
    body.single-product .vb-pdp-compare h2,
    body.single-product .vb-pdp-reviews h2,
    body.single-product .vb-pdp-setup h2 {
        font-size: 36px;
        line-height: 40px;
    }

    body.single-product .vb-pdp-section-heading p,
    body.single-product .vb-pdp-feature-card p,
    body.single-product .vb-pdp-story p,
    body.single-product .vb-pdp-review-card p,
    body.single-product .vb-pdp-setup p,
    body.single-product .vb-pdp-bundle-grid p {
        line-height: 24px;
    }

    body.single-product .vb-pdp-feature-card {
        min-height: 262px;
        height: 262px;
        overflow: hidden;
    }
}

@media (max-width: 767px) {
    body.single-product #primary.vb-pdp-page,
    body.single-product .site-main.vb-pdp-page {
        margin: 0 !important;
        padding-top: 72px !important;
    }

    body.single-product .vb-pdp-hero {
        width: 100% !important;
        max-width: none !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding: 48px 24px !important;
        gap: 48px !important;
    }

    body.single-product .vb-pdp-gallery__thumbs button {
        height: 80px !important;
        min-height: 80px !important;
    }

    body.single-product .vb-pdp-summary > .vb-pdp-stock {
        display: none;
    }

    body.single-product .vb-pdp-summary h1 {
        font-size: 48px !important;
        line-height: 52.8px !important;
    }

    body.single-product .vb-pdp-subtitle {
        font-size: 20px !important;
        font-weight: 500 !important;
        line-height: 28px !important;
    }

    body.single-product .vb-pdp-price {
        min-height: 0 !important;
        font-size: 36px !important;
        line-height: 40.5px !important;
    }

    body.single-product .vb-pdp-trust {
        gap: 16px !important;
        padding: 24px 0 !important;
    }

    body.single-product .vb-pdp-spec-strip__inner {
        display: flex !important;
        justify-content: space-between;
        min-width: 800px;
    }

    body.single-product .vb-pdp-spec-strip__inner div {
        display: flex !important;
        flex-direction: column;
        align-items: center;
        gap: 12px;
    }

    body.single-product .vb-pdp-spec-strip__inner strong {
        line-height: 20px;
        white-space: nowrap;
    }

    body.single-product .vb-pdp-feature-section,
    body.single-product .vb-pdp-compare,
    body.single-product .vb-pdp-setup,
    body.single-product .vb-pdp-bundles {
        width: 100% !important;
        max-width: none !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding-right: 24px !important;
        padding-left: 24px !important;
    }

    body.single-product .vb-pdp-compare {
        padding-top: 96px !important;
        padding-bottom: 96px !important;
    }

    body.single-product .vb-pdp-compare h2 {
        margin: 0 0 64px !important;
        font-size: 36px !important;
        font-weight: 700 !important;
        line-height: 40px !important;
        text-align: center !important;
    }

    body.single-product .vb-pdp-table-wrap {
        width: 100% !important;
        overflow-x: auto !important;
    }

    body.single-product .vb-pdp-compare table {
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        border-collapse: collapse !important;
        table-layout: auto !important;
    }

    body.single-product .vb-pdp-compare th,
    body.single-product .vb-pdp-compare td {
        padding: 24px !important;
        font-size: 16px !important;
        line-height: 24px !important;
        vertical-align: middle !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
    }

    body.single-product .vb-pdp-compare th {
        font-weight: 500 !important;
    }

    body.single-product .vb-pdp-compare th:nth-child(2) {
        font-size: 20px !important;
        font-weight: 700 !important;
        line-height: 28px !important;
    }

    body.single-product .vb-pdp-compare td:first-child {
        font-weight: 700 !important;
    }

    body.single-product .vb-pdp-compare td:nth-child(2) {
        font-weight: 700 !important;
    }

    body.single-product .vb-pdp-compare tbody tr:nth-child(2) td:nth-child(2) {
        font-weight: 400 !important;
    }

    body.single-product .vb-pdp-compare td .material-symbols-outlined {
        display: inline-block !important;
        font-size: 24px !important;
        line-height: 24px !important;
        vertical-align: baseline !important;
    }

    body.single-product .vb-pdp-compare td small {
        display: block !important;
        margin-top: 4px !important;
        font-size: 12px !important;
        line-height: 16px !important;
    }
}

@media (max-width: 767px) {
    body.single-product .vb-pdp-page #vb-pdp-cart-form {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        height: auto !important;
        gap: 16px !important;
    }

    body.single-product .vb-pdp-page #vb-pdp-cart-form .vb-pdp-button,
    body.single-product .vb-pdp-page #vb-pdp-cart-form .vb-pdp-button--primary,
    body.single-product .vb-pdp-page #vb-pdp-cart-form .vb-pdp-button--secondary {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 auto !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-sticky__actions {
        display: flex !important;
        grid-template-columns: none !important;
        width: 100% !important;
        gap: 16px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-sticky__actions a,
    body.single-product .vb-pdp-page .vb-pdp-sticky__actions button {
        width: auto !important;
        min-width: 0 !important;
        flex: 1 1 0% !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-sticky {
        display: block !important;
        height: 107px !important;
        padding: 16px 24px !important;
        gap: normal !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-sticky__actions {
        height: 74px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-sticky__actions a,
    body.single-product .vb-pdp-page .vb-pdp-sticky__actions button {
        display: block !important;
        height: 74px !important;
        overflow: visible !important;
        text-overflow: clip !important;
        white-space: normal !important;
    }
}

/* PDP mobile button layout final pass. This intentionally lives at EOF to
   override the PC-only fixed button widths above. */
@media (max-width: 767px) {
    body.single-product .vb-pdp-cart-form {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        height: auto !important;
        gap: 16px !important;
    }

    body.single-product .vb-pdp-cart-form .vb-pdp-button,
    body.single-product .vb-pdp-cart-form .vb-pdp-button--primary,
    body.single-product .vb-pdp-cart-form .vb-pdp-button--secondary {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 auto !important;
    }

    body.single-product .vb-pdp-sticky__actions {
        display: flex !important;
        grid-template-columns: none !important;
        width: 100% !important;
        gap: 16px !important;
    }

    body.single-product .vb-pdp-sticky__actions a,
    body.single-product .vb-pdp-sticky__actions button {
        width: auto !important;
        min-width: 0 !important;
        flex: 1 1 0% !important;
    }
}

/* PDP mobile button layout must follow the reference page after PC pixel fixes. */
@media (max-width: 767px) {
    body.single-product .vb-pdp-cart-form {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        height: auto !important;
        gap: 16px !important;
    }

    body.single-product .vb-pdp-cart-form .vb-pdp-button,
    body.single-product .vb-pdp-cart-form .vb-pdp-button--primary,
    body.single-product .vb-pdp-cart-form .vb-pdp-button--secondary {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 auto !important;
    }

    body.single-product .vb-pdp-sticky__actions {
        display: flex !important;
        grid-template-columns: none !important;
        width: 100% !important;
        gap: 16px !important;
    }

    body.single-product .vb-pdp-sticky__actions a,
    body.single-product .vb-pdp-sticky__actions button {
        width: auto !important;
        min-width: 0 !important;
        flex: 1 1 0% !important;
    }
}

/* ============================================
   VSeeBox WooCommerce Thank You Template
   ============================================ */

.vb-thankyou-page {
    --vb-ty-bg: #150529;
    --vb-ty-surface: #1c0834;
    --vb-ty-surface-2: #240c41;
    --vb-ty-surface-3: #33125b;
    --vb-ty-text: #f0dfff;
    --vb-ty-muted: #bf9ceb;
    --vb-ty-primary: #b586ff;
    --vb-ty-secondary: #e950cc;
    width: 100vw;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    padding: 150px 0 104px;
    background:
        radial-gradient(circle at 82% 5%, rgba(123, 47, 224, 0.18), transparent 30rem),
        radial-gradient(circle at 12% 72%, rgba(233, 80, 204, 0.12), transparent 28rem),
        var(--vb-ty-bg);
    color: var(--vb-ty-text);
    font-family: var(--vb-font);
}

body.woocommerce-order-received .site-content .ast-container {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0;
    padding-right: 0;
    padding-left: 0;
}

body.woocommerce-order-received #primary,
body.woocommerce-order-received #main {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
}

body.woocommerce-order-received #content,
body.woocommerce-order-received .site-content,
body.woocommerce-order-received .content-area {
    width: 100%;
    max-width: none;
    margin: 0;
    padding-right: 0;
    padding-left: 0;
}

body.woocommerce-order-received .entry-content,
body.woocommerce-order-received .entry-content > .woocommerce,
body.woocommerce-order-received .woocommerce {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
}

.vb-thankyou-hero,
.vb-thankyou-next,
.vb-thankyou-ready,
.vb-thankyou-actions,
.vb-thankyou-failed {
    width: min(100% - 96px, 1360px);
    margin-right: auto;
    margin-left: auto;
}

.vb-thankyou-hero {
    margin-bottom: 88px;
    text-align: center;
}

.vb-thankyou-check {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 82px;
    height: 82px;
    margin-bottom: 30px;
    border-radius: 999px;
    background: linear-gradient(135deg, #7b2fe0 0%, #e950cc 100%);
    box-shadow: 0 0 44px rgba(123, 47, 224, 0.42);
}

.vb-thankyou-check .material-symbols-outlined {
    color: #fff;
    font-size: 42px;
    font-variation-settings: "FILL" 1, "wght" 400, "GRAD" 0, "opsz" 48;
}

.vb-thankyou-hero h1,
.vb-thankyou-section-head h2,
.vb-thankyou-channel h2,
.vb-thankyou-actions h2,
.vb-thankyou-failed h1 {
    margin: 0;
    color: #fff;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.08;
}

.vb-thankyou-hero h1 {
    font-size: clamp(42px, 5vw, 64px);
}

.vb-thankyou-hero h1 strong {
    background: linear-gradient(135deg, #7b2fe0 0%, #e950cc 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.vb-thankyou-hero > p {
    max-width: 720px;
    margin: 24px auto 46px;
    color: rgba(240, 223, 255, 0.62);
    font-size: 18px;
    line-height: 1.7;
}

.vb-thankyou-summary {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(380px, 0.8fr);
    gap: 48px;
    width: 100%;
    max-width: none;
    margin: 0 auto;
    padding: 44px;
    overflow: hidden;
    border: 1px solid rgba(87, 56, 127, 0.32);
    border-radius: 24px;
    background: rgba(60, 22, 104, 0.6);
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.28);
    text-align: left;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.vb-thankyou-details > span,
.vb-thankyou-shipping > span {
    display: block;
    margin-bottom: 14px;
    color: var(--vb-ty-primary);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.vb-thankyou-shipping > span {
    color: var(--vb-ty-secondary);
}

.vb-thankyou-details dl {
    margin: 0;
}

.vb-thankyou-details dl > div {
    display: flex;
    justify-content: space-between;
    gap: 32px;
    padding: 15px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.vb-thankyou-details dl > div:last-child {
    border-bottom: 0;
}

.vb-thankyou-details dt {
    color: rgba(240, 223, 255, 0.52);
}

.vb-thankyou-details dd {
    margin: 0;
    color: #fff;
    font-weight: 900;
    max-width: min(760px, 72%);
    text-align: right;
}

.vb-thankyou-total {
    color: var(--vb-ty-secondary) !important;
    font-size: 21px;
}

.vb-thankyou-shipping {
    padding: 32px;
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 18px;
    background: rgba(51, 18, 91, 0.45);
}

.vb-thankyou-shipping strong {
    display: block;
    color: #fff;
    font-size: 32px;
    line-height: 1.1;
}

.vb-thankyou-shipping p {
    margin: 10px 0 22px;
    color: rgba(240, 223, 255, 0.48);
    font-size: 14px;
    line-height: 1.55;
}

.vb-thankyou-shipping em {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--vb-ty-primary);
    font-size: 14px;
    font-style: normal;
    font-weight: 800;
}

.vb-thankyou-next {
    margin-bottom: 90px;
}

.vb-thankyou-section-head {
    margin-bottom: 42px;
    text-align: center;
}

.vb-thankyou-section-head h2,
.vb-thankyou-actions h2 {
    font-size: clamp(30px, 4vw, 42px);
}

.vb-thankyou-section-head p {
    margin: 12px 0 0;
    color: rgba(240, 223, 255, 0.5);
}

.vb-thankyou-timeline {
    position: relative;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}

.vb-thankyou-timeline::before {
    position: absolute;
    top: 24px;
    right: 8%;
    left: 8%;
    height: 4px;
    border-radius: 999px;
    background: var(--vb-ty-surface-3);
    content: "";
}

.vb-thankyou-timeline article {
    position: relative;
    z-index: 1;
    display: grid;
    justify-items: center;
    text-align: center;
}

.vb-thankyou-timeline article > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    margin-bottom: 16px;
    border: 1px solid rgba(87, 56, 127, 0.35);
    border-radius: 999px;
    background: var(--vb-ty-surface-3);
    color: rgba(255, 255, 255, 0.75);
}

.vb-thankyou-timeline article.is-active > span {
    border: 0;
    background: linear-gradient(135deg, #7b2fe0 0%, #e950cc 100%);
    color: #fff;
    box-shadow: 0 0 24px rgba(123, 47, 224, 0.35);
}

.vb-thankyou-timeline h3 {
    margin: 0 0 4px;
    color: #fff;
    font-size: 16px;
    font-weight: 900;
}

.vb-thankyou-timeline p {
    margin: 0;
    color: rgba(240, 223, 255, 0.42);
    font-size: 14px;
}

.vb-thankyou-ready {
    display: grid;
    grid-template-columns: minmax(0, 1.42fr) minmax(360px, 0.78fr);
    gap: 24px;
    margin-bottom: 90px;
}

.vb-thankyou-video,
.vb-thankyou-tips a,
.vb-thankyou-channel,
.vb-thankyou-actions,
.vb-thankyou-failed {
    border: 1px solid rgba(87, 56, 127, 0.32);
    background: rgba(28, 8, 52, 0.82);
    color: var(--vb-ty-text);
}

.vb-thankyou-video {
    position: relative;
    display: block;
    overflow: hidden;
    min-height: 460px;
    border-radius: 28px;
}

.vb-thankyou-video > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.55s ease;
}

.vb-thankyou-video:hover > img {
    transform: scale(1.04);
}

.vb-thankyou-video::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(21, 5, 41, 0.05), rgba(28, 8, 52, 0.95));
    content: "";
}

.vb-thankyou-video > .material-symbols-outlined {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 78px;
    height: 78px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    font-size: 44px;
    transform: translate(-50%, -50%);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.vb-thankyou-video div {
    position: absolute;
    right: 32px;
    bottom: 32px;
    left: 32px;
    z-index: 2;
}

.vb-thankyou-video h2,
.vb-thankyou-channel h2 {
    margin: 0 0 12px;
    color: #fff;
    font-size: 28px;
    font-weight: 900;
    line-height: 1.18;
}

.vb-thankyou-video p,
.vb-thankyou-channel p {
    max-width: 640px;
    margin: 0;
    color: rgba(240, 223, 255, 0.58);
    line-height: 1.65;
}

.vb-thankyou-tips {
    display: grid;
    gap: 24px;
}

.vb-thankyou-tips a {
    display: flex;
    flex-direction: column;
    min-height: 198px;
    justify-content: space-between;
    padding: 28px;
    border-radius: 28px;
}

.vb-thankyou-tips span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 16px;
    background: rgba(181, 134, 255, 0.12);
    color: var(--vb-ty-primary);
}

.vb-thankyou-tips a:nth-child(2) span {
    background: rgba(233, 80, 204, 0.12);
    color: var(--vb-ty-secondary);
}

.vb-thankyou-tips h3 {
    margin: 18px 0 8px;
    color: #fff;
    font-size: 21px;
    font-weight: 900;
}

.vb-thankyou-tips p {
    margin: 0;
    color: rgba(240, 223, 255, 0.46);
    line-height: 1.55;
}

.vb-thankyou-channel {
    display: flex;
    grid-column: 1 / -1;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    overflow: hidden;
    padding: 38px;
    border-radius: 28px;
    background:
        radial-gradient(circle at 5% 12%, rgba(123, 47, 224, 0.18), transparent 24rem),
        rgba(60, 22, 104, 0.6);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.vb-thankyou-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    padding: 14px 24px;
    border: 0;
    border-radius: 14px;
    background: linear-gradient(135deg, #7b2fe0 0%, #e950cc 100%);
    color: #fff;
    font-weight: 900;
    text-decoration: none;
}

.vb-thankyou-button:hover {
    color: #fff;
    box-shadow: 0 0 34px rgba(181, 134, 255, 0.28);
}

.vb-thankyou-button--ghost {
    border: 1px solid rgba(181, 134, 255, 0.32);
    background: rgba(51, 18, 91, 0.86);
}

.vb-thankyou-actions {
    padding: 42px;
    border-radius: 30px;
    text-align: center;
}

.vb-thankyou-actions div,
.vb-thankyou-failed div {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 24px;
}

.vb-thankyou-failed {
    max-width: 760px;
    padding: 56px;
    border-radius: 30px;
    text-align: center;
}

.vb-thankyou-failed > .material-symbols-outlined {
    color: var(--vb-ty-secondary);
    font-size: 54px;
}

.vb-thankyou-failed h1 {
    margin-top: 18px;
    font-size: clamp(34px, 4vw, 52px);
}

.vb-thankyou-failed p {
    max-width: 560px;
    margin: 18px auto 0;
    color: var(--vb-ty-muted);
    line-height: 1.7;
}

@media (max-width: 1024px) {
    .vb-thankyou-summary,
    .vb-thankyou-ready {
        grid-template-columns: 1fr;
    }

    .vb-thankyou-details dd {
        max-width: 68%;
    }

    .vb-thankyou-timeline::before {
        display: none;
    }
}

@media (max-width: 767px) {
    .vb-thankyou-page {
        padding: 126px 0 72px;
    }

    .vb-thankyou-hero,
    .vb-thankyou-next,
    .vb-thankyou-ready,
    .vb-thankyou-actions,
    .vb-thankyou-failed {
        width: min(100% - 32px, 1360px);
    }

    .vb-thankyou-hero h1 {
        font-size: 39px;
    }

    .vb-thankyou-summary {
        padding: 24px;
    }

    .vb-thankyou-details dl > div {
        align-items: flex-start;
        flex-direction: column;
        gap: 4px;
    }

    .vb-thankyou-details dd {
        max-width: none;
        text-align: left;
    }

    .vb-thankyou-timeline {
        grid-template-columns: 1fr 1fr;
        row-gap: 30px;
    }

    .vb-thankyou-video {
        min-height: 380px;
        border-radius: 22px;
    }

    .vb-thankyou-channel,
    .vb-thankyou-actions {
        align-items: flex-start;
        flex-direction: column;
        padding: 28px;
        text-align: left;
    }

    .vb-thankyou-actions div,
    .vb-thankyou-actions .vb-thankyou-button,
    .vb-thankyou-channel .vb-thankyou-button {
        width: 100%;
    }
}

/* ============================================
   VSeeBox 404 Template
   ============================================ */

.vb-404-page {
    --vb-404-bg: #150529;
    --vb-404-surface: #1c0834;
    --vb-404-surface-2: #240c41;
    --vb-404-surface-3: #33125b;
    --vb-404-text: #f0dfff;
    --vb-404-muted: #bf9ceb;
    --vb-404-primary: #b586ff;
    --vb-404-secondary: #e950cc;
    position: relative;
    width: 100vw;
    min-height: 760px;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    overflow: hidden;
    padding: 140px 0 110px;
    background:
        radial-gradient(circle at 5% 32%, rgba(123, 47, 224, 0.18), transparent 28rem),
        radial-gradient(circle at 92% 65%, rgba(233, 80, 204, 0.14), transparent 28rem),
        radial-gradient(#57387f 1px, transparent 1px),
        var(--vb-404-bg);
    background-size: auto, auto, 20px 20px, auto;
    color: var(--vb-404-text);
    font-family: var(--vb-font);
}

body.error404 .site-content .ast-container {
    display: block;
    width: 100%;
    max-width: none;
    padding-right: 0;
    padding-left: 0;
}

body.error404 #primary,
body.error404 #main {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
}

.vb-404-container {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(420px, 0.9fr);
    align-items: center;
    gap: 72px;
    width: min(100% - 96px, 1180px);
    margin: 0 auto;
}

.vb-404-copy {
    display: grid;
    gap: 30px;
}

.vb-404-kicker {
    display: inline-flex;
    width: fit-content;
    min-height: 30px;
    align-items: center;
    padding: 6px 14px;
    border: 1px solid rgba(87, 56, 127, 0.45);
    border-radius: 999px;
    background: rgba(51, 18, 91, 0.8);
    color: var(--vb-404-primary);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.vb-404-copy h1 {
    max-width: 660px;
    margin: 0;
    color: #fff;
    font-size: clamp(46px, 5vw, 70px);
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.08;
}

.vb-404-copy h1 strong {
    display: block;
    background: linear-gradient(135deg, #7b2fe0 0%, #e950cc 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.vb-404-copy p {
    max-width: 560px;
    margin: 0;
    color: var(--vb-404-muted);
    font-size: 18px;
    line-height: 1.7;
}

.vb-404-search {
    display: grid;
    gap: 14px;
    max-width: 500px;
    padding: 22px;
    border: 1px solid rgba(87, 56, 127, 0.32);
    border-radius: 16px;
    background: rgba(28, 8, 52, 0.78);
}

.vb-404-search label {
    color: var(--vb-404-primary);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.vb-404-search > div {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    border-radius: 12px;
    background: rgba(0, 0, 0, 0.32);
    padding: 6px 6px 6px 14px;
}

.vb-404-search .material-symbols-outlined {
    color: var(--vb-404-muted);
}

.vb-404-search input {
    width: 100%;
    min-height: 46px;
    border: 0;
    background: transparent;
    box-shadow: none;
    color: #fff;
    padding: 0;
}

.vb-404-search input:focus {
    outline: none;
}

.vb-404-search button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    min-height: 46px;
    padding: 0;
    border: 1px solid rgba(87, 56, 127, 0.35);
    border-radius: 10px;
    background: var(--vb-404-surface-3);
    color: #fff;
    cursor: pointer;
}

.vb-404-links {
    display: grid;
    gap: 18px;
}

.vb-404-links h2 {
    margin: 0;
    color: #fff;
    font-size: 22px;
    font-weight: 900;
}

.vb-404-links > div {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.vb-404-links a {
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 72px;
    padding: 16px;
    border: 1px solid rgba(87, 56, 127, 0.24);
    border-radius: 16px;
    background: rgba(36, 12, 65, 0.8);
    color: var(--vb-404-text);
    font-weight: 800;
}

.vb-404-links a:hover {
    background: rgba(51, 18, 91, 0.92);
    color: #fff;
    transform: translateY(-2px);
}

.vb-404-links a .material-symbols-outlined {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: var(--vb-404-surface-3);
    color: var(--vb-404-primary);
    flex: 0 0 auto;
}

.vb-404-visual {
    position: relative;
}

.vb-404-panel {
    position: relative;
    display: grid;
    place-items: center;
    aspect-ratio: 1;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 32px;
    background: rgba(60, 22, 104, 0.3);
    box-shadow: 0 30px 90px rgba(0, 0, 0, 0.34);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.vb-404-panel::before {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(#57387f 1px, transparent 1px);
    background-size: 20px 20px;
    content: "";
    opacity: 0.12;
}

.vb-404-panel > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    mix-blend-mode: overlay;
    opacity: 0.58;
}

.vb-404-signal {
    position: relative;
    z-index: 2;
    display: grid;
    justify-items: center;
    text-align: center;
}

.vb-404-signal > div {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 128px;
    height: 128px;
    border-radius: 999px;
    background: linear-gradient(135deg, #7b2fe0 0%, #e950cc 100%);
    box-shadow: 0 0 52px rgba(123, 47, 224, 0.42);
}

.vb-404-signal .material-symbols-outlined {
    color: #fff;
    font-size: 64px;
    font-variation-settings: "FILL" 1, "wght" 400, "GRAD" 0, "opsz" 48;
}

.vb-404-signal strong {
    display: block;
    margin-top: 18px;
    color: rgba(255, 255, 255, 0.12);
    font-size: clamp(90px, 10vw, 128px);
    font-weight: 1000;
    line-height: 0.95;
}

.vb-404-signal em {
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    margin-top: 18px;
    padding: 9px 22px;
    border: 1px solid rgba(87, 56, 127, 0.35);
    border-radius: 16px;
    background: rgba(51, 18, 91, 0.82);
    color: #fff;
    font-size: 13px;
    font-style: normal;
    font-weight: 900;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.vb-404-note {
    position: absolute;
    right: -28px;
    bottom: -28px;
    max-width: 210px;
    padding: 20px;
    border: 1px solid rgba(87, 56, 127, 0.35);
    border-radius: 18px;
    background: rgba(60, 22, 104, 0.82);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.34);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

.vb-404-note .material-symbols-outlined {
    color: var(--vb-404-primary);
}

.vb-404-note p {
    margin: 8px 0 0;
    color: var(--vb-404-muted);
    font-size: 12px;
    line-height: 1.5;
}

@media (max-width: 1024px) {
    .vb-404-container {
        grid-template-columns: 1fr;
        max-width: 720px;
    }

    .vb-404-copy {
        order: 2;
    }

    .vb-404-visual {
        order: 1;
    }
}

@media (max-width: 767px) {
    .vb-404-page {
        min-height: auto;
        padding: 104px 0 74px;
    }

    .vb-404-container {
        width: min(100% - 32px, 720px);
        gap: 46px;
    }

    .vb-404-copy h1 {
        font-size: 42px;
    }

    .vb-404-search {
        padding: 18px;
    }

    .vb-404-links > div {
        grid-template-columns: 1fr;
    }

    .vb-404-panel {
        border-radius: 24px;
    }

    .vb-404-signal > div {
        width: 104px;
        height: 104px;
    }

    .vb-404-signal .material-symbols-outlined {
        font-size: 52px;
    }

    .vb-404-note {
        position: static;
        max-width: none;
        margin-top: 16px;
    }
}

/* ============================================
   VSeeBox Blog Hub Template
   ============================================ */

.vb-bloghub-page {
    --vb-blog-bg: #150529;
    --vb-blog-surface: #1c0834;
    --vb-blog-surface-2: #240c41;
    --vb-blog-surface-3: #33125b;
    --vb-blog-surface-high: #2b0f4d;
    --vb-blog-text: #f0dfff;
    --vb-blog-muted: #bf9ceb;
    --vb-blog-primary: #b586ff;
    --vb-blog-secondary: #e950cc;
    --vb-blog-gradient: linear-gradient(135deg, #7B2FE0 0%, #E950CC 100%);
    width: 100vw;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    padding: 76px 0 0;
    background:
        radial-gradient(circle at calc(100% + 160px) -160px, rgba(181, 134, 255, 0.1) 0 192px, transparent 193px),
        radial-gradient(circle at -160px 50%, rgba(255, 173, 230, 0.1) 0 160px, transparent 161px),
        var(--vb-blog-bg);
    color: var(--vb-blog-text);
    font-family: "Kumbh Sans", sans-serif;
    font-size: 16px;
    line-height: 1.5;
    overflow: hidden;
}

.vb-bloghub-container {
    width: 100%;
    max-width: 1280px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 24px;
    padding-left: 24px;
}

.vb-bloghub-hero {
    position: relative;
    overflow: hidden;
    padding: 96px 24px 128px;
    text-align: center;
}

.vb-bloghub-hero::before,
.vb-bloghub-newsletter__inner::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: radial-gradient(circle, rgba(181, 134, 255, 0.1) 1px, transparent 1px);
    background-size: 24px 24px;
    opacity: 0.2;
}

.vb-bloghub-hero > .vb-bloghub-container {
    position: relative;
    z-index: 1;
    max-width: 1280px;
    padding-right: 0;
    padding-left: 0;
}

.vb-bloghub-hero > .vb-bloghub-container > span {
    display: inline-block;
    min-height: 28px;
    padding: 6px 16px;
    margin-bottom: 24px;
    border-radius: 999px;
    background: var(--vb-blog-surface-high);
    color: #d1b3ff;
    font-size: 12px;
    font-weight: 700;
    line-height: 16px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.vb-bloghub-hero h1 {
    max-width: none;
    margin: 0 0 32px;
    color: var(--vb-blog-text);
    font-size: 72px;
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.1;
}

.vb-bloghub-hero h1 strong {
    background: var(--vb-blog-gradient);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
}

.vb-bloghub-hero p {
    max-width: 768px;
    margin: 0 auto;
    color: var(--vb-blog-muted);
    font-size: 24px;
    font-weight: 300;
    line-height: 32px;
}

.vb-bloghub-hero__rule {
    display: flex;
    justify-content: center;
    margin-top: 48px;
}

.vb-bloghub-hero__rule span {
    width: 96px;
    height: 4px;
    border-radius: 999px;
    background: var(--vb-blog-gradient);
}

.vb-bloghub-featured {
    padding: 0 24px 96px;
}

.vb-bloghub-featured__grid {
    max-width: 1536px;
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 24px;
}

.vb-bloghub-featured > .vb-bloghub-container,
.vb-bloghub-latest > .vb-bloghub-container,
.vb-bloghub-newsletter > .vb-bloghub-container {
    padding-right: 0;
    padding-left: 0;
}

.vb-bloghub-featured > .vb-bloghub-container,
.vb-bloghub-latest > .vb-bloghub-container {
    max-width: 1536px;
}

.vb-bloghub-featured__stack {
    display: flex;
    flex-direction: column;
    gap: 24px;
    grid-column: span 5 / span 5;
}

.vb-bloghub-featured__grid > .vb-bloghub-feature--large {
    grid-column: span 7 / span 7;
}

.vb-bloghub-feature {
    position: relative;
    display: block;
    min-height: 238px;
    flex: 1 1 0;
    overflow: hidden;
    border-radius: 32px;
    background: transparent;
    color: #fff;
}

.vb-bloghub-feature--large {
    min-height: 500px;
}

.vb-bloghub-feature img,
.vb-bloghub-card__image img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.55s ease;
}

.vb-bloghub-feature:hover img,
.vb-bloghub-card:hover .vb-bloghub-card__image img {
    transform: scale(1.1);
}

.vb-bloghub-overlay {
    position: absolute;
    inset: 0;
    background: rgba(21, 5, 41, 0.6);
    transition: background-color 0.3s;
}

.vb-bloghub-feature:hover .vb-bloghub-overlay {
    background: rgba(21, 5, 41, 0.4);
}

.vb-bloghub-feature--large .vb-bloghub-overlay {
    background: linear-gradient(to top, var(--vb-blog-bg), rgba(21, 5, 41, 0.4), transparent);
}

.vb-bloghub-feature div {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 32px;
}

.vb-bloghub-feature--large div {
    inset: auto auto 0 0;
    display: block;
    padding: 40px;
    max-width: 680px;
}

.vb-bloghub-feature em,
.vb-bloghub-card__image span {
    display: inline-flex;
    width: fit-content;
    min-height: 24px;
    align-items: center;
    padding: 4px 12px;
    border: 1px solid rgba(181, 134, 255, 0.3);
    border-radius: 9999px;
    background: rgba(181, 134, 255, 0.2);
    color: var(--vb-blog-primary);
    font-size: 12px;
    line-height: 16px;
    font-style: normal;
    font-weight: 700;
    text-transform: none;
    backdrop-filter: blur(12px);
}

.vb-bloghub-feature h2 {
    margin: 8px 0;
    color: #fff;
    font-size: 24px;
    font-weight: 700;
    line-height: 32px;
}

.vb-bloghub-feature--large h2 {
    margin: 16px 0;
    font-size: 36px;
    line-height: 45px;
}

.vb-bloghub-feature p {
    max-width: none;
    margin: 0 0 16px;
    color: var(--vb-blog-muted);
    font-size: 14px;
    line-height: 20px;
}

.vb-bloghub-feature--large p {
    font-size: 18px;
    line-height: 28px;
    margin-bottom: 24px;
}

.vb-bloghub-feature strong,
.vb-bloghub-readmore {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: var(--vb-blog-primary);
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
    transition: gap 0.3s, transform 0.3s;
}

.vb-bloghub-feature--large strong {
    gap: 8px;
    color: #fff;
    font-size: 16px;
    line-height: 24px;
}

.vb-bloghub-feature:hover strong {
    gap: 16px;
}

.vb-bloghub-feature:not(.vb-bloghub-feature--large):hover strong {
    text-decoration: underline;
}

.vb-bloghub-feature strong .material-symbols-outlined,
.vb-bloghub-readmore .material-symbols-outlined {
    font-size: 16px;
}

.vb-bloghub-feature--large strong .material-symbols-outlined {
    font-size: 24px;
    line-height: 24px;
}

.vb-bloghub-feature:not(.vb-bloghub-feature--large) strong .material-symbols-outlined {
    font-size: 14px;
    line-height: 20px;
}

.vb-bloghub-categories {
    margin: 0 0 64px;
    padding: 48px 0;
    background: var(--vb-blog-surface);
}

.vb-bloghub-categories .vb-bloghub-container {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 48px;
}

.vb-bloghub-categories a {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    min-height: 56px;
    padding: 16px 24px;
    border: 0;
    border-radius: 16px;
    background: var(--vb-blog-surface-3);
    color: var(--vb-blog-muted);
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
    transition: background-color 0.3s, color 0.3s, box-shadow 0.3s;
}

.vb-bloghub-categories a .material-symbols-outlined {
    flex: 0 0 auto;
    font-size: 24px;
    line-height: 24px;
}

.vb-bloghub-categories a.is-active {
    min-height: 60px;
    border: 2px solid rgba(233, 80, 204, 0.5);
    background: rgba(60, 22, 104, 0.6);
    color: #fff;
    outline: 1px solid rgba(87, 56, 127, 0.2);
    box-shadow: 0 0 20px rgba(233, 80, 204, 0.2);
    backdrop-filter: blur(16px);
}

.vb-bloghub-categories a:hover {
    background: #3c1668;
    color: #fff;
}

.vb-bloghub-latest {
    padding: 0 24px 128px;
}

.vb-bloghub-section-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 48px;
}

.vb-bloghub-section-head h2 {
    margin: 0 0 8px;
    color: var(--vb-blog-text);
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
}

.vb-bloghub-section-head > div > span {
    display: block;
    width: 80px;
    height: 4px;
    border-radius: 9999px;
    background: var(--vb-blog-gradient);
}

.vb-bloghub-section-head > a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--vb-blog-muted);
    font-size: 16px;
    line-height: 24px;
    transition: color 0.3s;
}

.vb-bloghub-section-head > a:hover {
    color: var(--vb-blog-primary);
}

.vb-bloghub-section-head > a .material-symbols-outlined {
    display: inline-flex;
    width: auto;
    height: auto;
    align-items: center;
    background: none;
    border-radius: 0;
    font-size: 24px;
    line-height: 24px;
}

.vb-bloghub-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 32px;
}

.vb-bloghub-card {
    height: 468.5px;
    overflow: hidden;
    border: 1px solid rgba(87, 56, 127, 0.1);
    border-radius: 24px;
    background: var(--vb-blog-surface);
    box-shadow: none;
    transition: border-color 0.3s;
}

.vb-bloghub-card:hover {
    border-color: rgba(87, 56, 127, 0.4);
}

.vb-bloghub-card__image {
    position: relative;
    display: block;
    height: 224px;
    overflow: hidden;
    background: transparent;
}

.vb-bloghub-card__image span {
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 2;
    min-height: 24px;
    padding: 4px 12px;
    border-radius: 8px;
    background: rgba(51, 18, 91, 0.9);
    border-color: rgba(181, 134, 255, 0.2);
    font-size: 10px;
    line-height: 16px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.vb-bloghub-card__body {
    padding: 32px;
}

.vb-bloghub-card__body div {
    color: var(--vb-blog-muted);
    font-size: 12px;
    font-weight: 600;
    line-height: 16px;
    letter-spacing: 0.025em;
}

.vb-bloghub-card__body h3 {
    margin: 12px 0 16px;
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
}

.vb-bloghub-card__body h3 a {
    color: #fff;
}

.vb-bloghub-card__body h3 a:hover,
.vb-bloghub-readmore {
    color: var(--vb-blog-primary);
}

.vb-bloghub-card__body p {
    min-height: 60px;
    margin: 0 0 24px;
    color: var(--vb-blog-muted);
    font-size: 14px;
    line-height: 20px;
}

.vb-bloghub-card:hover .vb-bloghub-readmore {
    transform: translateX(8px);
}

.vb-bloghub-newsletter {
    position: relative;
    overflow: hidden;
    margin-bottom: 96px;
    padding: 0 24px;
}

.vb-bloghub-newsletter .vb-bloghub-container {
    max-width: 1280px;
}

.vb-bloghub-newsletter__border {
    margin: 0 auto;
    border-radius: 40px;
    background: var(--vb-blog-gradient);
    padding: 8px;
}

.vb-bloghub-newsletter__inner {
    position: relative;
    overflow: hidden;
    min-height: 608px;
    padding: 96px;
    border-radius: 38px;
    background: #000;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.vb-bloghub-newsletter__inner::before {
    opacity: 0.1;
}

.vb-bloghub-newsletter__icon {
    width: 64px;
    height: 64px;
    border-radius: 16px;
    background: #33125b;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 32px;
}

.vb-bloghub-newsletter__icon .material-symbols-outlined {
    font-size: 30px;
    background: linear-gradient(135deg, #7B2FE0, #E950CC);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.vb-bloghub-newsletter h2 {
    max-width: 672px;
    margin: 0 auto 24px;
    color: var(--vb-blog-text);
    font-size: 48px;
    font-weight: 700;
    line-height: 48px;
}

.vb-bloghub-newsletter p {
    max-width: 672px;
    margin: 0 auto 48px;
    color: var(--vb-blog-muted);
    font-size: 18px;
    line-height: 28px;
}

.vb-bloghub-newsletter form {
    display: flex;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 16px;
    max-width: 448px;
    margin: 0 auto;
    width: 100%;
}

.vb-bloghub-newsletter input {
    flex: 1 1 0;
    min-height: 56px;
    border: none;
    border-radius: 12px;
    background: var(--vb-blog-surface-high);
    color: #fff;
    padding: 16px 24px;
    font-size: 16px;
    line-height: 24px;
    outline: none;
}

.vb-bloghub-newsletter input::placeholder {
    color: #6b5289;
}

.vb-bloghub-newsletter input:focus,
.vb-bloghub-newsletter input[type="email"]:focus {
    background: #33125b !important;
    box-shadow: 0 0 0 2px #b586ff !important;
    outline: none !important;
}

.vb-bloghub-newsletter button {
    min-height: 56px;
    padding: 16px 32px;
    border: 0;
    border-radius: 12px;
    background: var(--vb-blog-gradient);
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
    cursor: pointer;
    transition: box-shadow 0.3s;
}

.vb-bloghub-newsletter button:hover {
    box-shadow: 0 0 30px rgba(123, 47, 224, 0.4);
}

.vb-bloghub-newsletter__disclaimer {
    display: block;
    margin-top: 24px;
    font-size: 12px;
    color: var(--vb-blog-muted);
    opacity: 0.6;
}

@media (max-width: 1024px) {
    .vb-bloghub-featured__grid {
        grid-template-columns: 1fr;
    }

    .vb-bloghub-featured__grid > .vb-bloghub-feature--large,
    .vb-bloghub-featured__stack {
        grid-column: auto;
    }

    .vb-bloghub-featured__stack {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .vb-bloghub-feature--large {
        min-height: 460px;
    }
}

@media (max-width: 767px) {
    .vb-bloghub-page {
        padding-top: 76px;
    }

    .vb-bloghub-container {
        max-width: none;
        padding-right: 24px;
        padding-left: 24px;
    }

    .vb-bloghub-hero {
        padding: 96px 24px 128px;
    }

    .vb-bloghub-hero h1 {
        margin-bottom: 32px;
        font-size: 54px;
        line-height: 59.4px;
    }

    .vb-bloghub-hero p {
        font-size: 20px;
        line-height: 32.5px;
    }

    .vb-bloghub-featured {
        padding: 0 24px 96px;
    }

    .vb-bloghub-featured__stack {
        grid-template-columns: 1fr;
    }

    .vb-bloghub-feature,
    .vb-bloghub-feature--large {
        border-radius: 32px;
    }

    .vb-bloghub-feature {
        min-height: 238px;
    }

    .vb-bloghub-feature--large {
        min-height: 500px;
    }

    .vb-bloghub-feature div {
        inset: 0;
        display: flex;
        padding: 32px;
        max-width: none;
    }

    .vb-bloghub-feature--large div {
        inset: auto auto 0 0;
        display: block;
        padding: 40px;
        max-width: 672px;
        right: auto;
        width: min(100%, 672px);
    }

    .vb-bloghub-feature--large h2 {
        font-size: 36px;
        line-height: 45px;
    }

    .vb-bloghub-categories {
        margin-bottom: 64px;
    }

    .vb-bloghub-categories .vb-bloghub-container {
        justify-content: center;
        gap: 16px;
    }

    .vb-bloghub-categories a {
        width: auto;
    }

    .vb-bloghub-latest {
        padding: 0 24px 128px;
    }

    .vb-bloghub-section-head > a {
        display: none;
    }

    .vb-bloghub-grid {
        grid-template-columns: 1fr;
    }

    .vb-bloghub-card__image {
        height: 224px;
    }

    .vb-bloghub-card__body p {
        min-height: 0;
    }

    .vb-bloghub-newsletter {
        padding: 0 24px;
    }

    .vb-bloghub-newsletter__border {
        border-radius: 40px;
        padding: 4px;
    }

    .vb-bloghub-newsletter__inner {
        min-height: 0;
        padding: 48px;
        border-radius: 38px;
    }

    .vb-bloghub-newsletter h2 {
        font-size: 30px;
        line-height: 37.5px;
    }

    .vb-bloghub-newsletter form {
        flex-direction: column;
    }
}

/* ============================================
   VSeeBox Single Post Template
   ============================================ */

.vb-post-page {
    --vb-post-bg: #150529;
    --vb-post-surface: #1c0834;
    --vb-post-surface-2: #240c41;
    --vb-post-surface-3: #33125b;
    --vb-post-text: #f0dfff;
    --vb-post-muted: #bf9ceb;
    --vb-post-primary: #b586ff;
    --vb-post-secondary: #e950cc;
    background:
        radial-gradient(circle at 85% 8%, rgba(123, 47, 224, 0.18), transparent 30rem),
        radial-gradient(circle at 12% 24%, rgba(233, 80, 204, 0.11), transparent 28rem),
        radial-gradient(rgba(181, 134, 255, 0.08) 1px, transparent 1px),
        var(--vb-post-bg);
    background-size: auto, auto, 24px 24px, auto;
    color: var(--vb-post-text);
    font-family: var(--vb-font);
    width: 100vw;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    padding: 128px 0 96px;
}

body.single-post .site-content .ast-container {
    display: block;
    width: 100%;
    max-width: none;
    padding-right: 0;
    padding-left: 0;
}

body.single-post,
body.single-post .site,
body.single-post .site-content,
body.single-post .content-area,
body.single-post .site-main,
body.single-post .ast-container,
body.single-post .ast-article-single.vb-post-container {
    background: #150529;
}

body.single-post .ast-article-single.vb-post-container {
    padding: 0;
}

body.single-post #primary,
body.single-post #main {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
}

.vb-post-container,
.vb-post-related,
.vb-post-cta {
    width: min(100% - 96px, 1360px);
    margin-right: auto !important;
    margin-left: auto !important;
}

.vb-post-toc a:hover {
    color: var(--vb-post-primary);
}

.vb-post-hero {
    max-width: 1080px;
    margin-bottom: 56px;
}

.vb-post-kicker,
.vb-post-side-label {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 5px 12px;
    border: 1px solid rgba(181, 134, 255, 0.28);
    border-radius: 999px;
    background: rgba(181, 134, 255, 0.12);
    color: var(--vb-post-primary);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.vb-post-hero h1 {
    margin: 20px 0 22px;
    color: #fff;
    font-size: clamp(44px, 6vw, 82px);
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.04;
}

.vb-post-hero p {
    max-width: 900px;
    color: var(--vb-post-muted);
    font-size: clamp(18px, 2.1vw, 24px);
    line-height: 1.65;
}

.vb-post-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 34px;
    color: var(--vb-post-muted);
    font-size: 14px;
    font-weight: 700;
}

.vb-post-meta strong {
    display: block;
    color: #fff;
    font-size: 15px;
}

.vb-post-meta span {
    display: block;
}

.vb-post-meta i {
    width: 1px;
    height: 34px;
    background: rgba(191, 156, 235, 0.24);
}

.vb-post-avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 16px;
    background: linear-gradient(135deg, #7b2fe0 0%, #e950cc 100%);
    color: #fff;
    font-weight: 900;
}

.vb-post-featured {
    position: relative;
    overflow: hidden;
    margin: 0 0 64px;
    border: 1px solid rgba(87, 56, 127, 0.36);
    border-radius: 32px;
    background: var(--vb-post-surface);
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.32);
}

.vb-post-featured img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 7;
    object-fit: cover;
}

.vb-post-featured figcaption {
    padding: 14px 22px;
    color: var(--vb-post-muted);
    font-size: 13px;
}

.vb-post-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 44px;
    align-items: start;
}

.vb-post-main {
    min-width: 0;
}

.vb-post-content {
    color: #f9f3ff;
    font-size: 18px;
    line-height: 1.9;
}

.vb-post-content > *:first-child {
    margin-top: 0;
}

.vb-post-content h2,
.vb-post-content h3 {
    color: #fff;
    font-weight: 900;
    line-height: 1.18;
}

.vb-post-content h2 {
    margin: 56px 0 18px;
    font-size: clamp(30px, 3vw, 42px);
}

.vb-post-content h3 {
    margin: 34px 0 14px;
    font-size: 24px;
}

.vb-post-content p,
.vb-post-content ul,
.vb-post-content ol {
    margin: 0 0 24px;
}

.vb-post-content a {
    color: var(--vb-post-primary);
    font-weight: 800;
    text-decoration: none;
}

.vb-post-content a:hover {
    color: #fff;
}

.vb-post-content ul,
.vb-post-content ol {
    padding-left: 24px;
}

.vb-post-content li {
    margin-bottom: 10px;
}

.vb-post-content blockquote,
.vb-post-callout,
.vb-post-warning,
.vb-post-takeaways,
.vb-post-faq {
    margin: 34px 0;
    padding: 28px;
    border: 1px solid rgba(87, 56, 127, 0.38);
    border-radius: 20px;
    background: rgba(36, 12, 65, 0.76);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.vb-post-content blockquote {
    border-left: 4px solid var(--vb-post-secondary);
    color: #fff;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.55;
}

.vb-post-callout {
    border-color: rgba(181, 134, 255, 0.34);
    background: rgba(181, 134, 255, 0.11);
}

.vb-post-warning {
    border-color: rgba(233, 80, 204, 0.34);
    background: rgba(233, 80, 204, 0.1);
}

.vb-post-table {
    overflow: hidden;
    margin: 34px 0;
    border: 1px solid rgba(87, 56, 127, 0.38);
    border-radius: 20px;
}

.vb-post-table table {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
}

.vb-post-table th,
.vb-post-table td {
    padding: 18px 20px;
    border-bottom: 1px solid rgba(87, 56, 127, 0.32);
    text-align: left;
    vertical-align: top;
}

.vb-post-table th {
    background: var(--vb-post-surface-3);
    color: #fff;
    font-size: 13px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.vb-post-table tr:last-child td {
    border-bottom: 0;
}

.vb-post-table td:first-child {
    color: #fff;
    font-weight: 900;
}

.vb-post-takeaways h3,
.vb-post-faq h3 {
    margin-top: 0;
}

.vb-post-faq details {
    padding: 18px 0;
    border-top: 1px solid rgba(87, 56, 127, 0.35);
}

.vb-post-faq details:first-of-type {
    border-top: 0;
}

.vb-post-faq summary {
    color: #fff;
    font-weight: 900;
    cursor: pointer;
}

.vb-post-sidebar {
    position: sticky;
    top: 112px;
    display: grid;
    gap: 20px;
}

.vb-post-side-card,
.vb-post-author-box,
.vb-post-related-card {
    border: 1px solid rgba(87, 56, 127, 0.38);
    border-radius: 24px;
    background: rgba(36, 12, 65, 0.74);
    box-shadow: 0 18px 58px rgba(0, 0, 0, 0.22);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

.vb-post-side-card {
    padding: 24px;
}

.vb-post-side-card h2 {
    margin: 0 0 18px;
    color: #fff;
    font-size: 18px;
    font-weight: 900;
}

.vb-post-toc a {
    display: block;
    padding: 12px 0;
    border-top: 1px solid rgba(87, 56, 127, 0.28);
    color: var(--vb-post-muted);
    font-size: 14px;
    font-weight: 800;
}

.vb-post-toc a:first-of-type {
    border-top: 0;
}

.vb-post-product-card img {
    display: block;
    width: 100%;
    height: 180px;
    margin: 20px 0;
    object-fit: contain;
}

.vb-post-product-price {
    margin-bottom: 18px;
    color: #fff;
    font-size: 24px;
    font-weight: 900;
}

.vb-post-newsletter .material-symbols-outlined {
    color: var(--vb-post-primary);
    font-size: 34px;
}

.vb-post-newsletter p {
    color: var(--vb-post-muted);
    font-size: 14px;
}

.vb-post-newsletter form {
    display: grid;
    gap: 10px;
    margin-top: 18px;
}

.vb-post-newsletter input {
    width: 100%;
    min-height: 46px;
    border: 1px solid rgba(87, 56, 127, 0.48);
    border-radius: 10px;
    background: rgba(21, 5, 41, 0.82);
    color: #fff;
    padding: 0 14px;
}

.vb-post-newsletter button,
.vb-post-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 13px 22px;
    border: 0;
    border-radius: 12px;
    background: linear-gradient(135deg, #7b2fe0 0%, #e950cc 100%);
    color: #fff;
    font-size: 14px;
    font-weight: 900;
    text-decoration: none;
    cursor: pointer;
}

.vb-post-button:hover,
.vb-post-newsletter button:hover {
    color: #fff;
    box-shadow: 0 0 34px rgba(181, 134, 255, 0.28);
}

.vb-post-button--full {
    width: 100%;
}

.vb-post-button--secondary {
    border: 1px solid rgba(181, 134, 255, 0.3);
    background: var(--vb-post-surface-3);
}

.vb-post-author-box {
    display: flex;
    gap: 20px;
    margin-top: 56px;
    padding: 28px;
}

.vb-post-avatar--large {
    width: 64px;
    height: 64px;
    border-radius: 20px;
    flex: 0 0 auto;
}

.vb-post-author-box span {
    color: var(--vb-post-muted);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.vb-post-author-box h2 {
    margin: 4px 0 8px;
    color: #fff;
    font-size: 24px;
}

.vb-post-author-box p {
    margin: 0;
    color: var(--vb-post-muted);
}

.vb-post-related,
.vb-post-cta {
    margin-top: 88px;
}

.vb-post-related__head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 30px;
}

.vb-post-related__head span,
.vb-post-cta span {
    color: var(--vb-post-secondary);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.vb-post-related__head h2,
.vb-post-cta h2 {
    margin: 8px 0 0;
    color: #fff;
    font-size: clamp(30px, 3.2vw, 46px);
    font-weight: 900;
}

.vb-post-related__head a {
    color: var(--vb-post-primary);
    font-weight: 900;
}

.vb-post-related__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.vb-post-related-card {
    display: block;
    overflow: hidden;
    color: var(--vb-post-muted);
}

.vb-post-related-card:hover {
    transform: translateY(-4px);
    color: var(--vb-post-muted);
}

.vb-post-related-card img {
    display: block;
    width: 100%;
    height: 190px;
    object-fit: cover;
}

.vb-post-related-card span,
.vb-post-related-card h3,
.vb-post-related-card p {
    display: block;
    margin-right: 22px;
    margin-left: 22px;
}

.vb-post-related-card span {
    margin-top: 22px;
    color: var(--vb-post-primary);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.vb-post-related-card h3 {
    margin-top: 10px;
    color: #fff;
    font-size: 22px;
    line-height: 1.25;
}

.vb-post-related-card p {
    margin-bottom: 24px;
    font-size: 14px;
    line-height: 1.65;
}

.vb-post-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 42px;
    border: 1px solid rgba(181, 134, 255, 0.3);
    border-radius: 32px;
    background:
        radial-gradient(circle at 8% 10%, rgba(123, 47, 224, 0.42), transparent 22rem),
        radial-gradient(circle at 92% 90%, rgba(233, 80, 204, 0.28), transparent 20rem),
        var(--vb-post-surface);
}

.vb-post-cta > div:last-child {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    flex: 0 0 auto;
}

@media (max-width: 1024px) {
    .vb-pdp-hero,
    .vb-pdp-stories,
    .vb-pdp-setup__card {
        grid-template-columns: 1fr;
    }

    .vb-pdp-story {
        min-height: 460px;
    }

    .vb-pdp-feature-grid,
    .vb-pdp-review-grid {
        grid-template-columns: 1fr;
    }

    .vb-pdp-box__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 1024px) {
    .vb-post-layout {
        grid-template-columns: 1fr;
    }

    .vb-post-sidebar {
        position: static;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .vb-post-related__grid {
        grid-template-columns: 1fr 1fr;
    }

    .vb-post-cta {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 767px) {
    body.single-post,
    body.single-post html,
    body.single-post .site,
    body.single-post .site-content,
    body.single-post .content-area,
    body.single-post .site-main,
    body.single-post .ast-container {
        max-width: 100% !important;
        overflow-x: hidden;
    }

    body.single-post .site-content .ast-container,
    body.single-post #primary,
    body.single-post #main,
    body.single-post .ast-article-single.vb-post-container {
        width: 100% !important;
        max-width: 100% !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .single-product .vb-pdp-page {
        padding-top: 104px;
    }

    .vb-pdp-page {
        padding-top: 104px;
    }

    body.single-product .vb-pdp-container {
        width: auto !important;
        max-width: none !important;
        margin-right: 24px !important;
        margin-left: 24px !important;
    }

    .vb-pdp-hero {
        gap: 32px;
        padding: 96px 0 64px;
    }

    .vb-pdp-summary h1 {
        font-size: 44px;
    }

    .vb-pdp-subtitle {
        font-size: 17px;
        overflow-wrap: anywhere;
    }

    .vb-pdp-price {
        font-size: 34px;
    }

    .vb-pdp-cart-form,
    .vb-pdp-bundle-grid {
        grid-template-columns: 1fr;
    }

    .vb-pdp-box__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 24px 16px;
    }

    .vb-pdp-box__grid div {
        gap: 12px;
    }

    .vb-pdp-box__grid .material-symbols-outlined {
        border-radius: 16px;
        font-size: 42px;
    }

    .vb-pdp-box__grid strong {
        font-size: 13px;
        line-height: 1.3;
        overflow-wrap: anywhere;
    }

    .vb-pdp-gallery__thumbs {
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    }

    .vb-pdp-gallery__thumbs button {
        width: 100%;
        min-width: 0 !important;
        max-width: 100%;
        height: 72px;
        min-height: 72px;
    }

    .vb-pdp-trust {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 12px;
    }

    .vb-pdp-trust a {
        min-width: 0;
    }

    .vb-pdp-trust strong {
        font-size: 10px;
        letter-spacing: 0.06em;
        overflow-wrap: anywhere;
    }

    .vb-pdp-feature-section,
    .vb-pdp-compare,
    .vb-pdp-setup,
    .vb-pdp-bundles,
    .vb-pdp-box,
    .vb-pdp-reviews {
        padding: 64px 0;
    }

    .vb-pdp-stories {
        padding-bottom: 64px;
    }

    .vb-pdp-section-heading h2,
    .vb-pdp-box h2,
    .vb-pdp-compare h2,
    .vb-pdp-reviews h2,
    .vb-pdp-setup h2 {
        font-size: 32px;
    }

    .vb-pdp-story {
        min-height: 420px;
    }

    .vb-pdp-story div {
        right: 24px;
        bottom: 24px;
        left: 24px;
    }

    .vb-pdp-setup__card {
        gap: 40px;
        padding: 32px 20px;
        border-radius: 24px;
    }

    .vb-pdp-bundle-grid article {
        align-items: flex-start;
        flex-direction: column;
    }

    .vb-pdp-reviews__head {
        align-items: flex-start;
        flex-direction: column;
    }

    .vb-pdp-review-card {
        min-height: 0;
        padding: 28px 24px 22px;
    }

    .vb-pdp-review-card p {
        margin-bottom: 18px;
    }

    .vb-pdp-sticky {
        right: 0;
        left: 0;
        align-items: stretch;
        flex-direction: column;
        gap: 12px;
        width: auto !important;
        max-width: 100vw;
        padding: 12px 24px;
        box-sizing: border-box;
    }

    .vb-pdp-sticky__info {
        display: none;
    }

    .vb-pdp-sticky__actions {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        width: 100%;
        min-width: 0;
        gap: 12px;
    }

    .vb-pdp-sticky__actions a,
    .vb-pdp-sticky__actions button {
        box-sizing: border-box;
        min-width: 0;
        max-width: 100%;
        width: 100%;
        padding-right: 10px;
        padding-left: 10px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    body.single-product {
        padding-bottom: 86px;
    }

    body.single-product #ast-scroll-top {
        bottom: 104px !important;
    }

    .vb-post-page {
        width: 100%;
        margin-right: 0;
        margin-left: 0;
        padding: 98px 0 72px;
        overflow-x: hidden;
    }

    .vb-post-container,
    .vb-post-related,
    .vb-post-cta {
        width: 100% !important;
        max-width: 100% !important;
        padding-right: 16px !important;
        padding-left: 16px !important;
        box-sizing: border-box;
    }

    body.single-post .ast-article-single.vb-post-container {
        padding-right: 16px !important;
        padding-left: 16px !important;
    }

    .vb-post-container > *,
    .vb-post-related > *,
    .vb-post-cta > * {
        max-width: 100%;
    }

    .vb-post-hero h1 {
        font-size: 32px;
        line-height: 1.12;
        overflow-wrap: anywhere;
        word-break: normal;
    }

    .vb-post-meta {
        align-items: flex-start;
        gap: 10px 12px;
    }

    .vb-post-meta i {
        display: none;
    }

    .vb-post-meta > span {
        font-size: 13px;
    }

    .vb-post-featured {
        width: 100%;
        margin-bottom: 42px;
        border-radius: 22px;
    }

    .vb-post-featured img {
        aspect-ratio: 4 / 3;
    }

    .vb-post-content {
        font-size: 16px;
        overflow-wrap: break-word;
    }

    .vb-post-table {
        overflow-x: auto;
    }

    .vb-post-table table {
        min-width: 640px;
    }

    .vb-post-sidebar,
    .vb-post-related__grid {
        grid-template-columns: 1fr;
    }

    .vb-post-author-box,
    .vb-post-related__head,
    .vb-post-cta {
        align-items: flex-start;
        flex-direction: column;
    }

    .vb-post-related,
    .vb-post-cta {
        margin-top: 64px;
    }

    .vb-post-cta {
        padding: 28px;
        border-radius: 24px;
    }

    .vb-post-cta > div:last-child,
    .vb-post-button {
        width: 100%;
    }
}

/* ============================================
   移动端全局兜底样式
   覆盖所有 Elementor 静态页面（.vb-static-page）和首页内联 grid
   仅在 ≤767px 生效，不影响桌面端
   ============================================ */

/* ---------- 静态页面通用移动端修复 ---------- */
@media (max-width: 767px) {
    /* 防止任何内容横向溢出 */
    .vb-static-page {
        overflow-x: hidden;
        word-break: break-word;
    }

    /* 首页 Elementor 容器也限制宽度 */
    .elementor-page-84 .elementor-section,
    .elementor-page-84 .elementor-container,
    .elementor-page-84 .elementor-widget-wrap,
    .elementor-page-84 .elementor-widget-html {
        overflow-x: hidden;
        max-width: 100%;
    }

    /* Header 遮挡补偿：第一个 section 增加顶部留白 */
    .vb-static-page > main > section:first-child,
    .vb-static-page > section:first-child,
    .vb-static-page > main > .relative:first-child {
        padding-top: 100px !important;
    }

    /* 标题字号自适应 */
    .vb-static-page h1 {
        font-size: clamp(32px, 9vw, 48px) !important;
        line-height: 1.15 !important;
    }

    .vb-static-page h2 {
        font-size: clamp(24px, 7vw, 36px) !important;
        line-height: 1.2 !important;
    }

    /* 水平内边距保底 */
    .vb-static-page section {
        padding-left: var(--vb-mobile-gutter) !important;
        padding-right: var(--vb-mobile-gutter) !important;
    }

    /* 内部容器最大宽度限制 */
    .vb-static-page .max-w-7xl,
    .vb-static-page .max-w-6xl,
    .vb-static-page .max-w-5xl,
    .vb-static-page .max-w-4xl,
    .vb-static-page .max-w-3xl,
    .vb-static-page .max-w-2xl {
        max-width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* 多列 grid 在移动端强制单列 */
    .vb-static-page .grid-cols-2,
    .vb-static-page .md\:grid-cols-2,
    .vb-static-page .md\:grid-cols-3,
    .vb-static-page .md\:grid-cols-4,
    .vb-static-page .lg\:grid-cols-3,
    .vb-static-page .lg\:grid-cols-4,
    .vb-static-page .lg\:grid-cols-12 {
        grid-template-columns: 1fr !important;
    }

    /* lg:col-span 在移动端占满 */
    .vb-static-page [class*="lg:col-span"],
    .vb-static-page [class*="md:col-span"] {
        grid-column: span 1 !important;
    }

    /* flex 横排在移动端转纵排 */
    .vb-static-page .md\:flex-row {
        flex-direction: column !important;
    }

    /* 表格可横向滚动，不撑破容器 */
    .vb-static-page table {
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        max-width: 100%;
    }

    .vb-static-page table thead,
    .vb-static-page table tbody,
    .vb-static-page table tr {
        display: table;
        width: 100%;
        table-layout: fixed;
    }

    /* 有 min-width 的表格容器允许滚动 */
    .vb-static-page [class*="min-w-"] {
        min-width: 0 !important;
    }

    .vb-static-page [class*="overflow-x"] {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    /* 图片自适应 */
    .vb-static-page img {
        max-width: 100%;
        height: auto;
    }

    /* 按钮全宽（排除圆形图标按钮如视频播放按钮） */
    .vb-static-page a[class*="signature-gradient"]:not([class*="rounded-full"]),
    .vb-static-page button[class*="signature-gradient"]:not([class*="rounded-full"]) {
        width: 100%;
        text-align: center;
    }

    /* 隐藏桌面端装饰性大图/背景（如果影响布局） */
    .vb-static-page .hidden.md\:block,
    .vb-static-page .md\:block.hidden {
        display: none !important;
    }
}

/* ---------- 剩余内容页移动端批量修复 ---------- */
@media (max-width: 767px) {
    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page),
    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > main {
        max-width: 100vw !important;
        overflow-x: hidden !important;
        background-color: var(--vb-background) !important;
    }

    body:has(.vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page)),
    body:has(.vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page)) .site,
    body:has(.vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page)) .site-content,
    body:has(.vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page)) .elementor,
    body:has(.vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page)) .elementor-section,
    body:has(.vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page)) .elementor-container,
    body:has(.vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page)) .elementor-widget-wrap,
    body:has(.vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page)) .elementor-widget-container {
        max-width: 100vw !important;
        overflow-x: hidden !important;
    }

    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > main {
        padding-top: 56px !important;
    }

    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > main > section,
    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > section {
        padding-right: var(--vb-mobile-section-gutter) !important;
        padding-left: var(--vb-mobile-section-gutter) !important;
    }

    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > main > section:first-of-type,
    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > section:first-of-type {
        padding-top: 72px !important;
    }

    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) :is(h1, h2, h3, p, li, summary, a, button, input, textarea, select) {
        overflow-wrap: anywhere;
    }

    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) h1 {
        font-size: clamp(38px, 10.5vw, 46px) !important;
        line-height: 1.1 !important;
    }

    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) h2 {
        font-size: clamp(28px, 8vw, 34px) !important;
        line-height: 1.16 !important;
    }

    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) :is(.glass-card, article, details, form, [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="rounded-[20px]"], [class*="rounded-[24px]"], [class*="rounded-[32px]"]) {
        max-width: 100% !important;
    }

    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) :is(.glass-card, article, details, form)[class*="p-8"],
    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) [class*="rounded-[24px]"],
    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) [class*="rounded-[32px]"] {
        border-radius: 20px !important;
    }

    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) [class*="blur-"][class*="absolute"],
    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) [class*="w-[800px]"],
    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) [class*="w-[500px]"],
    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) [class*="w-96"][class*="absolute"],
    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) [class*="w-80"][class*="absolute"],
    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) [class*="w-64"][class*="absolute"] {
        max-width: 100vw !important;
        transform: none !important;
    }

    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) table {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        overflow-x: auto !important;
        table-layout: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) table thead,
    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) table tbody {
        display: table !important;
        min-width: 640px;
        width: 640px;
        table-layout: auto;
    }

    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) table tr {
        display: table-row;
    }

    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) th,
    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) td {
        min-width: 150px;
        white-space: normal;
    }

    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) .grid > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="rounded-[20px]"], [class*="rounded-[24px]"], [class*="rounded-[32px]"]) {
        width: calc(100% - var(--vb-mobile-card-gutter-total)) !important;
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) [class*="overflow-x-auto"],
    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) [class*="overflow-x"] {
        max-width: 100% !important;
        overflow-x: auto !important;
        overflow-y: hidden;
    }

    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > main > section[class*="rounded"],
    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > section[class*="rounded"] {
        width: calc(100% - var(--vb-mobile-card-gutter-total)) !important;
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) [class*="blur-"][class*="absolute"][class*="-left"],
    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) [class*="blur-"][class*="absolute"][class*="-right"],
    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) [class*="blur-"][class*="absolute"][class*="left-1/2"],
    .vb-static-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) [class*="blur-"][class*="absolute"][class*="right-"] {
        right: 0 !important;
        left: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-right: auto !important;
        margin-left: auto !important;
        transform: none !important;
    }

    .vb-authorization-proof-page .absolute.glass-card {
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-top: 12px;
        transform: none !important;
    }

    .vb-track-your-order-page [class*="left-[-5%]"],
    .vb-track-your-order-page [class*="right-[-10%]"],
    .vb-track-your-order-page [class*="-left-12"],
    .vb-track-your-order-page [class*="-right-12"] {
        display: none !important;
    }
}

/* track-your-order: PC 端增加页面顶部与 Header 的距离 */
@media (min-width: 1024px) {
    .vb-track-your-order-page > main {
        padding-top: 160px !important;
    }
}

/* track-your-order: 对齐 Header 宽度，并修正表单控件的暗色参考稿样式 */
.vb-track-your-order-page > main > div.relative.z-10 {
    width: 100%;
    max-width: 1536px !important;
    padding-right: 32px !important;
    padding-left: 32px !important;
}

.vb-track-your-order-page input[type="text"],
.vb-track-your-order-page input[type="email"],
.vb-track-your-order-page textarea {
    min-height: 56px;
    border: 0 !important;
    border-bottom: 2px solid transparent !important;
    border-radius: 12px !important;
    background: #000000 !important;
    color: var(--vb-on-surface, #f0dfff) !important;
    box-shadow: none !important;
}

.vb-track-your-order-page input[type="text"]::placeholder,
.vb-track-your-order-page input[type="email"]::placeholder,
.vb-track-your-order-page textarea::placeholder {
    color: var(--vb-outline, #8766b1) !important;
    opacity: 1;
}

.vb-track-your-order-page input[type="text"]:focus,
.vb-track-your-order-page input[type="email"]:focus,
.vb-track-your-order-page textarea:focus {
    border-bottom-color: var(--vb-primary-container, #9953ff) !important;
    background: #000000 !important;
    color: var(--vb-on-surface, #f0dfff) !important;
    outline: none !important;
    box-shadow: 0 0 0 1px rgba(153, 83, 255, 0.42) !important;
}

@media (max-width: 767px) {
    .vb-track-your-order-page > main {
        padding-top: 112px !important;
    }

    .vb-track-your-order-page > main > div.relative.z-10 {
        padding-right: 16px !important;
        padding-left: 16px !important;
    }
}

.vb-about-page .vb-about-cta-actions a,
.vb-about-page .vb-about-cta-actions a:hover,
.vb-about-page .vb-about-cta-actions a:focus {
    text-decoration: none !important;
}

/* ---------- 老模板移动端复核修复 ---------- */
@media (max-width: 767px) {
    .vb-faq-page,
    .vb-about-page,
    .vb-warranty-page,
    .vb-legal-page {
        max-width: 100vw !important;
        overflow-x: hidden !important;
    }

    .vb-faq-page :is(.vb-faq-orb-a, .vb-faq-orb-b),
    .vb-about-page [class*="orb"],
    .vb-warranty-page [class*="orb"],
    .vb-legal-page [class*="orb"] {
        display: none !important;
    }

    .vb-about-page :is(.vb-about-container, section) {
        width: auto !important;
        max-width: none !important;
        margin-right: 20px !important;
        margin-left: 20px !important;
    }

    .vb-legal-page :is(.vb-legal-hero, .vb-legal-section, .vb-legal-cta) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .vb-legal-page .vb-legal-container {
        width: 100% !important;
        max-width: 1536px !important;
        margin-right: auto !important;
        margin-left: auto !important;
        padding-right: 24px !important;
        padding-left: 24px !important;
    }

    .vb-legal-page :is(.vb-legal-narrow, .vb-legal-faq) {
        max-width: 896px !important;
    }

    .vb-legal-page .vb-legal-table-container {
        max-width: 1152px !important;
    }

    .vb-about-page {
        width: 100% !important;
        left: auto !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-about-page :is(.vb-about-hero, .vb-about-section, .vb-about-cta) {
        width: 100% !important;
        max-width: none !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .vb-about-page .vb-about-container {
        width: 100% !important;
        max-width: 1280px !important;
        margin-right: auto !important;
        margin-left: auto !important;
        padding-right: var(--vb-mobile-section-gutter) !important;
        padding-left: var(--vb-mobile-section-gutter) !important;
    }

    .vb-about-page .vb-about-cta-actions {
        align-items: center !important;
        flex-direction: column !important;
        gap: 16px !important;
    }

    .vb-about-page .vb-about-cta-actions :is(.vb-about-cta-primary, .vb-about-cta-secondary) {
        width: min(100%, 320px) !important;
        padding-right: 24px !important;
        padding-left: 24px !important;
        text-align: center !important;
    }

    .vb-warranty-page,
    .vb-warranty-page * {
        box-sizing: border-box;
    }

    .vb-warranty-page > main {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    .vb-warranty-page :is(.vb-warranty-hero, .vb-warranty-section, .vb-warranty-cta) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .vb-warranty-page .vb-warranty-container {
        width: 100% !important;
        max-width: 1280px !important;
        margin-right: auto !important;
        margin-left: auto !important;
        padding-right: var(--vb-mobile-section-gutter) !important;
        padding-left: var(--vb-mobile-section-gutter) !important;
    }

    .vb-warranty-page .vb-warranty-cta-actions {
        align-items: center !important;
        flex-direction: column !important;
        gap: 16px !important;
    }

    .vb-warranty-page .vb-warranty-cta-actions .vb-warranty-btn {
        width: min(100%, 320px) !important;
        padding-right: 24px !important;
        padding-left: 24px !important;
        text-align: center !important;
        white-space: normal !important;
    }

    .vb-about-page :is(h1, h2),
    .vb-warranty-page :is(h1, h2),
    .vb-legal-page :is(h1, h2),
    .vb-faq-page :is(h1, h2) {
        overflow-wrap: anywhere;
    }

    .vb-legal-page table,
    .vb-warranty-page table,
    .vb-faq-page table,
    .vb-about-page table {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-x: auto !important;
        border-collapse: separate;
        -webkit-overflow-scrolling: touch;
    }

    .vb-legal-page :is(thead, tbody),
    .vb-warranty-page :is(thead, tbody),
    .vb-faq-page :is(thead, tbody),
    .vb-about-page :is(thead, tbody) {
        display: table !important;
        min-width: 640px;
    }

    .vb-legal-page table :is(thead, tbody),
    .vb-warranty-page table :is(thead, tbody),
    .vb-faq-page table :is(thead, tbody),
    .vb-about-page table :is(thead, tbody) {
        width: 640px;
    }
}

/* ---------- Help Me Choose 移动端修复 ---------- */
@media (max-width: 767px) {
    .vb-help-me-choose-page,
    .vb-help-me-choose-page * {
        box-sizing: border-box;
    }

    .vb-help-me-choose-page {
        --vb-help-mobile-content-gutter: calc(var(--vb-mobile-gutter) + 10px);
    }

    body:has(.vb-help-me-choose-page),
    body:has(.vb-help-me-choose-page) .site,
    body:has(.vb-help-me-choose-page) .site-content,
    body:has(.vb-help-me-choose-page) .elementor,
    body:has(.vb-help-me-choose-page) .elementor-section,
    body:has(.vb-help-me-choose-page) .elementor-container,
    body:has(.vb-help-me-choose-page) .elementor-widget-wrap,
    body:has(.vb-help-me-choose-page) .elementor-widget-container,
    .vb-help-me-choose-page,
    .vb-help-me-choose-page > main {
        max-width: 100vw !important;
        overflow-x: hidden !important;
    }

    .vb-help-me-choose-page > main > section:first-of-type {
        padding-top: 96px !important;
        padding-bottom: 64px !important;
    }

    .vb-help-me-choose-page > main > section:first-of-type h1 {
        max-width: 10ch;
        margin-right: auto !important;
        margin-left: auto !important;
        color: transparent;
        font-size: clamp(40px, 11vw, 48px) !important;
        line-height: 1.12 !important;
    }

    .vb-help-me-choose-page > main > section:first-of-type p {
        max-width: 25rem !important;
        font-size: 18px !important;
        line-height: 1.5 !important;
    }

    .vb-help-me-choose-page > main > section:first-of-type .h-48 {
        height: 150px !important;
        margin-bottom: 44px !important;
    }

    .vb-help-me-choose-page > main > section:first-of-type .-space-x-8 {
        gap: 0 !important;
        max-width: 100%;
        transform: scale(0.82);
        transform-origin: center;
    }

    .vb-help-me-choose-page > main > section:first-of-type img {
        flex: 0 0 auto;
    }

    .vb-help-me-choose-page > main > section:first-of-type > .flex:last-child {
        flex-wrap: wrap;
        padding-right: 8px;
        padding-left: 8px;
        line-height: 1.45;
    }

    .vb-help-me-choose-page > main > section:first-of-type > .flex:last-child span:last-child {
        max-width: 300px;
    }

    .vb-help-me-choose-page > main > section:first-of-type .w-40 {
        width: 132px !important;
        height: 132px !important;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(2) {
        width: calc(100% - (var(--vb-mobile-gutter) * 2)) !important;
        margin-right: auto !important;
        margin-bottom: 72px !important;
        margin-left: auto !important;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(2) > div {
        width: 100% !important;
        padding: 20px 16px !important;
        border-radius: 24px !important;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(2) > div > .flex:first-child {
        gap: 16px !important;
        align-items: flex-start !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(2) h2 {
        margin-bottom: 28px !important;
        font-size: 28px !important;
        line-height: 1.18 !important;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(2) button {
        width: 100%;
        min-height: 92px;
        padding: 18px !important;
        gap: 16px !important;
        border-radius: 18px !important;
        touch-action: manipulation;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(2) button .w-14 {
        width: 48px !important;
        height: 48px !important;
        flex: 0 0 48px;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(2) button span.block {
        font-size: 18px !important;
        line-height: 1.2 !important;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(2) .mt-12 {
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: flex-end !important;
        align-items: center !important;
        gap: 16px !important;
        margin-top: 28px !important;
        padding-right: 16px !important;
        padding-bottom: 16px !important;
        padding-left: 16px !important;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(2) .mt-12 button {
        width: auto !important;
        justify-content: center;
        min-height: 54px;
        white-space: nowrap;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(2) .mt-12 button:first-child {
        flex: 0 0 auto;
        padding-right: 20px !important;
        padding-left: 20px !important;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(2) .mt-12 button:last-child {
        flex: 1 1 auto;
        max-width: 220px;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(3) {
        width: 100% !important;
        padding-right: var(--vb-mobile-gutter) !important;
        padding-left: var(--vb-mobile-gutter) !important;
        margin-bottom: 72px !important;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(3) .mb-16 {
        margin-bottom: 36px !important;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(3) h2 {
        font-size: 34px !important;
        line-height: 1.16 !important;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(3) .lg\:col-span-7 img {
        aspect-ratio: 4 / 3;
        object-fit: cover;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(3) .grid.grid-cols-1 {
        width: 100% !important;
        gap: 28px !important;
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(3) .absolute.-inset-4 {
        inset: 0 !important;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(3) .absolute.bottom-6 {
        position: static !important;
        width: 100% !important;
        margin-top: 12px;
        padding: 22px !important;
        flex-direction: column;
        align-items: flex-start !important;
        gap: 10px;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(3) a.w-full {
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(3) .p-6.rounded-2xl {
        width: 100% !important;
        padding: 20px !important;
        gap: 16px;
        align-items: flex-start !important;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(3) .lg\:col-span-5 {
        width: 100% !important;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(3) .lg\:col-span-5 > .space-y-6,
    .vb-help-me-choose-page > main > section:nth-of-type(3) .lg\:col-span-5 > .pt-6 {
        width: 100% !important;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(4) {
        width: calc(100% - 32px) !important;
        margin-right: auto !important;
        margin-bottom: 72px !important;
        margin-left: auto !important;
        padding: 40px calc(var(--vb-help-mobile-content-gutter) - var(--vb-mobile-gutter)) !important;
        border-radius: 28px !important;
    }

    .vb-help-me-choose-page > main > section:nth-of-type(4) h3 {
        font-size: 28px !important;
        line-height: 1.2 !important;
    }

    .vb-help-me-choose-page > main > section:last-of-type .flex.flex-col {
        width: 100%;
        padding-right: var(--vb-help-mobile-content-gutter) !important;
        padding-left: var(--vb-help-mobile-content-gutter) !important;
    }

    .vb-help-me-choose-page > main > section:last-of-type a {
        width: 100%;
        text-align: center;
    }
}

/* ---------- Bundles & Accessories 移动端修复 ---------- */
@media (max-width: 767px) {
    .vb-bundles-accessories-page,
    .vb-bundles-accessories-page * {
        box-sizing: border-box;
    }

    body:has(.vb-bundles-accessories-page),
    body:has(.vb-bundles-accessories-page) .site,
    body:has(.vb-bundles-accessories-page) .site-content,
    body:has(.vb-bundles-accessories-page) .elementor,
    body:has(.vb-bundles-accessories-page) .elementor-section,
    body:has(.vb-bundles-accessories-page) .elementor-container,
    body:has(.vb-bundles-accessories-page) .elementor-widget-wrap,
    body:has(.vb-bundles-accessories-page) .elementor-widget-container,
    .vb-bundles-accessories-page,
    .vb-bundles-accessories-page > main {
        max-width: 100vw !important;
        overflow-x: hidden !important;
    }

    .vb-bundles-accessories-page > main {
        padding-top: 56px !important;
    }

    .vb-bundles-accessories-page > main > section {
        padding: 56px 20px !important;
    }

    .vb-bundles-accessories-page > main > section:first-of-type {
        padding-top: 64px !important;
        padding-bottom: 48px !important;
    }

    .vb-bundles-accessories-page h1 {
        max-width: 10ch;
        margin-right: auto !important;
        margin-left: auto !important;
        font-size: clamp(40px, 11vw, 46px) !important;
        line-height: 1.08 !important;
    }

    .vb-bundles-accessories-page h2 {
        font-size: 32px !important;
        line-height: 1.16 !important;
    }

    .vb-bundles-accessories-page > main > section:first-of-type p {
        max-width: 23rem !important;
        font-size: 18px !important;
        line-height: 1.5 !important;
    }

    .vb-bundles-accessories-page > main > section:first-of-type .border-y {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 14px !important;
        padding: 18px 0 !important;
        text-align: left;
    }

    .vb-bundles-accessories-page > main > section:first-of-type .border-y > div {
        justify-content: flex-start !important;
        gap: 12px !important;
        min-height: 36px;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(2) > div > .flex:first-child {
        align-items: flex-start !important;
        margin-bottom: 32px !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(2) .grid.grid-cols-1 {
        gap: 22px !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(2) .glass-card {
        border-radius: 16px !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(2) .glass-card .p-8 {
        padding: 22px !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(2) .glass-card .aspect-\[4\/3\] {
        aspect-ratio: 16 / 11 !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(2) .glass-card h3 {
        font-size: 21px !important;
        line-height: 1.25 !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(2) button {
        min-height: 54px;
        touch-action: manipulation;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(3) h2 {
        margin-bottom: 28px !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(3) .grid.grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(3) .bg-surface-container-high {
        min-width: 0;
        padding: 12px !important;
        border-radius: 14px !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(3) .aspect-square {
        margin-bottom: 12px !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(3) h4 {
        min-height: 34px;
        font-size: 14px !important;
        line-height: 1.2 !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(3) p {
        min-height: 32px;
        line-height: 1.25 !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(3) button {
        display: inline-flex;
        width: 40px;
        height: 40px;
        align-items: center;
        justify-content: center;
        flex: 0 0 40px;
        touch-action: manipulation;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(4) > div {
        padding: 24px !important;
        border-radius: 16px !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(4) .grid.grid-cols-1 {
        gap: 28px !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(4) .sm\:grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(4) .sm\:grid-cols-3 > div {
        padding: 14px 8px !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(4) a {
        display: flex;
        width: 100%;
        min-height: 54px;
        align-items: center;
        justify-content: center;
        text-align: center;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(4) img {
        width: 100%;
        aspect-ratio: 4 / 3;
        object-fit: cover;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(4) .absolute.-bottom-6 {
        position: static !important;
        width: 100% !important;
        margin-top: 12px;
        padding: 18px !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(5) .grid.grid-cols-1 {
        gap: 40px !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(5) h2 {
        margin-bottom: 24px !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(5) .space-y-6 {
        gap: 22px !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(5) .flex.items-start {
        gap: 14px !important;
    }

    .vb-bundles-accessories-page > main > section:nth-of-type(5) h4 {
        align-items: flex-start !important;
        gap: 12px !important;
        line-height: 1.35 !important;
    }
}

/* ---------- Compare Models 移动端修复 ---------- */
@media (max-width: 767px) {
    .vb-compare-models-page,
    .vb-compare-models-page > main {
        overflow-x: hidden;
        background: var(--vb-background) !important;
    }

    .vb-compare-models-page > main > section:first-of-type {
        padding-top: 120px !important;
        padding-bottom: 56px !important;
    }

    .vb-compare-models-page > main > section:first-of-type h1 {
        font-size: clamp(42px, 12vw, 48px) !important;
        line-height: 1.12 !important;
        margin-bottom: 24px !important;
    }

    .vb-compare-models-page > main > section:first-of-type p {
        font-size: 18px !important;
        line-height: 1.55 !important;
        margin-bottom: 56px !important;
    }

    .vb-compare-models-page > main > section:first-of-type .grid.grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 16px !important;
    }

    .vb-compare-models-page > main > section:first-of-type .aspect-square {
        margin-bottom: 14px !important;
        padding: 12px !important;
        border-radius: 16px !important;
    }

    .vb-compare-models-page > main > section:nth-of-type(2) {
        overflow-x: auto !important;
        overflow-y: hidden !important;
        padding-top: 56px !important;
        padding-bottom: 56px !important;
        -webkit-overflow-scrolling: touch;
    }

    .vb-compare-models-page > main > section:nth-of-type(2)::before {
        content: none;
    }

    .vb-compare-models-page > main > section:nth-of-type(2) > [class*="min-w-"] {
        min-width: 1000px !important;
    }

    .vb-compare-live-matrix {
        min-width: 1080px !important;
    }

    .vb-compare-models-page > main > section:nth-of-type(2) img {
        height: 96px !important;
        object-fit: cover !important;
    }

    .vb-compare-models-page > main > section:nth-of-type(3) {
        padding-top: 56px !important;
        padding-bottom: 56px !important;
    }

    .vb-compare-models-page > main > section:nth-of-type(4) {
        width: calc(100% - 32px) !important;
        margin-right: auto !important;
        margin-left: auto !important;
        padding: 32px 16px !important;
        border-radius: 24px !important;
    }

    .vb-compare-models-page > main > section:nth-of-type(4) .flex.gap-6 {
        gap: 16px !important;
    }

    .vb-compare-models-page > main > section:nth-of-type(4) img {
        height: 300px !important;
        border-radius: 20px !important;
    }

    .vb-compare-models-page > main > section:nth-of-type(5) .flex.flex-col {
        align-items: stretch !important;
    }

    .vb-compare-models-page > main > section:nth-of-type(5) .w-full {
        max-width: 100% !important;
    }

    .vb-compare-cost-card {
        max-width: none;
    }

    .vb-compare-cost-card.is-highlighted {
        max-width: none;
    }

    .vb-compare-cost-card__image {
        height: 160px !important;
    }

    .vb-compare-models-page > main > section:nth-of-type(7) .rounded-\[32px\] {
        border-radius: 24px !important;
    }

    .vb-compare-models-page > main > section:nth-of-type(7) .bg-surface {
        padding: 32px 24px !important;
        border-radius: 23px !important;
    }

    .vb-compare-models-page > main > section:nth-of-type(7) .scale-110 {
        transform: rotate(3deg) scale(1.02) !important;
    }

    .vb-compare-models-page > main > section:nth-of-type(8) details {
        padding: 20px !important;
    }

    .vb-compare-models-page > main > section:nth-of-type(8) summary {
        gap: 16px !important;
    }
}

/* ---------- 首页移动端修复（内联 style grid 布局） ---------- */
@media (max-width: 767px) {
    /* 首页所有 section 和 div 不允许超出视口宽度 */
    .elementor-page-84 section,
    .elementor-page-84 div {
        max-width: 100%;
        box-sizing: border-box;
    }

    /* 首页图片自适应 */
    .elementor-page-84 img {
        max-width: 100%;
        height: auto;
    }

    /* Hero 双列转单列 */
    .vb-home-hero {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
        min-height: auto !important;
        padding-top: 100px !important;
        padding-bottom: 48px !important;
    }

    .vb-home-hero__title {
        font-size: 36px !important;
    }

    .vb-home-hero__buttons {
        flex-direction: column !important;
    }

    .vb-home-hero__buttons a {
        width: 100%;
        justify-content: center;
    }

    /* Trust Bar 纵排 */
    .vb-home-trust {
        flex-direction: column !important;
        gap: 20px !important;
        align-items: flex-start !important;
    }

    .vb-home-trust__divider {
        display: none !important;
    }

    /* 步骤 3列转单列 */
    .vb-home-steps {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
    }

    /* Savings 双列转单列 */
    .vb-home-savings {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
        padding: 32px 20px !important;
        border-radius: 16px !important;
    }

    .vb-home-savings__compare {
        gap: 24px !important;
    }

    .vb-home-savings__price {
        font-size: 28px !important;
    }

    .vb-home-savings__divider {
        display: none !important;
    }

    /* 产品卡片 5列转2列 */
    .vb-home-products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 16px !important;
    }

    .vb-home-products__head {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 12px !important;
        margin-bottom: 32px !important;
    }

    /* 场景卡片 4列转2列 */
    .vb-home-usecases {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 16px !important;
    }

    /* 评价 flex 横排转纵排 */
    .vb-home-reviews {
        flex-direction: column !important;
        gap: 16px !important;
    }

    /* 博客 3列转单列 */
    .vb-home-blog {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
    }

    /* 通用标题缩小 */
    .vb-home-section-title {
        font-size: 28px !important;
    }

    /* 首页 Trust Bar 数字区域 */
    .elementor-page-84 [style*="display:flex"][style*="justify-content:center"][style*="gap:64px"] {
        flex-wrap: wrap !important;
        gap: 24px !important;
    }
}

/* ---------- 首页移动端还原：按 homepage_v2/code.html 的移动端单列布局 ---------- */
@media (max-width: 767px) {
    body.home,
    body.page-id-84 {
        --vb-home-mobile-gutter: 32px;
    }

    body.home .elementor-container,
    body.page-id-84 .elementor-container,
    body.home .elementor-column,
    body.page-id-84 .elementor-column,
    body.home .elementor-widget-wrap,
    body.page-id-84 .elementor-widget-wrap,
    body.home .elementor-widget-container,
    body.page-id-84 .elementor-widget-container {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    body.home,
    body.page-id-84 {
        overflow-x: hidden;
    }

    body.home .site-content,
    body.home .site-content .ast-container,
    body.home #primary,
    body.home #main,
    body.home .entry-content,
    body.page-id-84 .site-content,
    body.page-id-84 .site-content .ast-container,
    body.page-id-84 #primary,
    body.page-id-84 #main,
    body.page-id-84 .entry-content {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
        overflow-x: hidden;
    }

    body.home .elementor-section,
    body.page-id-84 .elementor-section {
        overflow: hidden;
    }

    body.home .elementor-section > .elementor-container,
    body.page-id-84 .elementor-section > .elementor-container {
        width: 100% !important;
        max-width: 1280px !important;
    }

    body.home .elementor-section:not(.elementor-element-vb-hero),
    body.page-id-84 .elementor-section:not(.elementor-element-vb-hero) {
        padding-right: var(--vb-home-mobile-gutter) !important;
        padding-left: var(--vb-home-mobile-gutter) !important;
    }

    body.home .elementor-element-vb-hero,
    body.page-id-84 .elementor-element-vb-hero {
        display: flex !important;
        padding-top: 96px !important;
        padding-right: 0 !important;
        padding-bottom: 0 !important;
        padding-left: 0 !important;
    }

    body.home .elementor-section.elementor-element-vb-trust.elementor-section-boxed,
    body.page-id-84 .elementor-section.elementor-element-vb-trust.elementor-section-boxed {
        padding-top: 48px !important;
        padding-right: 0 !important;
        padding-bottom: 48px !important;
        padding-left: 0 !important;
    }

    body.home .elementor-section.elementor-element-vb-trust.elementor-section-boxed > .elementor-container,
    body.page-id-84 .elementor-section.elementor-element-vb-trust.elementor-section-boxed > .elementor-container,
    body.home .elementor-section.elementor-element-vb-trust.elementor-section-boxed .elementor-column,
    body.page-id-84 .elementor-section.elementor-element-vb-trust.elementor-section-boxed .elementor-column,
    body.home .elementor-section.elementor-element-vb-trust.elementor-section-boxed .elementor-widget-wrap,
    body.page-id-84 .elementor-section.elementor-element-vb-trust.elementor-section-boxed .elementor-widget-wrap,
    body.home .elementor-section.elementor-element-vb-trust.elementor-section-boxed .elementor-widget,
    body.page-id-84 .elementor-section.elementor-element-vb-trust.elementor-section-boxed .elementor-widget,
    body.home .elementor-section.elementor-element-vb-trust.elementor-section-boxed .elementor-widget-container,
    body.page-id-84 .elementor-section.elementor-element-vb-trust.elementor-section-boxed .elementor-widget-container {
        width: 100% !important;
        max-width: none !important;
    }

    body.home .elementor-element-vb-products,
    body.page-id-84 .elementor-element-vb-products {
        padding-bottom: 76.01px !important;
    }

    body.home .elementor-element-vb-hiw,
    body.page-id-84 .elementor-element-vb-hiw {
        padding-bottom: 67.22px !important;
    }

    body.home .elementor-element-vb-savings,
    body.page-id-84 .elementor-element-vb-savings {
        padding-top: 96px !important;
        padding-right: 0 !important;
        padding-bottom: 96px !important;
        padding-left: 0 !important;
    }

    body.home .elementor-section.elementor-element-vb-savings.elementor-section-boxed > .elementor-container,
    body.page-id-84 .elementor-section.elementor-element-vb-savings.elementor-section-boxed > .elementor-container,
    body.home .elementor-section.elementor-element-vb-savings.elementor-section-boxed .elementor-column,
    body.page-id-84 .elementor-section.elementor-element-vb-savings.elementor-section-boxed .elementor-column,
    body.home .elementor-section.elementor-element-vb-savings.elementor-section-boxed .elementor-widget-wrap,
    body.page-id-84 .elementor-section.elementor-element-vb-savings.elementor-section-boxed .elementor-widget-wrap,
    body.home .elementor-section.elementor-element-vb-savings.elementor-section-boxed .elementor-widget,
    body.page-id-84 .elementor-section.elementor-element-vb-savings.elementor-section-boxed .elementor-widget,
    body.home .elementor-section.elementor-element-vb-savings.elementor-section-boxed .elementor-widget-container,
    body.page-id-84 .elementor-section.elementor-element-vb-savings.elementor-section-boxed .elementor-widget-container {
        width: 100% !important;
        max-width: none !important;
    }

    body.home .elementor-element-vb-usecases,
    body.page-id-84 .elementor-element-vb-usecases {
        padding-bottom: 6.41px !important;
    }

    body.home .elementor-element-vb-social,
    body.page-id-84 .elementor-element-vb-social {
        padding-bottom: 61.66px !important;
    }

    body.home .elementor-element-vb-contenthub,
    body.page-id-84 .elementor-element-vb-contenthub {
        padding-bottom: 44.81px !important;
    }

    body.home .elementor-element-vb-cta,
    body.page-id-84 .elementor-element-vb-cta {
        padding-bottom: 116.41px !important;
    }

    body.home .elementor-element-vb-hero [style*="grid-template-columns:1fr 1fr"],
    body.page-id-84 .elementor-element-vb-hero [style*="grid-template-columns:1fr 1fr"],
    body.home .vb-home-hero,
    body.page-id-84 .vb-home-hero {
        grid-template-columns: 1fr !important;
        gap: 64px !important;
        min-height: auto !important;
        width: 100% !important;
        max-width: none !important;
        padding-top: 0 !important;
        padding-right: 32px !important;
        padding-bottom: 0 !important;
        padding-left: 32px !important;
        align-items: center !important;
    }

    body.home .elementor-element-vb-hero h1,
    body.page-id-84 .elementor-element-vb-hero h1,
    body.home .vb-home-hero__title,
    body.page-id-84 .vb-home-hero__title {
        font-size: 54px !important;
        line-height: 1.1 !important;
        margin-bottom: 24px !important;
        letter-spacing: 0 !important;
    }

    body.home .elementor-element-vb-hero [style*="grid-template-columns:1fr 1fr"] > div:first-child > p:first-child,
    body.page-id-84 .elementor-element-vb-hero [style*="grid-template-columns:1fr 1fr"] > div:first-child > p:first-child {
        margin-bottom: 16px !important;
        color: #b586ff !important;
        font-size: 16px !important;
        line-height: 24px !important;
        font-weight: 700 !important;
        letter-spacing: 0.2em !important;
        text-transform: uppercase !important;
    }

    body.home .elementor-element-vb-hero p,
    body.page-id-84 .elementor-element-vb-hero p {
        max-width: 100% !important;
    }

    body.home .elementor-element-vb-hero [style*="display:flex"][style*="flex-wrap:wrap"],
    body.page-id-84 .elementor-element-vb-hero [style*="display:flex"][style*="flex-wrap:wrap"],
    body.home .vb-home-hero__buttons,
    body.page-id-84 .vb-home-hero__buttons {
        flex-direction: row !important;
        gap: 16px !important;
    }

    body.home .elementor-element-vb-hero [style*="display:flex"][style*="flex-wrap:wrap"] a,
    body.page-id-84 .elementor-element-vb-hero [style*="display:flex"][style*="flex-wrap:wrap"] a,
    body.home .vb-home-hero__buttons a,
    body.page-id-84 .vb-home-hero__buttons a {
        width: auto !important;
        min-width: 0 !important;
        flex: 0 0 auto !important;
        padding-right: 40px !important;
        padding-left: 40px !important;
        text-align: center !important;
        white-space: nowrap;
    }

    body.home .elementor-element-vb-trust [style*="justify-content:space-around"],
    body.page-id-84 .elementor-element-vb-trust [style*="justify-content:space-around"],
    body.home .vb-home-trust,
    body.page-id-84 .vb-home-trust {
        width: 100% !important;
        max-width: none !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 32px !important;
        padding-right: 32px !important;
        padding-left: 32px !important;
        text-align: left !important;
    }

    body.home .elementor-element-vb-trust [style*="justify-content:space-around"] > div,
    body.page-id-84 .elementor-element-vb-trust [style*="justify-content:space-around"] > div,
    body.home .vb-home-trust > div,
    body.page-id-84 .vb-home-trust > div {
        align-items: center !important;
    }

    body.home .elementor-element-vb-trust [style*="font-size:30px"],
    body.page-id-84 .elementor-element-vb-trust [style*="font-size:30px"],
    body.home .vb-home-trust [class*="value"],
    body.page-id-84 .vb-home-trust [class*="value"] {
        line-height: 36px !important;
    }

    body.home .elementor-element-vb-trust [style*="color:#F59E0B"],
    body.page-id-84 .elementor-element-vb-trust [style*="color:#F59E0B"] {
        display: flex !important;
        flex-wrap: nowrap !important;
        width: 120px !important;
        height: 24px !important;
        color: #fbbf24 !important;
        font-size: 0 !important;
        line-height: 24px !important;
        overflow: visible !important;
        white-space: nowrap !important;
    }

    body.home .elementor-element-vb-trust [style*="color:#F59E0B"]::before,
    body.page-id-84 .elementor-element-vb-trust [style*="color:#F59E0B"]::before {
        content: "star";
        display: block;
        color: #fbbf24;
        font-family: 'Material Symbols Outlined';
        font-size: 24px;
        line-height: 24px;
        text-shadow: 32px 0 #fbbf24, 64px 0 #fbbf24, 96px 0 #fbbf24, 128px 0 #fbbf24;
        transform: scale(0.75);
        transform-origin: left center;
        white-space: nowrap;
        font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
    }

    body.home .elementor-element-vb-trust [style*="font-size:12px"][style*="font-weight:600"],
    body.page-id-84 .elementor-element-vb-trust [style*="font-size:12px"][style*="font-weight:600"] {
        line-height: 16px !important;
    }

    body.home .elementor-element-vb-trust [style*="width:1px"][style*="height:32px"],
    body.page-id-84 .elementor-element-vb-trust [style*="width:1px"][style*="height:32px"],
    body.home .vb-home-trust__divider,
    body.page-id-84 .vb-home-trust__divider {
        display: none !important;
    }

    body.home .elementor-element-vb-products [style*="justify-content:space-between"],
    body.page-id-84 .elementor-element-vb-products [style*="justify-content:space-between"],
    body.home .vb-home-products__head,
    body.page-id-84 .vb-home-products__head {
        flex-direction: row !important;
        align-items: flex-end !important;
        justify-content: space-between !important;
        gap: normal !important;
        margin-bottom: 64px !important;
    }

    body.home .elementor-element-vb-products [style*="justify-content:space-between"] > a,
    body.page-id-84 .elementor-element-vb-products [style*="justify-content:space-between"] > a {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        height: 48px !important;
        font-size: 0 !important;
        line-height: 24px !important;
        white-space: nowrap !important;
    }

    body.home .elementor-element-vb-products [style*="justify-content:space-between"] > a::before,
    body.page-id-84 .elementor-element-vb-products [style*="justify-content:space-between"] > a::before {
        content: "Explore All";
        font-family: "Kumbh Sans", sans-serif;
        font-size: 16px;
        line-height: 24px;
        font-weight: 700;
        color: #150529;
    }

    body.home .elementor-element-vb-products [style*="justify-content:space-between"] > a::after,
    body.page-id-84 .elementor-element-vb-products [style*="justify-content:space-between"] > a::after {
        content: "arrow_forward";
        font-family: 'Material Symbols Outlined';
        font-size: 24px;
        line-height: 24px;
        font-weight: 400;
        color: #150529;
        font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
    }

    body.home .elementor-element-vb-products [style*="grid-template-columns:repeat(5,1fr)"],
    body.page-id-84 .elementor-element-vb-products [style*="grid-template-columns:repeat(5,1fr)"],
    body.home .vb-home-products,
    body.page-id-84 .vb-home-products,
    body.home .elementor-element-vb-hiw [style*="grid-template-columns:repeat(3,1fr)"],
    body.page-id-84 .elementor-element-vb-hiw [style*="grid-template-columns:repeat(3,1fr)"],
    body.home .vb-home-steps,
    body.page-id-84 .vb-home-steps,
    body.home .elementor-element-vb-usecases [style*="grid-template-columns:repeat(4,1fr)"],
    body.page-id-84 .elementor-element-vb-usecases [style*="grid-template-columns:repeat(4,1fr)"],
    body.home .vb-home-usecases,
    body.page-id-84 .vb-home-usecases,
    body.home .elementor-element-vb-contenthub [style*="grid-template-columns:repeat(3,1fr)"],
    body.page-id-84 .elementor-element-vb-contenthub [style*="grid-template-columns:repeat(3,1fr)"],
    body.home .vb-home-blog,
    body.page-id-84 .vb-home-blog {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
    }

    body.home .elementor-element-vb-contenthub [style*="grid-template-columns:repeat(3,1fr)"],
    body.page-id-84 .elementor-element-vb-contenthub [style*="grid-template-columns:repeat(3,1fr)"],
    body.home .vb-home-blog,
    body.page-id-84 .vb-home-blog {
        gap: 32px !important;
    }

    body.home .elementor-element-vb-savings [style*="grid-template-columns:1fr 1fr"],
    body.page-id-84 .elementor-element-vb-savings [style*="grid-template-columns:1fr 1fr"],
    body.home .vb-home-savings,
    body.page-id-84 .vb-home-savings {
        grid-template-columns: 1fr !important;
        gap: 64px !important;
        padding: 32px !important;
        border-radius: 24px !important;
    }

    body.home .elementor-element-vb-savings [style*="display:flex"][style*="gap:40px"],
    body.page-id-84 .elementor-element-vb-savings [style*="display:flex"][style*="gap:40px"],
    body.home .vb-home-savings__compare,
    body.page-id-84 .vb-home-savings__compare {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 24px !important;
    }

    body.home .elementor-element-vb-savings [style*="width:1px"][style*="height:48px"],
    body.page-id-84 .elementor-element-vb-savings [style*="width:1px"][style*="height:48px"],
    body.home .vb-home-savings__divider,
    body.page-id-84 .vb-home-savings__divider {
        display: none !important;
    }

    body.home .elementor-element-vb-social [style*="display:flex"][style*="gap:32px"],
    body.page-id-84 .elementor-element-vb-social [style*="display:flex"][style*="gap:32px"],
    body.home .vb-home-reviews,
    body.page-id-84 .vb-home-reviews {
        flex-direction: column !important;
        gap: 32px !important;
    }

    body.home .vb-home-section-title,
    body.page-id-84 .vb-home-section-title,
    body.home .elementor-element-vb-products h2,
    body.page-id-84 .elementor-element-vb-products h2,
    body.home .elementor-element-vb-hiw h2,
    body.page-id-84 .elementor-element-vb-hiw h2,
    body.home .elementor-element-vb-usecases h2,
    body.page-id-84 .elementor-element-vb-usecases h2,
    body.home .elementor-element-vb-social h2,
    body.page-id-84 .elementor-element-vb-social h2,
    body.home .elementor-element-vb-contenthub h2,
    body.page-id-84 .elementor-element-vb-contenthub h2 {
        font-size: 38px !important;
        line-height: 1.5 !important;
        letter-spacing: 0 !important;
    }

    body.home .elementor-element-vb-cta h2,
    body.page-id-84 .elementor-element-vb-cta h2 {
        font-size: 46px !important;
        line-height: 1.1 !important;
    }

    body.home .elementor-element-vb-cta [style*="display:flex"][style*="justify-content:center"] a,
    body.page-id-84 .elementor-element-vb-cta [style*="display:flex"][style*="justify-content:center"] a {
        width: min(100%, 320px) !important;
        padding-right: 24px !important;
        padding-left: 24px !important;
        text-align: center !important;
    }
}

/* 首页平板端适配 */
@media (max-width: 1024px) and (min-width: 768px) {
    .vb-home-hero {
        gap: 32px !important;
    }

    .vb-home-products {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 16px !important;
    }

    .vb-home-usecases {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

/* ---------- Elementor 静态页面额外修复（平板端） ---------- */
@media (max-width: 1024px) and (min-width: 768px) {
    .vb-static-page .lg\:grid-cols-3,
    .vb-static-page .lg\:grid-cols-4 {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    .vb-static-page .lg\:grid-cols-12 {
        grid-template-columns: 1fr !important;
    }

    .vb-static-page [class*="lg:col-span"] {
        grid-column: span 1 !important;
    }
}

/* ---------- Cart 移动端最终兜底：覆盖 WooCommerce Blocks alignwide 宽度 ---------- */
@media (max-width: 767px) {
    body.woocommerce-cart .entry-content > .wp-block-woocommerce-cart.alignwide,
    body.woocommerce-cart .entry-content > .wp-block-woocommerce-cart.alignfull {
        width: calc(100vw - 48px) !important;
        max-width: calc(100vw - 48px) !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    body.woocommerce-cart .wc-block-cart__main,
    body.woocommerce-cart .wc-block-cart__sidebar {
        width: 100% !important;
        max-width: 100% !important;
    }

    body.woocommerce-cart .wc-block-components-totals-footer-item {
        display: block !important;
    }

    body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
        display: block;
        margin-top: 8px;
        white-space: normal;
    }

    body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
    body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-formatted-money-amount {
        max-width: 100%;
        overflow-wrap: anywhere;
    }

    body.woocommerce-cart .entry-content > .wp-block-woocommerce-cart.alignwide .wp-block-woocommerce-empty-cart-block,
    body.woocommerce-cart .entry-content > .wp-block-woocommerce-cart.alignfull .wp-block-woocommerce-empty-cart-block {
        width: 100% !important;
        max-width: 100% !important;
    }

    body.woocommerce-checkout:not(.woocommerce-order-received) .entry-content > .wp-block-woocommerce-checkout.alignwide,
    body.woocommerce-checkout:not(.woocommerce-order-received) .entry-content > .wp-block-woocommerce-checkout.alignfull {
        width: calc(100vw - 48px) !important;
        max-width: calc(100vw - 48px) !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
}

/* ---------- Reviews page custom filter dropdowns ---------- */
.vb-reviews-page .vb-review-select__source-icon {
    display: none !important;
}

.vb-reviews-page .vb-review-native-select {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.vb-reviews-page .vb-review-select {
    position: relative;
    min-width: 164px;
    z-index: 20;
}

.vb-reviews-page .vb-review-select__button {
    display: flex;
    width: 100%;
    min-height: 48px;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0;
    padding: 12px 18px;
    border: 0;
    border-radius: 12px;
    background: #33125b;
    box-shadow: none;
    color: #f0dfff;
    cursor: pointer;
    font-family: var(--vb-font);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2;
    text-align: left;
    transition: background-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.vb-reviews-page .vb-review-select__label {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.vb-reviews-page .vb-review-select__icon {
    flex: 0 0 auto;
    color: #bf9ceb;
    font-size: 20px;
    line-height: 1;
    transition: color 0.2s ease, transform 0.2s ease;
}

.vb-reviews-page .vb-review-select__button:hover,
.vb-reviews-page .vb-review-select__button:focus-visible,
.vb-reviews-page .vb-review-select.is-open .vb-review-select__button {
    background: #3c1668;
    box-shadow: 0 0 0 2px rgba(123, 47, 224, 0.72), 0 16px 36px rgba(21, 5, 41, 0.35);
    color: #fff;
    outline: 0;
}

.vb-reviews-page .vb-review-select__button:active {
    transform: scale(0.98);
}

.vb-reviews-page .vb-review-select.is-open .vb-review-select__icon {
    color: #fff;
    transform: rotate(180deg);
}

.vb-reviews-page .vb-review-select__menu {
    position: absolute;
    top: calc(100% + 10px);
    left: 0;
    display: grid;
    width: max(100%, 188px);
    gap: 4px;
    padding: 8px;
    border-radius: 16px;
    background: rgba(60, 22, 104, 0.92);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.34), inset 0 0 0 1px rgba(87, 56, 127, 0.28);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    opacity: 0;
    pointer-events: none;
    transform: translateY(-6px) scale(0.98);
    transform-origin: top left;
    transition: opacity 0.18s ease, transform 0.18s ease;
}

.vb-reviews-page .vb-review-select.is-open {
    z-index: 40;
}

.vb-reviews-page .vb-review-select.is-open .vb-review-select__menu {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0) scale(1);
}

.vb-reviews-page .vb-review-select__option {
    display: flex;
    width: 100%;
    min-height: 38px;
    align-items: center;
    margin: 0;
    padding: 10px 12px;
    border: 0;
    border-radius: 10px;
    background: transparent;
    box-shadow: none;
    color: #bf9ceb;
    cursor: pointer;
    font-family: var(--vb-font);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.2;
    text-align: left;
    transition: background-color 0.18s ease, color 0.18s ease;
}

.vb-reviews-page .vb-review-select__option:hover,
.vb-reviews-page .vb-review-select__option:focus-visible {
    background: rgba(181, 134, 255, 0.12);
    color: #fff;
    outline: 0;
}

.vb-reviews-page .vb-review-select__option.is-selected {
    background: linear-gradient(135deg, rgba(123, 47, 224, 0.9), rgba(233, 80, 204, 0.9));
    color: #fff;
}

.vb-static-page.vb-app-guide-page {
    background: #150529;
    color: #f0dfff;
    font-family: "Kumbh Sans", sans-serif;
    padding-top: 96px;
}

.vb-static-page.vb-app-guide-page > .flex > aside {
    top: 96px !important;
    height: calc(100vh - 96px) !important;
}

.vb-static-page.vb-app-guide-page img[class*="h-48"] {
    height: 12rem !important;
    object-fit: cover !important;
}

body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page a:focus,
body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page a:focus-visible,
body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page a:active,
body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page button:focus,
body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page button:focus-visible,
body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page button:active {
    outline: 0 !important;
    box-shadow: none !important;
}

body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page aside a:not([class*="bg-gradient"]):focus,
body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page aside a:not([class*="bg-gradient"]):focus-visible,
body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page aside a:not([class*="bg-gradient"]):active {
    border-color: transparent !important;
    background: transparent !important;
    color: #57387f !important;
}

body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page main > section:first-of-type button[class*="bg-surface-container-highest"]:focus,
body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page main > section:first-of-type button[class*="bg-surface-container-highest"]:focus-visible,
body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page main > section:first-of-type button[class*="bg-surface-container-highest"]:active {
    border-color: transparent !important;
    background: #33125b !important;
    color: #fff !important;
}

body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page main > section:nth-of-type(6) button:focus,
body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page main > section:nth-of-type(6) button:focus-visible,
body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page main > section:nth-of-type(6) button:active {
    border-color: transparent !important;
    color: #fff !important;
}

body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page main > section:nth-of-type(6) button:hover,
body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page main > section:nth-of-type(6) button:focus,
body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page main > section:nth-of-type(6) button:focus-visible,
body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page main > section:nth-of-type(6) button:active {
    background: #2b0f4d !important;
}

body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page main > section:nth-of-type(6) button[class*="bg-surface-container-highest"]:hover,
body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page main > section:nth-of-type(6) button[class*="bg-surface-container-highest"]:focus,
body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page main > section:nth-of-type(6) button[class*="bg-surface-container-highest"]:focus-visible,
body:has(.vb-app-guide-page) .vb-static-page.vb-app-guide-page main > section:nth-of-type(6) button[class*="bg-surface-container-highest"]:active {
    background: rgba(51, 18, 91, 0.4) !important;
}

@media (max-width: 640px) {
    .vb-reviews-page .vb-review-select {
        width: 100%;
        min-width: 0;
    }

    .vb-reviews-page .vb-review-select__menu {
        width: 100%;
    }
}

@media (max-width: 921px) {
    .vb-static-page.vb-app-guide-page {
        padding-top: 74px;
    }

    .vb-static-page.vb-app-guide-page h1 {
        line-height: 1.1 !important;
    }
}

@media (max-width: 767px) {
    .vb-troubleshooting-guide-page > main > section {
        padding-right: var(--vb-mobile-section-gutter) !important;
        padding-left: var(--vb-mobile-section-gutter) !important;
    }

    .vb-troubleshooting-guide-page > main > section > .grid,
    .vb-troubleshooting-guide-page > main > section > .flex,
    .vb-troubleshooting-guide-page > main > section > .bg-surface,
    .vb-troubleshooting-guide-page > main > section > .bg-error-container\/10,
    .vb-troubleshooting-guide-page > main > section > .relative.z-10 {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-troubleshooting-guide-page > main > section .grid > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="rounded-[20px]"], [class*="rounded-[24px]"], [class*="rounded-[32px]"]),
    .vb-troubleshooting-guide-page > main > section .flex > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="rounded-[20px]"], [class*="rounded-[24px]"], [class*="rounded-[32px]"]) {
        width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    /* 提升优先级：覆盖第 7385 行通用 .grid 子卡 calc(100% - 40px) 兜底，
       让 Buffering & Streaming / Maximize your bandwidth / Connection Failures 卡片
       与下方 Remote Troubleshooting 等卡片保持一致宽度（移动端不再窄一截）。 */
    .vb-static-page.vb-troubleshooting-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) .grid > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="rounded-[20px]"], [class*="rounded-[24px]"], [class*="rounded-[32px]"]) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    /* 移动端 H1 行高和字号精准还原：3rem (48px) 与 3.75rem (60px) */
    .vb-troubleshooting-guide-page h1 {
        font-size: 3rem !important;
        line-height: 3.75rem !important;
    }

    /* 移动端首个 Section 的 padding 精准恢复 */
    .vb-troubleshooting-guide-page > main > section:first-of-type {
        padding-top: 64px !important;
        padding-bottom: 64px !important;
    }

    .vb-static-page.vb-app-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) :is(#pre-installed, #install-guides, #top-picks) .grid > :is(.glass-card, .bg-surface-container-high, [class*="rounded-2xl"], [class*="rounded-3xl"]) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-static-page.vb-app-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) main > section:not(:first-child) .grid > :is(.glass-card, .bg-surface-container-high, [class*="rounded-2xl"], [class*="rounded-3xl"]) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-static-page.vb-reviews-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) .grid > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="rounded-[20px]"], [class*="rounded-[24px]"], [class*="rounded-[32px]"], .group.relative) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-static-page.vb-download-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) .grid > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="rounded-[20px]"], [class*="rounded-[24px]"], [class*="rounded-[32px]"], [class*="bg-surface-container"], [class*="bg-gradient-to-br"], [class*="bg-gradient-to-r"]) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-static-page.vb-download-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > main {
        padding-top: 88px !important;
    }

    .vb-static-page.vb-video-tutorials-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) .grid > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="rounded-[20px]"], [class*="rounded-[24px]"], [class*="rounded-[32px]"], .group.surface-container-low, .group.bg-surface-container-low) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-static-page.vb-channel-list-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) .grid > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="rounded-[20px]"], [class*="rounded-[24px]"], [class*="rounded-[32px]"], [class*="ghost-border"]) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-static-page.vb-savings-calculator-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) .grid > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="rounded-[20px]"], [class*="rounded-[24px]"], [class*="rounded-[32px]"]) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) .grid > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="rounded-[20px]"], [class*="rounded-[24px]"], [class*="rounded-[32px]"]) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) .grid > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="rounded-[16px]"], [class*="rounded-[20px]"], [class*="rounded-[24px]"], [class*="rounded-[32px]"], [class*="bg-surface-container"], [class*="bg-white/5"]) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-static-page.vb-authorization-proof-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) .grid > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="rounded-[20px]"], [class*="rounded-[24px]"], [class*="rounded-[32px]"], [class*="bg-surface-container"]) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-static-page.vb-6-month-review-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) .grid > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="rounded-[20px]"], [class*="rounded-[24px]"], [class*="rounded-[32px]"], [class*="bg-surface-container"], [class*="bg-green-500/5"], [class*="bg-error/5"]) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
}

.vb-affiliate-program-page .vb-affiliate-select,
.vb-affiliate-program-page .vb-affiliate-select *,
.vb-affiliate-program-page .vb-affiliate-select *::before,
.vb-affiliate-program-page .vb-affiliate-select *::after {
    box-sizing: border-box;
}

@media (max-width: 767px) {
    .vb-static-page.vb-affiliate-program-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > main > section:first-child > .grid > .glass-card {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
}

.vb-affiliate-program-page .vb-affiliate-select.is-open > .vb-affiliate-select__menu {
    width: 100% !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translateY(0) scale(1) !important;
}

/* ---------- 6-Month Review Page 样式 ---------- */
.vb-6-month-review-page table,
.vb-6-month-review-page th,
.vb-6-month-review-page td {
    border-top: 0 !important;
    border-left: 0 !important;
}

/* Setup Guide must keep the reference Tailwind mobile layout after generic mobile fixes. */
@media (max-width: 767px) {
    .vb-static-page.vb-setup-guide-page,
    .vb-static-page.vb-setup-guide-page > main {
        max-width: 100vw !important;
        overflow-x: hidden !important;
    }

    .vb-static-page.vb-setup-guide-page > main {
        width: 100% !important;
        padding: 5rem 1rem 0 !important;
        margin: 0 auto !important;
    }

    .vb-static-page.vb-setup-guide-page > main > section,
    .vb-static-page.vb-setup-guide-page > section {
        width: 100% !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-static-page.vb-setup-guide-page > main > section:first-of-type,
    .vb-static-page.vb-setup-guide-page > section:first-of-type {
        padding-top: 4rem !important;
        padding-bottom: 4rem !important;
    }

    .vb-static-page.vb-setup-guide-page > main > section[class*="py-20"],
    .vb-static-page.vb-setup-guide-page > section[class*="py-20"] {
        padding-top: 5rem !important;
        padding-bottom: 5rem !important;
    }

    .vb-static-page.vb-setup-guide-page > main > section[class*="p-8"],
    .vb-static-page.vb-setup-guide-page > section[class*="p-8"] {
        padding: 2rem !important;
    }

    .vb-static-page.vb-setup-guide-page .grid > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="rounded-[20px]"], [class*="rounded-[24px]"], [class*="rounded-[32px]"]) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) h1[class~="text-5xl"] {
        font-size: 3rem !important;
        line-height: 1.1 !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) h2[class~="text-3xl"] {
        font-size: 1.875rem !important;
        line-height: 2.25rem !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) [class~="grid-cols-2"] {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) [class~="grid-cols-2"] a,
    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) [class~="grid-cols-2"] a span {
        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) table {
        display: table !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        overflow-x: visible !important;
        table-layout: auto !important;
        border-collapse: collapse !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) table thead,
    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) table tbody {
        display: table-row-group !important;
        width: auto !important;
        min-width: 0 !important;
        table-layout: auto !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) table thead {
        display: table-header-group !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) table tr {
        display: table-row !important;
        width: auto !important;
    }

    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) table th,
    .vb-static-page.vb-setup-guide-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) table td {
        display: table-cell !important;
        min-width: 0 !important;
        border-color: #e5e7eb !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        white-space: normal !important;
    }
}

@media (max-width: 767px) {
    body.home .elementor-element-vb-products [style*="justify-content:space-between"] > a,
    body.page-id-84 .elementor-element-vb-products [style*="justify-content:space-between"] > a {
        width: auto !important;
        flex: 0 0 auto !important;
        overflow: visible !important;
    }

    body.home .elementor-section.elementor-element-vb-savings.elementor-section-boxed,
    body.page-id-84 .elementor-section.elementor-element-vb-savings.elementor-section-boxed {
        padding: 96px 0 !important;
    }

    body.home .elementor-section.elementor-element-vb-savings.elementor-section-boxed > .elementor-container,
    body.page-id-84 .elementor-section.elementor-element-vb-savings.elementor-section-boxed > .elementor-container,
    body.home .elementor-section.elementor-element-vb-savings.elementor-section-boxed .elementor-column,
    body.page-id-84 .elementor-section.elementor-element-vb-savings.elementor-section-boxed .elementor-column,
    body.home .elementor-section.elementor-element-vb-savings.elementor-section-boxed .elementor-widget-wrap,
    body.page-id-84 .elementor-section.elementor-element-vb-savings.elementor-section-boxed .elementor-widget-wrap,
    body.home .elementor-section.elementor-element-vb-savings.elementor-section-boxed .elementor-widget,
    body.page-id-84 .elementor-section.elementor-element-vb-savings.elementor-section-boxed .elementor-widget,
    body.home .elementor-section.elementor-element-vb-savings.elementor-section-boxed .elementor-widget-container,
    body.page-id-84 .elementor-section.elementor-element-vb-savings.elementor-section-boxed .elementor-widget-container {
        width: 100% !important;
        max-width: none !important;
    }

    body.home .elementor-element-vb-savings [style*="grid-template-columns:1fr 1fr"],
    body.page-id-84 .elementor-element-vb-savings [style*="grid-template-columns:1fr 1fr"] {
        box-sizing: border-box !important;
        width: calc(100% - 64px) !important;
        margin-right: auto !important;
        margin-left: auto !important;
        padding: 32px !important;
    }

    body.home .elementor-section.elementor-element-vb-cta.elementor-section-boxed,
    body.page-id-84 .elementor-section.elementor-element-vb-cta.elementor-section-boxed {
        padding: 96px 0 !important;
    }

    body.home .elementor-section.elementor-element-vb-cta.elementor-section-boxed > .elementor-container,
    body.page-id-84 .elementor-section.elementor-element-vb-cta.elementor-section-boxed > .elementor-container,
    body.home .elementor-section.elementor-element-vb-cta.elementor-section-boxed .elementor-column,
    body.page-id-84 .elementor-section.elementor-element-vb-cta.elementor-section-boxed .elementor-column,
    body.home .elementor-section.elementor-element-vb-cta.elementor-section-boxed .elementor-widget-wrap,
    body.page-id-84 .elementor-section.elementor-element-vb-cta.elementor-section-boxed .elementor-widget-wrap,
    body.home .elementor-section.elementor-element-vb-cta.elementor-section-boxed .elementor-widget,
    body.page-id-84 .elementor-section.elementor-element-vb-cta.elementor-section-boxed .elementor-widget,
    body.home .elementor-section.elementor-element-vb-cta.elementor-section-boxed .elementor-widget-container,
    body.page-id-84 .elementor-section.elementor-element-vb-cta.elementor-section-boxed .elementor-widget-container {
        width: 100% !important;
        max-width: none !important;
    }

    body.home .elementor-element-vb-cta .elementor-widget-container > div,
    body.page-id-84 .elementor-element-vb-cta .elementor-widget-container > div,
    body.home .elementor-element-vb-cta .elementor-element-vb-cta-w > div,
    body.page-id-84 .elementor-element-vb-cta .elementor-element-vb-cta-w > div {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: none !important;
        padding: 0 32px !important;
        text-align: center !important;
    }

    body.home .elementor-element-vb-cta h2,
    body.page-id-84 .elementor-element-vb-cta h2 {
        font-size: 54px !important;
        line-height: 81px !important;
        margin-bottom: 24px !important;
        letter-spacing: 0 !important;
    }

    body.home .elementor-element-vb-cta p,
    body.page-id-84 .elementor-element-vb-cta p {
        font-size: 20px !important;
        line-height: 28px !important;
        margin-right: auto !important;
        margin-bottom: 48px !important;
        margin-left: auto !important;
        max-width: 672px !important;
    }

    body.home .elementor-element-vb-cta [style*="display:flex"][style*="justify-content:center"],
    body.page-id-84 .elementor-element-vb-cta [style*="display:flex"][style*="justify-content:center"] {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: center !important;
        gap: 24px !important;
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
    }

    body.home .elementor-element-vb-cta [style*="display:flex"][style*="justify-content:center"] a,
    body.page-id-84 .elementor-element-vb-cta [style*="display:flex"][style*="justify-content:center"] a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        max-width: none !important;
        height: 64px !important;
        padding-right: 48px !important;
        padding-left: 48px !important;
        border-radius: 12px !important;
        font-size: 18px !important;
        line-height: 28px !important;
        text-align: center !important;
    }

    body.home .elementor-element-vb-cta p:last-child,
    body.page-id-84 .elementor-element-vb-cta p:last-child {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        margin-top: 32px !important;
        margin-bottom: 0 !important;
        font-size: 14px !important;
        line-height: 20px !important;
    }
}

/* Final PDP mobile reference overrides. Keep this at the end so generic mobile
   WooCommerce and homepage fixes cannot retake the product-detail layout. */
body.single-product .vb-pdp-cart-form .vb-pdp-button--primary,
body.single-product .vb-pdp-cart-form .single_add_to_cart_button.vb-pdp-button--primary,
body.single-product .vb-pdp-sticky__actions button {
    border: 0 !important;
    background-color: transparent !important;
    background-image: linear-gradient(135deg, #7B2FE0 0%, #E950CC 100%) !important;
    color: #fff !important;
}

body.single-product .vb-pdp-cart-form .vb-pdp-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 0 !important;
    height: 56px !important;
    padding: 0 40px !important;
    border-radius: 12px !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 28px !important;
    text-align: center !important;
    white-space: nowrap !important;
}

body.single-product .vb-pdp-cart-form {
    display: flex !important;
    flex-direction: row !important;
    gap: 16px !important;
}

body.single-product .vb-pdp-cart-form .vb-pdp-button--primary {
    width: 287px !important;
    flex: 0 0 287px !important;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1) !important;
}

body.single-product .vb-pdp-cart-form .vb-pdp-button--secondary {
    width: 289px !important;
    flex: 0 0 289px !important;
}

body.single-product .vb-pdp-cart-form .vb-pdp-button--primary:hover,
body.single-product .vb-pdp-cart-form .single_add_to_cart_button.vb-pdp-button--primary:hover,
body.single-product .vb-pdp-sticky__actions button:hover {
    background-color: transparent !important;
    background-image: linear-gradient(135deg, #7B2FE0 0%, #E950CC 100%) !important;
    color: #fff !important;
    filter: brightness(1.1);
}

body.single-product .vb-pdp-cart-form .vb-pdp-button--secondary {
    border: 1px solid rgba(87, 56, 127, 0.2) !important;
    background-color: #33125b !important;
    background-image: none !important;
    color: #fff !important;
}

body.single-product .vb-pdp-cart-form .vb-pdp-button--secondary:hover {
    border-color: rgba(87, 56, 127, 0.2) !important;
    background-color: #3c1668 !important;
    background-image: none !important;
    color: #fff !important;
}

body.single-product .vb-pdp-sticky {
    padding: 16px 24px !important;
    border-top: 1px solid rgba(87, 56, 127, 0.2) !important;
    background-color: rgba(36, 12, 65, 0.9) !important;
    background-image: none !important;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25) !important;
    font-size: 16px !important;
    line-height: 24px !important;
}

body.single-product .vb-pdp-sticky__info {
    height: 39px !important;
    gap: 24px !important;
}

body.single-product .vb-pdp-sticky__info > div:first-child > span {
    height: 15px !important;
    margin-bottom: 0 !important;
    color: #94a3b8 !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    line-height: 15px !important;
}

body.single-product .vb-pdp-sticky__info strong {
    display: block !important;
    height: 24px !important;
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 24px !important;
}

body.single-product .vb-pdp-sticky__price {
    height: 32px !important;
    gap: 8px !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 24px !important;
}

body.single-product .vb-pdp-sticky__price .woocommerce-Price-amount {
    display: block !important;
    height: 32px !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    line-height: 32px !important;
}

body.single-product .vb-pdp-sticky__price em {
    display: block !important;
    min-height: 0 !important;
    height: 20px !important;
    padding: 2px 8px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 16px !important;
}

body.single-product .vb-pdp-sticky__actions a {
    border: 1px solid #57387f !important;
    background-color: transparent !important;
    color: #f0dfff !important;
}

body.single-product .vb-pdp-sticky__actions a:hover {
    background-color: #3c1668 !important;
    color: #fff !important;
}

body.single-product .vb-pdp-sticky__actions a,
body.single-product .vb-pdp-sticky__actions button {
    display: block !important;
    min-height: 0 !important;
    height: 50px !important;
    box-sizing: border-box !important;
    border-radius: 12px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 24px !important;
    text-align: center !important;
    white-space: nowrap !important;
}

body.single-product .vb-pdp-sticky__actions a {
    width: 174.5px !important;
    padding: 12px 32px !important;
}

body.single-product .vb-pdp-sticky__actions button {
    width: 163.84px !important;
    padding: 12px 48px !important;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1) !important;
}

@media (max-width: 767px) {
    body.single-product #primary.vb-pdp-page,
    body.single-product .site-main.vb-pdp-page {
        margin: 0 !important;
        padding-top: 72px !important;
    }

    body.single-product .vb-pdp-hero {
        width: 100% !important;
        max-width: none !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding: 48px 24px !important;
        gap: 48px !important;
    }

    body.single-product .vb-pdp-gallery__thumbs button {
        height: 80px !important;
        min-height: 80px !important;
    }

    body.single-product .vb-pdp-summary > .vb-pdp-stock {
        display: none !important;
    }

    body.single-product .vb-pdp-summary h1 {
        font-size: 48px !important;
        line-height: 52.8px !important;
    }

    body.single-product .vb-pdp-subtitle {
        font-size: 20px !important;
        font-weight: 500 !important;
        line-height: 28px !important;
    }

    body.single-product .vb-pdp-price {
        min-height: 0 !important;
        font-size: 36px !important;
        line-height: 40.5px !important;
    }

    body.single-product .vb-pdp-trust {
        gap: 16px !important;
        padding: 24px 0 !important;
    }

    body.single-product .vb-pdp-spec-strip__inner {
        display: flex !important;
        justify-content: space-between !important;
        min-width: 800px !important;
    }

    body.single-product .vb-pdp-spec-strip__inner div {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 12px !important;
    }

    body.single-product .vb-pdp-spec-strip__inner strong {
        line-height: 20px !important;
        white-space: nowrap !important;
    }

    body.single-product .vb-pdp-feature-section,
    body.single-product .vb-pdp-compare,
    body.single-product .vb-pdp-setup,
    body.single-product .vb-pdp-bundles {
        width: 100% !important;
        max-width: none !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding-right: 24px !important;
        padding-left: 24px !important;
    }
}

@media (max-width: 767px) {
    body.single-product .vb-pdp-page .vb-pdp-feature-section,
    body.single-product .vb-pdp-page .vb-pdp-stories,
    body.single-product .vb-pdp-page .vb-pdp-box,
    body.single-product .vb-pdp-page .vb-pdp-reviews,
    body.single-product .vb-pdp-page .vb-pdp-setup,
    body.single-product .vb-pdp-page .vb-pdp-bundles {
        font-size: 16px !important;
        line-height: 24px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-feature-section,
    body.single-product .vb-pdp-page .vb-pdp-box,
    body.single-product .vb-pdp-page .vb-pdp-reviews,
    body.single-product .vb-pdp-page .vb-pdp-setup,
    body.single-product .vb-pdp-page .vb-pdp-bundles {
        padding-top: 96px !important;
        padding-bottom: 96px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-section-heading {
        margin: 0 auto 64px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-section-heading h2,
    body.single-product .vb-pdp-page .vb-pdp-box h2,
    body.single-product .vb-pdp-page .vb-pdp-reviews h2,
    body.single-product .vb-pdp-page .vb-pdp-setup h2 {
        font-size: 36px !important;
        font-weight: 700 !important;
        line-height: 40px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-section-heading p,
    body.single-product .vb-pdp-page .vb-pdp-feature-card p,
    body.single-product .vb-pdp-page .vb-pdp-story p,
    body.single-product .vb-pdp-page .vb-pdp-review-card p,
    body.single-product .vb-pdp-page .vb-pdp-setup p {
        font-size: 16px !important;
        line-height: 24px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-feature-grid {
        gap: 32px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-feature-card {
        min-height: 0 !important;
        padding: 32px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-feature-card h3 {
        font-size: 24px !important;
        line-height: 32px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-stories {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 24px 96px !important;
        gap: 24px !important;
        box-sizing: border-box !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-story {
        width: 100% !important;
        min-height: 0 !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-story--large {
        height: 382px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-story--small {
        height: 216px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-story div {
        right: 40px !important;
        bottom: 40px !important;
        left: 40px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-story h3 {
        font-weight: 700 !important;
        line-height: 36px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-story--small h3 {
        line-height: 32px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-box__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 32px !important;
        text-align: center !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-box__grid > div {
        display: block !important;
        width: 100% !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-box__grid .material-symbols-outlined {
        display: flex !important;
        width: 100% !important;
        aspect-ratio: 1 / 1 !important;
        align-items: center !important;
        justify-content: center !important;
        margin: 0 0 16px !important;
        padding: 24px !important;
        border: 1px solid rgba(87, 56, 127, 0.1) !important;
        border-radius: 16px !important;
        background: #240c41 !important;
        color: var(--vb-primary) !important;
        font-size: 48px !important;
        line-height: 48px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-box__grid strong {
        display: block !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        line-height: 24px !important;
        overflow-wrap: normal !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-reviews__head {
        align-items: flex-end !important;
        flex-direction: column !important;
        gap: 32px !important;
        margin-bottom: 64px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-reviews__head > a {
        min-height: 48px !important;
        padding: 12px 32px !important;
        font-size: 16px !important;
        line-height: 24px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-review-grid {
        gap: 32px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-review-card {
        height: 264px !important;
        min-height: 264px !important;
        padding: 32px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-quote {
        position: absolute !important;
        top: -16px !important;
        left: -16px !important;
        display: block !important;
        color: var(--vb-primary) !important;
        font-size: 36px !important;
        line-height: 40px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-review-card p {
        margin-bottom: 24px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-setup__card {
        display: block !important;
        padding: 32px !important;
        border-radius: 32px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-setup h2 {
        margin-bottom: 24px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-setup__steps > div {
        gap: 24px !important;
        margin-top: 48px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-setup__steps > div:first-of-type {
        margin-top: 0 !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-setup h3 {
        font-size: 20px !important;
        font-weight: 700 !important;
        line-height: 28px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-video {
        aspect-ratio: 1 / 1 !important;
        margin-top: 64px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-bundles h2 {
        margin-bottom: 64px !important;
        font-size: 30px !important;
        line-height: 36px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-bundle-grid article {
        align-items: center !important;
        flex-direction: row !important;
        gap: 24px !important;
        height: 234px !important;
        min-height: 234px !important;
        padding: 24px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-bundle-grid img {
        width: 128px !important;
        height: 128px !important;
        flex: 0 0 128px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-bundle-grid h3 {
        font-size: 20px !important;
        font-weight: 700 !important;
        line-height: 28px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-bundle-grid p {
        font-size: 14px !important;
        line-height: 20px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-bundle-cta {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 12px !important;
        width: 100% !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-bundle-cta strong {
        flex: 0 0 auto !important;
        margin-right: 0 !important;
        font-size: 20px !important;
        line-height: 28px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-bundle-cta a {
        flex: 0 0 auto !important;
        width: 108px !important;
        min-height: 56px !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 8px 16px !important;
        font-size: 14px !important;
        font-weight: 700 !important;
        line-height: 20px !important;
        text-align: center !important;
        white-space: normal !important;
    }

}

@media (max-width: 767px) {
    body.single-product .vb-pdp-page .vb-pdp-price del {
        color: #64748b !important;
        font-size: 18px !important;
        font-weight: 400 !important;
        line-height: 28px !important;
        opacity: 1 !important;
        text-decoration: line-through !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-cart-form {
        height: 74px !important;
        gap: 16px !important;
        margin-bottom: 32px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-cart-form .vb-pdp-button,
    body.single-product .vb-pdp-page .vb-pdp-cart-form .vb-pdp-button--primary,
    body.single-product .vb-pdp-page .vb-pdp-cart-form .vb-pdp-button--secondary {
        display: block !important;
        min-height: 0 !important;
        padding: 0 40px !important;
        font-size: 18px !important;
        font-weight: 700 !important;
        line-height: 28px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-cart-form .vb-pdp-button--primary {
        height: 28px !important;
    }

    body.single-product .vb-pdp-page .vb-pdp-cart-form .vb-pdp-button--secondary {
        height: 30px !important;
    }
}

/* why-vseebox: final pixel guard against generic static-page overrides. */
.vb-static-page.vb-why-vseebox-page,
.vb-static-page.vb-why-vseebox-page :where(:not(.material-symbols-outlined)) {
    font-family: "Kumbh Sans", "Plus Jakarta Sans", sans-serif !important;
}

.vb-static-page.vb-why-vseebox-page {
    background: #150529 !important;
    color: #f0dfff !important;
    overflow-x: hidden !important;
}

.vb-static-page.vb-why-vseebox-page :is(h1, h2, h3, h4, h5, h6) {
    font-family: "Kumbh Sans", "Plus Jakarta Sans", sans-serif !important;
}

.vb-static-page.vb-why-vseebox-page table,
.vb-static-page.vb-why-vseebox-page table thead,
.vb-static-page.vb-why-vseebox-page table tbody,
.vb-static-page.vb-why-vseebox-page table tr {
    display: revert !important;
    width: auto !important;
    table-layout: auto !important;
}

.vb-static-page.vb-why-vseebox-page img[class*="h-[400px]"] {
    height: 400px !important;
}

.vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) h2[class*="text-[38px]"][class*="leading-[1.2]"] {
    font-size: 38px !important;
    line-height: 1.2 !important;
}

.vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) h2[class*="text-[38px]"]:not([class*="leading-[1.2]"]) {
    font-size: 38px !important;
    line-height: 1.5 !important;
}

.vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) h2[class*="mb-4"] {
    margin-bottom: 16px !important;
}

.vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) h2[class*="mb-12"] {
    margin-bottom: 48px !important;
}

.vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) h2[class*="mb-16"] {
    margin-bottom: 64px !important;
}

.vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) h2[class*="text-3xl"] {
    font-size: 30px !important;
    line-height: 36px !important;
    margin-bottom: 0 !important;
}

.vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) img[class*="rounded-2xl"] {
    border-radius: 16px !important;
}

.vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) img[class*="rounded-xl"] {
    border-radius: 12px !important;
}

.vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) table[class*="w-full"] {
    width: 100% !important;
    margin: 0 !important;
    overflow: hidden !important;
}

.vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) table :is(th, td) {
    word-break: normal !important;
    overflow-wrap: normal !important;
}

.vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > section:last-of-type a,
.vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > section:last-of-type a:hover,
.vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > section:last-of-type a:focus,
.vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > section:last-of-type a:visited {
    color: #fff !important;
}

@media (min-width: 768px) {
    .vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) table[class*="w-full"] {
        min-width: 0 !important;
    }
}

@media (max-width: 767px) {
    html:has(.vb-static-page.vb-why-vseebox-page) {
        font-size: 100% !important;
    }

    .vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > section {
        padding-right: 2rem !important;
        padding-left: 2rem !important;
    }

    .vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > section:first-of-type {
        padding-top: 8rem !important;
    }

    .vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) h1[class*="text-5xl"] {
        font-size: 3rem !important;
        line-height: 1.1 !important;
    }

    .vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) .max-w-7xl,
    .vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) .max-w-4xl {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) table {
        display: table !important;
        width: 100% !important;
        min-width: 536.594px !important;
        max-width: none !important;
        margin: 0 !important;
        overflow-x: visible !important;
    }

    .vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) table thead,
    .vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) table tbody {
        display: revert !important;
        width: auto !important;
        min-width: 0 !important;
        table-layout: auto !important;
    }

    .vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) table tr {
        display: table-row !important;
        width: auto !important;
        min-width: 0 !important;
    }

    .vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) table :is(th, td) {
        min-width: 0 !important;
    }

    .vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > section:last-of-type h2[class*="text-5xl"] {
        font-size: 48px !important;
        line-height: 48px !important;
        margin-bottom: 32px !important;
    }

    .vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > section:last-of-type .grid[class*="grid-cols-2"] {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 32px !important;
    }

    .vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) a[class*="signature-gradient"]:not([class*="rounded-full"]),
    .vb-static-page.vb-why-vseebox-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) button[class*="signature-gradient"]:not([class*="rounded-full"]) {
        width: auto !important;
        text-align: center !important;
    }
}

/* guides hub: final pixel guard against generic static-page overrides. */
.vb-static-page.vb-guides-page,
.vb-static-page.vb-guides-page :where(:not(.material-symbols-outlined)) {
    font-family: "Kumbh Sans", sans-serif !important;
}

body:has(.vb-static-page.vb-guides-page),
body:has(.vb-static-page.vb-guides-page) .site,
body:has(.vb-static-page.vb-guides-page) .site-content,
body:has(.vb-static-page.vb-guides-page) .elementor,
body:has(.vb-static-page.vb-guides-page) .elementor-section,
body:has(.vb-static-page.vb-guides-page) .elementor-container,
body:has(.vb-static-page.vb-guides-page) .elementor-widget-wrap,
body:has(.vb-static-page.vb-guides-page) .elementor-widget-container {
    background: #150529 !important;
}

.vb-static-page.vb-guides-page {
    background: #150529 !important;
    color: #f0dfff !important;
    overflow-x: hidden !important;
}

.vb-static-page.vb-guides-page main {
    width: 100% !important;
    max-width: 1280px !important;
    margin: 0 auto !important;
    padding: 96px 24px 80px !important;
    background-image: radial-gradient(rgba(181, 134, 255, 0.1) 1px, transparent 1px) !important;
    background-size: 24px 24px !important;
    box-sizing: border-box !important;
}

.vb-static-page.vb-guides-page main > section:first-of-type {
    padding: 64px 0 !important;
    gap: 48px !important;
}

.vb-static-page.vb-guides-page h1 {
    margin: 0 0 24px !important;
    font-size: 48px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: -0.025em !important;
}

.vb-static-page.vb-guides-page h1 .gradient-text {
    background: linear-gradient(135deg, #7B2FE0 0%, #E950CC 100%) !important;
    background-clip: text !important;
    -webkit-background-clip: text !important;
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
}

.vb-static-page.vb-guides-page main > section:first-of-type p.text-xl {
    max-width: 672px !important;
    margin: 0 0 40px !important;
    color: #bf9ceb !important;
    font-size: 20px !important;
    line-height: 1.625 !important;
}

.vb-static-page.vb-guides-page .glass-card {
    border: 1px solid rgba(87, 56, 127, 0.2) !important;
    background: rgba(60, 22, 104, 0.4) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    backdrop-filter: blur(16px) !important;
}

.vb-static-page.vb-guides-page .hover\:bg-surface-container-highest:hover {
    background: #33125b !important;
}

.vb-static-page.vb-guides-page .hover\:bg-surface-container-high:hover {
    background: #2b0f4d !important;
}

.vb-static-page.vb-guides-page .hover\:bg-primary\/10:hover {
    background: rgba(181, 134, 255, 0.1) !important;
}

.vb-static-page.vb-guides-page .rounded-xl,
.vb-static-page.vb-guides-page .rounded-2xl {
    border-radius: 16px !important;
}

.vb-static-page.vb-guides-page .rounded-lg {
    border-radius: 12px !important;
}

.vb-static-page.vb-guides-page .grid[class*="gap-4"] {
    gap: 16px !important;
}

.vb-static-page.vb-guides-page .grid[class*="gap-6"] {
    gap: 24px !important;
}

.vb-static-page.vb-guides-page .grid[class*="mt-12"] {
    margin-top: 48px !important;
}

.vb-static-page.vb-guides-page .p-8 {
    padding: 32px !important;
}

.vb-static-page.vb-guides-page .p-6 {
    padding: 24px !important;
}

.vb-static-page.vb-guides-page .p-4 {
    padding: 16px !important;
}

.vb-static-page.vb-guides-page a,
.vb-static-page.vb-guides-page a:hover,
.vb-static-page.vb-guides-page a:focus,
.vb-static-page.vb-guides-page a:visited {
    color: inherit !important;
    text-decoration: none;
}

.vb-static-page.vb-guides-page a[class*="text-primary"],
.vb-static-page.vb-guides-page a[class*="text-primary"]:hover,
.vb-static-page.vb-guides-page a[class*="text-primary"]:focus,
.vb-static-page.vb-guides-page a[class*="text-primary"]:visited {
    color: #b586ff !important;
}

.vb-static-page.vb-guides-page a[class*="hover:text-primary"]:hover,
.vb-static-page.vb-guides-page a[class*="hover:text-primary"]:focus {
    color: #b586ff !important;
}

.vb-static-page.vb-guides-page a[class*="hover:underline"]:hover,
.vb-static-page.vb-guides-page a[class*="hover:underline"]:focus {
    text-decoration: underline !important;
}

.vb-static-page.vb-guides-page a[class*="text-white"],
.vb-static-page.vb-guides-page a[class*="text-white"]:hover,
.vb-static-page.vb-guides-page a[class*="text-white"]:focus,
.vb-static-page.vb-guides-page a[class*="text-white"]:visited {
    color: #fff !important;
}

.vb-static-page.vb-guides-page section[class*="mt-20"] {
    width: 100% !important;
    margin-top: 80px !important;
    padding: 48px !important;
    border-radius: 16px !important;
    box-sizing: border-box !important;
}

.vb-static-page.vb-guides-page section[class*="mt-20"] a[class*="bg-surface-container-highest"][class*="outline-outline-variant"],
.vb-static-page.vb-guides-page section[class*="mt-20"] a[class*="bg-surface-container-highest"][class*="outline-outline-variant"]:hover,
.vb-static-page.vb-guides-page section[class*="mt-20"] a[class*="bg-surface-container-highest"][class*="outline-outline-variant"]:focus,
.vb-static-page.vb-guides-page section[class*="mt-20"] a[class*="bg-surface-container-highest"][class*="outline-outline-variant"]:focus-visible,
.vb-static-page.vb-guides-page section[class*="mt-20"] a[class*="bg-surface-container-highest"][class*="outline-outline-variant"]:active {
    border-color: transparent !important;
    outline: 1px solid #57387f !important;
    outline-offset: 0 !important;
    box-shadow: none !important;
}

.vb-static-page.vb-guides-page main > section:first-of-type > div[class*="relative"] > img[class*="border"][class*="shadow-2xl"] {
    border: 1px solid rgba(87, 56, 127, 0.3) !important;
    border-radius: 16px !important;
    box-shadow: 0 0 #0000, 0 0 #0000, 0 25px 50px -12px rgba(0, 0, 0, 0.25) !important;
}

body:has(.vb-static-page.vb-guides-page) .vb-static-page.vb-guides-page section[class*="mt-20"] h2[class*="mb-4"] {
    margin-bottom: 16px !important;
}

@media (min-width: 1024px) {
    .vb-static-page.vb-guides-page h1 {
        font-size: 72px !important;
        line-height: 1 !important;
    }

    .vb-static-page.vb-guides-page main > section:first-of-type {
        flex-direction: row !important;
        text-align: left !important;
    }

    .vb-static-page.vb-guides-page main > section:first-of-type > div:first-child {
        flex: 1 1 0% !important;
    }

    .vb-static-page.vb-guides-page main > section:first-of-type > div:last-child {
        width: 33.333333% !important;
    }
}

@media (min-width: 768px) {
    .vb-static-page.vb-guides-page .md\:grid-cols-6 {
        grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    }

    .vb-static-page.vb-guides-page .md\:grid-cols-12 {
        grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
    }

    .vb-static-page.vb-guides-page .md\:grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    .vb-static-page.vb-guides-page .md\:col-span-4 {
        grid-column: span 4 / span 4 !important;
    }

    .vb-static-page.vb-guides-page .md\:col-span-8 {
        grid-column: span 8 / span 8 !important;
    }

    .vb-static-page.vb-guides-page .md\:col-span-12 {
        grid-column: span 12 / span 12 !important;
    }

    .vb-static-page.vb-guides-page .md\:flex-row {
        flex-direction: row !important;
    }
}

@media (max-width: 767px) {
    html:has(.vb-static-page.vb-guides-page) {
        font-size: 100% !important;
    }

    .vb-static-page.vb-guides-page,
    .vb-static-page.vb-guides-page > main {
        max-width: 100vw !important;
        overflow-x: hidden !important;
    }

    .vb-static-page.vb-guides-page main {
        padding: 96px 24px 80px !important;
    }

    .vb-static-page.vb-guides-page main > section:first-of-type {
        padding: 64px 0 !important;
        text-align: center !important;
    }

    .vb-static-page.vb-guides-page h1 {
        font-size: 48px !important;
        line-height: 1 !important;
    }

    .vb-static-page.vb-guides-page h2[class*="text-3xl"] {
        font-size: 30px !important;
        line-height: 36px !important;
    }

    .vb-static-page.vb-guides-page .grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    .vb-static-page.vb-guides-page .grid > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="bg-surface-container"]) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-static-page.vb-guides-page a[class*="signature-gradient"]:not([class*="rounded-full"]),
    .vb-static-page.vb-guides-page button[class*="signature-gradient"]:not([class*="rounded-full"]) {
        width: auto !important;
        text-align: center !important;
    }

    .vb-static-page.vb-guides-page section[class*="mt-20"] {
        padding: 48px !important;
    }

    .vb-static-page.vb-guides-page section[class*="mt-20"] > div[class*="gap-4"] {
        gap: 16px !important;
    }
}

@media (max-width: 767px) {
    body:has(.vb-static-page.vb-guides-page) .vb-static-page.vb-guides-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > main {
        padding: 96px 24px 80px !important;
        background-image: radial-gradient(rgba(181, 134, 255, 0.1) 1px, transparent 1px) !important;
        background-size: 24px 24px !important;
    }

    body:has(.vb-static-page.vb-guides-page) .vb-static-page.vb-guides-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > main > section:first-of-type {
        padding: 64px 0 !important;
    }

    body:has(.vb-static-page.vb-guides-page) .vb-static-page.vb-guides-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) h1 {
        font-size: 48px !important;
        line-height: 48px !important;
        letter-spacing: -0.025em !important;
    }

    body:has(.vb-static-page.vb-guides-page) .vb-static-page.vb-guides-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) h2[class*="text-3xl"] {
        margin-bottom: 16px !important;
        font-size: 30px !important;
        line-height: 36px !important;
    }

    body:has(.vb-static-page.vb-guides-page) .vb-static-page.vb-guides-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > main > section,
    body:has(.vb-static-page.vb-guides-page) .vb-static-page.vb-guides-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) > main > section:first-of-type {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    body:has(.vb-static-page.vb-guides-page) .vb-static-page.vb-guides-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) .grid > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="bg-surface-container"]) {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        border-radius: 16px !important;
    }

    body:has(.vb-static-page.vb-guides-page) .vb-static-page.vb-guides-page:not(.vb-compare-models-page):not(.vb-help-me-choose-page):not(.vb-bundles-accessories-page) section[class*="mt-20"] {
        width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding: 48px !important;
    }
}

/* savings calculator: final pixel guard against generic static-page overrides. */
.vb-static-page.vb-savings-calculator-page,
.vb-static-page.vb-savings-calculator-page :where(:not(.material-symbols-outlined)) {
    font-family: "Kumbh Sans", sans-serif !important;
}

body:has(.vb-static-page.vb-savings-calculator-page),
body:has(.vb-static-page.vb-savings-calculator-page) .site,
body:has(.vb-static-page.vb-savings-calculator-page) .site-content,
body:has(.vb-static-page.vb-savings-calculator-page) .elementor,
body:has(.vb-static-page.vb-savings-calculator-page) .elementor-section,
body:has(.vb-static-page.vb-savings-calculator-page) .elementor-container,
body:has(.vb-static-page.vb-savings-calculator-page) .elementor-widget-wrap,
body:has(.vb-static-page.vb-savings-calculator-page) .elementor-widget-container {
    background-color: #150529 !important;
}

.vb-static-page.vb-savings-calculator-page {
    color: #f0dfff !important;
    background-color: #150529 !important;
}

.vb-static-page.vb-savings-calculator-page main {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding-top: 0 !important;
    overflow: hidden !important;
}

.vb-static-page.vb-savings-calculator-page main > section:first-of-type {
    padding-top: 168px !important;
    padding-bottom: 64px !important;
    padding-right: 24px !important;
    padding-left: 24px !important;
}

.vb-static-page.vb-savings-calculator-page main > section:first-of-type > div:first-child {
    z-index: 0 !important;
    background-color: rgba(181, 134, 255, 0.1) !important;
    filter: blur(120px) !important;
    opacity: 1 !important;
    pointer-events: none !important;
}

.vb-static-page.vb-savings-calculator-page main > section:first-of-type > div:not(:first-child) {
    position: relative;
    z-index: 1;
}

.vb-static-page.vb-savings-calculator-page h1 {
    margin-top: 0 !important;
    margin-bottom: 32px !important;
    font-size: 72px !important;
    line-height: 72px !important;
    letter-spacing: -0.025em !important;
}

.vb-static-page.vb-savings-calculator-page h2 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.vb-static-page.vb-savings-calculator-page h2[class*="text-3xl"] {
    font-size: 30px !important;
    line-height: 36px !important;
}

.vb-static-page.vb-savings-calculator-page h2[class*="text-4xl"] {
    font-size: 36px !important;
    line-height: 40px !important;
}

.vb-static-page.vb-savings-calculator-page h2[class*="md:text-5xl"] {
    font-size: 48px !important;
    line-height: 48px !important;
}

.vb-static-page.vb-savings-calculator-page :is(h1, h2, h3, h4, h5, h6)[class*="mb-16"] {
    margin-bottom: 64px !important;
}

.vb-static-page.vb-savings-calculator-page :is(h1, h2, h3, h4, h5, h6)[class*="mb-12"] {
    margin-bottom: 48px !important;
}

.vb-static-page.vb-savings-calculator-page :is(h1, h2, h3, h4, h5, h6)[class*="mb-8"] {
    margin-bottom: 32px !important;
}

.vb-static-page.vb-savings-calculator-page :is(h1, h2, h3, h4, h5, h6)[class*="mb-6"] {
    margin-bottom: 24px !important;
}

.vb-static-page.vb-savings-calculator-page :is(h1, h2, h3, h4, h5, h6)[class*="mb-4"] {
    margin-bottom: 16px !important;
}

.vb-static-page.vb-savings-calculator-page .glass-card {
    background: rgba(60, 22, 104, 0.4) !important;
    outline: 1px solid rgba(87, 56, 127, 0.2) !important;
    backdrop-filter: blur(16px) !important;
}

.vb-static-page.vb-savings-calculator-page a,
.vb-static-page.vb-savings-calculator-page a:hover,
.vb-static-page.vb-savings-calculator-page a:focus,
.vb-static-page.vb-savings-calculator-page a:visited {
    color: inherit;
    text-decoration: none;
}

.vb-static-page.vb-savings-calculator-page a[class*="text-white"],
.vb-static-page.vb-savings-calculator-page a[class*="text-white"]:hover,
.vb-static-page.vb-savings-calculator-page a[class*="text-white"]:focus,
.vb-static-page.vb-savings-calculator-page a[class*="text-white"]:visited {
    color: #fff !important;
}

.vb-static-page.vb-savings-calculator-page button[class*="bg-surface-container-highest"],
.vb-static-page.vb-savings-calculator-page button[class*="bg-surface-container-highest"]:hover,
.vb-static-page.vb-savings-calculator-page button[class*="bg-surface-container-highest"]:focus,
.vb-static-page.vb-savings-calculator-page button[class*="bg-surface-container-highest"]:active {
    background-color: #33125b !important;
    color: #fff !important;
    border-color: rgba(87, 56, 127, 0.2) !important;
    box-shadow: none !important;
    outline: none !important;
}

.vb-static-page.vb-savings-calculator-page input[type="range"] {
    height: 8px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 8px !important;
    background-color: #33125b !important;
    box-shadow: none !important;
    accent-color: #b586ff !important;
}

.vb-static-page.vb-savings-calculator-page main > section:nth-of-type(2) label {
    color: #f0dfff !important;
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 600 !important;
}

.vb-static-page.vb-savings-calculator-page main > section:nth-of-type(2) input[type="range"] {
    -webkit-appearance: none !important;
    appearance: none !important;
    cursor: pointer !important;
}

.vb-static-page.vb-savings-calculator-page main > section:nth-of-type(2) input[type="range"]::-webkit-slider-runnable-track {
    width: 100% !important;
    height: 8px !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: #33125b !important;
    box-shadow: none !important;
}

.vb-static-page.vb-savings-calculator-page main > section:nth-of-type(2) input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none !important;
    appearance: none !important;
    width: 16px !important;
    height: 16px !important;
    margin-top: -4px !important;
    border: 0 !important;
    border-radius: 9999px !important;
    background: #b586ff !important;
    box-shadow: none !important;
}

.vb-static-page.vb-savings-calculator-page main > section:nth-of-type(2) input[type="range"]::-moz-range-track {
    width: 100% !important;
    height: 8px !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: #33125b !important;
    box-shadow: none !important;
}

.vb-static-page.vb-savings-calculator-page main > section:nth-of-type(2) input[type="range"]::-moz-range-thumb {
    width: 16px !important;
    height: 16px !important;
    border: 0 !important;
    border-radius: 9999px !important;
    background: #b586ff !important;
    box-shadow: none !important;
}

@media (max-width: 767px) {
    html:has(.vb-static-page.vb-savings-calculator-page) {
        font-size: 100% !important;
    }

    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page,
    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page > main {
        max-width: 100vw !important;
        overflow-x: hidden !important;
        background-color: #150529 !important;
    }

    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page > main {
        padding-top: 0 !important;
    }

    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page > main > section,
    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page > main > section:first-of-type {
        padding-right: 24px !important;
        padding-left: 24px !important;
    }

    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page > main > section:first-of-type {
        padding-top: 168px !important;
        padding-bottom: 64px !important;
    }

    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page h1 {
        font-size: 48px !important;
        line-height: 1.1 !important;
        margin-bottom: 32px !important;
    }

    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page h2[class*="text-3xl"] {
        font-size: 30px !important;
        line-height: 36px !important;
    }

    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page h2[class*="text-4xl"] {
        font-size: 36px !important;
        line-height: 40px !important;
    }

    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page .max-w-7xl,
    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page .max-w-5xl,
    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page .max-w-4xl,
    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page .max-w-3xl,
    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page .max-w-2xl {
        max-width: 100% !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page .grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page .grid-cols-2,
    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page .md\:grid-cols-2,
    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page .md\:grid-cols-3,
    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page .lg\:grid-cols-12 {
        grid-template-columns: 1fr !important;
    }

    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page .grid > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"]) {
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page a[class*="signature-gradient"]:not([class*="rounded-full"]),
    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page button[class*="signature-gradient"]:not([class*="rounded-full"]) {
        width: auto !important;
    }

    body:has(.vb-static-page.vb-savings-calculator-page) .vb-static-page.vb-savings-calculator-page .flex-wrap > a[class*="signature-gradient"] {
        flex-grow: 1 !important;
    }
}

/* Channel List pixel restore: keep the reference app canvas intact inside WordPress. */
html:has(.vb-static-page.vb-channel-list-page) {
    font-size: 100% !important;
}

body:has(.vb-static-page.vb-channel-list-page) {
    background: #150529 !important;
}

body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page {
    position: relative;
    width: 100vw !important;
    min-height: 100vh !important;
    margin-left: calc(50% - 50vw) !important;
    overflow-x: clip !important;
    background: #150529 !important;
    color: #f0dfff !important;
}

body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page,
body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page :where(:not(.material-symbols-outlined)) {
    font-family: "Kumbh Sans", sans-serif !important;
}

body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page > main {
    width: auto !important;
    max-width: none !important;
    min-height: 100vh !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding: 0 !important;
    flex: 1 1 auto !important;
    background: transparent !important;
}

body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page > main > section:first-of-type {
    padding-top: 144px !important;
}

body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page > aside {
    top: var(--vb-header-height, 80px) !important;
    height: calc(100vh - var(--vb-header-height, 80px)) !important;
}

body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page a,
body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page a:hover,
body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page a:focus,
body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page a:visited {
    color: inherit;
    text-decoration: none;
}

body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page button {
    font-family: "Kumbh Sans", sans-serif !important;
    box-shadow: none;
}

body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page button:focus,
body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page button:focus-visible,
body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page button:active {
    outline: 0 !important;
    box-shadow: none !important;
}

body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page button[class*="bg-surface-container-highest"]:focus,
body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page button[class*="bg-surface-container-highest"]:focus-visible,
body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page button[class*="bg-surface-container-highest"]:active {
    background-color: #33125b !important;
    color: #f0dfff !important;
}

body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page button[class*="hover:bg-primary"]:hover,
body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page button[class*="hover:bg-primary"]:focus:hover,
body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page button[class*="hover:bg-primary"]:active:hover {
    background-color: #b586ff !important;
    color: #2e0062 !important;
}

body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page button.w-full.mt-8:focus,
body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page button.w-full.mt-8:focus-visible,
body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page button.w-full.mt-8:active {
    background: transparent !important;
    color: #b586ff !important;
}

body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page button.w-full.mt-8:hover,
body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page button.w-full.mt-8:focus:hover,
body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page button.w-full.mt-8:active:hover {
    background: transparent !important;
    color: #ffffff !important;
}

body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page header input[type="text"] {
    width: 16rem !important;
    min-height: 0 !important;
    padding: 8px 40px 8px 16px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: rgba(0, 0, 0, 0.2) !important;
    color: #f0dfff !important;
    box-shadow: none !important;
    outline: none !important;
}

body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page header input[type="text"]::placeholder {
    color: #94a3b8 !important;
    opacity: 1 !important;
}

body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page .gradient-text,
body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page .bg-clip-text {
    background-clip: text !important;
    -webkit-background-clip: text !important;
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
}

@media (min-width: 768px) {
    body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page > aside {
        display: flex !important;
    }

    body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page > main {
        margin-left: 16rem !important;
    }
}

@media (max-width: 767px) {
    body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page > aside {
        display: none !important;
    }

    body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page > main {
        margin-left: 0 !important;
        padding-bottom: 80px !important;
    }

    body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page > main > section,
    body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page > main > section:first-of-type {
        padding-right: 32px !important;
        padding-left: 32px !important;
    }

    body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page > main > section:first-of-type {
        padding-top: 112px !important;
    }

    body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page :is(h1, h2, h3, h4, h5, h6, p, li, summary, a, button, span) {
        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page > main > section:first-of-type h2 {
        font-size: 30px !important;
        line-height: 36px !important;
    }

    body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page > main > section:nth-of-type(3) > .max-w-6xl {
        width: 100% !important;
        max-width: 100% !important;
        padding: 48px !important;
        box-sizing: border-box !important;
    }

    body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page > main > section:nth-of-type(3) > .max-w-6xl .relative.z-10 {
        width: 100% !important;
        max-width: 100% !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
        box-sizing: border-box !important;
    }

    body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page > main > section:nth-of-type(3) > .max-w-6xl .flex.flex-col {
        width: 100% !important;
        align-items: stretch !important;
    }

    body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page > main > section:nth-of-type(3) > .max-w-6xl button {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        box-sizing: border-box !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page > main > section:nth-of-type(3) > .max-w-6xl p.mt-8 {
        max-width: 100% !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        text-align: center !important;
    }

    body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page > main > section:nth-of-type(3) > .max-w-6xl p.mt-8 .material-symbols-outlined {
        flex: 0 0 auto !important;
        margin-top: 0 !important;
    }

    body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page > main > section:nth-of-type(3) > .max-w-6xl p.mt-8 {
        font-size: 14px !important;
        line-height: 20px !important;
    }

    body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page > nav {
        display: flex !important;
    }

body:has(.vb-static-page.vb-channel-list-page) .vb-static-page.vb-channel-list-page .grid > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="ghost-border"]) {
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
}

/* Video Tutorials pixel restore: keep the reference app canvas intact inside WordPress. */
html:has(.vb-static-page.vb-video-tutorials-page) {
    font-size: 100% !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) {
    background: #150529 !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .site,
body:has(.vb-static-page.vb-video-tutorials-page) .site-content,
body:has(.vb-static-page.vb-video-tutorials-page) .elementor,
body:has(.vb-static-page.vb-video-tutorials-page) .elementor-section,
body:has(.vb-static-page.vb-video-tutorials-page) .elementor-container,
body:has(.vb-static-page.vb-video-tutorials-page) .elementor-widget-wrap,
body:has(.vb-static-page.vb-video-tutorials-page) .elementor-widget-container {
    max-width: none !important;
    overflow-x: clip !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page {
    position: relative;
    width: 100vw !important;
    min-height: 100vh !important;
    margin-left: calc(50% - 50vw) !important;
    overflow-x: clip !important;
    background: #150529 !important;
    color: #f0dfff !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page :where(:not(.material-symbols-outlined)) {
    font-family: "Kumbh Sans", sans-serif !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main {
    width: 100% !important;
    max-width: none !important;
    min-height: 100vh !important;
    margin: 0 !important;
    padding: 168px 0 80px !important;
    background: transparent !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section {
    padding-right: 32px !important;
    padding-left: 32px !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:first-of-type {
    padding-top: 0 !important;
    isolation: isolate !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:first-of-type > .absolute.top-0.right-0.signature-gradient {
    top: 0 !important;
    right: 0 !important;
    z-index: 0 !important;
    width: 500px !important;
    height: 500px !important;
    border-radius: 9999px !important;
    background: linear-gradient(135deg, #7B2FE0 0%, #E950CC 100%) !important;
    opacity: 0.1 !important;
    filter: blur(120px) !important;
    pointer-events: none !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:first-of-type > .flex {
    position: relative !important;
    z-index: 1 !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page h1 {
    margin: 0 !important;
    font-size: 72px !important;
    line-height: 72px !important;
    font-weight: 700 !important;
    letter-spacing: -1.8px !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page h2 {
    margin-top: 0 !important;
    font-size: 36px !important;
    line-height: 40px !important;
    font-weight: 700 !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page h3,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page h4 {
    margin-top: 0 !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page :is(h1, h2, h3, h4, h5, h6, p) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page :is(h1, h2, h3, h4, h5, h6, p)[class*="mb-2"] {
    margin-bottom: 8px !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page :is(h1, h2, h3, h4, h5, h6, p)[class*="mb-3"] {
    margin-bottom: 12px !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page :is(h1, h2, h3, h4, h5, h6, p)[class*="mb-4"] {
    margin-bottom: 16px !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page :is(h1, h2, h3, h4, h5, h6, p)[class*="mb-6"] {
    margin-bottom: 24px !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page :is(h1, h2, h3, h4, h5, h6, p)[class*="mb-8"] {
    margin-bottom: 32px !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page :is(h1, h2, h3, h4, h5, h6, p)[class*="mb-12"] {
    margin-bottom: 48px !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page :is(h1, h2, h3, h4, h5, h6, p)[class*="mb-16"] {
    margin-bottom: 64px !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page .space-y-4 > :not([hidden]) ~ :not([hidden]) {
    margin-top: 16px !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page .space-y-6 > :not([hidden]) ~ :not([hidden]) {
    margin-top: 24px !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page .space-y-8 > :not([hidden]) ~ :not([hidden]) {
    margin-top: 32px !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page a,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page a:hover,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page a:focus,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page a:visited {
    text-decoration: none;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page a:not([class*="text-"]):not([class*="signature-gradient"]),
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page a:not([class*="text-"]):not([class*="signature-gradient"]):hover,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page a:not([class*="text-"]):not([class*="signature-gradient"]):focus,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page a:not([class*="text-"]):not([class*="signature-gradient"]):visited {
    color: inherit;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page button,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page input {
    font-family: "Kumbh Sans", sans-serif !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page input[type="text"],
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page input[type="email"] {
    width: 100% !important;
    height: 58px !important;
    min-height: 58px !important;
    padding: 16px 24px !important;
    border: 1px solid rgba(87, 56, 127, 0.3) !important;
    border-radius: 12px !important;
    background: rgba(0, 0, 0, 0.4) !important;
    color: #f0dfff !important;
    box-shadow: none !important;
    outline: none !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page input[type="text"]::placeholder,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page input[type="email"]::placeholder {
    color: rgba(191, 156, 235, 0.4) !important;
    opacity: 1 !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page input[type="text"]:focus,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page input[type="email"]:focus {
    border-color: transparent !important;
    box-shadow: 0 0 0 2px #b586ff !important;
    outline: none !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page button {
    border: 0;
    box-shadow: none;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page button:focus,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page button:focus-visible,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page button:active {
    outline: 0 !important;
    box-shadow: none !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:first-of-type > div.flex > div:first-child > div.flex.gap-4 button {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:first-of-type > div.flex > div:first-child > div.flex.gap-4 button:first-child,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:first-of-type > div.flex > div:first-child > div.flex.gap-4 button:first-child:hover,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:first-of-type > div.flex > div:first-child > div.flex.gap-4 button:first-child:focus,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:first-of-type > div.flex > div:first-child > div.flex.gap-4 button:first-child:focus-visible,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:first-of-type > div.flex > div:first-child > div.flex.gap-4 button:first-child:active {
    background: #33125b !important;
    color: #ffffff !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:first-of-type > div.flex > div:first-child > div.flex.gap-4 button:not(:first-child),
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:first-of-type > div.flex > div:first-child > div.flex.gap-4 button:not(:first-child):focus,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:first-of-type > div.flex > div:first-child > div.flex.gap-4 button:not(:first-child):focus-visible,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:first-of-type > div.flex > div:first-child > div.flex.gap-4 button:not(:first-child):active {
    background: transparent !important;
    color: #bf9ceb !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:first-of-type > div.flex > div:first-child > div.flex.gap-4 button:not(:first-child):hover {
    background: transparent !important;
    color: #ffffff !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:nth-of-type(5) > div:nth-of-type(2) > button {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:nth-of-type(5) > div:nth-of-type(2) > button:first-child,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:nth-of-type(5) > div:nth-of-type(2) > button:first-child:hover,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:nth-of-type(5) > div:nth-of-type(2) > button:first-child:focus,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:nth-of-type(5) > div:nth-of-type(2) > button:first-child:focus-visible,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:nth-of-type(5) > div:nth-of-type(2) > button:first-child:active {
    background: #b586ff !important;
    color: #2e0062 !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:nth-of-type(5) > div:nth-of-type(2) > button:not(:first-child),
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:nth-of-type(5) > div:nth-of-type(2) > button:not(:first-child):focus,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:nth-of-type(5) > div:nth-of-type(2) > button:not(:first-child):focus-visible,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:nth-of-type(5) > div:nth-of-type(2) > button:not(:first-child):active {
    background: #2b0f4d !important;
    color: #bf9ceb !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:nth-of-type(5) > div:nth-of-type(2) > button:not(:first-child):hover {
    background: #2b0f4d !important;
    color: #ffffff !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:nth-of-type(5) .absolute.inset-0 button.w-12.h-12 {
    width: 48px !important;
    height: 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 2px solid rgba(255, 255, 255, 0.3) !important;
    border-radius: 9999px !important;
    background: transparent !important;
    color: #ffffff !important;
    box-shadow: none !important;
    outline: 0 !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:nth-of-type(5) .group:hover .absolute.inset-0 button.w-12.h-12,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:nth-of-type(5) .absolute.inset-0 button.w-12.h-12:hover,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:nth-of-type(5) .absolute.inset-0 button.w-12.h-12:focus,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:nth-of-type(5) .absolute.inset-0 button.w-12.h-12:focus-visible,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:nth-of-type(5) .absolute.inset-0 button.w-12.h-12:active {
    border-color: rgba(255, 255, 255, 1) !important;
    background: #ffffff !important;
    color: #000000 !important;
    box-shadow: none !important;
    outline: 0 !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page .material-symbols-outlined {
    font-family: "Material Symbols Outlined" !important;
    font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;
    line-height: normal !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page img {
    display: block;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page .aspect-video > img,
body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page img[class*="aspect-[16/10]"] {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:nth-of-type(2) .relative.rounded-xl > span.absolute.bottom-2.right-2 {
    left: auto !important;
    right: 8px !important;
    bottom: 8px !important;
    z-index: 10 !important;
    display: inline-flex !important;
    width: fit-content !important;
    min-width: 0 !important;
    max-width: max-content !important;
    height: 18px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 2px 8px !important;
    border-radius: 4px !important;
    background: rgba(0, 0, 0, 0.6) !important;
    color: #ffffff !important;
    font-size: 10px !important;
    line-height: 14px !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    transform: none !important;
}

@media (min-width: 1024px) {
    body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section {
        padding-right: 96px !important;
        padding-left: 96px !important;
    }
}

@media (max-width: 767px) {
    body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page,
    body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main {
        max-width: 100vw !important;
        overflow-x: clip !important;
    }

    body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main {
        padding-top: 168px !important;
        padding-bottom: 80px !important;
    }

    body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section,
    body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:first-of-type {
        padding-right: 32px !important;
        padding-left: 32px !important;
    }

    body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:first-of-type {
        padding-top: 0 !important;
    }

    body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page > main > section:first-of-type > .absolute.top-0.right-0.signature-gradient {
        right: -128px !important;
        width: 500px !important;
        height: 500px !important;
        opacity: 0.1 !important;
        filter: blur(120px) !important;
    }

    body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page h1 {
        font-size: 48px !important;
        line-height: 1.1 !important;
        letter-spacing: -1.2px !important;
    }

    body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page h2 {
        font-size: 36px !important;
        line-height: 40px !important;
    }

    body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page :is(h1, h2, h3, h4, h5, h6, p, li, a, button, label, input, span) {
        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page .grid > :is(.glass-panel, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="rounded-[40px]"]) {
        width: auto !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page [class*="rounded-[40px]"] {
        border-radius: 40px !important;
    }

body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page a[class*="signature-gradient"]:not([class*="rounded-full"]),
    body:has(.vb-static-page.vb-video-tutorials-page) .vb-static-page.vb-video-tutorials-page button[class*="signature-gradient"]:not([class*="rounded-full"]) {
        width: 100% !important;
        display: block !important;
        text-align: center !important;
    }
}

/* ============================================
   2026-06-02 reference-page pixel parity guard
   本轮待检测页面使用 code.html 原结构，需避开旧静态页移动端兜底。
   ============================================ */

html:has(.vb-reference-page) {
    font-size: 100% !important;
}

.vb-static-page.vb-reference-page,
.vb-static-page.vb-reference-page :where(:not(.material-symbols-outlined)) {
    word-break: normal !important;
    overflow-wrap: normal !important;
}

.vb-static-page.vb-reference-kumbh,
.vb-static-page.vb-reference-kumbh :where(:not(.material-symbols-outlined)) {
    font-family: "Kumbh Sans", sans-serif !important;
}

.vb-static-page.vb-reference-plus,
.vb-static-page.vb-reference-plus :where(:not(.material-symbols-outlined)) {
    font-family: "Plus Jakarta Sans", sans-serif !important;
}

.vb-static-page.vb-reference-page .font-\[\'Kumbh_Sans\'\],
.vb-static-page.vb-reference-page .font-\[\'Kumbh_Sans\'\] :where(:not(.material-symbols-outlined)) {
    font-family: "Kumbh Sans", sans-serif !important;
}

.vb-static-page.vb-reference-page .font-\[\'Plus_Jakarta_Sans\'\],
.vb-static-page.vb-reference-page .font-\[\'Plus_Jakarta_Sans\'\] :where(:not(.material-symbols-outlined)) {
    font-family: "Plus Jakarta Sans", sans-serif !important;
}

.vb-static-page.vb-reference-page .material-symbols-outlined {
    font-family: "Material Symbols Outlined" !important;
    font-weight: normal !important;
    font-style: normal !important;
    line-height: 1 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    white-space: nowrap !important;
    word-wrap: normal !important;
    direction: ltr !important;
    -webkit-font-feature-settings: "liga";
    -webkit-font-smoothing: antialiased;
}

.vb-static-page.vb-reference-page :is(h1, h2, h3, h4, h5, h6, p) {
    margin-top: 0 !important;
}

.vb-static-page.vb-reference-page .mt-0 { margin-top: 0 !important; }
.vb-static-page.vb-reference-page .mt-1 { margin-top: 0.25rem !important; }
.vb-static-page.vb-reference-page .mt-2 { margin-top: 0.5rem !important; }
.vb-static-page.vb-reference-page .mt-3 { margin-top: 0.75rem !important; }
.vb-static-page.vb-reference-page .mt-4 { margin-top: 1rem !important; }
.vb-static-page.vb-reference-page .mt-6 { margin-top: 1.5rem !important; }
.vb-static-page.vb-reference-page .mt-8 { margin-top: 2rem !important; }
.vb-static-page.vb-reference-page .mt-10 { margin-top: 2.5rem !important; }
.vb-static-page.vb-reference-page .mt-12 { margin-top: 3rem !important; }
.vb-static-page.vb-reference-page .mt-16 { margin-top: 4rem !important; }
.vb-static-page.vb-reference-page .mt-20 { margin-top: 5rem !important; }
.vb-static-page.vb-reference-page .mt-24 { margin-top: 6rem !important; }

.vb-static-page.vb-reference-page .mb-0 { margin-bottom: 0 !important; }
.vb-static-page.vb-reference-page .mb-1 { margin-bottom: 0.25rem !important; }
.vb-static-page.vb-reference-page .mb-2 { margin-bottom: 0.5rem !important; }
.vb-static-page.vb-reference-page .mb-3 { margin-bottom: 0.75rem !important; }
.vb-static-page.vb-reference-page .mb-4 { margin-bottom: 1rem !important; }
.vb-static-page.vb-reference-page .mb-5 { margin-bottom: 1.25rem !important; }
.vb-static-page.vb-reference-page .mb-6 { margin-bottom: 1.5rem !important; }
.vb-static-page.vb-reference-page .mb-8 { margin-bottom: 2rem !important; }
.vb-static-page.vb-reference-page .mb-10 { margin-bottom: 2.5rem !important; }
.vb-static-page.vb-reference-page .mb-12 { margin-bottom: 3rem !important; }
.vb-static-page.vb-reference-page .mb-16 { margin-bottom: 4rem !important; }
.vb-static-page.vb-reference-page .mb-20 { margin-bottom: 5rem !important; }
.vb-static-page.vb-reference-page .mb-24 { margin-bottom: 6rem !important; }
.vb-static-page.vb-reference-page .mb-32 { margin-bottom: 8rem !important; }

.vb-static-page.vb-reference-page .p-4 { padding: 1rem !important; }
.vb-static-page.vb-reference-page .p-6 { padding: 1.5rem !important; }
.vb-static-page.vb-reference-page .p-8 { padding: 2rem !important; }
.vb-static-page.vb-reference-page .p-10 { padding: 2.5rem !important; }
.vb-static-page.vb-reference-page .p-12 { padding: 3rem !important; }
.vb-static-page.vb-reference-page .px-4 { padding-left: 1rem !important; padding-right: 1rem !important; }
.vb-static-page.vb-reference-page .px-6 { padding-left: 1.5rem !important; padding-right: 1.5rem !important; }
.vb-static-page.vb-reference-page .px-8 { padding-left: 2rem !important; padding-right: 2rem !important; }
.vb-static-page.vb-reference-page .py-3 { padding-top: 0.75rem !important; padding-bottom: 0.75rem !important; }
.vb-static-page.vb-reference-page .py-4 { padding-top: 1rem !important; padding-bottom: 1rem !important; }
.vb-static-page.vb-reference-page .py-5 { padding-top: 1.25rem !important; padding-bottom: 1.25rem !important; }
.vb-static-page.vb-reference-page .py-6 { padding-top: 1.5rem !important; padding-bottom: 1.5rem !important; }
.vb-static-page.vb-reference-page .py-8 { padding-top: 2rem !important; padding-bottom: 2rem !important; }
.vb-static-page.vb-reference-page .py-12 { padding-top: 3rem !important; padding-bottom: 3rem !important; }
.vb-static-page.vb-reference-page .py-16 { padding-top: 4rem !important; padding-bottom: 4rem !important; }
.vb-static-page.vb-reference-page .py-20 { padding-top: 5rem !important; padding-bottom: 5rem !important; }
.vb-static-page.vb-reference-page .py-24 { padding-top: 6rem !important; padding-bottom: 6rem !important; }
.vb-static-page.vb-reference-page .py-32 { padding-top: 8rem !important; padding-bottom: 8rem !important; }
.vb-static-page.vb-reference-page .pt-0 { padding-top: 0 !important; }
.vb-static-page.vb-reference-page .pt-12 { padding-top: 3rem !important; }
.vb-static-page.vb-reference-page .pt-16 { padding-top: 4rem !important; }
.vb-static-page.vb-reference-page .pt-20 { padding-top: 5rem !important; }
.vb-static-page.vb-reference-page .pt-24 { padding-top: 6rem !important; }
.vb-static-page.vb-reference-page .pb-16 { padding-bottom: 4rem !important; }
.vb-static-page.vb-reference-page .pb-20 { padding-bottom: 5rem !important; }
.vb-static-page.vb-reference-page .pb-24 { padding-bottom: 6rem !important; }
.vb-static-page.vb-reference-page .pb-32 { padding-bottom: 8rem !important; }

.vb-static-page.vb-reference-page .gap-1 { gap: 0.25rem !important; }
.vb-static-page.vb-reference-page .gap-2 { gap: 0.5rem !important; }
.vb-static-page.vb-reference-page .gap-3 { gap: 0.75rem !important; }
.vb-static-page.vb-reference-page .gap-4 { gap: 1rem !important; }
.vb-static-page.vb-reference-page .gap-6 { gap: 1.5rem !important; }
.vb-static-page.vb-reference-page .gap-8 { gap: 2rem !important; }
.vb-static-page.vb-reference-page .gap-10 { gap: 2.5rem !important; }
.vb-static-page.vb-reference-page .gap-12 { gap: 3rem !important; }
.vb-static-page.vb-reference-page .gap-16 { gap: 4rem !important; }

.vb-static-page.vb-reference-page .text-xs { font-size: 0.75rem !important; line-height: 1rem !important; }
.vb-static-page.vb-reference-page .text-sm { font-size: 0.875rem !important; line-height: 1.25rem !important; }
.vb-static-page.vb-reference-page .text-base { font-size: 1rem !important; line-height: 1.5rem !important; }
.vb-static-page.vb-reference-page .text-lg { font-size: 1.125rem !important; line-height: 1.75rem !important; }
.vb-static-page.vb-reference-page .text-xl { font-size: 1.25rem !important; line-height: 1.75rem !important; }
.vb-static-page.vb-reference-page .text-2xl { font-size: 1.5rem !important; line-height: 2rem !important; }
.vb-static-page.vb-reference-page .text-3xl { font-size: 1.875rem !important; line-height: 2.25rem !important; }
.vb-static-page.vb-reference-page .text-4xl { font-size: 2.25rem !important; line-height: 2.5rem !important; }
.vb-static-page.vb-reference-page .text-5xl { font-size: 3rem !important; line-height: 1 !important; }
.vb-static-page.vb-reference-page .text-6xl { font-size: 3.75rem !important; line-height: 1 !important; }
.vb-static-page.vb-reference-page .text-7xl { font-size: 4.5rem !important; line-height: 1 !important; }
.vb-static-page.vb-reference-page .text-\[22px\] { font-size: 22px !important; line-height: 33px !important; }
.vb-static-page.vb-reference-page .text-\[30px\] { font-size: 30px !important; }
.vb-static-page.vb-reference-page .text-\[38px\] { font-size: 38px !important; line-height: 57px !important; }
.vb-static-page.vb-reference-page .text-\[48px\] { font-size: 48px !important; }
.vb-static-page.vb-reference-page .text-\[54px\] { font-size: 54px !important; }
.vb-static-page.vb-reference-page .text-\[96px\] { font-size: 96px !important; }
.vb-static-page.vb-reference-page .leading-none { line-height: 1 !important; }
.vb-static-page.vb-reference-page .leading-tight { line-height: 1.25 !important; }
.vb-static-page.vb-reference-page .leading-snug { line-height: 1.375 !important; }
.vb-static-page.vb-reference-page .leading-normal { line-height: 1.5 !important; }
.vb-static-page.vb-reference-page .leading-relaxed { line-height: 1.625 !important; }
.vb-static-page.vb-reference-page .leading-\[1\.1\] { line-height: 1.1 !important; }
.vb-static-page.vb-reference-page .leading-\[36px\] { line-height: 36px !important; }
.vb-static-page.vb-reference-page .leading-\[40px\] { line-height: 40px !important; }
.vb-static-page.vb-reference-page .leading-\[45px\] { line-height: 45px !important; }
.vb-static-page.vb-reference-page .leading-\[48px\] { line-height: 48px !important; }
.vb-static-page.vb-reference-page .leading-\[60px\] { line-height: 60px !important; }

.vb-static-page.vb-reference-page .rounded-lg { border-radius: 0.5rem !important; }
.vb-static-page.vb-reference-page .rounded-xl { border-radius: 0.75rem !important; }
.vb-static-page.vb-reference-page .rounded-2xl { border-radius: 1rem !important; }
.vb-static-page.vb-reference-page .rounded-3xl { border-radius: 1.5rem !important; }
.vb-static-page.vb-reference-page .rounded-\[16px\] { border-radius: 16px !important; }
.vb-static-page.vb-reference-page .rounded-\[20px\] { border-radius: 20px !important; }
.vb-static-page.vb-reference-page .rounded-\[24px\] { border-radius: 24px !important; }
.vb-static-page.vb-reference-page .rounded-\[32px\] { border-radius: 32px !important; }

@media (min-width: 768px) {
    .vb-static-page.vb-reference-page .md\:text-5xl { font-size: 3rem !important; line-height: 1 !important; }
    .vb-static-page.vb-reference-page .md\:text-4xl { font-size: 2.25rem !important; line-height: 2.5rem !important; }
    .vb-static-page.vb-reference-page .md\:text-6xl { font-size: 3.75rem !important; line-height: 1 !important; }
    .vb-static-page.vb-reference-page .md\:text-7xl { font-size: 4.5rem !important; line-height: 1 !important; }
    .vb-static-page.vb-reference-page .md\:text-\[38px\] { font-size: 38px !important; }
    .vb-static-page.vb-reference-page .md\:text-\[54px\] { font-size: 54px !important; }
    .vb-static-page.vb-reference-page .md\:leading-\[1\.1\] { line-height: 1.1 !important; }
    .vb-static-page.vb-reference-page .md\:leading-\[45px\] { line-height: 45px !important; }
    .vb-static-page.vb-reference-page .md\:leading-\[48px\] { line-height: 48px !important; }
    .vb-static-page.vb-reference-page .md\:leading-\[57px\] { line-height: 57px !important; }
    .vb-static-page.vb-reference-page .md\:py-20 { padding-top: 5rem !important; padding-bottom: 5rem !important; }
    .vb-static-page.vb-reference-page .md\:py-24 { padding-top: 6rem !important; padding-bottom: 6rem !important; }
    .vb-static-page.vb-reference-page .md\:px-8 { padding-left: 2rem !important; padding-right: 2rem !important; }
}

@media (max-width: 767px) {
    .vb-static-page.vb-reference-page,
    .vb-static-page.vb-reference-page > main {
        max-width: none !important;
        overflow-x: clip !important;
    }

    .vb-static-page.vb-reference-page > main {
        padding-top: inherit;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page > main:not([class*="pt-"]):not([class*="py-"]) { padding-top: 0 !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).pt-0 { padding-top: 0 !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).pt-12 { padding-top: 3rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).pt-16 { padding-top: 4rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).pt-20 { padding-top: 5rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).pt-24 { padding-top: 6rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).py-16 { padding-top: 4rem !important; padding-bottom: 4rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).py-20 { padding-top: 5rem !important; padding-bottom: 5rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).py-24 { padding-top: 6rem !important; padding-bottom: 6rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).py-32 { padding-top: 8rem !important; padding-bottom: 8rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).px-0 { padding-left: 0 !important; padding-right: 0 !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).px-6 { padding-left: 1.5rem !important; padding-right: 1.5rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).px-8 { padding-left: 2rem !important; padding-right: 2rem !important; }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page h1.text-5xl { font-size: 3rem !important; line-height: 1 !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page h1.text-\[48px\] { font-size: 48px !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page h1.text-\[54px\] { font-size: 54px !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page h2.text-xl { font-size: 1.25rem !important; line-height: 1.75rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page h2.text-2xl { font-size: 1.5rem !important; line-height: 2rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page h2.text-3xl { font-size: 1.875rem !important; line-height: 2.25rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page h2.text-4xl { font-size: 2.25rem !important; line-height: 2.5rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page h2.text-\[30px\] { font-size: 30px !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page h2.text-\[38px\] { font-size: 38px !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page h2.text-\[48px\] { font-size: 48px !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page h2.text-\[96px\] { font-size: 96px !important; }

    .vb-static-page.vb-reference-page > main > section,
    .vb-static-page.vb-reference-page > section {
        max-width: none !important;
    }

    .vb-static-page.vb-reference-page .grid > :is(.glass-card, article, details, form, [class*="rounded-xl"], [class*="rounded-2xl"], [class*="rounded-3xl"], [class*="rounded-[20px]"], [class*="rounded-[24px]"], [class*="rounded-[32px]"]) {
        width: auto !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
}

@media (max-width: 767px) {
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page > main > section,
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page > section {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page > main > section:first-of-type,
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page > section:first-of-type {
        padding-top: 0 !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(h1, h2, h3, h4, h5, h6) {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .mb-0 { margin-bottom: 0 !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .mb-1 { margin-bottom: 0.25rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .mb-2 { margin-bottom: 0.5rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .mb-3 { margin-bottom: 0.75rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .mb-4 { margin-bottom: 1rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .mb-5 { margin-bottom: 1.25rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .mb-6 { margin-bottom: 1.5rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .mb-8 { margin-bottom: 2rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .mb-10 { margin-bottom: 2.5rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .mb-12 { margin-bottom: 3rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .mb-16 { margin-bottom: 4rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .mb-20 { margin-bottom: 5rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .mb-24 { margin-bottom: 6rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .mb-32 { margin-bottom: 8rem !important; }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .leading-\[1\.1\] { line-height: 1.1 !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .leading-tight { line-height: 1.25 !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .leading-\[36px\] { line-height: 36px !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .leading-\[40px\] { line-height: 40px !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .leading-\[45px\] { line-height: 45px !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .leading-\[48px\] { line-height: 48px !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .leading-\[52\.8px\] { line-height: 52.8px !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .leading-\[60px\] { line-height: 60px !important; }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).pt-0 { padding-top: 0 !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).pt-12 { padding-top: 3rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).pt-16 { padding-top: 4rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).pt-20 { padding-top: 5rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).pt-24 { padding-top: 6rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).py-16 { padding-top: 4rem !important; padding-bottom: 4rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).py-20 { padding-top: 5rem !important; padding-bottom: 5rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).py-24 { padding-top: 6rem !important; padding-bottom: 6rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).py-32 { padding-top: 8rem !important; padding-bottom: 8rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).px-0 { padding-left: 0 !important; padding-right: 0 !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).px-6 { padding-left: 1.5rem !important; padding-right: 1.5rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page :is(main, section).px-8 { padding-left: 2rem !important; padding-right: 2rem !important; }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .rounded-xl { border-radius: 0.75rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .rounded-2xl { border-radius: 1rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .rounded-3xl { border-radius: 1.5rem !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .rounded-\[16px\] { border-radius: 16px !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .rounded-\[20px\] { border-radius: 20px !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .rounded-\[24px\] { border-radius: 24px !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .rounded-\[32px\] { border-radius: 32px !important; }
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page .rounded-\[40px\] { border-radius: 40px !important; }
}

.vb-static-page.vb-reference-page.vb-bundles-accessories-page :is(h1, h2, h3, h4, h5, h6, p):not([class*="mb-"]) {
    margin-bottom: 0 !important;
}

.vb-static-page.vb-reference-page.vb-bundles-accessories-page h4.font-bold:not([class*="text-"]) {
    line-height: 24px !important;
}

.vb-static-page.vb-reference-page.vb-bundles-accessories-page h3.text-\[22px\].text-xs {
    font-size: 12px !important;
    line-height: 16px !important;
}

.vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(4) button {
    border-color: rgb(181 134 255 / var(--tw-border-opacity, 1)) !important;
    box-shadow: none !important;
    outline: none !important;
}

.vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(4) button:focus,
.vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(4) button:focus-visible {
    box-shadow: none !important;
    outline: none !important;
}

.vb-static-page.vb-reference-page.vb-help-me-choose-page {
    padding-top: 0 !important;
}

@media (max-width: 767px) {
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:first-of-type {
        padding-top: 4rem !important;
    }
}

.vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(4) img.rounded-full {
    border-radius: 9999px !important;
    object-fit: cover !important;
}

.vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(5) a,
.vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(5) a:hover,
.vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(5) a:focus,
.vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(5) a:visited {
    color: #f0dfff !important;
}

@media (max-width: 767px) {
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:first-of-type h1 {
        max-width: none !important;
        font-size: 48px !important;
        line-height: 52.8px !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:first-of-type p {
        max-width: 42rem !important;
        font-size: 20px !important;
        line-height: 28px !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:first-of-type .h-48 {
        height: 12rem !important;
        margin-bottom: 4rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:first-of-type .-space-x-8 {
        gap: normal !important;
        max-width: none !important;
        transform: none !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:first-of-type img {
        flex: 0 1 auto !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:first-of-type .w-40 {
        width: 10rem !important;
        height: 10rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:first-of-type > .flex:last-child {
        flex-wrap: nowrap !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) {
        width: auto !important;
        margin-bottom: 8rem !important;
        margin-right: auto !important;
        margin-left: auto !important;
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) > div {
        width: 100% !important;
        padding: 0.25rem !important;
        border-radius: 1.5rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) > div > .flex:first-child {
        align-items: center !important;
        gap: normal !important;
        margin-bottom: 2.5rem !important;
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) h2 {
        margin-bottom: 2.5rem !important;
        font-size: 30px !important;
        line-height: 36px !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) button {
        width: auto !important;
        min-height: 0 !important;
        padding: 1.5rem !important;
        gap: 1.5rem !important;
        border-radius: 1rem !important;
        -webkit-tap-highlight-color: transparent !important;
        box-shadow: none !important;
        outline: 0 !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) button:not(.glass-card):hover,
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) button:not(.glass-card):focus,
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) button:not(.glass-card):focus-visible,
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) .grid.grid-cols-1 button:first-child,
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) button:not(.glass-card):active,
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) button.vb-help-option-selected {
        background-color: rgb(51, 18, 91) !important;
        border-color: rgb(145, 74, 246) !important;
        box-shadow: none !important;
        outline: 0 !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) button.glass-card:hover,
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) button.glass-card:focus,
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) button.glass-card:focus-visible,
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) button.glass-card:active {
        background: rgba(60, 22, 104, 0.6) !important;
        border-color: rgb(145 74 246 / 0.4) !important;
        box-shadow: 0 0 20px rgba(123, 47, 224, 0.15) !important;
        outline: 0 !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) button .w-14 {
        width: 3.5rem !important;
        height: 3.5rem !important;
        flex: 0 0 3.5rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) button span.block {
        font-size: 20px !important;
        line-height: 28px !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) .mt-12 {
        flex-direction: row !important;
        align-items: stretch !important;
        justify-content: flex-end !important;
        gap: 1rem !important;
        margin-top: 3rem !important;
        padding-right: 1rem !important;
        padding-bottom: 1rem !important;
        padding-left: 1rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) .mt-12 button {
        width: auto !important;
        min-height: 0 !important;
        padding: 1rem 2rem !important;
        border-color: rgb(229, 231, 235) !important;
        border-radius: 0.75rem !important;
        box-shadow: none !important;
        outline: 0 !important;
        white-space: normal !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) .mt-12 button:hover,
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) .mt-12 button:focus,
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) .mt-12 button:focus-visible,
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) .mt-12 button:active {
        border-color: rgb(229, 231, 235) !important;
        box-shadow: none !important;
        outline: 0 !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) .mt-12 button:first-child {
        width: 123.625px !important;
        justify-content: normal !important;
        gap: normal !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(2) .mt-12 button:last-child {
        flex: 0 1 auto !important;
        width: 202.375px !important;
        max-width: none !important;
        gap: 0.5rem !important;
        justify-content: normal !important;
        padding-right: 2.5rem !important;
        padding-left: 2.5rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(3) {
        width: auto !important;
        margin-bottom: 8rem !important;
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(3) .mb-16 {
        margin-bottom: 4rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(3) h2 {
        margin-top: 0.5rem !important;
        font-size: 36px !important;
        line-height: 40px !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(3) .grid.grid-cols-1 {
        gap: 3rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(3) .lg\:col-span-7 > .absolute:first-child {
        inset: -1rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(3) .lg\:col-span-7 img {
        aspect-ratio: auto !important;
        height: auto !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(3) .absolute.bottom-6 {
        position: absolute !important;
        width: auto !important;
        margin-top: 0 !important;
        padding: 1.5rem !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: normal !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(3) .pt-6 .p-6.rounded-2xl {
        align-items: center !important;
        gap: normal !important;
        padding: 1.5rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(3) .pt-6 .p-6.rounded-2xl button,
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(3) .pt-6 .p-6.rounded-2xl button:hover,
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(3) .pt-6 .p-6.rounded-2xl button:focus,
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(3) .pt-6 .p-6.rounded-2xl button:focus-visible,
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(3) .pt-6 .p-6.rounded-2xl button:active {
        background: transparent !important;
        border-color: rgb(229, 231, 235) !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        outline: 0 !important;
        text-decoration: none !important;
        -webkit-tap-highlight-color: transparent !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(4) {
        width: auto !important;
        margin-bottom: 8rem !important;
        padding: 4rem 1.5rem !important;
        border-radius: 40px !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(4) h3 {
        font-size: 30px !important;
        line-height: 36px !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:nth-of-type(4) .grid.grid-cols-1 {
        gap: 2rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:last-of-type .flex.flex-col {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:last-of-type h4 {
        line-height: 1.5rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-help-me-choose-page > main > section:last-of-type a {
        width: auto !important;
    }
}

@media (max-width: 767px) {
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:first-of-type {
        padding-top: 5rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:first-of-type .border-y {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 2rem !important;
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
        text-align: center !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:first-of-type .border-y > div {
        justify-content: center !important;
        gap: 0.5rem !important;
        min-height: 0 !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(2) > div > .flex:first-child {
        margin-bottom: 3rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(2) .grid.grid-cols-1 {
        gap: 2rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(2) .glass-card .p-8 {
        padding: 2rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(2) .glass-card .aspect-\[4\/3\] {
        aspect-ratio: 4 / 3 !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(2) .glass-card h3 {
        font-size: 22px !important;
        line-height: 33px !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(3) h2 {
        margin-bottom: 3rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(3) .grid.grid-cols-2 {
        gap: 1.5rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(3) .bg-surface-container-high {
        padding: 1rem !important;
        border-radius: 16px !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(3) .aspect-square {
        margin-bottom: 1rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(3) h4,
    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(3) p {
        min-height: 0 !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(3) button {
        display: block !important;
        width: auto !important;
        height: auto !important;
        min-height: 0 !important;
        flex: initial !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(4) > div {
        padding: 3rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(4) .grid.grid-cols-1 {
        gap: 3rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(4) .grid.grid-cols-1.sm\:grid-cols-3 {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
        gap: 1rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(4) .sm\:grid-cols-3 > div {
        padding: 1.5rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(4) button {
        display: inline-block !important;
        width: auto !important;
        min-height: 0 !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(4) img {
        aspect-ratio: auto !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(4) .absolute.-bottom-6 {
        position: absolute !important;
        width: auto !important;
        margin-top: 0 !important;
        padding: 1.5rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(5) .grid.grid-cols-1 {
        gap: 5rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(5) h2 {
        margin-bottom: 2rem !important;
    }

    body:has(.vb-reference-page) .vb-static-page.vb-reference-page.vb-bundles-accessories-page > main > section:nth-of-type(5) .flex.items-start {
        gap: 1rem !important;
    }
}

/* ---------- Compare Models final reference parity ---------- */
@media (min-width: 768px) {
    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page .md\:gap-8 {
        gap: 2rem !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page img.h-\[450px\] {
        height: 450px !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(7) .md\:p-20 {
        padding: 5rem !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:first-of-type .glass-card {
        border: 1px solid rgba(87, 56, 127, 0.2) !important;
        background: rgba(60, 22, 104, 0.6) !important;
        box-shadow: none !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:first-of-type .signature-gradient {
        border: 0 !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:first-of-type .aspect-square img {
        object-fit: contain !important;
        transform: none !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(2) button.text-primary,
    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(2) button.text-primary:hover,
    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(2) button.text-primary:focus,
    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(2) button.text-primary:focus-visible,
    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(2) button.text-primary:active {
        min-height: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        color: var(--vb-primary) !important;
        outline: 0 !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(2) button.text-primary:hover,
    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(2) button.text-primary:focus {
        text-decoration: underline !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(3) .grid > .glass-card:first-child {
        border-color: var(--vb-secondary) !important;
        border-top: 2px solid var(--vb-secondary) !important;
    }
}

@media (max-width: 767px) {
    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:first-of-type {
        padding-top: 5rem !important;
        padding-bottom: 5rem !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:first-of-type h1.leading-\[1\.1\] {
        line-height: 1.1 !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:first-of-type .aspect-square {
        padding: 1rem !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:first-of-type .glass-card {
        border: 1px solid rgba(87, 56, 127, 0.2) !important;
        background: rgba(60, 22, 104, 0.6) !important;
        box-shadow: none !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:first-of-type .signature-gradient {
        border: 0 !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:first-of-type .aspect-square img {
        object-fit: contain !important;
        transform: none !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(2) button.text-primary,
    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(2) button.text-primary:hover,
    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(2) button.text-primary:focus,
    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(2) button.text-primary:focus-visible,
    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(2) button.text-primary:active {
        min-height: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        color: var(--vb-primary) !important;
        outline: 0 !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(2) button.text-primary:hover,
    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(2) button.text-primary:focus {
        text-decoration: underline !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(3) .grid > .glass-card:first-child {
        border-color: var(--vb-secondary) !important;
        border-top: 2px solid var(--vb-secondary) !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(8) summary {
        gap: normal !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(8) summary h5 {
        max-width: none !important;
        min-width: 0 !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(4) {
        width: 100% !important;
        margin: 2.5rem auto !important;
        padding: 5rem 1.5rem !important;
        border-radius: 32px !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(4) img.h-\[450px\] {
        width: 100% !important;
        height: 450px !important;
    }

    body:has(.vb-compare-models-page) .vb-static-page.vb-reference-page.vb-compare-models-page > main > section:nth-of-type(7) .bg-surface {
        padding: 2.5rem !important;
        border-radius: 31px !important;
    }
}

@media (max-width: 767px) {
    body:has(.vb-app-guide-page) .vb-static-page.vb-reference-page.vb-app-guide-page > .flex > main > section:first-of-type h1.text-5xl {
        line-height: 1.1 !important;
    }

    body:has(.vb-app-guide-page) .vb-static-page.vb-reference-page.vb-app-guide-page > .flex > main > section:first-of-type div.flex.flex-wrap > button {
        width: auto !important;
        max-width: none !important;
        flex: 0 0 auto !important;
        margin: 0 !important;
        box-shadow: none !important;
    }

    body:has(.vb-app-guide-page) .vb-static-page.vb-reference-page.vb-app-guide-page > .flex > main > section:first-of-type .grid.grid-cols-4 > .aspect-square {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        margin: 0 !important;
    }

    body:has(.vb-app-guide-page) .vb-static-page.vb-reference-page.vb-app-guide-page > .flex > main > section:nth-of-type(2) h2.text-4xl {
        width: auto !important;
        max-width: none !important;
        white-space: nowrap !important;
        font-size: 35px !important;
        line-height: 40px !important;
    }
}

/* Contact Us pixel restore: keep Astra form defaults and broad mobile guards from changing the imported reference page. */
body:has(.vb-contact-us-page) .vb-static-page.vb-contact-us-page input[type="text"],
body:has(.vb-contact-us-page) .vb-static-page.vb-contact-us-page input[type="email"],
body:has(.vb-contact-us-page) .vb-static-page.vb-contact-us-page select,
body:has(.vb-contact-us-page) .vb-static-page.vb-contact-us-page textarea {
    width: 100% !important;
    min-height: 48px !important;
    padding: 12px 16px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: #000 !important;
    box-shadow: none !important;
    color: #fff !important;
    font: inherit !important;
    line-height: 24px !important;
    outline-color: #fff;
}

body:has(.vb-contact-us-page) .vb-static-page.vb-contact-us-page input[type="text"],
body:has(.vb-contact-us-page) .vb-static-page.vb-contact-us-page input[type="email"],
body:has(.vb-contact-us-page) .vb-static-page.vb-contact-us-page select {
    height: 48px !important;
}

body:has(.vb-contact-us-page) .vb-static-page.vb-contact-us-page textarea {
    height: 144px !important;
    resize: none !important;
}

body:has(.vb-contact-us-page) .vb-static-page.vb-contact-us-page input::placeholder,
body:has(.vb-contact-us-page) .vb-static-page.vb-contact-us-page textarea::placeholder {
    color: #475569 !important;
    opacity: 1 !important;
}

body:has(.vb-contact-us-page) .vb-static-page.vb-contact-us-page input[type="text"]:focus,
body:has(.vb-contact-us-page) .vb-static-page.vb-contact-us-page input[type="email"]:focus,
body:has(.vb-contact-us-page) .vb-static-page.vb-contact-us-page select:focus,
body:has(.vb-contact-us-page) .vb-static-page.vb-contact-us-page textarea:focus {
    border: 0 !important;
    background: #000 !important;
    box-shadow: none !important;
    color: #fff !important;
}

@media (min-width: 768px) {
    .vb-static-page.vb-contact-us-page main > section:first-of-type p.text-xl.text-on-surface-variant {
        font-size: 24px !important;
        line-height: 39px !important;
    }
}

.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a,
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:visited,
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:hover,
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:focus,
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:focus-visible,
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:active {
    color: #f0dfff !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:hover,
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:focus,
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:focus-visible,
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:active {
    background-color: #33125b !important;
}

.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a.bg-signature-gradient,
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a.bg-signature-gradient:visited,
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a.bg-signature-gradient:hover,
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a.bg-signature-gradient:focus,
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a.bg-signature-gradient:active {
    background: linear-gradient(135deg, #7B2FE0, #E950CC) !important;
    color: #fff !important;
}

.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a :is(span, div),
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:visited :is(span, div),
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:hover :is(span, div),
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:focus :is(span, div),
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:active :is(span, div) {
    color: inherit !important;
}

.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:not(.bg-signature-gradient) .material-symbols-outlined:first-child,
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:not(.bg-signature-gradient):visited .material-symbols-outlined:first-child,
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:not(.bg-signature-gradient):hover .material-symbols-outlined:first-child,
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:not(.bg-signature-gradient):focus .material-symbols-outlined:first-child,
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:not(.bg-signature-gradient):active .material-symbols-outlined:first-child {
    color: #b586ff !important;
}

.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:not(.bg-signature-gradient) > .material-symbols-outlined:last-child,
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:not(.bg-signature-gradient):visited > .material-symbols-outlined:last-child,
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:not(.bg-signature-gradient):hover > .material-symbols-outlined:last-child,
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:not(.bg-signature-gradient):focus > .material-symbols-outlined:last-child,
.vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a:not(.bg-signature-gradient):active > .material-symbols-outlined:last-child {
    color: #bf9ceb !important;
}

@media (max-width: 767px) {
    body:has(.vb-contact-us-page) .vb-static-page.vb-contact-us-page main > section:first-of-type .grid > .glass-card,
    body:has(.vb-contact-us-page) .vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    body:has(.vb-contact-us-page) .vb-static-page.vb-contact-us-page main > section:first-of-type .glass-card {
        border-radius: 16px !important;
    }
}

@media (max-width: 767px) {
    .vb-static-page.vb-contact-us-page main > section:first-of-type > .max-w-7xl,
    .vb-static-page.vb-contact-us-page main > section:nth-of-type(3) {
        width: 100vw !important;
        max-width: 100vw !important;
        margin-right: calc(50% - 50vw) !important;
        margin-left: calc(50% - 50vw) !important;
        padding-right: 32px !important;
        padding-left: 32px !important;
    }

    .vb-static-page.vb-contact-us-page main > section:first-of-type .grid,
    .vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid {
        width: 100% !important;
        max-width: 100% !important;
    }

    .vb-static-page.vb-contact-us-page main > section:first-of-type .grid > .glass-card,
    .vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .vb-static-page.vb-contact-us-page main > section:first-of-type .glass-card {
        border-radius: 16px !important;
    }

    html body .vb-static-page.vb-contact-us-page main > section:first-of-type .glass-card.rounded-\[16px\] {
        border-radius: 16px !important;
    }

    html body .vb-static-page.vb-contact-us-page main > section:first-of-type .grid > div.glass-card {
        border-radius: 16px !important;
    }

    .vb-static-page.vb-contact-us-page.vb-reference-page main > section:first-of-type .grid > div.glass-card.p-8.rounded-\[16px\].text-center.group.cursor-pointer {
        border-radius: 16px !important;
    }

    html body .vb-static-page.vb-contact-us-page main > section:nth-of-type(3) .grid > a.group {
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
}

@media (max-width: 767px) {
    body:has(.vb-troubleshooting-guide-page) .vb-static-page.vb-reference-page.vb-troubleshooting-guide-page > main > section#overview {
        padding-top: 64px !important;
        padding-bottom: 64px !important;
    }

body:has(.vb-troubleshooting-guide-page) .vb-static-page.vb-reference-page.vb-troubleshooting-guide-page > main > section#overview h1.text-5xl {
        font-size: 48px !important;
        line-height: 60px !important;
    }
}

/* FAQ final reference parity */
body:has(.vb-faq-page),
body:has(.vb-faq-page) .site,
body:has(.vb-faq-page) .site-content,
body:has(.vb-faq-page) .ast-container,
body:has(.vb-faq-page) .elementor,
body:has(.vb-faq-page) .elementor-section,
body:has(.vb-faq-page) .elementor-container,
body:has(.vb-faq-page) .elementor-widget-wrap,
body:has(.vb-faq-page) .elementor-widget-html,
body:has(.vb-faq-page) .elementor-widget-container,
.vb-static-page.vb-faq-page,
.vb-static-page.vb-faq-page > main {
    background: #150529 !important;
}

.vb-static-page.vb-faq-page > main {
    padding-top: 0 !important;
}

.vb-static-page.vb-faq-page > main > section:first-of-type {
    margin-top: 72px !important;
    padding-top: 96px !important;
    padding-right: 0 !important;
    padding-bottom: 128px !important;
    padding-left: 0 !important;
}

.vb-static-page.vb-faq-page a,
.vb-static-page.vb-faq-page a:visited,
.vb-static-page.vb-faq-page a:hover,
.vb-static-page.vb-faq-page a:focus,
.vb-static-page.vb-faq-page a:active {
    color: inherit !important;
    text-decoration: none !important;
}

.vb-static-page.vb-faq-page .glass-panel {
    background: rgba(60, 22, 104, 0.6) !important;
    backdrop-filter: blur(16px) !important;
    outline: 1px solid rgba(87, 56, 127, 0.2) !important;
    box-shadow: none !important;
}

.vb-static-page.vb-faq-page :is(#buying, #product, #legality, #setup) > .flex.items-center > h2 {
    margin: 0 !important;
}

.vb-static-page.vb-faq-page :is(#buying, #product, #legality, #setup) > .flex.items-center > .h-1.w-12 {
    align-self: center !important;
}

.vb-static-page.vb-faq-page #buying button,
.vb-static-page.vb-faq-page #setup .cursor-pointer,
.vb-static-page.vb-faq-page #orders button,
.vb-static-page.vb-faq-page #buying button:hover,
.vb-static-page.vb-faq-page #setup .cursor-pointer:hover,
.vb-static-page.vb-faq-page #orders button:hover,
.vb-static-page.vb-faq-page #buying button:focus,
.vb-static-page.vb-faq-page #setup .cursor-pointer:focus,
.vb-static-page.vb-faq-page #orders button:focus,
.vb-static-page.vb-faq-page #buying button:active,
.vb-static-page.vb-faq-page #setup .cursor-pointer:active,
.vb-static-page.vb-faq-page #orders button:active {
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
}

.vb-static-page.vb-faq-page #buying .bg-surface-container-low,
.vb-static-page.vb-faq-page #buying .bg-surface-container-low:hover,
.vb-static-page.vb-faq-page #buying .bg-surface-container-low:focus-within,
.vb-static-page.vb-faq-page #buying .bg-surface-container-low:active {
    background-color: #1c0834 !important;
}

.vb-static-page.vb-faq-page #buying button:hover,
.vb-static-page.vb-faq-page #setup .cursor-pointer:hover {
    background-color: #2b0f4d !important;
}

.vb-static-page.vb-faq-page #buying button:focus,
.vb-static-page.vb-faq-page #buying button:focus-visible,
.vb-static-page.vb-faq-page #buying button:active,
.vb-static-page.vb-faq-page #setup .cursor-pointer:focus,
.vb-static-page.vb-faq-page #setup .cursor-pointer:focus-visible,
.vb-static-page.vb-faq-page #setup .cursor-pointer:active {
    background-color: transparent !important;
}

.vb-static-page.vb-faq-page #orders button,
.vb-static-page.vb-faq-page #orders button:hover,
.vb-static-page.vb-faq-page #orders button:focus,
.vb-static-page.vb-faq-page #orders button:focus-visible,
.vb-static-page.vb-faq-page #orders button:active {
    border-radius: 12px !important;
    background-color: rgba(255, 255, 255, 0.2) !important;
    color: #fff !important;
    transform: none !important;
}

.vb-static-page.vb-faq-page #orders button:hover {
    background-color: rgba(255, 255, 255, 0.3) !important;
}

.vb-static-page.vb-faq-page form input[type="text"],
.vb-static-page.vb-faq-page form input[type="email"],
.vb-static-page.vb-faq-page form textarea {
    min-height: 0 !important;
    padding: 16px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: rgba(0, 0, 0, 0.2) !important;
    box-shadow: none !important;
    color: #f0dfff !important;
    font: inherit !important;
    line-height: 24px !important;
    outline: 0 !important;
}

.vb-static-page.vb-faq-page form input[type="text"],
.vb-static-page.vb-faq-page form input[type="email"] {
    height: 56px !important;
}

.vb-static-page.vb-faq-page form textarea {
    height: 128px !important;
    resize: none !important;
}

.vb-static-page.vb-faq-page form input::placeholder,
.vb-static-page.vb-faq-page form textarea::placeholder {
    color: #9ca3af !important;
    opacity: 1 !important;
}

.vb-static-page.vb-faq-page form input:focus,
.vb-static-page.vb-faq-page form textarea:focus {
    border: 0 !important;
    background: rgba(0, 0, 0, 0.2) !important;
    box-shadow: none !important;
    outline: 0 !important;
}

.vb-static-page.vb-faq-page form button,
.vb-static-page.vb-faq-page form button:hover,
.vb-static-page.vb-faq-page form button:focus,
.vb-static-page.vb-faq-page form button:active {
    min-height: 0 !important;
    border: 0 !important;
    color: #fff !important;
    background: linear-gradient(135deg, #7B2FE0 0%, #E950CC 100%) !important;
    box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1) !important;
}

@media (min-width: 768px) {
    .vb-static-page.vb-faq-page > main > section:first-of-type .grid.md\:grid-cols-6 {
        grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    }

    .vb-static-page.vb-faq-page form {
        height: 350px !important;
    }
}

@media (max-width: 767px) {
    html:has(.vb-faq-page) {
        font-size: 100% !important;
    }

    .vb-static-page.vb-faq-page,
    .vb-static-page.vb-faq-page > main {
        width: 100% !important;
        max-width: 100vw !important;
        padding: 0 !important;
        overflow-x: hidden !important;
    }

    body:has(.vb-faq-page) .vb-static-page.vb-reference-page.vb-faq-page > main > section:first-of-type {
        width: 100% !important;
        margin-top: 72px !important;
        padding: 96px 0 128px !important;
    }

    .vb-static-page.vb-faq-page > main > section:first-of-type > .max-w-7xl,
    .vb-static-page.vb-faq-page > main > section:nth-of-type(2) {
        width: 100% !important;
        max-width: 100% !important;
        padding-right: 32px !important;
        padding-left: 32px !important;
    }

    body:has(.vb-faq-page) .vb-static-page.vb-reference-page.vb-faq-page > main > section:first-of-type > .max-w-7xl,
    body:has(.vb-faq-page) .vb-static-page.vb-reference-page.vb-faq-page > main > section:nth-of-type(2) {
        padding-right: 32px !important;
        padding-left: 32px !important;
    }

    body:has(.vb-faq-page) .vb-static-page.vb-reference-page.vb-faq-page > main > section:first-of-type .grid.grid-cols-2 {
        width: 100% !important;
        gap: 16px !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body:has(.vb-faq-page) .vb-static-page.vb-reference-page.vb-faq-page > main > section:first-of-type .grid.grid-cols-2 > a {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding: 24px !important;
        border-radius: 16px !important;
    }

    body:has(.vb-faq-page) .vb-static-page.vb-reference-page.vb-faq-page h1.text-5xl.leading-\[1\.1\],
    .vb-static-page.vb-faq-page h1.text-5xl {
        font-size: 48px !important;
        line-height: 52.8px !important;
    }

    .vb-static-page.vb-faq-page form .grid.grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body:has(.vb-faq-page) .vb-static-page.vb-reference-page.vb-faq-page > main > section:nth-of-type(2) > .glass-panel:last-child {
        width: 366px !important;
        max-width: 366px !important;
        margin-right: auto !important;
        margin-left: auto !important;
        padding: 48px !important;
    }

    body:has(.vb-faq-page) .vb-static-page.vb-reference-page.vb-faq-page > main > section:nth-of-type(2) > .glass-panel:last-child > .relative.z-10,
    body:has(.vb-faq-page) .vb-static-page.vb-reference-page.vb-faq-page form {
        width: 270px !important;
        max-width: 270px !important;
    }

    html body:has(.vb-faq-page) .vb-static-page.vb-reference-page.vb-faq-page > main > section:nth-of-type(2) > .glass-panel:last-child form.space-y-4 {
        width: 270px !important;
        min-width: 270px !important;
        max-width: 270px !important;
        margin: 0 !important;
    }

    body:has(.vb-faq-page) .vb-static-page.vb-reference-page.vb-faq-page form .grid.grid-cols-2 {
        width: 270px !important;
        max-width: 270px !important;
        gap: 16px !important;
    }

    .vb-static-page.vb-faq-page form input[type="text"],
    .vb-static-page.vb-faq-page form input[type="email"] {
        width: 100% !important;
    }

    body:has(.vb-faq-page) .vb-static-page.vb-reference-page.vb-faq-page form .grid.grid-cols-2 input[type="text"],
    body:has(.vb-faq-page) .vb-static-page.vb-reference-page.vb-faq-page form .grid.grid-cols-2 input[type="email"] {
        width: 127px !important;
    }

    body:has(.vb-faq-page) .vb-static-page.vb-reference-page.vb-faq-page form > input[type="text"],
    body:has(.vb-faq-page) .vb-static-page.vb-reference-page.vb-faq-page form textarea,
    body:has(.vb-faq-page) .vb-static-page.vb-reference-page.vb-faq-page form button {
        width: 270px !important;
    }
}
