/* ======= DARK MODE OVERRIDES ======= */
[data-theme="dark"] body {
    background: var(--bg);
    color: var(--ink)
}

[data-theme="dark"] body::after {
    opacity: .15
}

[data-theme="dark"] .hdr {
    background: rgba(12, 15, 26, .92);
    border-bottom-color: rgba(255, 255, 255, .04)
}

[data-theme="dark"] .hdr.scrolled {
    box-shadow: 0 1px 20px rgba(0, 0, 0, .3)
}

[data-theme="dark"] .logo span {
    color: var(--blue-viv)
}

[data-theme="dark"] .nav a {
    color: var(--slate)
}

[data-theme="dark"] .nav a:hover {
    color: var(--blue-viv);
    background: var(--blue-l)
}

[data-theme="dark"] .hdr-cta {
    background: var(--blue);
    color: #fff
}

[data-theme="dark"] .hdr-cta:hover {
    background: var(--blue-d)
}

[data-theme="dark"] .mob-toggle i {
    color: var(--ink)
}

[data-theme="dark"] .mob-overlay {
    background: rgba(0, 0, 0, .6)
}

/* Dark hero */
[data-theme="dark"] .hero {
    background: var(--bg)
}

[data-theme="dark"] .hero-badge {
    background: rgba(255, 255, 255, .06);
    border-color: rgba(59, 130, 246, .15);
    color: var(--slate)
}

[data-theme="dark"] .hero-mesh .b1 {
    background: rgba(59, 130, 246, .08)
}

[data-theme="dark"] .hero-mesh .b2 {
    background: rgba(139, 92, 246, .06)
}

[data-theme="dark"] .hero-mesh .b3 {
    background: rgba(16, 185, 129, .04)
}

[data-theme="dark"] .hero-dots {
    background-image: radial-gradient(rgba(59, 130, 246, .08) 1px, transparent 1px)
}

[data-theme="dark"] .btn-s {
    background: var(--bg2);
    color: var(--ink);
    border-color: rgba(255, 255, 255, .08)
}

[data-theme="dark"] .btn-s:hover {
    border-color: var(--blue);
    color: var(--blue-viv)
}

[data-theme="dark"] .stats-bar {
    background: var(--bg2);
    border-color: rgba(255, 255, 255, .05);
    box-shadow: 0 8px 32px rgba(0, 0, 0, .2)
}

[data-theme="dark"] .stat:not(:last-child)::after {
    background: rgba(255, 255, 255, .06)
}

/* Dark platforms */
[data-theme="dark"] .platforms {
    background: var(--bg2);
    border-bottom-color: rgba(255, 255, 255, .04)
}

[data-theme="dark"] .plat-track-wrap::before {
    background: linear-gradient(to right, var(--bg2), transparent)
}

[data-theme="dark"] .plat-track-wrap::after {
    background: linear-gradient(to left, var(--bg2), transparent)
}

[data-theme="dark"] .plat-item {
    color: var(--slate)
}

[data-theme="dark"] .clients-trust {
    background: var(--bg);
    border-color: rgba(255, 255, 255, .04)
}

[data-theme="dark"] .clients-track-wrap::before {
    background: linear-gradient(to right, var(--bg), transparent) !important
}

[data-theme="dark"] .clients-track-wrap::after {
    background: linear-gradient(to left, var(--bg), transparent) !important
}

/* Dark cards (services, cases, bento, testi, certs) */
[data-theme="dark"] .svc {
    background: var(--bg2);
    border-color: rgba(255, 255, 255, .05)
}

[data-theme="dark"] .svc:hover {
    box-shadow: 0 12px 40px rgba(0, 0, 0, .25)
}

[data-theme="dark"] .svc-result {
    background: var(--bg3);
    color: var(--ink)
}

[data-theme="dark"] .svc-nav {
    background: rgba(26, 31, 53, .95);
    border-color: rgba(255, 255, 255, .08);
    color: var(--ink)
}

[data-theme="dark"] .svc-nav:hover {
    background: var(--bg3);
    box-shadow: 0 6px 24px rgba(0, 0, 0, .3)
}

[data-theme="dark"] .case {
    background: var(--bg2);
    border-color: rgba(255, 255, 255, .05)
}

[data-theme="dark"] .case:hover {
    box-shadow: 0 16px 40px rgba(0, 0, 0, .25)
}

[data-theme="dark"] .case.feat {
    background: linear-gradient(135deg, rgba(59, 130, 246, .06), var(--bg2));
    border-color: rgba(59, 130, 246, .12)
}

[data-theme="dark"] .case-badge {
    background: var(--blue-l);
    color: var(--blue-viv)
}

[data-theme="dark"] .case-m {
    background: var(--bg3)
}

[data-theme="dark"] .case:hover .case-m {
    background: var(--blue-l)
}

[data-theme="dark"] .case-m.hl {
    background: linear-gradient(135deg, rgba(59, 130, 246, .12), rgba(59, 130, 246, .06));
    border-color: rgba(59, 130, 246, .15)
}

[data-theme="dark"] .case-det {
    border-top-color: rgba(255, 255, 255, .05)
}

[data-theme="dark"] .case-tag {
    background: var(--bg3)
}

[data-theme="dark"] .bento-card {
    background: var(--bg2);
    border-color: rgba(255, 255, 255, .05)
}

[data-theme="dark"] .bento-card:hover {
    box-shadow: 0 12px 36px rgba(0, 0, 0, .2)
}

[data-theme="dark"] .bento-card.big {
    background: linear-gradient(135deg, rgba(59, 130, 246, .06), var(--bg2));
    border-color: rgba(59, 130, 246, .1)
}

[data-theme="dark"] .bento-card.big .bento-visual {
    background: rgba(59, 130, 246, .06)
}

[data-theme="dark"] .testi {
    background: var(--bg2);
    border-color: rgba(255, 255, 255, .05)
}

[data-theme="dark"] .testi:hover {
    box-shadow: 0 12px 36px rgba(0, 0, 0, .2)
}

[data-theme="dark"] .testi-quote {
    border-left-color: rgba(59, 130, 246, .2)
}

[data-theme="dark"] .testi-service {
    background: var(--blue-l);
    color: var(--blue-viv)
}

[data-theme="dark"] .cert {
    background: rgba(255, 255, 255, .04);
    border-color: rgba(255, 255, 255, .08)
}

[data-theme="dark"] .cert:hover {
    box-shadow: 0 8px 28px rgba(0, 0, 0, .3);
    border-color: rgba(59, 130, 246, .25);
    background: rgba(255, 255, 255, .06)
}

[data-theme="dark"] .cert h4 {
    color: #f1f5f9;
    font-weight: 700
}

[data-theme="dark"] .cert p {
    color: #b0bec5
}

[data-theme="dark"] .cert-b-img {
    background: #fff;
    border: 1px solid rgba(255, 255, 255, .12);
    box-shadow: 0 2px 8px rgba(0, 0, 0, .15)
}

[data-theme="dark"] .cert-b-img img {
    filter: none
}

[data-theme="dark"] .cert-b {
    background: rgba(255, 255, 255, .08)
}

[data-theme="dark"] .cert-verify {
    color: var(--blue-viv)
}

[data-theme="dark"] .cert-hl {
    background: var(--orange);
    color: #fff
}

[data-theme="dark"] .cert-date-badge {
    background: var(--orange);
    color: #fff
}

[data-theme="dark"] .cert.hl {
    background: linear-gradient(135deg, rgba(245, 158, 11, .15), rgba(245, 158, 11, .06));
    border-color: var(--orange)
}

/* Dark tools section - already dark, lighten in dark mode */
[data-theme="dark"] .tools-wrap {
    background: var(--bg3);
    border: 1px solid rgba(255, 255, 255, .04)
}

[data-theme="dark"] .t-pill {
    background: rgba(255, 255, 255, .04);
    border-color: rgba(255, 255, 255, .06)
}

[data-theme="dark"] .t-pill:hover {
    background: rgba(59, 130, 246, .15);
    border-color: rgba(59, 130, 246, .3)
}

/* Dark timeline */
[data-theme="dark"] .tl-card {
    background: var(--bg2);
    border-color: rgba(255, 255, 255, .05)
}

[data-theme="dark"] .tl-step:hover .tl-card {
    box-shadow: 0 8px 28px rgba(0, 0, 0, .2)
}

[data-theme="dark"] .tl-num {
    background: var(--bg2);
    border-color: var(--blue)
}

/* Dark CTA */
[data-theme="dark"] .cta-box {
    background: var(--bg3)
}

[data-theme="dark"] .cta-btn-p {
    background: var(--blue);
    color: #fff
}

[data-theme="dark"] .cta-btn-p:hover {
    box-shadow: 0 10px 28px rgba(59, 130, 246, .2)
}

/* Dark inline CTA */
[data-theme="dark"] .inline-cta {
    border-top-color: rgba(255, 255, 255, .05)
}

[data-theme="dark"] .btn-inline.secondary {
    background: var(--bg3);
    border-color: rgba(255, 255, 255, .06);
    color: var(--ink)
}

[data-theme="dark"] .btn-inline.secondary:hover {
    border-color: var(--blue);
    color: var(--blue-viv)
}

/* Dark footer */
[data-theme="dark"] .ft {
    background: #060812
}

[data-theme="dark"] .ft-bot {
    border-top-color: rgba(255, 255, 255, .04)
}

/* Dark mobile */
[data-theme="dark"] .mob-cta {
    background: rgba(12, 15, 26, .95);
    border-top-color: rgba(255, 255, 255, .06)
}

[data-theme="dark"] .stt {
    background: var(--blue)
}

/* Dark skeleton */
[data-theme="dark"] .skel::after {
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .03), transparent)
}

[data-theme="dark"] .skel-bar {
    background: var(--bg3)
}

/* Dark mode nav mobile */
[data-theme="dark"] .nav {
    background: var(--bg);
    box-shadow: -6px 0 24px rgba(0, 0, 0, .3)
}

[data-theme="dark"] .nav-cta-wrap {
    border-top-color: rgba(255, 255, 255, .06)
}

/* Theme toggle button */
.theme-toggle {
    background: none;
    border: 1.5px solid rgba(0, 0, 0, .08);
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 1.05rem;
    color: var(--slate);
    transition: var(--t-fast);
    margin-left: .3rem;
    flex-shrink: 0
}

.theme-toggle:hover {
    border-color: var(--blue);
    color: var(--blue);
    transform: scale(1.08)
}

[data-theme="dark"] .theme-toggle {
    border-color: rgba(255, 255, 255, .1);
    color: var(--orange)
}

[data-theme="dark"] .theme-toggle:hover {
    border-color: var(--orange);
    color: var(--orange)
}

/* Dark TOC flottant + Summary */
[data-theme="dark"] .toc-float-tab {
    background: rgba(17, 22, 39, .95);
    border-color: rgba(255, 255, 255, .08);
    color: var(--blue-viv);
    box-shadow: -2px 0 12px rgba(0, 0, 0, .25)
}

[data-theme="dark"] .toc-float-tab:hover {
    background: var(--blue-l)
}

[data-theme="dark"] .toc-float-panel {
    background: rgba(12, 15, 26, .98);
    border-color: rgba(255, 255, 255, .08);
    box-shadow: -4px 0 24px rgba(0, 0, 0, .3)
}

[data-theme="dark"] .toc-float-header {
    border-bottom-color: rgba(255, 255, 255, .06)
}

[data-theme="dark"] .toc-float-progress {
    background: var(--bg3)
}

[data-theme="dark"] .toc-h2 {
    color: var(--ink)
}

[data-theme="dark"] .toc-h3 {
    color: var(--slate)
}

[data-theme="dark"] .toc-link:hover {
    background: var(--blue-l)
}

[data-theme="dark"] .toc-link.active {
    background: var(--blue-l);
    border-left-color: var(--blue-viv)
}

[data-theme="dark"] .toc-h3.active::before {
    background: var(--blue-viv)
}

[data-theme="dark"] .toc-float-nav::-webkit-scrollbar-thumb {
    background: var(--bg3)
}

[data-theme="dark"] .post-summary {
    background: linear-gradient(135deg, rgba(59, 130, 246, .08), rgba(139, 92, 246, .06));
    border-color: rgba(59, 130, 246, .2)
}

[data-theme="dark"] .post-summary::before {
    background: linear-gradient(180deg, var(--blue-viv), var(--purple))
}

[data-theme="dark"] .post-summary--auto {
    background: var(--bg2);
    border-color: rgba(255, 255, 255, .08)
}

[data-theme="dark"] .post-summary--auto::before {
    background: linear-gradient(180deg, var(--slate), var(--light))
}

[data-theme="dark"] .summary-header {
    border-bottom-color: rgba(59, 130, 246, .12)
}

[data-theme="dark"] .summary-answer {
    background: rgba(255, 255, 255, .04);
    border-left-color: var(--blue-viv)
}

/* Dark FAQ */
[data-theme="dark"] .faq-item {
    background: var(--bg2);
    border-color: rgba(255, 255, 255, .06)
}

[data-theme="dark"] .faq-item:hover {
    border-color: rgba(59, 130, 246, .15)
}

/* Dark Pricing */
[data-theme="dark"] .pricing-card {
    background: var(--bg2);
    border-color: rgba(255, 255, 255, .06)
}

[data-theme="dark"] .pricing-card.popular {
    border-color: var(--blue)
}

[data-theme="dark"] .pricing-feats li {
    border-bottom-color: rgba(255, 255, 255, .04)
}

[data-theme="dark"] .pricing-btn {
    background: var(--blue)
}

/* Dark Before/After */
[data-theme="dark"] .ba-table {
    border-color: rgba(255, 255, 255, .06)
}

[data-theme="dark"] .ba-header {
    background: var(--bg3)
}

[data-theme="dark"] .ba-row {
    border-top-color: rgba(255, 255, 255, .04)
}

[data-theme="dark"] .ba-row:hover {
    background: var(--bg3)
}

/* Dark breadcrumbs */
[data-theme="dark"] .breadcrumbs {
    background: var(--bg)
}

[data-theme="dark"] .breadcrumb-item a {
    color: var(--slate)
}

[data-theme="dark"] .breadcrumb-item a:hover {
    color: var(--blue-viv)
}

[data-theme="dark"] .breadcrumb-item.active {
    color: var(--ink)
}

[data-theme="dark"] .breadcrumb-item+.breadcrumb-item::before {
    color: var(--light)
}

/* Dark AI summary bar */
[data-theme="dark"] .ai-summary-bar {
    border-bottom-color: rgba(255, 255, 255, .04)
}

[data-theme="dark"] .ai-btn {
    background: var(--bg2);
    border-color: rgba(255, 255, 255, .06);
    color: var(--slate)
}

[data-theme="dark"] .ai-btn:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, .25)
}

/* Dark share buttons */
[data-theme="dark"] .share-btn {
    background: var(--bg2);
    border-color: rgba(255, 255, 255, .06);
    color: var(--slate)
}

[data-theme="dark"] .share-btn:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, .2)
}

/* Dark testimonial slider */
[data-theme="dark"] .testi-slider-track .testi-card {
    background: var(--bg2);
    border-color: rgba(255, 255, 255, .05)
}

[data-theme="dark"] .testi-slider-track .testi-card:hover {
    box-shadow: 0 8px 28px rgba(0, 0, 0, .2)
}

/* Dark certification card block */
[data-theme="dark"] .cert-block-card {
    background: var(--bg2);
    border-color: rgba(255, 255, 255, .05)
}

[data-theme="dark"] .cert-block-card:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, .2)
}

[data-theme="dark"] .cert-block-img {
    background: var(--bg3)
}

/* Dark cursor glow */
[data-theme="dark"] .cursor-glow {
    background: radial-gradient(circle, rgba(59, 130, 246, .08) 0%, transparent 70%)
}

/* Dark service card link */
[data-theme="dark"] .svc-link {
    color: var(--ink)
}

[data-theme="dark"] .svc-link:hover {
    color: var(--blue-viv)
}

[data-theme="dark"] .svc-cta-link {
    color: var(--blue-viv)
}

[data-theme="dark"] .svc-cta-link:hover {
    color: #93c5fd
}

/* Dark breadcrumbs */
[data-theme="dark"] .breadcrumbs {
    background: var(--bg);
    border-bottom-color: rgba(255, 255, 255, .04)
}

[data-theme="dark"] .breadcrumb-item a {
    color: var(--slate)
}

[data-theme="dark"] .breadcrumb-item a:hover {
    color: var(--blue-viv)
}

[data-theme="dark"] .breadcrumb-item.active {
    color: var(--ink)
}

[data-theme="dark"] .breadcrumb-item+.breadcrumb-item::before {
    color: var(--light)
}

/* Dark new blocks: Advanced CTA */
[data-theme="dark"] .cta-box {
    background: var(--bg3)
}

[data-theme="dark"] .cta-urg {
    background: rgba(239, 68, 68, .15);
    color: #fca5a5
}

[data-theme="dark"] .cta-btn-p {
    background: var(--blue);
    color: #fff
}

[data-theme="dark"] .cta-btn-p:hover {
    box-shadow: 0 10px 28px rgba(59, 130, 246, .25)
}

[data-theme="dark"] .cta-btn-s {
    border-color: rgba(255, 255, 255, .15);
    color: rgba(255, 255, 255, .8)
}

[data-theme="dark"] .cta-btn-s:hover {
    border-color: var(--blue);
    color: var(--blue-viv)
}

/* Dark new blocks: Media Text */
[data-theme="dark"] .img-text-block {
    color: var(--ink)
}

[data-theme="dark"] .img-text-media {
    background: var(--bg3)
}

[data-theme="dark"] .img-text-content h2 {
    color: var(--ink)
}

[data-theme="dark"] .img-text-content p {
    color: var(--slate)
}

/* Dark new blocks: Benefits Grid */
[data-theme="dark"] .bento-card {
    background: var(--bg2);
    border-color: rgba(255, 255, 255, .05)
}

[data-theme="dark"] .bento-card:hover {
    box-shadow: 0 12px 36px rgba(0, 0, 0, .25);
    border-color: rgba(59, 130, 246, .1)
}

[data-theme="dark"] .bento-card h3 {
    color: var(--ink)
}

[data-theme="dark"] .bento-card p {
    color: var(--slate)
}

[data-theme="dark"] .b-ico {
    color: inherit
}

/* Dark new blocks: Accordion */
[data-theme="dark"] .faq-item {
    background: var(--bg2);
    border-color: rgba(255, 255, 255, .06)
}

[data-theme="dark"] .faq-item:hover {
    border-color: rgba(59, 130, 246, .15)
}

[data-theme="dark"] .faq-q {
    color: var(--ink)
}

[data-theme="dark"] .faq-item.open .faq-q {
    color: var(--blue-viv)
}

[data-theme="dark"] .faq-a p {
    color: var(--slate)
}

/* Dark new blocks: Button Group */
[data-theme="dark"] .btn-inline.primary {
    background: var(--blue);
    color: #fff
}

[data-theme="dark"] .btn-inline.primary:hover {
    box-shadow: 0 8px 24px rgba(59, 130, 246, .2)
}

[data-theme="dark"] .btn-inline.secondary {
    background: var(--bg3);
    border-color: rgba(255, 255, 255, .08);
    color: var(--ink)
}

[data-theme="dark"] .btn-inline.secondary:hover {
    border-color: var(--blue);
    color: var(--blue-viv)
}

/* Dark new blocks: Stats Advanced */
[data-theme="dark"] .stats-bar {
    background: var(--bg2);
    border-color: rgba(255, 255, 255, .05)
}

[data-theme="dark"] .stat:not(:last-child)::after {
    background: rgba(255, 255, 255, .06)
}

[data-theme="dark"] .stat-v {
    color: var(--ink)
}

[data-theme="dark"] .stat-l {
    color: var(--light)
}

/* Dark new blocks: Timeline */
[data-theme="dark"] .tl-card {
    background: var(--bg2);
    border-color: rgba(255, 255, 255, .05)
}

[data-theme="dark"] .tl-card:hover {
    box-shadow: 0 8px 28px rgba(0, 0, 0, .2)
}

[data-theme="dark"] .tl-card h3 {
    color: var(--ink)
}

[data-theme="dark"] .tl-card p {
    color: var(--slate)
}

[data-theme="dark"] .tl-num {
    background: var(--bg2);
    border-color: var(--blue);
    color: var(--blue-viv)
}

[data-theme="dark"] .timeline::before {
    background: linear-gradient(to bottom, var(--blue-viv), var(--purple), var(--green))
}