/* =========================================================
   Nabegheha V2 — Product Gutenberg / Essential Blocks layer
   Phase 130 V75
   Loaded only when a product description contains blocks.
   Scoped to .nb-product-page .nb-overview-content so frozen
   product sections outside the long description are untouched.
   ========================================================= */

.nb-product-page .nb-overview-content {
    --nb-content-width: 900px;
    min-width: 0;
    overflow-wrap: anywhere;
    font-family: var(--font-sans);
}

.nb-product-page .nb-overview-content > :first-child { margin-top: 0 !important; }
.nb-product-page .nb-overview-content > :last-child { margin-bottom: 0 !important; }

/* Keep normal prose readable while layout/block-builder elements can use the card width. */
.nb-product-page .nb-overview-content > :where(
    p,h1,h2,h3,h4,h5,h6,ul,ol,blockquote,pre,
    .wp-block-table,.wp-block-quote,.wp-block-pullquote,.wp-block-code,
    .wp-block-buttons,.wp-block-image,.wp-block-video,.wp-block-audio,
    .wp-block-file,.wp-block-details,.wp-block-separator,.wp-block-embed
) {
    width: min(100%, var(--nb-content-width));
    margin-inline: auto;
}

.nb-product-page .nb-overview-content > :where(
    [class*="wp-block-essential-blocks-"],
    [class*="eb-parent-wrapper"],
    .wp-block-group,.wp-block-columns,.wp-block-cover,.wp-block-gallery
) {
    width: 100%;
    max-width: 100%;
}

/* Typography / core Gutenberg */
.nb-product-page .nb-overview-content h1 {
    margin-top: 48px;
    margin-bottom: 20px;
    color: #f7f7f8;
    font-size: clamp(24px, 3vw, 34px);
    line-height: 1.65;
    font-weight: 900;
}
.nb-product-page .nb-overview-content h2,
.nb-product-page .nb-overview-content h3,
.nb-product-page .nb-overview-content h4,
.nb-product-page .nb-overview-content h5,
.nb-product-page .nb-overview-content h6 {
    scroll-margin-top: 105px;
    color: #f4f5f6;
    font-family: var(--font-sans);
}

.nb-product-page .nb-overview-content h2 {
    position: relative;
    margin-top: 56px;
    margin-bottom: 20px;
    padding: 0 16px 0 34px;
    border-right: 2px solid var(--green-bright);
    font-size: clamp(19px, 2.2vw, 24px);
    line-height: 1.8;
    font-weight: 900;
}
.nb-product-page .nb-overview-content h2::before {
    content: none;
    display: none;
}
.nb-product-page .nb-overview-content h3 { margin-top: 38px; margin-bottom: 15px; font-size: 18px; line-height: 1.8; font-weight: 850; }
.nb-product-page .nb-overview-content h4 { margin-top: 30px; margin-bottom: 12px; font-size: 15px; line-height: 1.85; font-weight: 800; color: #e2e5ea; }
.nb-product-page .nb-overview-content h5,
.nb-product-page .nb-overview-content h6 { margin-top: 24px; margin-bottom: 10px; font-size: 13px; line-height: 1.85; font-weight: 800; color: #d5d9df; }

.nb-product-page .nb-overview-content p {
    margin-top: 0;
    margin-bottom: 18px;
    color: #c1c7d0;
    font-size: 14px;
    line-height: 2.18;
    text-align: justify;
}

.nb-product-page .nb-overview-content ul,
.nb-product-page .nb-overview-content ol {
    margin-top: 12px;
    margin-bottom: 22px;
    padding-right: 24px;
    color: #bec5ce;
}
.nb-product-page .nb-overview-content li { margin: 8px 0; line-height: 2; }
.nb-product-page .nb-overview-content li::marker { color: #7560d8; font-weight: 800; }

.nb-product-page .nb-overview-content a:not(.button):not(.wp-element-button) {
    color: #79dc83;
    text-decoration: none;
    text-underline-offset: 4px;
}
.nb-product-page .nb-overview-content a:not(.button):not(.wp-element-button):hover { color: #a0e9a8; text-decoration: underline; }

.nb-product-page .nb-overview-content strong { color: #f0f1f3; }
.nb-product-page .nb-overview-content mark { padding: 1px 4px; border-radius: 4px; background: rgba(247,185,36,.16); color: #ffd768; }

.nb-product-page .nb-overview-content blockquote,
.nb-product-page .nb-overview-content .wp-block-quote,
.nb-product-page .nb-overview-content .wp-block-pullquote {
    padding: 20px 22px;
    border: 1px solid #262626;
    border-right: 3px solid var(--purple-bright);
    border-radius: 12px;
    background: #0d0d0d;
    color: #d1d5db;
}
.nb-product-page .nb-overview-content blockquote p:last-child { margin-bottom: 0; }
.nb-product-page .nb-overview-content cite { color: #858e9a; font-size: 11px; }

.nb-product-page .nb-overview-content pre,
.nb-product-page .nb-overview-content .wp-block-code {
    padding: 20px;
    overflow: auto;
    border: 1px solid #252525;
    border-radius: 14px;
    background: #060606;
    color: #e3e6eb;
    direction: ltr;
    text-align: left;
    font: 500 12px/1.9 var(--font-mono);
}
.nb-product-page .nb-overview-content code,
.nb-product-page .nb-overview-content kbd,
.nb-product-page .nb-overview-content samp { font-family: var(--font-mono); }
.nb-product-page .nb-overview-content :not(pre) > code {
    padding: 2px 6px;
    border: 1px solid #242424;
    border-radius: 6px;
    background: #111;
    color: #b9abfb;
    direction: ltr;
    unicode-bidi: isolate;
}

.nb-product-page .nb-overview-content .wp-block-image,
.nb-product-page .nb-overview-content .wp-block-gallery { margin-block: 28px; }
.nb-product-page .nb-overview-content .wp-block-image img,
.nb-product-page .nb-overview-content .wp-block-gallery img {
    border: 0;
    border-radius: 0;
    box-shadow: none;
}
.nb-product-page .nb-overview-content figcaption { margin-top: 9px; color: #717a87; font-size: 10px; text-align: center; }

.nb-product-page .nb-overview-content .wp-block-table { overflow-x: auto; }
.nb-product-page .nb-overview-content table { width: 100%; border-collapse: collapse; border: 1px solid #272727; background: #0b0b0b; }
.nb-product-page .nb-overview-content th,
.nb-product-page .nb-overview-content td { padding: 13px 14px; border: 1px solid #242424; text-align: right; vertical-align: top; }
.nb-product-page .nb-overview-content th { background: #111; color: #fff; font-size: 12px; font-weight: 850; }
.nb-product-page .nb-overview-content td { color: #b7bec8; font-size: 12px; }
.nb-product-page .nb-overview-content tr:nth-child(even) td { background: rgba(255,255,255,.012); }

.nb-product-page .nb-overview-content .wp-block-separator { border: 0; border-top: 1px solid #252525; opacity: 1; }
.nb-product-page .nb-overview-content .wp-block-details { padding: 16px 18px; border: 1px solid #252525; border-radius: 12px; background: #0c0c0c; }
.nb-product-page .nb-overview-content .wp-block-details summary { color: #fff; cursor: pointer; font-weight: 800; }
.nb-product-page .nb-overview-content .wp-block-file { padding: 14px; border: 1px solid #252525; border-radius: 12px; background: #0c0c0c; }

.nb-product-page .nb-overview-content :where(.wp-block-button__link,.wp-element-button,button:not(.components-button),input[type="submit"]) {
    min-height: 44px;
    padding: 9px 17px !important;
    border: 1px solid var(--green) !important;
    border-radius: 10px !important;
    background: var(--green) !important;
    color: #fff !important;
    font-family: var(--font-sans) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.5 !important;
    text-decoration: none !important;
    box-shadow: 0 10px 30px rgba(12,162,28,.15) !important;
    cursor: pointer;
}
.nb-product-page .nb-overview-content :where(.wp-block-button__link,.wp-element-button,button:not(.components-button),input[type="submit"]):hover {
    background: var(--green-dark) !important;
    border-color: var(--green-bright) !important;
}

.nb-product-page .nb-overview-content :where(input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),textarea,select) {
    width: 100%;
    min-height: 44px;
    border: 1px solid #292929 !important;
    border-radius: 10px !important;
    background: #080808 !important;
    color: #f2f3f5 !important;
    box-shadow: none !important;
    outline: 0;
}
.nb-product-page .nb-overview-content textarea { min-height: 120px; padding: 11px 13px; }
.nb-product-page .nb-overview-content :where(input,select) { padding-inline: 12px; }
.nb-product-page .nb-overview-content :where(input,textarea,select):focus { border-color: rgba(118,87,232,.7) !important; box-shadow: 0 0 0 3px rgba(118,87,232,.09) !important; }

/* =========================================================

   Essential Blocks — global safety layer
   Essential Blocks currently exposes 70+ blocks. Root/output class names
   consistently use eb-* and wp-block-essential-blocks-* conventions.
   ========================================================= */

.nb-product-page .nb-overview-content :where([class*="wp-block-essential-blocks-"],[class*="eb-"]) {
    box-sizing: border-box;
    max-width: 100%;
    min-width: 0;
}

/* Essential Blocks uses icon-font classes on spans. Never apply the text font
   to every eb-* element, otherwise those private-use glyphs become squares. */
.nb-product-page .nb-overview-content :where([class*="eb-"]) :where(h1,h2,h3,h4,h5,h6,p,li,strong,a,label,input,textarea,select,button),
.nb-product-page .nb-overview-content :where([class*="eb-"]) span:not([class*="icon"]):not([class*="fa-"]):not(.fas):not(.far):not(.fab) {
    font-family: var(--font-sans) !important;
}

.nb-product-page .nb-overview-content :where(.eb-parent-wrapper,[class*="eb-parent-"],.eb-wrapper-outer,.eb-wrapper-root,.eb-row-root-container,.eb-row-wrapper,.eb-row-inner,.eb-column-wrapper,.eb-column-inner,.eb-flex-container) {
    width: 100%;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-inline: 0 !important;
    box-sizing: border-box;
}

.nb-product-page .nb-overview-content :where([class*="eb-"]) img,
.nb-product-page .nb-overview-content :where([class*="eb-"]) video,
.nb-product-page .nb-overview-content :where([class*="eb-"]) iframe,
.nb-product-page .nb-overview-content :where([class*="eb-"]) svg { max-width: 100%; }

.nb-product-page .nb-overview-content :where([class*="eb-"]) p,
.nb-product-page .nb-overview-content :where([class*="eb-"]) li { color: #c3c9d1; }

/* Layout: Wrapper, Row, Column, Flex Container, Animated Wrapper, Shape Divider, Stacked Cards */
.nb-product-page .nb-overview-content :where(
    .eb-wrapper-outer,.eb-wrapper-root,.eb-row-root-container,.eb-row-wrapper,.eb-row-inner,
    .eb-column-wrapper,.eb-column-inner,[class*="eb-flex-container"],
    [class*="eb-animated-wrapper"],[class*="eb-stacked-card"],[class*="eb-shape-divider"]
) {
    max-width: 100% !important;
    min-width: 0 !important;
}

.nb-product-page .nb-overview-content :where(.eb-row-inner,[class*="eb-flex-container"]) { gap: clamp(12px, 2vw, 22px); }

/* Accordion — fixes white legacy/default Essential Blocks output */
.nb-product-page .nb-overview-content .eb-accordion-container {
    width: 100%;
    display: grid;
    gap: 10px;
    background: transparent !important;
}
.nb-product-page .nb-overview-content .eb-accordion-wrapper {
    overflow: hidden;
    border: 1px solid #292929 !important;
    border-radius: 14px !important;
    background: #0b0b0b !important;
    box-shadow: none !important;
}
.nb-product-page .nb-overview-content .eb-accordion-title-wrapper {
    min-height: 58px;
    padding: 15px 18px !important;
    display: flex;
    align-items: center;
    gap: 12px;
    border: 0 !important;
    background: #0d0d0d !important;
    color: #f2f3f5 !important;
    cursor: pointer;
    transition: background .18s ease, color .18s ease;
}
.nb-product-page .nb-overview-content .eb-accordion-title-wrapper:hover { background: #121212 !important; }
.nb-product-page .nb-overview-content .eb-accordion-title { color: #f1f2f4 !important; font-weight: 800 !important; }
.nb-product-page .nb-overview-content .eb-accordion-title :where(span,strong,em,u,a) { color: inherit !important; font-weight: inherit !important; }
.nb-product-page .nb-overview-content .eb-accordion-icon-wrapper,
.nb-product-page .nb-overview-content [class*="eb-accordion-icon"] { color: #9f8cf1 !important; }
.nb-product-page .nb-overview-content .eb-accordion-content-wrapper {
    border: 0 !important;
    border-top: 1px solid #232323 !important;
    background: #090909 !important;
    color: #bdc4ce !important;
}
.nb-product-page .nb-overview-content .eb-accordion-content { padding: 18px 20px !important; background: transparent !important; color: #bdc4ce !important; }
.nb-product-page .nb-overview-content .eb-accordion-content > :first-child { margin-top: 0 !important; }
.nb-product-page .nb-overview-content .eb-accordion-content > :last-child { margin-bottom: 0 !important; }

/* Advanced Tabs / Tab */
.nb-product-page .nb-overview-content .eb-advanced-tabs-wrapper {
    width: 100%;
    overflow: hidden;
    border: 1px solid #272727 !important;
    border-radius: 15px !important;
    background: #090909 !important;
}
.nb-product-page .nb-overview-content .eb-tabs-nav { padding: 7px !important; border-bottom: 1px solid #242424 !important; background: #0d0d0d !important; }
.nb-product-page .nb-overview-content .eb-tabs-nav ul,
.nb-product-page .nb-overview-content .eb-tabs-nav .tabTitles { margin: 0 !important; padding: 0 !important; gap: 5px; }
.nb-product-page .nb-overview-content .eb-tabs-nav li,
.nb-product-page .nb-overview-content .eb-tabs-nav .tab-title,
.nb-product-page .nb-overview-content [class*="eb-tab-title"] {
    border: 1px solid transparent !important;
    border-radius: 9px !important;
    background: transparent !important;
    color: #8d96a3 !important;
}
.nb-product-page .nb-overview-content .eb-tabs-nav :where(li.active,li.is-active,.active,.is-active,.eb-tab-active),
.nb-product-page .nb-overview-content [class*="eb-tab-title"].active {
    border-color: rgba(118,87,232,.25) !important;
    background: rgba(48,25,132,.16) !important;
    color: #fff !important;
}
.nb-product-page .nb-overview-content .eb-tabs-contents,
.nb-product-page .nb-overview-content .eb-tab-wrapper,
.nb-product-page .nb-overview-content .eb-tab-inner { background: #090909 !important; color: #c2c8d0 !important; }
.nb-product-page .nb-overview-content .eb-tabs-contents { padding: 20px !important; }

/* Advanced heading / EB Text / Typing Text */
.nb-product-page .nb-overview-content .eb-advance-heading-wrapper,
.nb-product-page .nb-overview-content [class*="eb-text-wrapper"],
.nb-product-page .nb-overview-content [class*="eb-typing-text"] { background: transparent !important; color: inherit !important; }
.nb-product-page .nb-overview-content .eb-advance-heading-wrapper :where(h1,h2,h3,h4,h5,h6),
.nb-product-page .nb-overview-content [class*="eb-typing-text"] :where(h1,h2,h3,h4,h5,h6,span) { color: #f4f5f6 !important; }
.nb-product-page .nb-overview-content .eb-ah-separator { border-color: rgba(118,87,232,.55) !important; color: #9c88ef !important; }

/* Advanced Image / Openverse / Galleries / Filterable Gallery / Image Masking */
.nb-product-page .nb-overview-content :where(
    .eb-advanced-image-wrapper,.eb-image-wrapper,[class*="eb-openverse"],
    [class*="eb-filterable-gallery"],[class*="eb-gallery"],[class*="eb-image-mask"]
) { max-width: 100% !important; }
.nb-product-page .nb-overview-content :where(
    .eb-advanced-image-wrapper,.eb-image-wrapper,[class*="eb-openverse"],
    [class*="eb-filterable-gallery"],[class*="eb-gallery"]
) img { display: block; max-width: 100% !important; height: auto !important; }
.nb-product-page .nb-overview-content [class*="eb-filterable-gallery"] :where(button,.filter-item,.filter-button) {
    border: 1px solid #282828 !important;
    border-radius: 9px !important;
    background: #0e0e0e !important;
    color: #9ba4b0 !important;
}
.nb-product-page .nb-overview-content [class*="eb-filterable-gallery"] :where(.active,.is-active) {
    border-color: rgba(118,87,232,.34) !important;
    background: rgba(48,25,132,.15) !important;
    color: #fff !important;
}

/* Advanced Video / Slider / Parallax / Image Comparison / Lottie */
.nb-product-page .nb-overview-content :where(
    [class*="eb-advanced-video"],[class*="eb-video"],[class*="eb-slider"],
    [class*="eb-parallax-slider"],[class*="eb-image-comparison"],[class*="eb-lottie"]
) { max-width: 100% !important; overflow: hidden; border-radius: 14px; }
.nb-product-page .nb-overview-content :where([class*="eb-slider"],[class*="eb-parallax-slider"]) :where(.slick-arrow,.swiper-button-next,.swiper-button-prev,[class*="arrow"]) {
    color: #fff !important;
}
.nb-product-page .nb-overview-content :where([class*="eb-slider"],[class*="eb-parallax-slider"]) :where(.slick-dots li button,.swiper-pagination-bullet) { opacity: .45; }

/* Buttons / Dual Button / Woo Add To Cart */
.nb-product-page .nb-overview-content :where(
    .eb-button-wrapper,.eb-advanced-button-wrapper,[class*="eb-dual-button"],
    [class*="eb-woo-add-to-cart"]
) a,
.nb-product-page .nb-overview-content :where(.eb-button-wrapper,.eb-advanced-button-wrapper,[class*="eb-dual-button"]) button {
    min-height: 44px !important;
    padding: 10px 17px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    border: 1px solid var(--green) !important;
    border-radius: 10px !important;
    background: var(--green) !important;
    color: #fff !important;
    font-weight: 850 !important;
    line-height: 1.4 !important;
    text-decoration: none !important;
    box-shadow: 0 10px 32px rgba(12,162,28,.15) !important;
}
.nb-product-page .nb-overview-content [class*="eb-dual-button"] :where(.eb-dual-button-secondary,.secondary) { background: #111 !important; border-color: #2d2d2d !important; }

/* Notice */
.nb-product-page .nb-overview-content .eb-notice-wrapper {
    position: relative;
    padding: 18px 20px !important;
    border: 1px solid rgba(118,87,232,.24) !important;
    border-right: 3px solid #7657e8 !important;
    border-radius: 13px !important;
    background: linear-gradient(135deg, rgba(48,25,132,.14), #0b0b0b) !important;
    color: #c6ccd5 !important;
    box-shadow: none !important;
}
.nb-product-page .nb-overview-content .eb-notice-title-wrapper { margin-bottom: 7px !important; background: transparent !important; }
.nb-product-page .nb-overview-content .eb-notice-title { color: #fff !important; font-weight: 850 !important; }
.nb-product-page .nb-overview-content .eb-notice-text { color: #bac1cb !important; line-height: 2 !important; }
.nb-product-page .nb-overview-content .eb-notice-dismiss { color: #777f8c !important; }

/* Infobox / CTA / Interactive Promo / Flipbox / Team / Testimonial */
.nb-product-page .nb-overview-content :where(
    .eb-infobox-wrapper,[class*="eb-call-to-action"],[class*="eb-cta"],
    [class*="eb-interactive-promo"],[class*="eb-flipbox"],[class*="eb-team-member"],
    [class*="eb-testimonial-wrapper"],[class*="eb-testimonial-slider"]
) {
    border-color: #272727 !important;
    border-radius: 15px !important;
    background-color: #0c0c0c !important;
    color: #c7cdd5 !important;
    box-shadow: none !important;
}
.nb-product-page .nb-overview-content :where(
    .eb-infobox-wrapper,[class*="eb-call-to-action"],[class*="eb-cta"],
    [class*="eb-interactive-promo"],[class*="eb-flipbox"],[class*="eb-team-member"],
    [class*="eb-testimonial"]
) :where(h1,h2,h3,h4,h5,h6,.title,[class*="title"]) { color: #fff !important; }
.nb-product-page .nb-overview-content :where(.eb-infobox-wrapper,[class*="eb-call-to-action"],[class*="eb-testimonial"]) :where(p,.description,[class*="description"]) { color: #aeb6c1 !important; }

/* Feature List */
.nb-product-page .nb-overview-content [class*="eb-feature-list"] { color: #c6ccd4 !important; }
.nb-product-page .nb-overview-content [class*="eb-feature-list"] :where(li,[class*="item"]) { border-color: #262626 !important; }
.nb-product-page .nb-overview-content [class*="eb-feature-list"] :where(svg,i,[class*="icon"]) { color: #6fd779 !important; }

/* Business Hours / Data Table / Multicolumn Pricing Table */
.nb-product-page .nb-overview-content :where([class*="eb-business-hours"],[class*="eb-data-table"],[class*="eb-multicolumn-pricing"]) {
    border-color: #272727 !important;
    background: #0b0b0b !important;
    color: #c5cbd4 !important;
}
.nb-product-page .nb-overview-content :where([class*="eb-business-hours"],[class*="eb-data-table"],[class*="eb-multicolumn-pricing"]) table {
    border-color: #282828 !important;
    background: #0b0b0b !important;
}
.nb-product-page .nb-overview-content :where([class*="eb-business-hours"],[class*="eb-data-table"],[class*="eb-multicolumn-pricing"]) :where(th,thead td) {
    border-color: #2b2b2b !important;
    background: #111 !important;
    color: #fff !important;
}
.nb-product-page .nb-overview-content :where([class*="eb-business-hours"],[class*="eb-data-table"],[class*="eb-multicolumn-pricing"]) td {
    border-color: #252525 !important;
    background: transparent !important;
    color: #b8c0ca !important;
}

/* Pricing Table / Price */
.nb-product-page .nb-overview-content :where([class*="eb-pricing"],.eb-price-wrapper,[class*="eb-multicolumn-pricing"]) {
    border-color: #292929 !important;
    border-radius: 16px !important;
    background-color: #0c0c0c !important;
    color: #c7cdd5 !important;
    box-shadow: none !important;
}
.nb-product-page .nb-overview-content :where([class*="eb-pricing"],.eb-price-wrapper) :where([class*="price"],.eb-price-amount) { color: #fff !important; }
.nb-product-page .nb-overview-content :where([class*="eb-pricing"],.eb-price-wrapper) :where([class*="period"],.eb-price-period) { color: #818a96 !important; }
.nb-product-page .nb-overview-content [class*="eb-pricing"] :where(li,[class*="feature"]) { border-color: #252525 !important; color: #b8c0ca !important; }

/* Countdown / Number Counter / Progress Bar */
.nb-product-page .nb-overview-content :where([class*="eb-countdown"],[class*="eb-number-counter"],[class*="eb-progressbar"],[class*="eb-progress-bar"]) {
    color: #fff !important;
}
.nb-product-page .nb-overview-content [class*="eb-countdown"] :where([class*="item"],[class*="unit"],[class*="box"]) {
    border-color: #282828 !important;
    border-radius: 12px !important;
    background: #0d0d0d !important;
}
.nb-product-page .nb-overview-content :where([class*="eb-number-counter"],[class*="eb-countdown"]) :where([class*="number"],[class*="count"]) { color: #fff !important; }
.nb-product-page .nb-overview-content :where([class*="eb-progressbar"],[class*="eb-progress-bar"]) :where([class*="track"],[class*="wrapper"],[class*="container"]) { background-color: #171717 !important; }
.nb-product-page .nb-overview-content :where([class*="eb-progressbar"],[class*="eb-progress-bar"]) :where([class*="fill"],[class*="line"],[class*="progress"]) { border-color: var(--green) !important; }

/* Timeline / Timeline Slider / News Ticker */
.nb-product-page .nb-overview-content :where([class*="eb-timeline"],[class*="eb-news-ticker"]) { color: #c6ccd4 !important; }
.nb-product-page .nb-overview-content [class*="eb-timeline"] :where([class*="item"],[class*="card"],[class*="content"]) {
    border-color: #292929 !important;
    border-radius: 13px !important;
    background-color: #0c0c0c !important;
}
.nb-product-page .nb-overview-content [class*="eb-timeline"] :where([class*="line"],[class*="connector"]) { border-color: rgba(118,87,232,.38) !important; background-color: rgba(118,87,232,.38) !important; }
.nb-product-page .nb-overview-content [class*="eb-news-ticker"] { border-color: #282828 !important; background: #0d0d0d !important; }

/* Toggle Content */
.nb-product-page .nb-overview-content [class*="eb-toggle-content"] { color: #c5cbd4 !important; }
.nb-product-page .nb-overview-content [class*="eb-toggle-content"] :where([class*="switch"],[class*="toggle"]) { border-color: #303030 !important; }
.nb-product-page .nb-overview-content .eb-toggle-content { padding-top: 16px; }

/* Icon Picker / Social Icon / Social Share */
.nb-product-page .nb-overview-content :where(.eb-icon-wrapper,[class*="eb-social-icon"],[class*="eb-social-share"]) :where(a,[class*="icon-container"],.eb-icon-container) {
    border-color: #2a2a2a !important;
    background-color: #0d0d0d !important;
    color: #9e8cf1 !important;
}

/* Advanced Search */
.nb-product-page .nb-overview-content [class*="eb-advanced-search"] {
    border-color: #292929 !important;
    border-radius: 13px !important;
    background: #0b0b0b !important;
}
.nb-product-page .nb-overview-content [class*="eb-advanced-search"] input { background: #080808 !important; color: #fff !important; }
.nb-product-page .nb-overview-content [class*="eb-advanced-search"] button { background: var(--green) !important; color: #fff !important; }

/* Breadcrumbs */
.nb-product-page .nb-overview-content [class*="eb-breadcrumb"] { color: #7e8793 !important; }
.nb-product-page .nb-overview-content [class*="eb-breadcrumb"] a { color: #aeb6c2 !important; }
.nb-product-page .nb-overview-content [class*="eb-breadcrumb"] a:hover { color: #fff !important; }

/* Table of Contents */
.nb-product-page .nb-overview-content [class*="eb-table-of-content"],
.nb-product-page .nb-overview-content [class*="eb-table-of-contents"],
.nb-product-page .nb-overview-content [class*="eb-toc"] {
    padding: 18px !important;
    border: 1px solid #282828 !important;
    border-radius: 14px !important;
    background: #0c0c0c !important;
    color: #c2c9d2 !important;
}
.nb-product-page .nb-overview-content :where([class*="eb-table-of-content"],[class*="eb-table-of-contents"],[class*="eb-toc"]) a { color: #aeb6c2 !important; }
.nb-product-page .nb-overview-content :where([class*="eb-table-of-content"],[class*="eb-table-of-contents"],[class*="eb-toc"]) a:hover { color: #79dc83 !important; }

/* Forms: EB Form, Fluent Forms Styler, WPForms Styler */
.nb-product-page .nb-overview-content :where([class*="eb-form-wrapper"],[class*="eb-form-"],[class*="eb-fluent"],[class*="eb-wpforms"]) {
    color: #c7cdd5 !important;
}
.nb-product-page .nb-overview-content :where([class*="eb-form"],[class*="eb-fluent"],[class*="eb-wpforms"]) label { color: #dce0e5 !important; font-weight: 750 !important; }
.nb-product-page .nb-overview-content :where([class*="eb-form"],[class*="eb-fluent"],[class*="eb-wpforms"]) :where(input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),textarea,select) {
    border: 1px solid #2a2a2a !important;
    border-radius: 10px !important;
    background: #080808 !important;
    color: #fff !important;
    box-shadow: none !important;
}
.nb-product-page .nb-overview-content :where([class*="eb-form"],[class*="eb-fluent"],[class*="eb-wpforms"]) :where(input,textarea,select)::placeholder { color: #5f6874 !important; }
.nb-product-page .nb-overview-content :where([class*="eb-form"],[class*="eb-fluent"],[class*="eb-wpforms"]) :where([class*="error"],.error) { color: #ff8585 !important; }
.nb-product-page .nb-overview-content :where([class*="eb-form"],[class*="eb-fluent"],[class*="eb-wpforms"]) :where([class*="success"],.success) { color: #72da7c !important; }

/* Navigation / Mega Menu / One Page Navigation / Offcanvas */
.nb-product-page .nb-overview-content :where([class*="eb-advanced-navigation"],[class*="eb-navigation"],[class*="eb-mega-menu"],[class*="eb-one-page-navigation"],[class*="eb-offcanvas"]) {
    color: #c8ced6 !important;
}
.nb-product-page .nb-overview-content :where([class*="eb-advanced-navigation"],[class*="eb-navigation"],[class*="eb-mega-menu"],[class*="eb-offcanvas"]) :where(ul,[class*="menu"],[class*="panel"]) {
    border-color: #292929 !important;
    background-color: #0c0c0c !important;
}
.nb-product-page .nb-overview-content :where([class*="eb-advanced-navigation"],[class*="eb-navigation"],[class*="eb-mega-menu"],[class*="eb-offcanvas"]) a { color: #bdc4cd !important; }
.nb-product-page .nb-overview-content :where([class*="eb-advanced-navigation"],[class*="eb-navigation"],[class*="eb-mega-menu"],[class*="eb-offcanvas"]) a:hover { color: #fff !important; }

/* Popups: keep plugin positioning/visibility logic, only skin surfaces */
.nb-product-page .nb-overview-content .eb-popup-container,
.eb-popup-container .eb-popup-content,
.eb-popup-container [class*="content-wrapper"] {
    border-color: #292929 !important;
    background-color: #0b0b0b !important;
    color: #c7cdd5 !important;
}
.eb-popup-container .eb-popup-close-icon { color: #aeb6c1 !important; }

/* Post Grid / Post Carousel / Loop Builder / Taxonomy / Post Meta */
.nb-product-page .nb-overview-content :where([class*="eb-post-grid"],[class*="eb-post-carousel"],[class*="eb-loop-builder"],[class*="eb-taxonomy"],[class*="eb-post-meta"]) {
    color: #c4cad3 !important;
}
.nb-product-page .nb-overview-content :where([class*="eb-post-grid"],[class*="eb-post-carousel"],[class*="eb-loop-builder"]) :where(article,[class*="post-wrapper"],[class*="post-grid-item"],[class*="post-card"],[class*="item"]) {
    border-color: #282828 !important;
    border-radius: 14px !important;
    background-color: #0c0c0c !important;
    color: #c5cbd4 !important;
}
.nb-product-page .nb-overview-content :where([class*="eb-post-grid"],[class*="eb-post-carousel"],[class*="eb-loop-builder"]) :where(h1,h2,h3,h4,h5,h6,[class*="title"]) { color: #fff !important; }
.nb-product-page .nb-overview-content :where([class*="eb-post-grid"],[class*="eb-post-carousel"],[class*="eb-loop-builder"]) :where([class*="meta"],[class*="date"],[class*="author"]) { color: #737c88 !important; }

/* Fancy Chart */
.nb-product-page .nb-overview-content [class*="eb-fancy-chart"] {
    padding: 14px;
    border: 1px solid #282828 !important;
    border-radius: 14px !important;
    background: #0b0b0b !important;
}

/* Google Maps — do not recolor the map canvas */
.nb-product-page .nb-overview-content [class*="eb-google-map"] {
    overflow: hidden;
    border: 1px solid #282828 !important;
    border-radius: 14px !important;
    background: #0b0b0b;
}

/* Image Hotspots */
.nb-product-page .nb-overview-content [class*="eb-image-hotspot"] :where([class*="tooltip"],[role="tooltip"]) {
    border: 1px solid #2a2a2a !important;
    border-radius: 9px !important;
    background: #0c0c0c !important;
    color: #fff !important;
    box-shadow: 0 16px 40px rgba(0,0,0,.35) !important;
}
.nb-product-page .nb-overview-content [class*="eb-image-hotspot"] :where([class*="hotspot"],[class*="point"]) { color: #fff !important; }

/* NFT / Instagram / Facebook feeds */
.nb-product-page .nb-overview-content :where([class*="eb-nft"],[class*="eb-instagram"],[class*="eb-facebook-feed"]) :where([class*="card"],[class*="item"],[class*="post"]) {
    border-color: #282828 !important;
    border-radius: 13px !important;
    background-color: #0c0c0c !important;
    color: #c6ccd4 !important;
}

/* WooCommerce Essential Blocks */
.nb-product-page .nb-overview-content :where(
    [class*="eb-woo-product-grid"],[class*="eb-woo-product-carousel"],
    [class*="eb-woo-product-details"],[class*="eb-woo-product-images"],
    [class*="eb-woo-product-price"],[class*="eb-woo-product-rating"],
    [class*="eb-woo-add-to-cart"]
) { color: #c6ccd4 !important; }
.nb-product-page .nb-overview-content :where([class*="eb-woo-product-grid"],[class*="eb-woo-product-carousel"]) :where([class*="product"],[class*="item"],[class*="card"]) {
    border-color: #282828 !important;
    border-radius: 14px !important;
    background: #0c0c0c !important;
}
.nb-product-page .nb-overview-content :where([class*="eb-woo-product-grid"],[class*="eb-woo-product-carousel"],[class*="eb-woo-product-details"]) :where(h1,h2,h3,h4,[class*="title"]) { color: #fff !important; }
.nb-product-page .nb-overview-content :where([class*="eb-woo-product-price"],[class*="eb-woo-product-grid"],[class*="eb-woo-product-carousel"]) :where(.amount,[class*="price"]) { color: #e9ebee !important; }
.nb-product-page .nb-overview-content [class*="eb-woo-product-rating"] { color: #f4c25b !important; }

/* Misc Essential Blocks: keep these layout-safe and dark when they expose surfaces. */
.nb-product-page .nb-overview-content :where(
    [class*="eb-facebook-feed"],[class*="eb-instagram-feed"],[class*="eb-nft-gallery"],
    [class*="eb-testimonial-slider"],[class*="eb-timeline-slider"],
    [class*="eb-parallax-slider"],[class*="eb-news-ticker"],
    [class*="eb-toggle-content"],[class*="eb-stacked-card"]
) { max-width: 100% !important; min-width: 0 !important; }

/* Stop plugin/theme width rules from producing narrow or overflowing content. */
.nb-product-page .nb-overview-content :where([class*="eb-"]) {
    overflow-wrap: anywhere;
}
.nb-product-page .nb-overview-content :where([class*="eb-"]) :where(table,pre,code,img,video,iframe) { max-width: 100%; }
.nb-product-page .nb-overview-content :where([class*="eb-"]) :where(table,pre) { overflow-x: auto; }

/* Respect WordPress align helpers without escaping the content card. */
.nb-product-page .nb-overview-content :where(.alignwide,.alignfull) {
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
}

/* RTL hardening for form builders / tables / generated widgets. */
.nb-product-page .nb-overview-content [dir="ltr"] { direction: ltr; }
.nb-product-page .nb-overview-content :where([class*="eb-"]):not([dir="ltr"]) { direction: rtl; }
.nb-product-page .nb-overview-content :where([class*="eb-"]) :where(input,textarea,select) { text-align: right; }
.nb-product-page .nb-overview-content :where([class*="eb-"]) :where(pre,code) { direction: ltr; text-align: left; }

/* Better underline rhythm for links and editor underline formatting. */
.nb-product-page .nb-overview-content,
.nb-product-page .nb-overview-content * {
    text-underline-offset: .28em;
}
.nb-product-page .nb-overview-content :where(a,u,[style*="text-decoration: underline"],[style*="text-decoration:underline"]) {
    text-decoration-thickness: 1px !important;
    text-decoration-skip-ink: auto;
}
.nb-product-page .nb-overview-content a:not(.button):not(.wp-element-button) {
    text-decoration-line: underline;
    text-decoration-color: rgba(121,220,131,.32);
}
.nb-product-page .nb-overview-content a:not(.button):not(.wp-element-button):hover {
    text-decoration-color: currentColor;
}

/* Accordion: readable spacing, correct text font, preserve plugin icon fonts. */
.nb-product-page .nb-overview-content .eb-accordion-container {
    gap: 16px !important;
}
.nb-product-page .nb-overview-content .eb-accordion-wrapper + .eb-accordion-wrapper {
    margin-top: 14px !important;
}
.nb-product-page .nb-overview-content .eb-accordion-wrapper {
    border-color: #2a2a2a !important;
    border-radius: 15px !important;
}
.nb-product-page .nb-overview-content .eb-accordion-title-wrapper {
    min-height: 64px;
    padding: 16px 18px !important;
    gap: 13px !important;
}
.nb-product-page .nb-overview-content .eb-accordion-title {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #f2f3f5 !important;
    font-family: var(--font-sans) !important;
    font-size: clamp(14px, 1.55vw, 18px) !important;
    font-weight: 800 !important;
    line-height: 1.8 !important;
    letter-spacing: 0 !important;
    text-align: right !important;
}
.nb-product-page .nb-overview-content .eb-accordion-title::before,
.nb-product-page .nb-overview-content .eb-accordion-title::after { display: none !important; }
.nb-product-page .nb-overview-content .eb-accordion-title :where(span,strong,em,u,a) {
    background: transparent !important;
    box-shadow: none !important;
    font-family: var(--font-sans) !important;
}
.nb-product-page .nb-overview-content .eb-accordion-title-wrapper > :not(.eb-accordion-icon-wrapper) {
    background: transparent !important;
}
.nb-product-page .nb-overview-content .eb-accordion-icon-wrapper {
    flex: 0 0 auto;
    width: 32px;
    height: 32px;
    display: inline-grid !important;
    place-items: center;
    margin: 0 !important;
    border: 1px solid #444957;
    border-radius: 50%;
    background: #0b0c0f !important;
    color: #9e89f5 !important;
}
/* Do not set font-family/font-weight here: Essential Blocks resolves its
   selected icon through its own icon-font class. Overriding it creates □. */
.nb-product-page .nb-overview-content .eb-accordion-icon,
.nb-product-page .nb-overview-content .eb-accordion-icon::before,
.nb-product-page .nb-overview-content [class*="eb-accordion-icon"]::before {
    color: #9e89f5 !important;
}
.nb-product-page .nb-overview-content .eb-accordion-content-wrapper {
    border-top-color: #292929 !important;
}
.nb-product-page .nb-overview-content .eb-accordion-content {
    padding: 24px 24px 25px !important;
    font-family: var(--font-sans) !important;
}
.nb-product-page .nb-overview-content .eb-accordion-content :where(p,li,h1,h2,h3,h4,h5,h6,strong,a,u,mark,span:not([class*="icon"]):not([class*="fa-"])) {
    font-family: var(--font-sans) !important;
}
.nb-product-page .nb-overview-content .eb-accordion-content :where(h1,h2,h3,h4,h5,h6) {
    background: transparent !important;
    box-shadow: none !important;
}

/* Advanced Heading: plugin presets can put colored rectangles behind each text
   fragment. On this template typography should sit directly on the page. */
.nb-product-page .nb-overview-content .eb-advance-heading-wrapper,
.nb-product-page .nb-overview-content .eb-advance-heading-wrapper .eb-ah-title,
.nb-product-page .nb-overview-content .eb-advance-heading-wrapper .eb-ah-subtitle,
.nb-product-page .nb-overview-content .eb-advance-heading-wrapper .eb-ah-title :where(span,strong,em,u,a),
.nb-product-page .nb-overview-content .eb-advance-heading-wrapper .eb-ah-subtitle :where(span,strong,em,u,a) {
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}
.nb-product-page .nb-overview-content .eb-advance-heading-wrapper :where(.eb-ah-title,.eb-ah-subtitle) {
    font-family: var(--font-sans) !important;
    text-align: right !important;
}

/* Do the same for common EB rich-text surfaces used inside exercises. */
.nb-product-page .nb-overview-content :where(
    [class*="eb-text-wrapper"],
    [class*="eb-typing-text"],
    [class*="eb-infobox"] [class*="title"],
    [class*="eb-call-to-action"] [class*="title"]
) :where(span,strong,em,u,a) {
    background-color: transparent !important;
    box-shadow: none !important;
}

@media (max-width: 760px) {
    .nb-product-page .nb-overview-content .eb-accordion-container { gap:14px!important; }
    .nb-product-page .nb-overview-content .eb-accordion-wrapper + .eb-accordion-wrapper { margin-top:12px!important; }
    .nb-product-page .nb-overview-content .eb-accordion-title-wrapper { min-height:58px; padding:14px!important; }
    .nb-product-page .nb-overview-content .eb-accordion-content { padding:18px 16px 20px!important; }
    .nb-product-page .nb-overview-content .eb-tabs-nav { overflow-x:auto; }
    .nb-product-page .nb-overview-content .eb-tabs-nav ul { width:max-content; min-width:100%; }
    .nb-product-page .nb-overview-content :where(.eb-row-inner,[class*="eb-flex-container"]) { gap:12px; }
}

/* =========================================================
   Phase 130 V157 — Essential Blocks runtime ownership
   Slider/Post Carousel geometry is owned by Essential Blocks/Slick itself.
   Do not override slide widths, track transforms, adaptive heights or image
   sizing here; the generated per-block stylesheet remains authoritative.
   ========================================================= */

/* =========================================================
   Phase 130 V167 — Product EB slider centering + single link underline
   ========================================================= */

/* Slick owns all slide/track geometry. We only allow the visible image to be
   visually shifted to the measured center of the slider block. */
.nb-product-page .nb-overview-content .wp-block-essential-blocks-slider {
    width: min(100%, var(--nb-content-width)) !important;
    max-width: var(--nb-content-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-inline: auto !important;
}
.nb-product-page .nb-overview-content .wp-block-essential-blocks-slider .slick-list {
    overflow: hidden !important;
}
.nb-product-page .nb-overview-content .wp-block-essential-blocks-slider .eb-slider-type-image .eb-slider-item,
.nb-product-page .nb-overview-content .wp-block-essential-blocks-slider .eb-slider-type-image .slick-slide,
.nb-product-page .nb-overview-content .wp-block-essential-blocks-slider .eb-slider-type-image .slick-slide > div,
.nb-product-page .nb-overview-content .wp-block-essential-blocks-slider .eb-slider-type-image .eb-slider-item > div {
    overflow: visible !important;
}
.nb-product-page .nb-overview-content .wp-block-essential-blocks-slider .eb-slider-type-image .eb-slider-image {
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-inline: auto !important;
    float: none !important;
    transform: translateX(var(--nb-eb-center-offset, 0px)) !important;
    translate: none !important;
    transition: none !important;
    will-change: auto !important;
}

/* Product prose historically gave links a dashed border-bottom, while
   Gutenberg can also serialize an underline on the same linked text. Keep the
   approved dashed link cue as the single underline and suppress nested/inline
   text-decoration only when it lives inside an anchor. */
.nb-product-page .nb-overview-content a:not(.button):not(.wp-element-button) {
    border-bottom: 1px dashed rgba(115,217,125,.35) !important;
    text-decoration: none !important;
}
.nb-product-page .nb-overview-content a:not(.button):not(.wp-element-button) :is(
    u,
    ins,
    [style*="text-decoration"]
) {
    border-bottom: 0 !important;
    text-decoration: none !important;
}


