/* Design Overhaul v3 - shared */
.fb-hero,.gc-hero,[class$="-hero"],section[role="banner"]{background:linear-gradient(135deg,#161124 0%,#1b1c43 50%,#0a3360 100%)!important;color:#fff!important;padding:3.5rem 1.5rem!important;text-align:center!important;position:relative!important}
.fb-hero h1,.gc-hero h1,.fb-hero-title,section[role="banner"] h1{color:#fff!important;font-size:clamp(1.6rem,4vw,2.5rem)!important;font-weight:800!important;margin-bottom:.75rem!important;line-height:1.2!important}
.fb-hero p,.gc-hero p,.fb-hero-subtitle,.gc-lead,section[role="banner"] p{color:rgba(255,255,255,.85)!important;font-size:clamp(.95rem,2vw,1.15rem)!important;max-width:700px!important;margin-left:auto!important;margin-right:auto!important}
.fb-hero-badge,.gc-hero-badge{display:inline-block!important;background:rgba(180,139,18,.2)!important;color:#d3a819!important;padding:.3rem 1rem!important;border-radius:17px!important;font-size:.8rem!important;font-weight:600!important;margin-bottom:1rem!important;border:2px solid rgba(181,129,10,.3)!important}
.fb-hero-buttons a,.gc-hero-buttons a{padding:.7rem 1.8rem!important;border-radius:7px!important;font-weight:600!important;font-size:.95rem!important;text-decoration:none!important;display:inline-block!important}
.fb-btn-main,.gc-btn-main{background:linear-gradient(135deg,#bc8c13 0%,#d29b24 100%)!important;color:#fff!important;border:none!important}
.fb-btn-outline,.gc-btn-outline{background:transparent!important;color:#fff!important;border:2px solid rgba(255,255,255,.4)!important}
.fb-trust-bar,.gc-trust-bar{background:#f8f9fa!important;border-bottom:1px solid #e9ecef!important;padding:.75rem 1rem!important}
.fb-trust-inner,.gc-trust-inner{display:flex!important;justify-content:center!important;gap:2rem!important;flex-wrap:wrap!important;max-width:800px!important;margin:0 auto!important}
.fb-trust-item,.gc-trust-item{display:flex!important;align-items:center!important;gap:7px!important;font-size:.8rem!important;color:#55515b!important;font-weight:500!important}
.fb-trust-icon,.gc-trust-icon,svg[class*="-trust-icon"]{width:20px!important;height:20px!important;flex-shrink:0!important;color:#b98913!important;stroke:#ae8c0e!important}
article p{line-height:1.75!important;margin-bottom:1.2rem!important;color:#313334!important;font-size:1rem!important}
article h2{font-size:clamp(1.3rem,3vw,1.8rem)!important;font-weight:700!important;color:#1a102a!important;margin:2.5rem 0 1rem!important;line-height:1.3!important}
article h3{font-size:clamp(1.1rem,2.5vw,1.4rem)!important;font-weight:600!important;color:#2a3747!important;margin:2rem 0 .75rem!important}
article ul,article ol{padding-left:1.5rem!important;margin-bottom:1.5rem!important}
article li{margin-bottom:.5rem!important;line-height:1.6!important;color:#4d4740!important}
[class*="-testimonial"],[class*="-review-card"],[class*="-review-item"]{background:#fff!important;border:1px solid #e9ecef!important;border-radius:11px!important;padding:1.5rem!important;margin-bottom:1.25rem!important;box-shadow:0 1px 13px rgba(0,0,0,.06)!important}
[class*="-faq"] details{border:1px solid #e9ecef!important;border-radius:11px!important;margin-bottom:.75rem!important;overflow:hidden!important}
[class*="-faq"] summary{padding:1rem 1.25rem!important;font-weight:600!important;cursor:pointer!important;background:#fafafa!important;font-size:.95rem!important}
[class*="-faq"] details[open] summary{border-bottom:1px solid #e9ecef!important}
[class*="-faq-badge"]{display:inline-block!important;background:linear-gradient(135deg,#201433,#111e3e)!important;color:#fff!important;padding:.25rem .75rem!important;border-radius:3px!important;font-size:.75rem!important;font-weight:700!important;letter-spacing:2px!important;text-transform:uppercase!important;margin-bottom:.75rem!important}
[class*="-banner-block"]{margin:2.5rem auto!important;text-align:center!important;max-width:700px!important}
[class*="-banner-img"]{max-width:100%!important;height:auto!important;border-radius:6px!important;box-shadow:0 5px 20px rgba(176,130,16,.15)!important}
[class*="-company-logo"],img[class*="company-logo"]{min-height:40px!important;max-height:55px!important;border-radius:9px!important;border:none!important}
svg[class*="-icon"]{width:24px!important;height:24px!important;flex-shrink:0!important}
@media(max-width:768px){.fb-hero,.gc-hero,[class$="-hero"],section[role="banner"]{padding:2.5rem 1rem!important}}

/* Nav CTA centered */
nav, [class*="-nav"], [class*="-header"] > div {
    justify-content: center !important;
}
nav a[href*="gokiiit"], nav a[href*="gokit"], a[class*="nav-cta"], a[class*="Nav__link--cta"] {
    margin: 0 auto !important;
    display: inline-flex !important;
}

/* Hide trust bar/indicators completely */
[class*="-trust-bar"], [class*="-trust-inner"], [class*="trust-indicators"], .trust-bar, .trust-badges {
    display: none !important;
}

/* Hide secondary hero buttons (Compare Companies etc) */
[class*="-hero-buttons"] a[class*="outline"], [class*="-hero-buttons"] a[href="#guide"] {
    display: none !important;
}

/* Hide ALL hero buttons - table should follow h1 directly */
[class*="-hero-buttons"], [class*="-hero-actions"], [class*="-hero"] .btn-group,
[class*="-hero"] [class*="hero-buttons"], [class*="-hero"] [class*="hero-actions"] {
    /* farm-fix: removed [class*="buttons"] — was hiding .fb-action-buttons */

    display: none !important;
}

/* Hide Augusta promo row inside/after table */
[class*="-featured-promo"], [class*="-promo-row"], [class*="-featured-banner"],
tr[class*="promo"], tr[class*="featured-banner"],
[class*="fb-featured-row"], [class*="fb-promo"] {
    display: none !important;
}
/* Hide the Augusta highlight bar between table rows */
[class*="-company-highlight"], [class*="-augusta-highlight"], .fb-highlight-row {
    display: none !important;
}

/* FORCE hide hero buttons */
.fb-hero-buttons, .gc-hero-buttons, .vs-hero-buttons,
div[class$="-hero-buttons"], div[class*="-hero-buttons"],
div[class$="-hero-actions"], div[class*="-hero-actions"] {
    display: none !important;
    height: 0 !important;
    overflow: hidden !important;
}

/* Bigger company logos in table */
.fb-company-logo, .gc-company-logo, .vs-company-logo,
img[class*="company-logo"], img[class*="CompanyLogo"],
[class*="catCompanyLogo"] {
    min-height: 60px !important;
    max-height: 80px !important;
    width: auto !important;
}

/* Hide company text name in table (keep badge) */
.fb-company-name, .gc-company-name, .vs-company-name,
div[class$="-company-name"],
span[class*="CompanyName__main"] {
    font-size: 0 !important;
    line-height: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}
}

/* Center ALL table cells and content */
[class*="companies-table"] td, [class*="companies-table"] th,
[class*="CompanyGrid"] td, [class*="CompanyGrid"] th,
[class*="providers"] td, [class*="providers"] th,
table[class*="company"] td, table[class*="company"] th,
.fb-companies-table td, .fb-companies-table th,
.gc-companies-table td, .gc-companies-table th,
.vs-companies-table td, .vs-companies-table th {
    text-align: center !important;
    vertical-align: middle !important;
}
[class*="companies-table"] td *, [class*="companies-table"] th *,
.fb-companies-table td *, .gc-companies-table td *, .vs-companies-table td * {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
[class*="-company-info"], [class*="CompanyInfo"] {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
}
[class*="-rating-box"], [class*="-rating"] {
    justify-content: center !important;
    text-align: center !important;
}
[class*="-features-list"], [class*="-features"] ul {
    list-style-position: inside !important;
    padding-left: 0 !important;
    text-align: center !important;
}
[class*="-action-buttons"], [class*="-actions"] {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 7px !important;
}
[class*="-stars"], [class*="Stars"] {
    justify-content: center !important;
    display: flex !important;
}

/* Testimonials grid layout */
[class*="-testimonials-grid"], [class*="-testimonial-grid"], [class*="testimonials-grid"] {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)) !important;
    gap: 1.25rem !important;
}
[class*="-testimonial-avatar"] img, [class*="testimonial-avatar"] img {
    width: 48px !important;
    height: 48px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
}
[class*="-testimonial-header"], [class*="testimonial-header"] {
    display: flex !important;
    align-items: center !important;
    gap: 11px !important;
    margin-bottom: 6px !important;
}
[class*="-testimonial-verified"] {
    color: #27c657 !important;
    font-weight: 700 !important;
}
@media (max-width: 600px) {
    [class*="-testimonials-grid"] {
        grid-template-columns: 1fr !important;
    }
}

/* Light background for company tables */
[class*="companies-table"], [class*="companies-table-wrapper"],
[class*="CompanyGrid"], [class*="providers"],
table[class*="company"], table[class*="comparison"],
.fb-companies-table-wrapper, .gc-companies-table-wrapper, .vs-companies-table-wrapper,
#companies, #providers, [id*="companies"], [id*="table-wrapper"] {
    background: #f9fafb !important;
    border-radius: 12px !important;
    padding: 19px !important;
}
[class*="companies-table"] tbody tr, table[class*="company"] tbody tr {
    background: #fff !important;
    border-bottom: 1px solid #f0f0f0 !important;
}
[class*="companies-table"] tbody tr:hover, table[class*="company"] tbody tr:hover {
    background: #fffbf0 !important;
}
[class*="companies-table"] thead, table[class*="company"] thead {
    background: linear-gradient(135deg, #131826, #172245) !important;
}
[class*="companies-table"] thead th, table[class*="company"] thead th {
    color: #fff !important;
    font-weight: 600 !important;
    padding: 9px 11px !important;
}

/* Center table headers */
[class*="companies-table"] thead th, table[class*="company"] thead th,
.fb-companies-table th, .gc-companies-table th, .vs-companies-table th {
    text-align: center !important;
}

/* Double company logos size */
.fb-company-logo, .gc-company-logo, .vs-company-logo,
img[class*="company-logo"], img[class*="CompanyLogo"],
[class*="catCompanyLogo"] {
    min-height: 100px !important;
    max-height: 140px !important;
    width: auto !important;
}

}

nav > div, [class*="-header"] > div,
header > div:first-child, [class*="Header__wrap"] {
    display: grid !important;
}
nav > div > a:first-child, [class*="-header"] > div > a:first-child,
header > div:first-child > a:first-child {
}
nav > div > a[href*="gokiiit"], nav > div > a[href*="gokit"],
[class*="-header"] > div > a[href*="gokiiit"],
header > div > a[href*="gokiiit"],
header a[style*="gradient"][href*="gokiiit"] {
}
nav > div > div:last-child, nav > div > :last-child:not(a[href*="gokiiit"]),
[class*="-header"] > div > div:last-child {
}
@media (max-width: 600px) {
    nav > div, [class*="-header"] > div, header > div:first-child {
        grid-template-columns: 1fr auto !important;
    }
}

/* FAQ Section Styling */
[class*="-faq"], #faq, [id="faq"] {
    max-width: 1500px !important;
    margin: 3rem auto !important;
    padding: 0 1.5rem !important;
}
[class*="-faq"] > h2, #faq > h2, [class*="-faq"] > [class*="section-title"] {
    text-align: center !important;
    font-size: clamp(1.5rem, 3vw, 2rem) !important;
    font-weight: 800 !important;
    color: #111f31 !important;
    margin-bottom: 2rem !important;
    position: relative !important;
}
[class*="-faq"] > h2::after, #faq > h2::after {
    content: "" !important;
    display: block !important;
    width: 60px !important;
    height: 3px !important;
    background: linear-gradient(135deg, #b88e0a, #d09f17) !important;
    margin: 9px auto 0 !important;
    border-radius: 3px !important;
}

/* FAQ Items */
[class*="-faq-item"], .faq-item {
    background: #fff !important;
    border: 1px solid #ede5f1 !important;
    border-radius: 10px !important;
    margin-bottom: 13px !important;
    overflow: hidden !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04) !important;
    transition: box-shadow 0.2s !important;
}
[class*="-faq-item"]:hover, .faq-item:hover {
    box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important;
}

/* FAQ Questions */
[class*="-faq-question"], .faq-question, [class*="-faq-item"] h3 {
    padding: 1.1rem 1.4rem !important;
    font-weight: 700 !important;
    font-size: 1rem !important;
    color: #191b2f !important;
    cursor: pointer !important;
    background: #fafbfc !important;
    margin: 0 !important;
    border-bottom: 2px solid #f0f0f0 !important;
    line-height: 1.4 !important;
}

/* FAQ Answers - always open DISABLED */
/* Remove any collapse/accordion arrows */
[class*="-faq-question"]::after, [class*="-faq-question"] svg,
[class*="-faq-trigger"]::after, [class*="-faq-trigger"] svg {
    
}

/* Constrain content width */
main, [class*="-content"], [class*="-guide"], [class*="-article"],
article, [id="guide"], [class*="catMain"], [class*="-main"],
[class*="-section"], [class*="Section"] {
    max-width: 1500px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
}
/* Keep table and hero full width */
[class*="companies-table-wrapper"], [class*="-hero"],
section[role="banner"], header, nav, footer,
[id="homepage-table-wrapper"], #companies,
[class*="-testimonials"], [class*="-faq"],
[class*="banner-block"], [class*="BannerWrap"] {
    max-width: 100% !important;
}
/* But inner content of table still constrained */
[class*="companies-table-wrapper"] {
    max-width: 1100px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Hide Rank column */
[class*="-th-rank"], [class*="-td-rank"],
th:first-child, td:first-child {
    display: none !important;
}
/* But only in companies table, not all tables */
[class*="companies-table"] th:first-child,
[class*="companies-table"] td:first-child {
    display: none !important;
}

/* Remove table border/outline */
[class*="companies-table"], [class*="companies-table-wrapper"],
table[class*="company"], table[class*="comparison"],
.fb-companies-table, .gc-companies-table, .vs-companies-table {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}
[class*="companies-table"] td, [class*="companies-table"] th {
    border: none !important;
}
[class*="companies-table"] tbody tr {
    border-bottom: 1px solid #f0f0f0 !important;
    border-left: none !important;
    border-right: none !important;
}

/* TOC Styles */
.mag-toc{background:linear-gradient(135deg,rgba(208,163,33,.12) 0%,rgba(205,168,42,.05) 100%);border:2px solid #c4a72f;border-radius:15px;padding:30px 33px;margin:39px 0}
.mag-toc__title{font-size:21px;margin-bottom:18px;display:flex;align-items:center;gap:11px}
.mag-toc__list{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:0;margin:0}
.mag-toc__list li a{display:flex;align-items:center;gap:13px;padding:12px 13px;color:#251921;text-decoration:none;border-radius:11px;transition:background .2s}
.mag-toc__list li a:hover{background:rgba(206,158,34,.18);color:#c2ab2b}
.mag-toc__list li a::before{content:'\2192';color:#cd9a26}
@media(max-width:600px){.mag-toc__list{grid-template-columns:1fr}}

/* === Mobile table fix v5: flexible approach === */
@media (max-width: 768px) {
    /* Remove padding from table parent wrappers */
    #homepage-table-wrapper, [id*="table-wrapper"],
    #companies, [id*="companies"] {
        padding: 0 !important;
    }

    /* Table wrapper: full width with negative margins to escape parent padding */
    .fb-companies-table-wrapper, .gc-companies-table-wrapper, .vs-companies-table-wrapper,
    .bv-companies-table-wrapper, [class*="companies-table-wrapper"] {
        padding: 9px 0 !important;
        margin-left: -24px !important;
        margin-right: -27px !important;
        width: calc(100% + 50px) !important;
        max-width: none !important;
        border-radius: 0 !important;
        overflow-x: auto !important;
    }

    /* Remove min-width, natural width */
    .fb-companies-table, .gc-companies-table, .vs-companies-table,
    .bv-companies-table, [class*="companies-table"]:not([class*="wrapper"]) {
        min-width: auto !important;
        width: 100% !important;
    }

    /* Hide Rank(1st), BBB(5th), Features(6th) */
    [class*="companies-table"] th:nth-child(1),
    [class*="companies-table"] td:nth-child(1),
    .fb-th-rank, .fb-td-rank, .gc-th-rank, .gc-td-rank,
    [class*="companies-table"] th:nth-child(5),
    [class*="companies-table"] td:nth-child(5),
    .fb-th-bbb, .fb-td-bbb, .gc-th-bbb, .gc-td-bbb,
    [class*="companies-table"] th:nth-child(6),
    [class*="companies-table"] td:nth-child(6),
    .fb-th-features, .fb-td-features, .gc-th-features, .gc-td-features {
        display: none !important;
    }

    /* Compact company cell */
    .fb-company-logo, .gc-company-logo, .vs-company-logo,
    img[class*="company-logo"], [class*="catCompanyLogo"] {
        max-height: 30px !important;
        min-height: 22px !important;
        max-width: 100px !important;
    }
    .fb-company-name, .gc-company-name, [class*="company-name"] {
        font-size: 11px !important;
        line-height: 1.2 !important;
    }
    .fb-company-badge, .gc-company-badge, [class*="company-badge"] {
        font-size: 8px !important;
        padding: 1px 5px !important;
    }
    .fb-company-info, .gc-company-info, [class*="company-info"] {
        gap: 3px !important;
    }

    /* Compact rating */
    .fb-rating-value, .gc-rating-value, [class*="rating-value"] {
        font-size: 11px !important;
    }
    .fb-star, .gc-star {
        font-size: 11px !important;
    }

    /* Compact minimum */
    .fb-td-minimum, .gc-td-minimum, .fb-th-minimum, .gc-th-minimum {
        font-size: 12px !important;
        white-space: nowrap !important;
    }

    /* Action buttons: ensure visible */
    .fb-btn-primary, .fb-btn-primary-visit, .gc-btn-primary,
    [class*="btn-primary-visit"], [class*="btn-primary"]:not(nav *) {
        font-size: 11px !important;
        padding: 7px 8px !important;
        white-space: nowrap !important;
        display: block !important;
        text-align: center !important;
    }
    .fb-btn-review, .gc-btn-review, [class*="btn-review"] {
        font-size: 10px !important;
        padding: 5px 5px !important;
        display: block !important;
        text-align: center !important;
    }
    .fb-action-buttons, .gc-action-buttons, [class*="action-buttons"] {
        gap: 5px !important;
        flex-direction: column !important;
        align-items: stretch !important;
    }

    /* Compact table cells */
    [class*="companies-table"] td,
    [class*="companies-table"] th {
        padding: 7px 3px !important;
        vertical-align: middle !important;
    }
    [class*="companies-table"] thead th {
        font-size: 11px !important;
        white-space: nowrap !important;
    }
}

/* Extra small screens: also hide Rating column */
@media (max-width: 400px) {
    [class*="companies-table"] th:nth-child(3),
    [class*="companies-table"] td:nth-child(3),
    .fb-th-rating, .fb-td-rating, .gc-th-rating, .gc-td-rating {
        display: none !important;
    }
}
/* === Mobile nav fix v5: hide nav, show standalone burger + mobile-nav === */
@media (max-width: 767px) {
    /* Hide main nav completely — but NOT if it contains any burger button */
    nav:not(.toc-nav):not(.toc-box):not([class*="mobile"]):not(:has([class*="hamburger"])):not(:has([class*="burger"])):not(:has([class*="menu-toggle"])):not(:has([class*="menu-btn"])) {
        visibility: hidden !important;
        height: 0 !important;
        overflow: hidden !important;
        padding: 0 !important;
        margin: 0 !important;
        position: absolute !important;
        width: 0 !important;
    }
    /* Also: if nav is inside a header that has any burger button, keep nav visible */
    /* Must match specificity of hiding rule (0,7,1) — this is (0,8,2) */
    header:has([class*="hamburger"], [class*="burger"], [class*="menu-toggle"], [class*="menu-btn"]) nav:not(.toc-nav):not(.toc-box):not([class*="mobile"]):not(:has([class*="hamburger"])):not(:has([class*="burger"])):not(:has([class*="menu-toggle"])):not(:has([class*="menu-btn"])) {
        visibility: visible !important;
        height: auto !important;
        overflow: visible !important;
        width: auto !important;
        position: relative !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    /* BUT: if nav contains .site-hamburger, keep nav visible as compact bar */
    nav:not(.toc-nav):not(.toc-box):has(.site-hamburger) {
        visibility: visible !important;
        height: auto !important;
        overflow: visible !important;
        padding: 0 10px !important;
        margin: 0 !important;
        width: auto !important;
        position: sticky !important;
        top: 0 !important;
        z-index: 1000 !important;
        background: rgba(255,255,255,.97) !important;
        border-bottom: 1px solid #dde1dd !important;
    }
    /* Nav container inside burger-nav: flex, logo + burger */
    nav:has(.site-hamburger) > div:not(.site-mobile-nav) {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 11px 7px !important;
        min-height: 46px !important;
    }
    /* Hide nav links inside burger-nav (but not mobile-nav links) */
    nav:has(.site-hamburger) > div:not(.site-mobile-nav) > a:not(:first-child):not([class*="logo"]):not([class*="brand"]),
    nav:has(.site-hamburger) > div:not(.site-mobile-nav) > div:not(.site-mobile-nav):not(:has(.site-hamburger)),
    nav:has(.site-hamburger) ul,
    nav:has(.site-hamburger) [class*="-nav-menu"],
    nav:has(.site-hamburger) [class*="-nav-link"],
    nav:has(.site-hamburger) [class*="nav-link"] {
        display: none !important;
    }
    /* Burger button always visible */
    .site-hamburger {
        display: block !important;
        visibility: visible !important;
    }
    .site-desktop-links {
        display: none !important;
    }
    /* Mobile nav dropdown */
    .site-mobile-nav {
        display: none !important;
        position: fixed !important;
        z-index: 10000 !important;
    }
    .site-mobile-nav.active {
        display: block !important;
    }
    .site-mobile-nav a {
        display: block !important;
        visibility: visible !important;
        height: auto !important;
    }
    /* Hide header CTA buttons */
    [class*="-header-cta"],
    [class*="-header-action"],
    header a[href*="#companies"],
    header a[href*="#homepage"],
    nav a[href*="gokiiit"],
    nav a[href*="gokit"] {
        display: none !important;
    }
    /* Logo compact */
    header > div:first-child {
        padding: 9px 16px !important;
    }
    header > div:first-child > a:first-child,
    [class*="-logo"], [class*="-brand"], [class*="-brand-text"] {
        font-size: 16px !important;
    }
    /* Template headers with burger inside */
    header[class*="-header"]:has(.site-hamburger) > div {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 10px 13px !important;
    }
    header[class*="-header"]:has(.site-hamburger) nav {
        display: none !important;
    }
}

/* === FAQ Accordion universal styles === */
[class*="faq-answer"], [class*="accordion-body"], [class*="accordion-content"] {
    padding: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 0.35s ease !important;
}
[class*="faq-item"].active > [class*="faq-answer"],
[class*="accordion-item"].active > [class*="accordion-body"],
[class*="accordion-item"].active > [class*="accordion-content"] {
    max-height: 600px !important;
    padding: 1.1rem 1.4rem !important;
}
[class*="faq-question"], [class*="accordion-trigger"] {
    cursor: pointer !important;
    user-select: none !important;
}
[class*="faq-question"]:hover, [class*="accordion-trigger"]:hover {
    opacity: 0.8 !important;
}
[class*="faq-question"]::after {
    content: '+' !important;
    float: right !important;
    font-weight: bold !important;
    font-size: 1.2em !important;
    transition: transform 0.3s ease !important;
}
[class*="faq-item"].active > [class*="faq-question"]::after {
    content: '−' !important;
}

/* Fix vb-dropdown mobile nav */
@media(max-width:768px){
  .vb-dropdown.active{max-height:500px!important;height:auto!important;overflow:visible!important;display:block!important}
  .vb-dropdown.active .vb-dropdown__nav{visibility:visible!important;height:auto!important;overflow:visible!important;max-height:none!important;display:block!important;flex-direction:column!important}
}
/* Fix ba-drawer mobile nav */
@media(max-width:768px){
  .ba-drawer{visibility:visible!important;height:auto!important;max-height:500px!important;overflow:visible!important}
  .ba-drawer .ba-drawer-link{visibility:visible!important;display:block!important;height:auto!important}
}

/* === MOBILE COMPANY CARD BUTTONS & LOGOS FIX === */
@media (max-width: 768px) {
  [class*="company-actions"],
  [class*="company-btns"],
  [class*="action-buttons"],
  [class*="cta-cell"] {
    flex-direction: column !important;
    width: 100% !important;
    gap: 8px !important;
    align-items: stretch !important;
  }
  [class*="company-actions"] [class*="btn-primary"],
  [class*="company-btns"] [class*="btn-primary"],
  [class*="company-actions"] [class*="btn-visit"],
  [class*="company-btns"] [class*="btn-visit"],
  [class*="company-actions"] [class*="btn-getkit"],
  [class*="company-btns"] [class*="btn-getkit"],
  [class*="company-actions"] [class*="btn-cta"],
  [class*="company-btns"] [class*="btn-cta"],
  [class*="cta-cell"] a {
    font-size: 15px !important;
    padding: 14px 16px !important;
    white-space: normal !important;
    width: 100% !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    min-height: 48px !important;
  }
  [class*="company-actions"] [class*="btn-review"],
  [class*="company-btns"] [class*="btn-review"],
  [class*="company-actions"] [class*="btn-outline"],
  [class*="company-btns"] [class*="btn-outline"] {
    width: 100% !important;
    padding: 11px 16px !important;
    font-size: 13px !important;
    box-sizing: border-box !important;
  }
  [class*="company-logo"],
  [class*="company-logo-wrap"],
  [class*="logo-wrap"] {
    background: rgba(255,255,255,0.95) !important;
    border-radius: 10px !important;
    padding: 7px 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
  [class*="company-logo"] img,
  [class*="company-logo-wrap"] img,
  [class*="logo-wrap"] img {
    max-width: 45vw !important;
    min-width: 80px !important;
    max-height: 75px !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 auto !important;
  }
}


/* === FARM_TABLE_CTA_FIX_20260722 === */
/* P0: never hide company-table CTAs (over-broad hero "buttons" selector broke these) */
.fb-action-buttons,
.gc-action-buttons,
.vs-action-buttons,
[class*="-action-buttons"]:not([class*="hero"]),
.fb-td-action .fb-action-buttons,
.gc-td-action .gc-action-buttons,
td[class*="action"] [class*="action-buttons"],
td[class*="cta"] [class*="action-buttons"] {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    width: auto !important;
    max-height: none !important;
    overflow: visible !important;
}
.fb-action-buttons a,
.gc-action-buttons a,
[class*="-action-buttons"]:not([class*="hero"]) a,
.fb-btn-primary,
.fb-btn-primary-visit,
.fb-btn-review,
.gc-btn-primary,
.gc-btn-review,
a.fb-btn,
a.gc-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    visibility: visible !important;
    opacity: 1 !important;
    text-decoration: none !important;
}
/* Ensure primary CTAs have visible background (not transparent white-on-white) */
.fb-btn-primary,
.fb-btn-primary-visit,
.gc-btn-primary,
a.fb-btn-primary,
a.fb-btn-primary-visit {
    background: linear-gradient(135deg, #e8b923 0%, #f0d060 100%) !important;
    color: #1a1a1a !important;
    border: none !important;
    padding: 10px 18px !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
}
.fb-btn-review,
.gc-btn-review,
a.fb-btn-review {
    background: transparent !important;
    color: #1a365d !important;
    border: 2px solid #1a365d !important;
    padding: 8px 16px !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
}

/* P0: star ratings must not be white on white */
.fb-star,
.fb-star-full,
.fb-star-half,
.gc-star,
.gc-star-full,
.gc-star-half,
[class*="star-full"],
[class*="star-half"],
.fb-stars,
.gc-stars,
[class*="-stars"] {
    color: #f5b301 !important;
}
.fb-star-empty,
.gc-star-empty,
[class*="star-empty"] {
    color: #d1d5db !important;
}

/* P1: show rank column in company ranking tables */
[class*="companies-table"] th:first-child,
[class*="companies-table"] td:first-child,
[class*="-th-rank"],
[class*="-td-rank"],
.fb-th-rank,
.fb-td-rank,
.gc-th-rank,
.gc-td-rank {
    display: table-cell !important;
    visibility: visible !important;
    width: auto !important;
    min-width: 48px !important;
}
/* Undo accidental global first-child hide for non-company tables is handled by specificity above */
/* Keep first-child hide from applying to companies tables by overriding the broad rule */
table[class*="companies"] th:first-child,
table[class*="companies"] td:first-child {
    display: table-cell !important;
}


/* === FARM_READABILITY_FIX_20260722 === */

/* P0: company ranking table body text must be dark on light rows */
[class*="companies-table"] tbody td,
[class*="companies-table"] tbody th,
table[class*="company"] tbody td,
table[class*="company"] tbody th,
.fb-companies-table tbody td,
.gc-companies-table tbody td,
.vs-companies-table tbody td,
.oldd-companies-table tbody td,
.kckc-companies-table tbody td,
[class*="companies-table"] tbody td *:not(a):not(button):not([class*="btn"]):not([class*="star"]):not([class*="badge"]):not(svg):not(path),
[class*="companies-table"] .fb-td-minimum,
[class*="companies-table"] .fb-td-bbb,
[class*="companies-table"] .fb-td-features,
[class*="companies-table"] .fb-td-rating,
[class*="companies-table"] .fb-td-rank,
[class*="companies-table"] [class*="-td-minimum"],
[class*="companies-table"] [class*="-td-bbb"],
[class*="companies-table"] [class*="-td-features"],
[class*="companies-table"] [class*="-td-rating"],
[class*="companies-table"] [class*="-td-rank"],
[class*="companies-table"] [class*="-td-company"],
[class*="companies-table"] li {
    color: #1e293b !important;
}
/* keep thead light-on-dark */
[class*="companies-table"] thead th,
[class*="companies-table"] thead td,
table[class*="company"] thead th {
    color: #ffffff !important;
}
/* light row background safety if theme left rows white */
[class*="companies-table"] tbody tr {
    background-color: #ffffff !important;
    color: #1e293b !important;
}
[class*="companies-table"] tbody tr:nth-child(even) {
    background-color: #f8fafc !important;
}

/* P0: hero H1 always readable on dark heroes */
[class*="-hero"] h1,
[class*="hero"] > h1,
[class$="-hero"] h1,
section[role="banner"] h1,
.fb-hero h1,
.gc-hero h1,
[class*="-hero-title"],
h1[class*="hero"] {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background: none !important;
    background-image: none !important;
    -webkit-background-clip: border-box !important;
    background-clip: border-box !important;
    text-shadow: 0 1px 2px rgba(0,0,0,.35) !important;
}

/* P1: generic primary/review CTA skins (beyond fb-/gc-) */
[class*="-action-buttons"] a[class*="btn-primary"],
[class*="-action-buttons"] a[class*="btn-visit"],
[class*="-action-buttons"] a[class*="getkit"],
[class*="-action-buttons"] a[class*="primary"],
[class*="action-buttons"] a[class*="btn-primary"],
[class*="cta-cell"] a[class*="btn-primary"],
[class*="cta-cell"] a[class*="primary"],
a[class*="-btn-primary"],
a[class*="btn-primary-visit"],
a[class*="btn-get"],
.kckc-btn-primary,
.oldd-btn-primary,
.gnoc-btn-primary {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: linear-gradient(135deg, #e8b923 0%, #f0d060 100%) !important;
    background-image: linear-gradient(135deg, #e8b923 0%, #f0d060 100%) !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 10px 18px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    visibility: visible !important;
    opacity: 1 !important;
}
[class*="-action-buttons"] a[class*="btn-review"],
[class*="-action-buttons"] a[class*="review"],
[class*="action-buttons"] a[class*="btn-review"],
[class*="cta-cell"] a[class*="btn-review"],
a[class*="-btn-review"],
a[class*="btn-review"],
.kckc-btn-review,
.oldd-btn-review {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #ffffff !important;
    background-image: none !important;
    color: #1a365d !important;
    -webkit-text-fill-color: #1a365d !important;
    border: 2px solid #1a365d !important;
    border-radius: 8px !important;
    padding: 8px 16px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* P2: header nav links on light bars */
header a:not([class*="btn"]):not([class*="cta"]):not([class*="kit"]),
.site-header a:not([class*="btn"]):not([class*="cta"]),
[class*="-header"] nav a,
[class*="-header"] .nav a,
[class*="-nav"] a:not([class*="btn"]):not([class*="cta"]),
header .jmjk-nav-link,
.site-header nav a {
    color: #1e293b !important;
    -webkit-text-fill-color: #1e293b !important;
    text-decoration: none !important;
    opacity: 1 !important;
}
header a:not([class*="btn"]):hover,
[class*="-header"] nav a:hover,
[class*="-nav"] a:not([class*="btn"]):hover {
    color: #0f766e !important;
    -webkit-text-fill-color: #0f766e !important;
}

/* Fix dark-theme sections that intentionally use white text on dark bg for companies */
section[class*="companies"][style*="background"][style*="#0"],
section[class*="companies"][class*="dark"] tbody td,
.kahd-companies,
section.kahd-companies,
section.kahd-companies * {
    /* do not force dark ink if section is intentionally dark — override below only for light tables */
}
/* Prefer light-table fix: if tbody row is light, keep dark text (already set above).
   For known dark company sections, restore white text */
section.kahd-companies,
section.kahd-companies tbody td,
section.kahd-companies tbody td *:not(a):not([class*="btn"]):not([class*="star"]),
section.kahd-companies li {
    color: #ffffff !important;
}
section.kahd-companies a[class*="btn-primary"],
section.kahd-companies a[class*="btn-review"] {
    /* buttons keep their own colors from rules above / theme */
}


/* === FARM_P0_SWEEP_20260722 === */
/* Lazy-load logos must be visible even before .loaded class */
img[loading="lazy"],
img.fb-company-logo,
img[class*="company-logo"],
img[class*="CompanyLogo"],
table img[src*="logo"] {
  opacity: 1 !important;
  visibility: visible !important;
}
/* Generic CTA buttons that use navy gradient: force readable text OR gold fill */
a[class*="cta-btn"],
a[class*="cta-cell__main"],
[class*="cta-cell__main"] {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  background-image: linear-gradient(135deg, #e8b923 0%, #f0d060 100%) !important;
  background: linear-gradient(135deg, #e8b923 0%, #f0d060 100%) !important;
}
/* lohh table body text */
.lohh-companies-table tbody td,
.lohh-companies-table tbody td *:not(a):not([class*="btn"]):not([class*="star"]):not(svg) {
  color: #1e293b !important;
  -webkit-text-fill-color: #1e293b !important;
}


/* === FARM_CTA_CONTRAST_V2_20260722 === */
/* Any primary CTA that ends up with dark text must not sit on dark navy fill */
a[class*="btn-primary"],
a[class*="primary-visit"],
a[class*="cta-btn"],
a[class*="btn-get"],
a[class*="getkit"],
.pl-btn-primary,
.ogge-cta-btn,
.ogge-cta-cell__main {
  background: linear-gradient(135deg, #e8b923 0%, #f0d060 100%) !important;
  background-image: linear-gradient(135deg, #e8b923 0%, #f0d060 100%) !important;
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}

/* === NET_FAQ_LAYOUT_FIX v1 === */
[class*="-faq-item"],
[class*="faq-item"]:not([class*="faq-items"]),
[class*="-faq-question"],
[class*="faq-question"],
[class*="-faq-answer"],
[class*="faq-answer"],
[class*="-faq-list"],
[class*="faq-list"],
[class*="-faq-trigger"],
[class*="faq-trigger"],
[class*="-faq-icon"],
[class*="faq-icon"] {
  max-width: none !important;
  width: auto !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  float: none !important;
}
[class*="-faq-item"],
[class*="faq-item"]:not([class*="faq-items"]) {
  display: block !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin-top: 0 !important;
  margin-bottom: 8px !important;
  box-sizing: border-box !important;
}
[class*="-faq-question"],
[class*="faq-question"],
[class*="-faq-trigger"],
[class*="faq-trigger"] {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  user-select: none !important;
  box-sizing: border-box !important;
}
[class*="-faq-question"]:has([class*="faq-icon"])::after,
[class*="faq-question"]:has([class*="faq-icon"])::after,
[class*="-faq-question"]:has(.faq-icon)::after,
[class*="faq-question"]:has(.faq-icon)::after {
  content: none !important;
  display: none !important;
}
[class*="-faq-question"]::after,
[class*="faq-question"]::after {
  float: none !important;
  margin-left: 8px !important;
}
[class*="-faq-answer"],
[class*="faq-answer"] {
  display: block !important;
  max-height: 0 !important;
  overflow: hidden !important;
  opacity: 1 !important;
  visibility: visible !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  transition: max-height 0.3s ease !important;
  box-sizing: border-box !important;
}
[class*="-faq-item"].active > [class*="-faq-answer"],
[class*="-faq-item"].is-open > [class*="-faq-answer"],
[class*="-faq-item"].open > [class*="-faq-answer"],
[class*="faq-item"].active > [class*="faq-answer"],
[class*="faq-item"].is-open > [class*="faq-answer"],
[class*="faq-item"].open > [class*="faq-answer"],
[class*="-faq-item"].active > [class*="faq-answer"],
[class*="-faq-item"].is-open > [class*="faq-answer"] {
  max-height: 2000px !important;
  overflow: visible !important;
  padding-bottom: 12px !important;
}
section.bottom-faq [class*="faq-item"],
.bottom-faq [class*="faq-item"] {
  max-height: none !important;
}



/* NET_FAQ_V3_ICON: hide CSS plus when HTML icon span exists */
[class*="-faq-question"] > [class*="faq-icon"] { display:inline-flex !important; align-items:center !important; justify-content:center !important; }
[class*="faq-question"] > [class*="faq-icon"] { display:inline-flex !important; }
/* force single plus: no ::after when any faq-icon descendant */
[class*="-faq-question"]:has(> [class*="faq-icon"])::after,
[class*="faq-question"]:has(> [class*="faq-icon"])::after,
[class*="-faq-question"]:has([class*="faq-icon"])::after,
[class*="faq-question"]:has([class*="faq-icon"])::after { content:none !important; display:none !important; width:0 !important; height:0 !important; }

/* NET_FAQ_V4_DOUBLEPLUS */
[class*="-faq-question"].net-faq-has-icon::after,
[class*="faq-question"].net-faq-has-icon::after,
[class*="-faq-trigger"].net-faq-has-icon::after {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}


/* === CONTENT_WIDTH_STANDARD v2 (network 1500px — high specificity) === */
:root {
  --dnpe-container-narrow: 1500px !important;
  --dnpe-container: 1500px !important;
  --dnpe-container-wide: 1500px !important;
  --container-narrow: 1500px !important;
  --container-width: 1500px !important;
  --content-width: 1500px !important;
  --max-content-width: 1500px !important;
  --site-content-width: 1500px !important;
}

@media (min-width: 769px) {
  html body main,
  html body main[class],
  html body article,
  html body article[class],
  html body [class*="-content"],
  html body [class*="-guide"],
  html body [class*="-article"],
  html body [class*="-main"],
  html body [class*="-section"],
  html body [class*="Section"],
  html body [class*="-container"],
  html body [class*="container"]:not([class*="cookie"]):not([class*="popup"]):not([class*="modal"]),
  html body [id="guide"],
  html body [class*="catMain"],
  html body [class*="-page"],
  html body [class*="page-content"],
  html body [class*="-wrapper"]:not([class*="cookie"]):not([class*="popup"]):not([class*="modal"]):not([class*="sticky"]):not([class*="banner"]),
  html body .content-area,
  html body .article-content,
  html body .cagh-article,
  html body .cagh-faq,
  html body [class*="-faq"]:not([class*="faq-item"]):not([class*="faq-q"]),
  html body section.faq-section,
  html body section.process-section {
    max-width: 1500px;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  html body [class*="companies-table-wrapper"],
  html body [class*="companies-table"],
  html body #homepage-table-wrapper,
  html body #companies,
  html body [class*="rankings"],
  html body [class*="comparison"] {
    max-width: 1500px !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body [class*="-hero"] h1,
  html body [class*="hero"] h1,
  html body main h1,
  html body [class*="-hero-title"],
  html body [class*="hero-title"] {
    max-width: 1500px !important;
  }
}

@media (max-width: 768px) {
  html body main,
  html body [class*="-main"],
  html body [class*="-container"],
  html body [class*="-content"],
  html body article {
    max-width: 100% !important;
  }
}
/* === /CONTENT_WIDTH_STANDARD v2 === */
/* WIDTH_VAR_FORCE_v3c */
:root{
  --cagh-container-narrow:1500px!important;
  --dnpe-container-narrow:1500px!important;
  --container-narrow:1500px!important;
  --content-width:1500px!important;
}
@media(min-width:769px){
  .cagh-article,.article-content,.content-area,article.article-content,main.content-area{
    max-width:1500px!important;width:100%!important;
  }
}

/* === CONTENT_WIDTH_FORCE v3d === */
:root {
  --dnpe-container-narrow: 1500px !important;
  --dnpe-container: 1500px !important;
  --dnpe-article-max: 1500px !important;
  --cagh-container-narrow: 1500px !important;
  --bflp-article-max: 1500px !important;
  --container-narrow: 1500px !important;
  --content-width: 1500px !important;
  --article-max-width: 1500px !important;
}
@media (min-width: 769px) {
  html body .dnpe-article,
  html body article.dnpe-article,
  html body .dnpe-hero-content,
  html body .dnpe-faq-list,
  html body .dnpe-author-box,
  html body .bflp-article,
  html body .content-article,
  html body article.content-article,
  html body .niel-section,
  html body .hero-inner,
  html body .article-content,
  html body .content-area,
  html body .cagh-article,
  html body .cagh-faq,
  html body .mb-article,
  html body .mb-faq,
  html body main,
  html body article {
    max-width: 1500px !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
  html body .dnpe-container,
  html body .bflp-container,
  html body .cagh-container,
  html body .mb-container {
    max-width: 1500px !important;
  }
}
/* === /CONTENT_WIDTH_FORCE v3d === */
/* === net-toc-fix v1 — Table of Contents polish (network) === */
html body nav.toc-box,
html body .toc-box {
  background: linear-gradient(180deg, #fafaf9 0%, #f3f1ec 100%) !important;
  border: 1px solid rgba(30, 30, 30, 0.1) !important;
  border-left: 4px solid #c9a227 !important;
  border-radius: 12px !important;
  padding: 0 !important;
  margin: 1.5rem auto 2rem !important;
  overflow: hidden !important;
  max-width: 560px !important;
  width: 100% !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.06) !important;
  font-family: Inter, system-ui, -apple-system, sans-serif !important;
  box-sizing: border-box !important;
}
html body .toc-box .toc-header {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 14px 18px !important;
  cursor: pointer !important;
  user-select: none !important;
  background: rgba(0, 0, 0, 0.03) !important;
  border-bottom: 1px solid transparent !important;
  transition: background 0.2s ease !important;
  margin: 0 !important;
}
html body .toc-box:not(.toc-collapsed) .toc-header {
  border-bottom-color: rgba(0, 0, 0, 0.08) !important;
}
html body .toc-box .toc-header:hover {
  background: rgba(201, 162, 39, 0.12) !important;
}
html body .toc-box .toc-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  border-radius: 8px !important;
  background: #1f2937 !important;
  color: #fafafa !important;
  font-size: 14px !important;
  line-height: 1 !important;
  flex-shrink: 0 !important;
}
html body .toc-box .toc-header strong,
html body .toc-box .toc-header .toc-title {
  flex: 1 1 auto !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em !important;
  color: #1f2937 !important;
  font-family: Inter, system-ui, sans-serif !important;
  margin: 0 !important;
}
html body .toc-box .toc-toggle {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  border-radius: 50% !important;
  background: rgba(0, 0, 0, 0.07) !important;
  color: #374151 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  transition: transform 0.25s ease, background 0.2s ease !important;
  flex-shrink: 0 !important;
}
html body .toc-box.toc-collapsed .toc-toggle {
  transform: rotate(-90deg) !important;
}
html body .toc-box:not(.toc-collapsed) .toc-toggle {
  transform: rotate(0deg) !important;
  background: rgba(201, 162, 39, 0.28) !important;
}
html body .toc-box.toc-collapsed .toc-list {
  display: none !important;
}
html body .toc-box .toc-list {
  list-style: none !important;
  margin: 0 !important;
  padding: 10px 12px 14px !important;
  counter-reset: toc-item !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}
html body .toc-box .toc-list li {
  padding: 0 !important;
  margin: 0 !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  counter-increment: toc-item !important;
  list-style: none !important;
}
html body .toc-box .toc-list a {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  padding: 9px 12px !important;
  color: #374151 !important;
  text-decoration: none !important;
  border: none !important;
  border-bottom: none !important;
  border-radius: 8px !important;
  transition: background 0.15s ease, color 0.15s ease !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-weight: 500 !important;
}
html body .toc-box .toc-list a::before {
  content: counter(toc-item) !important;
  flex-shrink: 0 !important;
  min-width: 22px !important;
  height: 22px !important;
  border-radius: 6px !important;
  background: rgba(201, 162, 39, 0.22) !important;
  color: #7a5a12 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-top: 1px !important;
}
html body .toc-box .toc-list a:hover {
  background: rgba(0, 0, 0, 0.05) !important;
  color: #111827 !important;
}
html body .toc-box .toc-list a:hover::before {
  background: #c9a227 !important;
  color: #fff !important;
}

/* mag-toc variant polish */
html body .mag-toc {
  border-radius: 12px !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.05) !important;
  max-width: 900px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
html body .mag-toc__title {
  font-family: Inter, system-ui, sans-serif !important;
  font-weight: 700 !important;
}

@media (max-width: 768px) {
  html body nav.toc-box,
  html body .toc-box {
    max-width: 100% !important;
    margin: 1rem 0 1.5rem !important;
    border-radius: 10px !important;
  }
  html body .toc-box .toc-header {
    padding: 12px 14px !important;
  }
  html body .toc-box .toc-header strong {
    font-size: 14px !important;
  }
  html body .toc-box .toc-list a {
    font-size: 13px !important;
    padding: 8px 10px !important;
  }
}
/* === /net-toc-fix v1 === */
/* === net-content-imgs v1 (float + lightbox) === */
html body figure.nci-fig,
html body figure.ci-fig {
  width: calc(50% - 0.7rem) !important;
  max-width: calc(50% - 0.7rem) !important;
  margin: 0.4rem 0 1rem !important;
  padding: 0 !important;
  text-align: center !important;
  box-sizing: border-box !important;
}
html body figure.nci-fig.nci-fig--left,
html body figure.ci-fig.ci-fig--left {
  float: left !important;
  margin-right: 1.25rem !important;
  margin-left: 0 !important;
  clear: left;
}
html body figure.nci-fig.nci-fig--right,
html body figure.ci-fig.ci-fig--right {
  float: right !important;
  margin-left: 1.25rem !important;
  margin-right: 0 !important;
  clear: right;
}
html body figure.nci-fig img,
html body figure.ci-fig img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.12) !important;
  cursor: zoom-in !important;
}
html body figure.nci-fig figcaption,
html body figure.ci-fig figcaption {
  display: block !important;
  margin-top: 8px !important;
  padding: 0 4px !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  color: #6b7280 !important;
  font-family: Inter, system-ui, sans-serif !important;
  text-align: center !important;
}
html body article::after,
html body .oldd-article::after,
html body .cagh-article::after,
html body .gnoc-article::after,
html body .dnpe-article::after,
html body .oldd-section::after,
html body section::after {
  content: "" !important;
  display: table !important;
  clear: both !important;
}
html body h2 {
  clear: both;
}

/* lightbox */
html body.nci-lb-open {
  overflow: hidden !important;
}
.nci-lb {
  position: fixed;
  inset: 0;
  z-index: 100000;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(15, 12, 14, 0.88);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  box-sizing: border-box;
}
.nci-lb.is-open {
  display: flex;
  animation: nciLbIn 0.18s ease;
}
@keyframes nciLbIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.nci-lb__stage {
  max-width: min(1100px, 96vw);
  max-height: 92vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
.nci-lb__img {
  max-width: 100%;
  max-height: min(82vh, 900px);
  width: auto;
  height: auto;
  border-radius: 12px;
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.45);
  object-fit: contain;
  background: #111;
}
.nci-lb__cap {
  margin: 0;
  max-width: 42rem;
  text-align: center;
  color: rgba(250, 248, 245, 0.9);
  font-family: Inter, system-ui, sans-serif;
  font-size: 14px;
  line-height: 1.45;
}
.nci-lb__close {
  position: fixed;
  top: 14px;
  right: 16px;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 50%;
  background: rgba(250, 248, 245, 0.12);
  color: #faf8f5;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
  z-index: 100001;
}
.nci-lb__close:hover {
  background: rgba(201, 162, 39, 0.85);
}

@media (max-width: 768px) {
  html body figure.nci-fig,
  html body figure.nci-fig.nci-fig--left,
  html body figure.nci-fig.nci-fig--right,
  html body figure.ci-fig,
  html body figure.ci-fig.ci-fig--left,
  html body figure.ci-fig.ci-fig--right {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 1rem 0 1.25rem !important;
    clear: both !important;
  }
  .nci-lb {
    padding: 12px;
  }
}
/* === /net-content-imgs v1 === */

