/* Design Overhaul v3 - shared */
.fb-hero,.gc-hero,[class$="-hero"],section[role="banner"]{background:linear-gradient(135deg,#16132a 0%,#1d2a35 50%,#0d3966 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(178,129,16,.2)!important;color:#e2a621!important;padding:.3rem 1rem!important;border-radius:19px!important;font-size:.8rem!important;font-weight:600!important;margin-bottom:1rem!important;border:2px solid rgba(179,139,10,.3)!important}
.fb-hero-buttons a,.gc-hero-buttons a{padding:.7rem 1.8rem!important;border-radius:5px!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,#b7830a 0%,#d09e27 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:#4c5b5a!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:#b9870a!important;stroke:#b08313!important}
article p{line-height:1.75!important;margin-bottom:1.2rem!important;color:#343633!important;font-size:1rem!important}
article h2{font-size:clamp(1.3rem,3vw,1.8rem)!important;font-weight:700!important;color:#1d1332!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:#25344f!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:#3c433f!important}
[class*="-testimonial"],[class*="-review-card"],[class*="-review-item"]{background:#fff!important;border:1px solid #e9ecef!important;border-radius:9px!important;padding:1.5rem!important;margin-bottom:1.25rem!important;box-shadow:0 2px 15px rgba(0,0,0,.06)!important}
[class*="-faq"] details{border:1px solid #e9ecef!important;border-radius:9px!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,#201025,#132744)!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:8px!important;box-shadow:0 5px 18px rgba(182,136,18,.15)!important}
[class*="-company-logo"],img[class*="company-logo"]{min-height:40px!important;max-height:55px!important;border-radius:11px!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*="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: 9px !important;
    margin-bottom: 8px !important;
}
[class*="-testimonial-verified"] {
    color: #2ac75f !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: 10px !important;
    padding: 17px !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, #10202c, #172337) !important;
}
[class*="companies-table"] thead th, table[class*="company"] thead th {
    color: #fff !important;
    font-weight: 600 !important;
    padding: 11px 10px !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: 900px !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: #111836 !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, #ba800f, #d39b1f) !important;
    margin: 11px auto 0 !important;
    border-radius: 3px !important;
}

/* FAQ Items */
[class*="-faq-item"], .faq-item {
    background: #fff !important;
    border: 1px solid #e8ede1 !important;
    border-radius: 12px !important;
    margin-bottom: 15px !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: #141d33 !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 */
[class*="-faq-answer"], .faq-answer, [class*="-faq-item"] > div:last-child,
[class*="-faq-panel"], .faq-panel {
    display: block !important;
    
    
    
    opacity: 1 !important;
    visibility: visible !important;
    
    color: #514c5a !important;
    font-size: 0.95rem !important;
    line-height: 1.7 !important;
    background: #fff !important;
}
[class*="-faq-answer"] p, .faq-answer p {
    margin: 0 !important;
    color: #475b69 !important;
}

/* 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: 900px !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(202,161,31,.12) 0%,rgba(203,154,40,.05) 100%);border:2px solid #c7a11f;border-radius:13px;padding:31px 35px;margin:38px 0}
.mag-toc__title{font-size:19px;margin-bottom:20px;display:flex;align-items:center;gap:13px}
.mag-toc__list{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:10px;padding:0;margin:0}
.mag-toc__list li a{display:flex;align-items:center;gap:11px;padding:13px 15px;color:#28191f;text-decoration:none;border-radius:10px;transition:background .2s}
.mag-toc__list li a:hover{background:rgba(204,164,32,.18);color:#d19d2e}
.mag-toc__list li a::before{content:'\2192';color:#c8992a}
@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: 11px 0 !important;
        margin-left: -22px !important;
        margin-right: -25px !important;
        width: calc(100% + 51px) !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 6px !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 7px !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: 5px 4px !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 11px !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 #dbece3 !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: 10px 5px !important;
        min-height: 48px !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: 11px 14px !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: 11px 15px !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}
}

/* ============================================
   COMPREHENSIVE FIX - Mar 01 2026
   Targets BEM __ classes (mag-faq__item etc)
   ============================================ */

/* --- BODY & GLOBAL --- */
body.mag-page {
    background: #f5f6f8 !important;
    color: #111936 !important;
}

/* --- HEADER FIX --- */
.mag-topbar {
    background: linear-gradient(180deg, #0e162e 0%, #131f37 100%) !important;
    padding: 0 !important;
    border-bottom: 3px solid #29ad90 !important;
}
.mag-topbar__wrap {
    padding: 13px 11px !important;
    gap: 10px !important;
}
@media(max-width:768px) {
    .mag-topbar__action {
        display: none !important;
    }
    .mag-brand, a.mag-brand {
        position: static !important;
        transform: none !important;
        flex: 1 !important;
        font-size: 14px !important;
        color: #fff !important;
    }
    .mag-hamburger {
        display: flex !important;
        flex-shrink: 0 !important;
        border-color: #1fa99f !important;
    }
    .mag-hamburger span {
        background: #2aa69a !important;
    }
    .mag-topbar__wrap {
        justify-content: space-between !important;
    }
}

/* --- DRAWER / BURGER MENU FIX --- */
.mag-drawer {
    display: block !important;
    max-height: 0 !important;
    overflow: hidden !important;
    background: #0a1625 !important;
    transition: max-height 0.35s ease, padding 0.35s ease !important;
    padding: 0 19px !important;
    border-top: 1px solid rgba(255,255,255,0.1) !important;
}
.mag-drawer.open {
    max-height: 400px !important;
    padding: 23px 15px !important;
}
.mag-drawer__nav {
    display: flex !important;
    flex-direction: column !important;
    gap: 5px !important;
}
.mag-drawer__nav a {
    display: block !important;
    padding: 11px 20px !important;
    color: #e5d7d7 !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    border-radius: 6px !important;
    text-decoration: none !important;
    transition: background 0.2s !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
}
.mag-drawer__nav a:hover {
    background: rgba(44,165,157,0.15) !important;
    color: #22aea0 !important;
}

/* --- HERO FIX - reduce padding, bring table up --- */
.mag-hero {
    padding: 21px 0 13px !important;
    margin: 0 !important;
    text-align: center !important;
    background: transparent !important;
}
.mag-hero__heading {
    font-size: clamp(22px, 5vw, 36px) !important;
    color: #201d2f !important;
    margin: 0 0 5px !important;
}
.mag-hero__tag {
    display: none !important;
}
.mag-hero__desc {
    margin: 16px auto 0 !important;
    color: #5d585d !important;
    font-size: 15px !important;
}

/* --- CONTENT AREA --- */
.mag-content {
    background: #f5f6f8 !important;
}
.mag-article {
    background: transparent !important;
}
.mag-wrapper {
    max-width: 100% !important;
    padding: 0 !important;
}
.mag-block {
    background: #fff !important;
    border-radius: 10px !important;
    padding: 25px 19px !important;
    margin: 15px 10px !important;
    box-shadow: 0 1px 8px rgba(0,0,0,0.05) !important;
}
.mag-block h2 {
    color: #221635 !important;
    font-size: clamp(1.3rem, 3vw, 1.8rem) !important;
    margin-top: 0 !important;
}
.mag-block__body {
    color: #3c2e32 !important;
}
.mag-block__body p {
    color: #443b3e !important;
    line-height: 1.75 !important;
}
.mag-block__body h3 {
    color: #2a3552 !important;
}
.mag-block__body ul, .mag-block__body ol {
    color: #3a4c49 !important;
}
.mag-block__body li {
    color: #454744 !important;
}

/* --- TABLE OF CONTENTS --- */
.mag-toc {
    background: #fff !important;
    border: 1px solid #ebf0ee !important;
    border-left: 4px solid #26aa93 !important;
    border-radius: 13px !important;
    margin: 19px 7px !important;
    padding: 22px !important;
}
.mag-toc__title {
    color: #101a36 !important;
}
.mag-toc__list a {
    color: #27a29e !important;
}

/* --- COMPANY TABLE FIX --- */
.mag-providers, #providers {
    width: calc(100% - 16px) !important;
    max-width: 1160px !important;
    margin: 0 11px !important;
    transform: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.mag-providers__grid {
    background: #fff !important;
    border-radius: 14px !important;
    box-shadow: 0 5px 23px rgba(0,0,0,0.08) !important;
    overflow: hidden !important;
}
.mag-providers__head {
    background: #11122d !important;
}
.mag-providers__row {
    background: #fff !important;
    border-bottom: 1px solid #f0f0f0 !important;
    opacity: 1 !important;
    transform: none !important;
}
.mag-providers__row:nth-child(odd) {
    background: #fafbfc !important;
}
.mag-providers__row.top-pick {
    background: #fef9e7 !important;
    border-left: 4px solid #20a295 !important;
}
@media(max-width:1024px) {
    .mag-providers, #providers {
        width: calc(100% - 16px) !important;
        margin-left: 11px !important;
        margin-right: 6px !important;
    }
    .mag-providers__row {
        padding: 21px 19px !important;
        gap: 11px !important;
    }
    .mag-company-cell__logo {
        width: 40vw !important;
        max-width: 200px !important;
        height: auto !important;
        margin: 0 auto !important;
    }
    .mag-company-cell {
        text-align: center !important;
    }
}

/* --- FAQ FIX (BEM __ classes) --- */
.mag-faq, #faq, section.mag-faq {
    background: #f5f6f8 !important;
    padding: 37px 8px !important;
    margin: 0 !important;
    max-width: 100% !important;
}
.mag-faq .mag-container,
.mag-faq .mag-wrapper,
#faq .mag-container {
    max-width: 800px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}
h2.mag-section-title,
.mag-faq h2,
#faq h2 {
    color: #152234 !important;
    font-size: clamp(1.5rem, 4vw, 2rem) !important;
    text-align: center !important;
    margin-bottom: 22px !important;
}
.mag-faq__list {
    display: flex !important;
    flex-direction: column !important;
    gap: 11px !important;
}
.mag-faq__item {
    background: #fff !important;
    border: 1px solid #ebecec !important;
    border-radius: 11px !important;
    overflow: hidden !important;
    box-shadow: 0 1px 4px rgba(0,0,0,0.04) !important;
    margin-bottom: 0 !important;
    opacity: 1 !important;
    transform: none !important;
}
.mag-faq__item:hover {
    box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important;
}
.mag-faq__trigger {
    width: 100% !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 14px 21px !important;
    background: #fafbfc !important;
    border: none !important;
    cursor: pointer !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #211635 !important;
    text-align: left !important;
    gap: 11px !important;
    line-height: 1.4 !important;
}
.mag-faq__trigger:hover {
    background: #f0f4f8 !important;
    color: #2eae98 !important;
}
.mag-faq__trigger::after {
    content: "+" !important;
    font-size: 22px !important;
    color: #25ab93 !important;
    flex-shrink: 0 !important;
    transition: transform 0.3s ease !important;
    font-weight: 400 !important;
}
.mag-faq__trigger.expanded::after {
    content: "\2212" !important;
}
.mag-faq__trigger svg {
    display: none !important;
}
.mag-faq__panel {
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 0.35s ease !important;
    background: #fff !important;
    display: block !important;
}
.mag-faq__panel.show {
    max-height: 600px !important;
}
.mag-faq__answer {
    padding: 0 20px 19px !important;
    color: #41566b !important;
    font-size: 14px !important;
    line-height: 1.7 !important;
    background: #fff !important;
}
.mag-faq__answer p {
    color: #4b5266 !important;
    margin: 0 !important;
}

/* --- TESTIMONIALS FIX --- */
.mag-reviews {
    background: #fff !important;
    border-radius: 13px !important;
    margin: 19px 7px !important;
    padding: 26px 13px !important;
}
.mag-section-intro__title {
    color: #11132d !important;
}
.mag-section-intro__label {
    background: linear-gradient(135deg, #27af94, #169387) !important;
    color: #fff !important;
}
.mag-section-intro__text {
    color: #626e5f !important;
}
.mag-review-card {
    background: #fafbfc !important;
    border: 1px solid #e9ecef !important;
    border-radius: 15px !important;
    padding: 18px !important;
    color: #3a373b !important;
}
.mag-review-card__text {
    color: #424447 !important;
}
.mag-review-card__name {
    color: #1e1325 !important;
}
.mag-review-card__location {
    color: #908486 !important;
}
.mag-review-card__date {
    color: #989193 !important;
}
.mag-review-card__verified {
    color: #21afa0 !important;
}

/* --- CONTENT IMAGES --- */
.mag-content-image {
    margin: 25px 11px !important;
    text-align: center !important;
}
.mag-content-image img {
    border-radius: 11px !important;
    box-shadow: 0 5px 13px rgba(0,0,0,0.1) !important;
    max-width: 100% !important;
}

/* --- STICKY FOOTER FIX --- */
#stickyFoot {
    padding: 8px 15px !important;
    gap: 6px !important;
    background: #fff !important;
    box-shadow: 0 -2px 12px rgba(0,0,0,0.1) !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    position: relative !important;
    position: fixed !important;
}
#stickyFoot img {
    height: 30px !important;
    border-radius: 10px !important;
}
#stickyFoot > span {
    font-size: 12px !important;
    white-space: nowrap !important;
}
#stickyFoot a[href*="gokiiit"] {
    padding: 8px 19px !important;
    font-size: 10px !important;
    white-space: nowrap !important;
}
#stickyClose {
    position: absolute !important;
    top: -10px !important;
    right: 8px !important;
    width: 24px !important;
    height: 24px !important;
    border-radius: 50% !important;
    background: #e5e5e1 !important;
    border: none !important;
    font-size: 14px !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #555a55 !important;
    box-shadow: 0 1px 4px rgba(0,0,0,0.15) !important;
    z-index: 10 !important;
}
#stickyClose:hover {
    background: #c3cdc7 !important;
}
@media(max-width:600px) {
    #stickyFoot {
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        padding: 7px 13px !important;
        gap: 5px !important;
    }
    #stickyFoot img { height: 26px !important; }
    #stickyFoot > span { display: none !important; }
    #stickyFoot a[href*="gokiiit"] {
        flex: 1 !important;
        text-align: center !important;
        padding: 5px 12px !important;
    }
}
body.mag-page {
    padding-bottom: 53px !important;
}

/* --- FOOTER FIX --- */
.mag-bottom {
    background: #0a1c26 !important;
    color: #cdc8c2 !important;
}
.mag-bottom a {
    color: #a2a3b0 !important;
}
.mag-bottom a:hover {
    color: #2ca3a1 !important;
}
.mag-bottom h4 {
    color: #fff !important;
}
.mag-bottom__copy {
    color: #818d84 !important;
}
.mag-bottom__copy p {
    color: #8c897f !important;
}
.mag-bottom__notice p {
    color: #94969b !important;
}
.mag-bottom .kit-banner-block {
    display: none !important;
}
.mag-bottom__tagline {
    color: #afa3a7 !important;
}

/* --- PROCESS STEPS COMPONENT (adapted for light theme) --- */
.process-section {
    background: #fff !important;
    border-radius: 10px !important;
    margin: 17px 11px !important;
    padding: 31px 18px !important;
    box-shadow: 0 1px 8px rgba(0,0,0,0.05) !important;
}
.process-header h2 {
    color: #171330 !important;
}
.process-header p {
    color: #6c6b6e !important;
}
.step-number {
    background: linear-gradient(135deg, #2e9c98, #1c947b) !important;
    color: #fff !important;
    width: 50px !important;
    height: 50px !important;
    font-size: 20px !important;
}
.step-title {
    color: #231b36 !important;
    font-size: 16px !important;
}
.step-description {
    color: #5d5253 !important;
}

/* --- TRUST BADGES COMPONENT (adapted for light theme) --- */
.trust-badges-section {
    margin: 15px 10px !important;
}
.trust-badges {
    justify-content: center !important;
}
.trust-badge {
    background: #fff !important;
    border: 1px solid #e5e5ee !important;
    border-radius: 12px !important;
    box-shadow: 0 3px 6px rgba(0,0,0,0.05) !important;
}
.trust-badge:hover {
    border-color: #1ca099 !important;
}
.badge-rating {
    color: #1b1028 !important;
}
.badge-number {
    color: #1dac9f !important;
}
.badge-label {
    color: #919191 !important;
}
.badge-stars .star {
    color: #f5a00b !important;
}

/* --- REVIEWS PAGE FIX --- */
.review-hero-card {
    background: #fff !important;
    border-radius: 17px !important;
    padding: 35px 19px !important;
    margin: 18px 5px !important;
    box-shadow: 0 4px 23px rgba(0,0,0,0.08) !important;
    text-align: center !important;
}
.review-stats {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 10px !important;
    margin: 21px 0 !important;
}
.review-stat {
    background: #f8f9fa !important;
    border-radius: 13px !important;
    padding: 11px 18px !important;
    text-align: center !important;
    min-width: 80px !important;
}
.review-stat__label {
    display: block !important;
    font-size: 11px !important;
    color: #828683 !important;
    text-transform: uppercase !important;
}
.review-stat__value {
    display: block !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #141034 !important;
}
.review-pros-cons {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 14px !important;
    margin: 25px 0 !important;
}
@media(max-width:600px) {
    .review-pros-cons { grid-template-columns: 1fr !important; }
}
.review-pros, .review-cons {
    background: #f8f9fa !important;
    border-radius: 11px !important;
    padding: 22px !important;
}
.review-pros { border-left: 3px solid #0bbb7d !important; }
.review-cons { border-left: 4px solid #f5424b !important; }
.review-pros h3 { color: #0cb483 !important; font-size: 16px !important; }
.review-cons h3 { color: #f53a42 !important; font-size: 16px !important; }
.review-pros li, .review-cons li {
    color: #3a453f !important;
    margin-bottom: 9px !important;
}

/* --- SCROLL ANIMATION FIX (prevent invisible elements) --- */
.mag-providers__row, .mag-faq__item {
    opacity: 1 !important;
    transform: none !important;
}

/* --- HIDE MENU ITEMS FROM HEADER ON MOBILE --- */
@media(max-width:768px) {
    .mag-menu {
        display: none !important;
    }
}

/* --- CONTENT EDGE-TO-EDGE ON MOBILE --- */
@media(max-width:768px) {
    .mag-wrapper {
        padding: 0 !important;
        margin: 0 !important;
    }
    .mag-block {
        margin: 14px 5px !important;
        padding: 20px 17px !important;
    }
    main, .mag-content, .mag-article {
        padding: 0 !important;
        max-width: 100% !important;
    }
}

/* FAQ padding fix */
[class*="-faq-item"], .faq-item, .mag-faq__item {
    padding: 0 !important;
}
[class*="-faq-question"], .faq-question, .mag-faq__trigger {
    padding: 12px 19px !important;
}
[class*="-faq-answer"], [class*="-faq-panel"], .mag-faq__panel, .mag-faq__answer {
    padding: 0 21px 13px !important;
}
.mag-faq__panel {
    padding: 0 !important;
}
.mag-faq__panel.show {
    padding: 0 !important;
}
@media(max-width:600px) {
    .review-pros-cons, div[style*="grid-template-columns: 1fr 1fr"], div[style*="grid-template-columns:1fr 1fr"] {
        grid-template-columns: 1fr !important;
    }
}


/* === COMPREHENSIVE FIX v4 2026-03-17 === */

/* 1. Desktop wrapper max-width 1500px */
@media (min-width: 1025px) {
    .mag-wrapper {
        max-width: 1500px !important;
        margin: 0 auto !important;
        padding: 10px 33px !important;
    }
    .mag-providers, .mag-providers#providers, #providers {
        max-width: 1500px !important;
        width: calc(100% - 64px) !important;
        margin: 0 auto !important;
        transform: none !important;
    }
    .mag-providers__grid {
        max-width: 1500px !important;
    }
}

/* 2. Company logos desktop 170-230px */
@media (min-width: 1025px) {
    .mag-company-cell__logo {
        width: 200px !important;
        min-width: 170px !important;
        max-width: 230px !important;
        height: auto !important;
    }
}

/* 3. Company logos mobile 40-50% */
@media (max-width: 1024px) {
    .mag-company-cell__logo {
        width: 45% !important;
        min-width: 140px !important;
        max-width: none !important;
        margin: 0 auto !important;
    }
}

/* 4. Content images: 30% on desktop with float, 100% on mobile */
@media (min-width: 1025px) {
    figure.mag-content-image {
        max-width: 30% !important;
        margin: 13px auto !important;
        display: block !important;
    }
    figure.mag-content-image:nth-of-type(odd) {
        float: left !important;
        margin: 16px 27px 14px 9px !important;
        clear: left !important;
    }
    figure.mag-content-image:nth-of-type(even) {
        float: right !important;
        margin: 19px 7px 18px 21px !important;
        clear: right !important;
    }
    .mag-block {
        overflow: auto !important;
    }
    /* Images inside blocks */
    .mag-block__body figure,
    .mag-block__body .mag-content-image {
        max-width: 30% !important;
        float: right !important;
        margin: 8px 0 11px 18px !important;
    }
    /* Review page images inside blocks */
    .mag-block__body figure img {
        width: 100% !important;
        height: auto !important;
    }
}
@media (max-width: 1024px) {
    figure.mag-content-image {
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
        margin: 19px 0 !important;
    }
    figure.mag-content-image img {
        width: 100% !important;
    }
    .mag-block__body figure {
        float: none !important;
        max-width: 100% !important;
        margin: 15px 0 !important;
    }
}

/* 5. CTA button text centering */
.mag-cta-cell__main,
.mag-cta-cell__alt,
.exq-btn-cta,
.exq-btn-review {
    text-align: center !important;
    display: block !important;
    width: fit-content !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.mag-cta-cell {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
}
.exq-cta-cell {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 10px !important;
}

/* 6. FAQ section compact - no inflated height */
[class*="-faq"], #faq, [id="faq"] {
    max-width: 900px !important;
    padding: 40px 1.5rem !important;
}
.mag-faq, .mag-faq#faq, section.mag-faq {
    max-width: 100% !important;
    padding: 43px 6px !important;
}
.mag-faq .mag-container,
.mag-faq .mag-wrapper {
    max-width: 900px !important;
    margin: 0 auto !important;
}
.mag-faq__trigger {
    padding: 17px 19px !important;
    font-size: 17px !important;
    line-height: 1.4 !important;
    min-height: auto !important;
}
.mag-faq__item, .mag-faq-item {
    margin-bottom: 5px !important;
}
.mag-faq__answer, .mag-faq-answer {
    padding: 0 20px !important;
}
.mag-faq__answer p, .mag-faq-answer-inner {
    margin: 0 0 15px !important;
    padding: 0 0 10px !important;
}
/* Only one indicator (SVG arrow), hide duplicate +/- */
.mag-faq__trigger .faq-plus,
.mag-faq__trigger::after {
    display: none !important;
}

/* 7. Review page company logo semi-transparent white bg */
.review-company-logo-wrap {
    background: rgba(255,255,255,0.85) !important;
    border-radius: 17px !important;
    padding: 23px !important;
    display: inline-block !important;
}

/* 8. Breadcrumbs within content */
.breadcrumbs, [class*="breadcrumb"], nav[aria-label*="breadcrumb"] {
    max-width: 1500px !important;
    margin: 0 auto !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    padding: 10px 13px !important;
}

/* 9. Banners centered */
.kit-banner-block,
[class*="banner"] {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* 10. Mobile centering and padding */
@media (max-width: 768px) {
    .mag-providers__row {
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        padding: 23px 14px !important;
    }
    .mag-company-cell {
        align-items: center !important;
        text-align: center !important;
    }
    .mag-cta-cell {
        width: 100% !important;
        align-items: center !important;
    }
    .mag-cta-cell__main {
        width: 80% !important;
        max-width: 280px !important;
        text-align: center !important;
        display: block !important;
        margin: 0 auto !important;
    }
    .mag-cta-cell__alt {
        width: 80% !important;
        max-width: 280px !important;
        text-align: center !important;
        display: block !important;
        margin: 0 auto !important;
    }
    .mag-perks {
        align-items: center !important;
    }
    /* Minimal side padding on mobile */
    .mag-block {
        margin: 11px 5px !important;
        padding: 13px 12px !important;
    }
    body.mag-page {
        overflow-x: hidden !important;
    }
}

/* 11. Font contrast - ensure text contrasts with background */
.mag-block h2, .mag-block h3 {
    color: #182027 !important;
}
.mag-block__body, .mag-block__body p, .mag-block__body li {
    color: #343129 !important;
}
.mag-bottom h4, .mag-bottom a {
    color: #c3c5d1 !important;
}
.mag-bottom__tagline {
    color: #aca0ab !important;
}

/* 12. Sticky footer height compact */
#stickyFoot {
    padding: 7px 14px !important;
}
@media (max-width: 600px) {
    #stickyFoot {
        padding: 7px 9px !important;
    }
    #stickyFoot span {
        font-size: 12px !important;
    }
}

/* 13. TOC box within content width */
.toc-box, .mag-toc {
    max-width: 1500px !important;
    margin: 16px auto !important;
}

/* 14. Review page - ensure logo visible with white bg */
.mag-article img[src*="/logos/"] {
    background: rgba(255,255,255,0.85) !important;
    border-radius: 15px !important;
    padding: 10px !important;
}

/* === END COMPREHENSIVE FIX v4 === */
