/* Ivy Subscriptions premium product experience.
   Scoped to the plugin template so theme product CSS cannot leak into ordinary pages. */
body.crb-subscription-product {
    overflow-x: hidden;
    background: #050b14;
}

body.crb-subscription-product #main_content,
body.crb-subscription-product #main-content,
body.crb-subscription-product .main_wrapper,
body.crb-subscription-product .site_wrapper,
body.crb-subscription-product .content-container,
body.crb-subscription-product .gt3-page-title,
body.crb-subscription-product .sidebar-container,
body.crb-subscription-product .woocommerce-breadcrumb,
body.crb-subscription-product .gt3_product_list_nav {
    max-width: none;
}

.crb-product-page,
.crb-product-page * {
    box-sizing: border-box;
}

.crb-product-page {
    --crb-product-bg: #050b14;
    --crb-product-panel: #0a1727;
    --crb-product-panel-2: #10243a;
    --crb-product-border: rgba(163, 200, 229, .17);
    --crb-product-text: #f7fbff;
    --crb-product-muted: #a9bdd0;
    --crb-product-accent: #29a9f2;
    --crb-product-accent-2: #20d3b0;
    --crb-product-gold: #efbd63;
    position: relative;
    isolation: isolate;
    width: 100%;
    min-height: 100vh;
    margin: 0;
    overflow: hidden;
    background:
        radial-gradient(circle at 12% 4%, rgba(28, 157, 238, .18), transparent 32rem),
        radial-gradient(circle at 90% 20%, rgba(28, 218, 178, .11), transparent 28rem),
        linear-gradient(180deg, #06101c 0%, var(--crb-product-bg) 42%, #07101a 100%);
    color: var(--crb-product-text);
    font-family: Inter, Manrope, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 16px;
    line-height: 1.6;
}

.crb-product-page__ambient {
    position: absolute;
    z-index: -1;
    inset: 0;
    pointer-events: none;
    background-image:
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
    background-size: 48px 48px;
    mask-image: linear-gradient(to bottom, rgba(0,0,0,.75), transparent 70%);
}

.crb-product-page__shell {
    width: min(94%, 1480px);
    margin: 0 auto;
    padding: clamp(28px, 5vw, 76px) 0 70px;
}

.crb-product-page__notice-area .woocommerce-error,
.crb-product-page__notice-area .woocommerce-message,
.crb-product-page__notice-area .woocommerce-info {
    display: flex !important;
    align-items: center;
    gap: 12px;
    width: 100%;
    margin: 0 0 22px !important;
    padding: 15px 18px !important;
    border: 1px solid var(--crb-product-border) !important;
    border-left: 4px solid var(--crb-product-accent) !important;
    border-radius: 14px !important;
    background: rgba(10, 28, 46, .94) !important;
    color: var(--crb-product-text) !important;
    box-shadow: 0 14px 36px rgba(0, 0, 0, .2) !important;
}

.crb-product-page__notice-area .woocommerce-error { border-left-color: #ff6875 !important; }
.crb-product-page__notice-area .woocommerce-message { border-left-color: var(--crb-product-accent-2) !important; }
.crb-product-page__notice-area .button { margin-left: auto !important; color: #fff !important; }

.crb-product-breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 24px;
    color: #7f9bb2;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .02em;
}

.crb-product-breadcrumb a {
    color: #b9d8ec !important;
    text-decoration: none;
}

.crb-product-breadcrumb a:hover { color: #fff !important; }

.crb-product-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.16fr) minmax(380px, .84fr);
    gap: clamp(34px, 5vw, 76px);
    align-items: start;
}

.crb-product-hero__copy { min-width: 0; }

.crb-product-kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 34px;
    padding: 6px 13px;
    border: 1px solid rgba(87, 200, 255, .25);
    border-radius: 999px;
    background: rgba(24, 132, 199, .11);
    color: #aee5ff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.crb-product-kicker__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--crb-product-accent-2);
    box-shadow: 0 0 0 5px rgba(32, 211, 176, .11), 0 0 18px rgba(32, 211, 176, .6);
}

.crb-product-hero h1 {
    max-width: 880px;
    margin: 24px 0 20px !important;
    padding: 0 !important;
    color: var(--crb-product-text) !important;
    font-family: Manrope, Inter, system-ui, sans-serif !important;
    font-size: clamp(46px, 6vw, 88px) !important;
    font-weight: 750 !important;
    line-height: .98 !important;
    letter-spacing: -.055em !important;
    text-wrap: balance;
}

.crb-product-hero__subtitle {
    max-width: 760px;
    margin: 0 !important;
    color: var(--crb-product-muted) !important;
    font-size: clamp(18px, 1.7vw, 23px) !important;
    font-weight: 450;
    line-height: 1.6 !important;
}

.crb-product-trust-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 20px;
    margin: 28px 0 0;
}

.crb-product-trust-row span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #c5d8e7;
    font-size: 13px;
    font-weight: 700;
}

.crb-product-trust-row i {
    display: grid;
    place-items: center;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: rgba(32, 211, 176, .14);
    color: #67efcf;
    font-style: normal;
    font-size: 11px;
}

.crb-product-visual {
    position: relative;
    min-height: clamp(360px, 37vw, 560px);
    margin: clamp(34px, 5vw, 60px) 0 0;
    overflow: hidden;
    border: 1px solid var(--crb-product-border);
    border-radius: 34px;
    background:
        radial-gradient(circle at 25% 25%, rgba(33, 170, 244, .24), transparent 34%),
        linear-gradient(145deg, #0a1f34, #06101d 72%);
    box-shadow: 0 35px 80px rgba(0, 0, 0, .35);
}

.crb-product-visual::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(255,255,255,.08), transparent 28%, transparent 72%, rgba(32,211,176,.06));
    pointer-events: none;
}

.crb-product-visual--image { display: grid; place-items: center; padding: 22px; }
.crb-product-visual__image { width: 100%; height: 100%; max-height: 520px; object-fit: cover; border-radius: 24px; }

.crb-product-visual--generated { display: grid; place-items: center; padding: clamp(28px, 5vw, 62px); }

.crb-product-browser {
    width: min(88%, 720px);
    overflow: hidden;
    transform: perspective(1100px) rotateX(4deg) rotateY(-5deg);
    border: 1px solid rgba(181, 221, 248, .2);
    border-radius: 20px;
    background: #eaf3f9;
    box-shadow: 0 36px 70px rgba(0,0,0,.42), 0 0 80px rgba(29,164,237,.14);
}

.crb-product-browser__bar {
    display: flex;
    align-items: center;
    gap: 6px;
    height: 38px;
    padding: 0 14px;
    background: #10283d;
}
.crb-product-browser__bar span { width: 8px; height: 8px; border-radius: 50%; background: #6e8ba0; }
.crb-product-browser__bar span:first-child { background: #ff7280; }
.crb-product-browser__bar span:nth-child(2) { background: #f5c65d; }
.crb-product-browser__bar span:nth-child(3) { background: #4dd2a9; }
.crb-product-browser__bar b { width: 42%; height: 10px; margin-left: auto; border-radius: 99px; background: rgba(255,255,255,.1); }
.crb-product-browser__body { min-height: 330px; padding: clamp(24px, 4vw, 46px); background: radial-gradient(circle at 80% 12%, #d7f4ff, transparent 34%), linear-gradient(145deg, #fff, #edf5fa); }
.crb-product-browser__nav { width: 42%; height: 11px; margin-left: auto; border-radius: 99px; background: #c8d9e5; }
.crb-product-browser__headline { width: 68%; height: 46px; margin-top: 54px; border-radius: 12px; background: linear-gradient(90deg, #0e2b43, #1b658f); }
.crb-product-browser__line { width: 74%; height: 10px; margin-top: 20px; border-radius: 99px; background: #bfd0db; }
.crb-product-browser__line--short { width: 52%; margin-top: 10px; }
.crb-product-browser__buttons { display: flex; gap: 12px; margin-top: 26px; }
.crb-product-browser__buttons i { display: block; width: 100px; height: 35px; border-radius: 10px; background: #159fdf; }
.crb-product-browser__buttons i:last-child { width: 84px; background: #d7e4eb; }
.crb-product-browser__cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 44px; }
.crb-product-browser__cards i { display: block; height: 66px; border-radius: 12px; background: #d9e7ee; }
.crb-product-browser__cards i:nth-child(2) { background: #d0f3eb; }

.crb-product-visual__badge {
    position: absolute;
    display: grid;
    gap: 1px;
    min-width: 118px;
    padding: 12px 15px;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 16px;
    background: rgba(6, 20, 33, .82);
    color: #fff;
    box-shadow: 0 18px 36px rgba(0,0,0,.3);
    backdrop-filter: blur(16px);
}
.crb-product-visual__badge strong { color: #fff; font-size: 18px; line-height: 1.1; }
.crb-product-visual__badge span { color: #a9c4d6; font-size: 11px; }
.crb-product-visual__badge--one { left: 5%; bottom: 8%; }
.crb-product-visual__badge--two { right: 5%; top: 9%; }

.crb-product-purchase {
    position: sticky;
    top: 34px;
    min-width: 0;
    padding: clamp(22px, 3vw, 34px);
    border: 1px solid rgba(138, 194, 232, .22);
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(20, 47, 74, .98), rgba(7, 21, 36, .98)),
        var(--crb-product-panel);
    color: var(--crb-product-text);
    box-shadow: 0 30px 70px rgba(0, 0, 0, .35);
}

body.admin-bar .crb-product-purchase { top: 66px; }

.crb-product-purchase::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    background: radial-gradient(circle at 100% 0, rgba(41,169,242,.14), transparent 32%);
}

.crb-product-purchase__topline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 22px;
    color: #bcd0df;
    font-size: 13px;
    font-weight: 750;
}

.crb-product-stock {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .08em;
}
.crb-product-stock--available { background: rgba(32,211,176,.13); color: #77f3d6; }
.crb-product-stock--unavailable { background: rgba(255,104,117,.13); color: #ff9aa4; }

.crb-product-price-stack { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
.crb-product-price-card {
    display: grid;
    align-content: start;
    min-width: 0;
    min-height: 142px;
    padding: 18px;
    border: 1px solid rgba(174, 207, 230, .14);
    border-radius: 18px;
    background: rgba(255,255,255,.035);
}
.crb-product-price-card--today { border-color: rgba(41,169,242,.42); background: rgba(26,143,207,.12); }
.crb-product-price-card > span { color: #a8c1d4; font-size: 12px; font-weight: 700; }
.crb-product-price-card > strong { display: block; margin-top: 12px; color: #fff !important; font-size: clamp(28px, 3vw, 40px); line-height: 1.05; letter-spacing: -.04em; white-space: nowrap; }
.crb-product-price-card .woocommerce-Price-currencySymbol { font-size: .62em; vertical-align: .18em; }
.crb-product-price-card > small { margin-top: 8px; color: #8fa9bc; font-size: 11px; line-height: 1.35; }

.crb-product-first-charge {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 12px 0 0;
    padding: 14px 16px;
    border-radius: 14px;
    background: rgba(255,255,255,.045);
}
.crb-product-first-charge span { color: #9eb5c6; font-size: 12px; }
.crb-product-first-charge strong { color: #fff; font-size: 13px; text-align: right; }

.crb-product-generic-price { display: grid; gap: 8px; margin: 8px 0 20px; }
.crb-product-generic-price .price,
.crb-product-generic-price > span,
.crb-product-generic-price .woocommerce-Price-amount { color: #fff !important; font-size: clamp(38px,4vw,58px) !important; font-weight: 800 !important; line-height: 1 !important; }
.crb-product-generic-price small { color: #9eb5c6; font-size: 12px; }

.crb-product-add-to-cart { margin-top: 20px; }
.crb-product-add-to-cart form.cart { display: grid !important; gap: 14px !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.crb-product-add-to-cart form.cart::before,
.crb-product-add-to-cart form.cart::after { display: none !important; }
.crb-product-add-to-cart .quantity { float: none !important; width: 100% !important; margin: 0 !important; }
.crb-product-add-to-cart .quantity input.qty { width: 100% !important; min-height: 50px !important; border: 1px solid rgba(255,255,255,.18) !important; border-radius: 12px !important; background: rgba(255,255,255,.06) !important; color: #fff !important; }
.crb-product-add-to-cart .single_add_to_cart_button,
.crb-product-add-to-cart button.single_add_to_cart_button,
.crb-product-add-to-cart .button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    float: none !important;
    width: 100% !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 15px 22px !important;
    border: 1px solid #35b7ff !important;
    border-radius: 14px !important;
    background: linear-gradient(135deg, #0b84cf, #25b0f3) !important;
    background-image: linear-gradient(135deg, #0b84cf, #25b0f3) !important;
    color: #fff !important;
    font-family: inherit !important;
    font-size: 16px !important;
    font-weight: 850 !important;
    line-height: 1.2 !important;
    letter-spacing: -.01em !important;
    text-transform: none !important;
    box-shadow: 0 15px 28px rgba(17, 148, 219, .24) !important;
    cursor: pointer;
}
.crb-product-add-to-cart .single_add_to_cart_button:hover,
.crb-product-add-to-cart .single_add_to_cart_button:focus { transform: translateY(-1px); filter: brightness(1.08); }
.crb-product-add-to-cart .single_add_to_cart_button.disabled,
.crb-product-add-to-cart .single_add_to_cart_button:disabled { opacity: .5 !important; cursor: not-allowed; transform: none; }

.crb-product-add-to-cart .variations { width: 100% !important; margin: 0 !important; border-collapse: separate !important; border-spacing: 0 10px !important; }
.crb-product-add-to-cart .variations tr,
.crb-product-add-to-cart .variations th,
.crb-product-add-to-cart .variations td { display: block !important; width: 100% !important; padding: 0 !important; border: 0 !important; }
.crb-product-add-to-cart .variations label { display: block; margin-bottom: 7px; color: #dceaf3 !important; font-size: 13px; }
.crb-product-add-to-cart .variations select { width: 100% !important; min-height: 50px; padding: 10px 14px; border: 1px solid rgba(255,255,255,.18); border-radius: 12px; background: #fff; color: #183148; font-size: 15px; }
.crb-product-add-to-cart .reset_variations { display: inline-block; margin-top: 7px; color: #9edcff !important; }
.crb-product-add-to-cart .woocommerce-variation-price { margin: 8px 0; }
.crb-product-add-to-cart .woocommerce-variation-price .price { color: #fff !important; }

.crb-product-purchase .crb-cycle-toggle {
    min-width: 0;
    margin: 0 0 16px !important;
    padding: 0 !important;
    border: 0 !important;
}
.crb-product-purchase .crb-cycle-toggle__legend { margin-bottom: 9px; color: #cfe1ed !important; font-size: 13px !important; font-weight: 800 !important; }
.crb-product-purchase .crb-cycle-options { display: grid !important; gap: 9px !important; }
.crb-product-purchase .crb-cycle-option {
    display: block !important;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(176,207,228,.17) !important;
    border-radius: 14px !important;
    background: rgba(255,255,255,.035) !important;
    color: #fff !important;
    cursor: pointer;
}
.crb-product-purchase .crb-cycle-option.is-selected { border-color: #31afea !important; background: rgba(31,157,219,.13) !important; box-shadow: 0 0 0 2px rgba(49,175,234,.11); }
.crb-product-purchase .crb-cycle-option__input { position: absolute !important; width: 1px !important; height: 1px !important; opacity: 0 !important; }
.crb-product-purchase .crb-cycle-option__input:focus-visible + .crb-cycle-option__content { outline: 3px solid rgba(54,190,248,.4); outline-offset: 2px; }
.crb-product-purchase .crb-cycle-option__content { display: grid !important; gap: 5px !important; padding: 13px 14px !important; }
.crb-product-purchase .crb-cycle-option__heading { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 12px !important; }
.crb-product-purchase .crb-cycle-option__heading strong { color: #fff !important; font-size: 14px !important; }
.crb-product-purchase .crb-cycle-option__price { display: flex !important; align-items: baseline !important; gap: 4px !important; color: #fff !important; white-space: nowrap; }
.crb-product-purchase .crb-cycle-price { color: #fff !important; font-size: 16px !important; font-weight: 800 !important; }
.crb-product-purchase .crb-cycle-period,
.crb-product-purchase .crb-cycle-option__equivalent { color: #9bb5c8 !important; font-size: 11px !important; }
.crb-product-purchase .crb-cycle-option__saving { justify-self: start; padding: 3px 8px; border-radius: 99px; background: rgba(32,211,176,.13); color: #75efd3 !important; font-size: 10px !important; font-weight: 800 !important; }
.crb-product-purchase .crb-prorata-product-notice { margin: 0 0 14px !important; padding: 12px 13px !important; border: 1px solid rgba(239,189,99,.34) !important; border-radius: 12px !important; background: rgba(239,189,99,.1) !important; color: #f8ddb0 !important; font-size: 12px !important; line-height: 1.5 !important; }

.crb-product-purchase__microcopy { display: grid; gap: 9px; margin: 18px 0 0 !important; padding: 0 !important; list-style: none !important; }
.crb-product-purchase__microcopy li { position: relative; margin: 0 !important; padding: 0 0 0 19px !important; color: #94acbe !important; font-size: 12px !important; line-height: 1.55 !important; }
.crb-product-purchase__microcopy li::before { content: "✓" !important; position: absolute; left: 0; top: 0; color: #55e6c5 !important; font-weight: 900; }
.crb-product-client-note { margin-top: 16px; padding: 13px 14px; border-left: 3px solid var(--crb-product-gold); border-radius: 0 10px 10px 0; background: rgba(239,189,99,.08); color: #e9d5ae; font-size: 12px; line-height: 1.55; }

.crb-product-section {
    margin-top: clamp(74px, 9vw, 132px);
    padding-top: clamp(40px, 5vw, 64px);
    border-top: 1px solid var(--crb-product-border);
}

.crb-product-section__heading { max-width: 760px; margin-bottom: clamp(28px, 4vw, 50px); }
.crb-product-section__heading > span,
.crb-product-final-cta > div > span {
    display: block;
    margin-bottom: 10px;
    color: #79d5ff;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .16em;
    text-transform: uppercase;
}
.crb-product-section__heading h2,
.crb-product-final-cta h2 {
    margin: 0 !important;
    color: #fff !important;
    font-family: Manrope, Inter, system-ui, sans-serif !important;
    font-size: clamp(34px, 4vw, 58px) !important;
    font-weight: 750 !important;
    line-height: 1.07 !important;
    letter-spacing: -.04em !important;
    text-wrap: balance;
}
.crb-product-section__heading p { margin: 16px 0 0 !important; color: var(--crb-product-muted) !important; font-size: 17px !important; line-height: 1.7 !important; }

.crb-product-feature-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.crb-product-feature {
    position: relative;
    min-height: 172px;
    margin: 0;
    padding: 23px;
    overflow: hidden;
    border: 1px solid var(--crb-product-border);
    border-radius: 20px;
    background: linear-gradient(150deg, rgba(18,45,70,.85), rgba(7,22,37,.95));
}
.crb-product-feature::after { content: ""; position: absolute; right: -40px; bottom: -50px; width: 120px; height: 120px; border-radius: 50%; background: rgba(41,169,242,.06); }
.crb-product-feature > span { display: block; color: #5d849f; font-size: 11px; font-weight: 850; letter-spacing: .12em; }
.crb-product-feature h3 { margin: 50px 0 0 !important; color: #f5fbff !important; font-family: inherit !important; font-size: 17px !important; font-weight: 750 !important; line-height: 1.4 !important; }

.crb-product-timeline { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 16px; margin: 0 !important; padding: 0 !important; list-style: none !important; }
.crb-product-timeline li { display: grid; grid-template-columns: 42px minmax(0,1fr); gap: 15px; margin: 0 !important; padding: 22px; border: 1px solid var(--crb-product-border); border-radius: 20px; background: rgba(10,28,46,.7); }
.crb-product-timeline li::before { display: none !important; }
.crb-product-timeline li > b { display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid rgba(71,187,245,.3); border-radius: 13px; background: rgba(30,147,208,.12); color: #8cdcff; font-size: 13px; }
.crb-product-timeline li span { display: block; color: #6fb9df; font-size: 10px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.crb-product-timeline li strong { display: block; margin-top: 8px; color: #fff; font-size: 16px; line-height: 1.35; }
.crb-product-timeline li p { margin: 9px 0 0 !important; color: #9eb5c6 !important; font-size: 13px !important; line-height: 1.55 !important; }

.crb-product-section--story { display: grid; grid-template-columns: minmax(280px,.7fr) minmax(0,1.3fr); gap: clamp(30px, 7vw, 100px); }
.crb-product-section--story .crb-product-section__heading { margin: 0; }
.crb-product-prose { min-width: 0; padding: clamp(24px, 4vw, 46px); border: 1px solid var(--crb-product-border); border-radius: 24px; background: rgba(9,25,42,.72); color: #bfd0dc; }
.crb-product-prose p,
.crb-product-prose li { color: #bfd0dc !important; font-size: 16px !important; line-height: 1.78 !important; }
.crb-product-prose h2,
.crb-product-prose h3,
.crb-product-prose h4 { margin: 1.5em 0 .55em !important; color: #fff !important; font-family: inherit !important; line-height: 1.2 !important; }
.crb-product-prose h2:first-child,
.crb-product-prose h3:first-child { margin-top: 0 !important; }
.crb-product-prose a { color: #72d5ff !important; }
.crb-product-prose ul,
.crb-product-prose ol { margin: 1em 0 !important; padding-left: 1.25em !important; }

.crb-product-faq-list { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
.crb-product-faq { min-width: 0; border: 1px solid var(--crb-product-border); border-radius: 18px; background: rgba(9,25,42,.72); overflow: hidden; }
.crb-product-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 72px; padding: 18px 20px; color: #f3f9fd; font-size: 15px; font-weight: 750; line-height: 1.4; cursor: pointer; list-style: none; }
.crb-product-faq summary::-webkit-details-marker { display: none; }
.crb-product-faq summary span { flex: 0 0 30px; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 10px; background: rgba(41,169,242,.11); color: #81d9ff; font-size: 18px; transition: transform .2s ease; }
.crb-product-faq[open] summary span { transform: rotate(45deg); }
.crb-product-faq > div { padding: 0 20px 20px; color: #9fb5c7; font-size: 13px; line-height: 1.65; }

.crb-product-related-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; }
.crb-product-related-card { display: flex; flex-direction: column; min-height: 300px; padding: 24px; border: 1px solid var(--crb-product-border); border-radius: 22px; background: linear-gradient(150deg, rgba(16,42,66,.84), rgba(6,19,32,.98)); }
.crb-product-related-card > span { color: #72ccef; font-size: 10px; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.crb-product-related-card h3 { margin: 15px 0 10px !important; font-size: 23px !important; line-height: 1.18 !important; }
.crb-product-related-card h3 a { color: #fff !important; text-decoration: none; }
.crb-product-related-card p { margin: 0 0 22px !important; color: #99afc1 !important; font-size: 13px !important; line-height: 1.6 !important; }
.crb-product-related-card > div { display: grid; gap: 3px; margin-top: auto; }
.crb-product-related-card > div strong,
.crb-product-related-card > div .woocommerce-Price-amount { color: #fff !important; font-size: 24px !important; }
.crb-product-related-card > div small { color: #829daf; font-size: 11px; }
.crb-product-related-card__link { display: flex; align-items: center; justify-content: space-between; margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--crb-product-border); color: #a9e5ff !important; font-size: 13px; font-weight: 800; text-decoration: none; }

.crb-product-final-cta { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-top: clamp(74px,9vw,130px); padding: clamp(28px,5vw,60px); overflow: hidden; border: 1px solid rgba(73,190,247,.25); border-radius: 30px; background: radial-gradient(circle at 90% 15%, rgba(32,211,176,.18), transparent 30%), linear-gradient(135deg, #0c2a43, #071521); }
.crb-product-final-cta > div { max-width: 850px; }
.crb-product-final-cta p { margin: 14px 0 0 !important; color: #a8bdcc !important; }
.crb-product-final-cta__button { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 12px; min-height: 54px; padding: 14px 20px; border-radius: 14px; background: #fff; color: #082139 !important; font-size: 14px; font-weight: 850; text-decoration: none; }
.crb-product-final-cta__button span { font-size: 20px; }

.crb-product-account-link { display: flex; justify-content: center; gap: 8px; margin-top: 30px; color: #718da1; font-size: 12px; }
.crb-product-account-link a { color: #b9e8ff !important; font-weight: 750; }

@media (max-width: 1120px) {
    .crb-product-hero { grid-template-columns: minmax(0,1fr); }
    .crb-product-purchase { position: relative; top: auto; }
    body.admin-bar .crb-product-purchase { top: auto; }
    .crb-product-feature-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .crb-product-timeline { grid-template-columns: minmax(0,1fr); }
    .crb-product-section--story { grid-template-columns: minmax(0,1fr); }
}

@media (max-width: 760px) {
    .crb-product-page__shell { width: min(92%, 680px); padding-top: 24px; }
    .crb-product-hero h1 { font-size: clamp(40px, 13vw, 64px) !important; }
    .crb-product-hero__subtitle { font-size: 17px !important; }
    .crb-product-trust-row { display: grid; gap: 9px; }
    .crb-product-visual { min-height: 340px; border-radius: 24px; }
    .crb-product-browser { width: 100%; transform: none; }
    .crb-product-browser__body { min-height: 250px; padding: 24px; }
    .crb-product-browser__headline { margin-top: 34px; height: 34px; }
    .crb-product-browser__cards { margin-top: 30px; }
    .crb-product-visual__badge { display: none; }
    .crb-product-purchase { padding: 20px; border-radius: 22px; }
    .crb-product-price-stack { grid-template-columns: minmax(0,1fr); }
    .crb-product-price-card { min-height: 112px; }
    .crb-product-first-charge { align-items: flex-start; flex-direction: column; gap: 4px; }
    .crb-product-first-charge strong { text-align: left; }
    .crb-product-feature-grid,
    .crb-product-faq-list,
    .crb-product-related-grid { grid-template-columns: minmax(0,1fr); }
    .crb-product-feature { min-height: 140px; }
    .crb-product-feature h3 { margin-top: 32px !important; }
    .crb-product-section { margin-top: 72px; padding-top: 34px; }
    .crb-product-final-cta { align-items: flex-start; flex-direction: column; padding: 28px; border-radius: 22px; }
    .crb-product-final-cta__button { width: 100%; justify-content: center; }
    .crb-product-account-link { flex-wrap: wrap; }
}

@media (prefers-reduced-motion: reduce) {
    .crb-product-page *,
    .crb-product-page *::before,
    .crb-product-page *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}

/* Escape any residual theme content-width wrapper without altering the header. */
body.crb-subscription-product .crb-product-page {
    width: 100vw !important;
    max-width: none !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
}
body.crb-subscription-product { background: #050b14 !important; }
