/* ===== Goshen WebX dark-green theme (same palette as the admin dark theme). Active when <html class="site-dark">. ===== */
/* palette: bg #07110e | panel rgba(255,255,255,.035) | line rgba(26,158,114,.32) | text #d6e6df | muted #8fb0a3 | accent #3ddba0 */
html.site-dark { color-scheme: dark; background: #07110e; }
html.site-dark body { background: #07110e; color: #d6e6df; }

/* ---- sections: dark grid + soft green glow (same as admin) ---- */
html.site-dark body .section, html.site-dark body .cap {
  background-color: #07110e;
  background-image: radial-gradient(900px 360px at 50% 0, rgba(26,158,114,.18), transparent 70%),
    linear-gradient(rgba(26,158,114,.07) 1px, transparent 1px), linear-gradient(90deg, rgba(26,158,114,.07) 1px, transparent 1px);
  border-top-color: rgba(26,158,114,.28);
}
html.site-dark body .section.section-alt { background-color: #0a1814; }
html.site-dark body .logos-strip { background: rgba(255,255,255,.02); border-color: rgba(26,158,114,.28); }
html.site-dark body .logos-label { color: #8fb0a3; }

/* ---- header + menu ---- */
html.site-dark body .header-top, html.site-dark body .site-nav { background: rgba(7,17,14,.94); border-color: rgba(26,158,114,.38); }
html.site-dark body .header-top .logo-text strong { color: #fff !important; }
html.site-dark body .header-top .logo-text span { color: #8fb0a3 !important; }
html.site-dark body .login-link, html.site-dark body .header-actions a { color: #cfe3da !important; }
html.site-dark body .logo-icon, html.site-dark body .logo-section img { border-color: rgba(61,219,160,.5) !important; }
html.site-dark body .hdr-search { background: rgba(255,255,255,.05) !important; border-color: rgba(26,158,114,.38) !important; }
html.site-dark body .hdr-search input { background: transparent !important; color: #d6e6df !important; }
html.site-dark body .hdr-search input::placeholder { color: #6f8b80 !important; }
html.site-dark body .site-nav .nav-links > li > a { color: #cfe3da !important; }
html.site-dark body .site-nav .nav-links > li > a:hover, html.site-dark body .site-nav .nav-links > li.dd-open > a { color: #3ddba0 !important; }
html.site-dark body .site-nav .nav-links > li > a.active { color: #3ddba0 !important; }
html.site-dark body .site-nav .mega-dropdown { background: #0d1a16 !important; border: 1px solid rgba(26,158,114,.45) !important; box-shadow: 0 24px 60px rgba(0,0,0,.55) !important; }
html.site-dark body .site-nav .mega-title { color: #fff !important; }
html.site-dark body .site-nav .mega-desc { color: #8fb0a3 !important; }
html.site-dark body .site-nav .mega-link { color: #3ddba0 !important; }
html.site-dark body .site-nav .mega-item:hover { background: rgba(26,158,114,.10) !important; }

/* ---- headings, eyebrows, body copy ---- */
html.site-dark body h2.h-display, html.site-dark body .pf-head h2, html.site-dark body .section h2, html.site-dark body .section h3 { color: #fff; }
html.site-dark body h2.h-display span, html.site-dark body h2.h-display em, html.site-dark body .pf-head h2 em, html.site-dark body .section h2 em { color: #3ddba0 !important; }
html.site-dark body .eyebrow { color: #3ddba0 !important; }
html.site-dark body .pf-eyebrow { background: rgba(26,158,114,.14) !important; color: #3ddba0 !important; border: 1px solid rgba(61,219,160,.4) !important; }
html.site-dark body .section-head-row p { color: #8fb0a3 !important; }
html.site-dark body .btn.btn-secondary { background: transparent !important; color: #d6e6df !important; border: 1px solid rgba(214,230,223,.32) !important; }
html.site-dark body .btn.btn-secondary:hover { border-color: #3ddba0 !important; color: #fff !important; }

/* ---- services ---- */
html.site-dark body .services-matrix { background: transparent !important; border-color: rgba(26,158,114,.32) !important; box-shadow: none !important; }
html.site-dark body .svc-cell { background: rgba(255,255,255,.035) !important; border-color: rgba(26,158,114,.32) !important; }
html.site-dark body .svc-cell:hover { background: rgba(26,158,114,.09) !important; }
html.site-dark body .svc-title { color: #fff !important; }
html.site-dark body .svc-body { color: #8fb0a3 !important; }
html.site-dark body .svc-counter { color: #6f8b80 !important; }
html.site-dark body .svc-icon { background: rgba(26,158,114,.14) !important; border: 1px solid rgba(61,219,160,.3) !important; color: #3ddba0 !important; }
html.site-dark body .svc-icon svg { stroke: #3ddba0 !important; }
html.site-dark body .svc-chip { background: rgba(26,158,114,.10) !important; color: #a7c1b6 !important; border: 1px solid rgba(61,219,160,.25) !important; }

/* ---- process + progress tracker ---- */
html.site-dark body .process-num { color: #3ddba0 !important; }
html.site-dark body .process-title { color: #fff !important; }
html.site-dark body .process-body { color: #8fb0a3 !important; }
html.site-dark body .tracker-card { background: rgba(255,255,255,.035) !important; border: 1px solid rgba(26,158,114,.32) !important; box-shadow: none !important; }
html.site-dark body .tracker-head-title, html.site-dark body .tracker-progress-pct { color: #fff !important; }
html.site-dark body .tracker-progress-label, html.site-dark body .tracker-head-week, html.site-dark body .tracker-foot { color: #8fb0a3 !important; }
html.site-dark body .tracker-foot, html.site-dark body .tracker-head { border-color: rgba(26,158,114,.25) !important; }
html.site-dark body .tracker-step { color: #cfe3da !important; }
html.site-dark body .tracker-step.active { background: rgba(26,158,114,.2) !important; color: #fff !important; }
html.site-dark body .tracker-step-marker { border-color: rgba(61,219,160,.4) !important; background: rgba(26,158,114,.14) !important; color: #3ddba0 !important; }

/* ---- projects ---- */
html.site-dark body .project-card { background: rgba(255,255,255,.035) !important; border: 1px solid rgba(26,158,114,.32) !important; box-shadow: none !important; }
html.site-dark body .project-card:hover { border-color: #3ddba0 !important; transform: none !important; }
html.site-dark body .project-thumb { background: #0d1a16 !important; }
html.site-dark body .project-title { color: #fff !important; }
html.site-dark body .project-desc { color: #8fb0a3 !important; }
html.site-dark body .project-link { color: #3ddba0 !important; }
html.site-dark body .project-foot { border-color: rgba(26,158,114,.25) !important; }
html.site-dark body .project-type-chip { background: rgba(7,17,14,.88) !important; color: #3ddba0 !important; border: 1px solid rgba(61,219,160,.4) !important; }
html.site-dark body .project-feat-chip { background: rgba(243,156,18,.16) !important; color: #f5c26b !important; border-color: rgba(245,194,107,.35) !important; }

/* ---- blog ---- */
html.site-dark body .blog-feat-card, html.site-dark body .blog-list-link { background: rgba(255,255,255,.035) !important; border: 1px solid rgba(26,158,114,.32) !important; box-shadow: none !important; }
html.site-dark body .blog-feat-card:hover, html.site-dark body .blog-list-link:hover { border-color: #3ddba0 !important; background: rgba(26,158,114,.08) !important; }
html.site-dark body .blog-feat-title, html.site-dark body .bll-title { color: #fff !important; }
html.site-dark body .blog-feat-excerpt, html.site-dark body .bll-meta-row, html.site-dark body .bll-meta-row * { color: #8fb0a3; }
html.site-dark body .badge.badge-free { background: rgba(26,158,114,.2) !important; color: #3ddba0 !important; border-color: rgba(61,219,160,.35) !important; }

/* ---- FAQ ---- */
html.site-dark body details { background: rgba(255,255,255,.035) !important; border: 1px solid rgba(26,158,114,.32) !important; }
html.site-dark body details[open] { border-color: rgba(61,219,160,.5) !important; }
html.site-dark body summary { color: #fff !important; }
html.site-dark body summary span { color: #3ddba0 !important; }
html.site-dark body details p { color: #8fb0a3 !important; }

/* ---- platforms globe chips ---- */
html.site-dark body .pfg-stage { background: radial-gradient(closest-side, rgba(26,158,114,.2), rgba(26,158,114,.06) 55%, rgba(26,158,114,0) 100%) center / 78% 86% no-repeat; }
html.site-dark body .pfg-node { background: rgba(10,22,18,.94) !important; border-color: rgba(61,219,160,.38) !important; color: #fff !important; box-shadow: 0 8px 22px rgba(0,0,0,.45) !important; }

/* ---- hero, stats, footer ---- */
html.site-dark body footer { background: #050c0a !important; border-top: 1px solid rgba(26,158,114,.38); }
html.site-dark body .footer-bottom { border-color: rgba(26,158,114,.25) !important; }

/* ---- theme switch button (matches the admin one) ---- */
.gwx-site-toggle { position: fixed; left: 16px; bottom: 16px; z-index: 9999; width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center;
  background: #fff; border: 1px solid #d9e2dd; color: #16302a; border-radius: 0; cursor: pointer; padding: 0; }
.gwx-site-toggle:hover { border-color: #1A9E72; color: #1A9E72; }
.gwx-site-toggle .ic-sun { display: none; }
html.site-dark .gwx-site-toggle { background: rgba(26,158,114,.14); border-color: rgba(61,219,160,.5); color: #3ddba0; }
html.site-dark .gwx-site-toggle .ic-sun { display: block; }
html.site-dark .gwx-site-toggle .ic-moon { display: none; }

/* ---- v2 fixes: strong overrides (loaded after all home-*.css) ---- */
html.site-dark body .logos-strip {
  background-color: #07110e !important;
  background-image: radial-gradient(900px 300px at 50% 0, rgba(26,158,114,.16), transparent 70%),
    linear-gradient(rgba(26,158,114,.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(26,158,114,.07) 1px, transparent 1px) !important;
  border-top: 1px solid rgba(26,158,114,.28) !important;
  border-bottom: 1px solid rgba(26,158,114,.28) !important;
}
html.site-dark body .logos-label { color: #8fb0a3 !important; }
html.site-dark body .logos-sep { background: rgba(26,158,114,.35) !important; }
html.site-dark body .platforms .pf-head h2,
html.site-dark body .platforms h2 { color: #fff !important; }
html.site-dark body .platforms h2 em { color: #3ddba0 !important; }

/* hero dashboard mock */
html.site-dark body .dash-window { box-shadow: 0 0 0 1px rgba(26,158,114,.4), 0 30px 80px rgba(0,0,0,.6) !important; background: #0d1a16 !important; opacity: 1 !important; }
html.site-dark body .dash-window .dash-chrome { background: #0a1613 !important; border-bottom: 1px solid rgba(26,158,114,.3) !important; }
html.site-dark body .dash-window .dcd, html.site-dark body .dash-window .dcd:nth-child(n) { background: rgba(26,158,114,.45) !important; }
html.site-dark body .dash-window .dash-addr { background: rgba(255,255,255,.05) !important; border-color: rgba(26,158,114,.35) !important; color: #8fb0a3 !important; }
html.site-dark body .dash-window .dash-nav { background: #0a1613 !important; border-color: rgba(26,158,114,.25) !important; }
html.site-dark body .dash-window .dash-nav-link { color: #8fb0a3 !important; }
html.site-dark body .dash-window .dash-nav-link.on { background: rgba(26,158,114,.2) !important; color: #3ddba0 !important; }
html.site-dark body .dash-window .dash-content { background: #0d1a16 !important; }
html.site-dark body .dash-window .dash-ch-title, html.site-dark body .dash-window .dash-kpi-val, html.site-dark body .dash-window .dash-chart-label { color: #fff !important; }
html.site-dark body .dash-window .dash-pill { background: rgba(26,158,114,.16) !important; border-color: rgba(26,158,114,.4) !important; color: #3ddba0 !important; }
html.site-dark body .dash-window .dash-kpi, html.site-dark body .dash-window .dash-chart-wrap { background: rgba(255,255,255,.035) !important; border: 1px solid rgba(26,158,114,.3) !important; }
html.site-dark body .dash-window .dash-kpi-name { color: #8fb0a3 !important; }
html.site-dark body .dash-window .db-active { background: rgba(26,158,114,.2) !important; color: #3ddba0 !important; }
html.site-dark body .dash-window .db-queued { background: rgba(255,255,255,.06) !important; color: #8fb0a3 !important; }
html.site-dark body .dash-window .dash-tbl-row, html.site-dark body .dash-window .dash-tbl-head { color: #cfe3da !important; border-color: rgba(26,158,114,.2) !important; }

/* ---- inner pages (auto-built from a scan of every page type) ---- */
html.site-dark body section.sv2-sec.sv2-grid,
html.site-dark body section.sv2-sec.sv2-tint,
html.site-dark body div.ab-vals,
html.site-dark body div.sv2-steps,
html.site-dark body section.portfolio-section,
html.site-dark body section.blog-section,
html.site-dark body section.careers-section,
html.site-dark body div.job-card,
html.site-dark body div.careers-cta,
html.site-dark body div.contact-main,
html.site-dark body section.courses-section,
html.site-dark body section.why-section,
html.site-dark body div.shop-grid { background-color: transparent !important; background-image: none !important; border-color: rgba(26,158,114,.28) !important; }
html.site-dark body span.sv2-eyebrow,
html.site-dark body div.ab-card,
html.site-dark body div.filter-bar,
html.site-dark body a.filter-tab,
html.site-dark body div.pc-type,
html.site-dark body span.pc-tag,
html.site-dark body span.pc-featured,
html.site-dark body div.bc-thumb,
html.site-dark body span.badge-free,
html.site-dark body span.badge-premium,
html.site-dark body div.job-badge,
html.site-dark body div.contact-form-section,
html.site-dark body div.step-dot,
html.site-dark body nav.cat-nav,
html.site-dark body span.cat-tab-count,
html.site-dark body div.cc-thumb,
html.site-dark body div.cc-level.beginner,
html.site-dark body div.cc-level.intermediate,
html.site-dark body div.why-card,
html.site-dark body div.contact-box,
html.site-dark body div.sv2-pcard,
html.site-dark body div.shop-header-top,
html.site-dark body span.shop-logo-badge,
html.site-dark body a.shop-cart-link,
html.site-dark body nav.shop-nav,
html.site-dark body div.shop-section-label,
html.site-dark body a.shop-card,
html.site-dark body div.shop-card-img,
html.site-dark body div.build-card,
html.site-dark body div.build-icon,
html.site-dark body div.build-card.reveal-delay-1,
html.site-dark body div.build-card.reveal-delay-2,
html.site-dark body div.build-card.reveal-delay-3,
html.site-dark body div.why-check,
html.site-dark body span.timeline-val,
html.site-dark body div.faq-item { background-color: rgba(255,255,255,.04) !important; background-image: none !important; border-color: rgba(26,158,114,.32) !important; box-shadow: none !important; }
html.site-dark body div.pc-title,
html.site-dark body div.bc-title,
html.site-dark body div.job-title,
html.site-dark body div.sh-title,
html.site-dark body div.cc-title,
html.site-dark body div.why-title,
html.site-dark body div.shop-section-label,
html.site-dark body div.shop-card-name,
html.site-dark body div.shop-card-price,
html.site-dark body div.section-label,
html.site-dark body div.build-title,
html.site-dark body div.why-item-title,
html.site-dark body span.timeline-label,
html.site-dark body span.timeline-val { color: #fff !important; }
html.site-dark body span.sv2-eyebrow,
html.site-dark body a.filter-tab,
html.site-dark body div.pc-type,
html.site-dark body div.pc-desc,
html.site-dark body span.pc-featured,
html.site-dark body span.badge-free,
html.site-dark body span.badge-premium,
html.site-dark body a.pg-next,
html.site-dark body div.job-badge,
html.site-dark body p.job-description,
html.site-dark body div.job-location,
html.site-dark body button.cat-tab,
html.site-dark body div.sh-eyebrow,
html.site-dark body div.sh-desc,
html.site-dark body div.cc-level.beginner,
html.site-dark body div.cc-desc,
html.site-dark body span.cc-enroll,
html.site-dark body div.cc-level.intermediate,
html.site-dark body div.why-desc,
html.site-dark body p.legal-intro,
html.site-dark body div.sv2-seen,
html.site-dark body div.sv2-time,
html.site-dark body p.sv2-note,
html.site-dark body a.shop-cart-link,
html.site-dark body p.section-sub,
html.site-dark body div.build-desc,
html.site-dark body div.why-item-desc,
html.site-dark body div.process-desc,
html.site-dark body div.faq-q { color: #cfe3da !important; }

/* generic content text on inner pages */
html.site-dark body :is(h1,h2,h3,h4,h5,h6,th,label,legend) { color: #fff; }
html.site-dark body :is(p,li,td,dd,dt,blockquote,figcaption) { color: #cfe3da; }
html.site-dark body :is(.site-nav,.header-top,footer) :is(h1,h2,h3,h4,h5,h6,p,li,label) { color: revert-layer; }
html.site-dark body main a:not([class]), html.site-dark body article a:not([class]), html.site-dark body :is(p,li) > a:not([class]) { color: #3ddba0; }
html.site-dark body input, html.site-dark body select, html.site-dark body textarea { background: rgba(255,255,255,.05); color: #fff; border: 1px solid rgba(26,158,114,.35); }
html.site-dark body input::placeholder, html.site-dark body textarea::placeholder { color: #6f8b80; }
html.site-dark body option { background: #0d1a16; color: #fff; }
html.site-dark body hr { border-color: rgba(26,158,114,.28); }
html.site-dark body table, html.site-dark body th, html.site-dark body td { border-color: rgba(26,158,114,.28); }
html.site-dark body .container, html.site-dark body section { background-color: transparent; }

/* ---- inline-style overrides used on some pages ---- */
html.site-dark body section[style*="background: white"], html.site-dark body section[style*="background:white"],
html.site-dark body section[style*="background: #fff"], html.site-dark body section[style*="background:#fff"],
html.site-dark body section[style*="linear-gradient(135deg, #F9"], html.site-dark body section[style*="background:#f9faf9"] {
  background: transparent !important; }
html.site-dark body section[style*="linear-gradient(135deg, #F9"] { background: #0a1814 !important; }
html.site-dark body [style*="background: white"]:not(section), html.site-dark body [style*="background:#fff"]:not(section), html.site-dark body [style*="background:#f9faf9"]:not(section),
html.site-dark body [style*="background:var(--green-light)"], html.site-dark body [style*="linear-gradient(135deg, #D5EFE5"] {
  background: rgba(26,158,114,.14) !important; }
html.site-dark body [style*="color: #0B3D2E"], html.site-dark body [style*="color:#0B3D2E"], html.site-dark body [style*="color:var(--green-dark)"],
html.site-dark body [style*="color:var(--text2)"], html.site-dark body [style*="color:var(--green-mid)"] { color: #fff !important; }
html.site-dark body [style*="color: #627A6F"], html.site-dark body [style*="color:#627A6F"] { color: #8fb0a3 !important; }
html.site-dark body [style*="color: #1A9E72"], html.site-dark body [style*="color:var(--green)"] { color: #3ddba0 !important; }
html.site-dark body [style*="border: 1.5px solid #E3EBE7"], html.site-dark body [style*="border:1px solid var(--border)"] { border-color: rgba(26,158,114,.32) !important; }
html.site-dark body input, html.site-dark body select, html.site-dark body textarea {
  background: rgba(255,255,255,.05) !important; color: #fff !important; border: 1px solid rgba(26,158,114,.35) !important; }
html.site-dark body main a:not([class]), html.site-dark body a.sv2-link, html.site-dark body [class*="sv2-seen"] a { color: #3ddba0 !important; border-color: rgba(61,219,160,.5) !important; }

/* ---- low-contrast text pass ---- */
html.site-dark body .ab-photo b,
html.site-dark body .careers-intro h2,
html.site-dark body .job-requirements h4,
html.site-dark body .legal-section strong,
html.site-dark body .shop-logo-text strong { color: #fff !important; }
html.site-dark body .ab-bio-links a,
html.site-dark body .job-requirements li,
html.site-dark body .sv2-pcard a,
html.site-dark body div.cc-meta-item,
html.site-dark body span.bc-date,
html.site-dark body span.bc-read-time,
html.site-dark body span.pc-tag { color: #3ddba0 !important; }
html.site-dark body .ab-photo span,
html.site-dark body .careers-intro p { color: #cfe3da !important; }
html.site-dark body :is(strong,b) { color: #fff !important; }
html.site-dark body :is(.site-nav,.header-top,footer,.cookie-banner) :is(strong,b) { color: inherit !important; }
/* ---- menu dropdown (beats nav-v2 specificity) ---- */
html.site-dark body .site-nav .nav-inner .nav-links > li > .mega-dropdown {
  background: #0d1a16 !important; border: 1px solid rgba(26,158,114,.45) !important; border-top: 2px solid #1A9E72 !important;
  box-shadow: 0 30px 70px rgba(0,0,0,.6) !important; }
html.site-dark body .site-nav .nav-inner .nav-links .mega-item { background: transparent !important; border-color: rgba(26,158,114,.2) !important; }
html.site-dark body .site-nav .nav-inner .nav-links .mega-item:hover { background: rgba(26,158,114,.12) !important; }
html.site-dark body .site-nav .nav-inner .nav-links .mega-title { color: #fff !important; }
html.site-dark body .site-nav .nav-inner .nav-links .mega-item:hover .mega-title { color: #3ddba0 !important; }
html.site-dark body .site-nav .nav-inner .nav-links .mega-desc { color: #8fb0a3 !important; }
html.site-dark body .site-nav .nav-inner .nav-links .mega-link { color: #3ddba0 !important; }
@media (max-width: 968px) {
  html.site-dark body .site-nav .nav-inner .nav-links > li > .mega-dropdown { background: transparent !important; border: 0 !important; border-left: 2px solid #1A9E72 !important; box-shadow: none !important; }
}

/* ---- fix2: courses, lessons, sign-in pages ---- */
/* ---- pass3a.css ---- */
html.site-dark body div.au-card,
html.site-dark body div.au-page,
html.site-dark body div.ls2-head,
html.site-dark body div.ls2-page,
html.site-dark body div.section-sm { background-color: transparent !important; background-image: none !important; border-color: rgba(26,158,114,.28) !important; }
html.site-dark body a.lesson-item,
html.site-dark body a.ls2-item.is-current,
html.site-dark body aside.ls2-side,
html.site-dark body div.breadcrumb,
html.site-dark body div.detail-card,
html.site-dark body div.enroll-card,
html.site-dark body div.instructor-card,
html.site-dark body div.learn-check,
html.site-dark body div.lesson-num,
html.site-dark body div.lessons-locked-note,
html.site-dark body div.ls2-body,
html.site-dark body div.rc-emoji,
html.site-dark body div.related-card,
html.site-dark body span.ch-badge.ch-badge-level-beginner,
html.site-dark body span.lesson-free-badge { background-color: rgba(255,255,255,.04) !important; background-image: none !important; border-color: rgba(26,158,114,.32) !important; box-shadow: none !important; }
html.site-dark body .sb-title span,
html.site-dark body div.dc-title,
html.site-dark body div.ec-price,
html.site-dark body div.ec-price-sub,
html.site-dark body div.instructor-name,
html.site-dark body div.instructor-title,
html.site-dark body div.lesson-title,
html.site-dark body div.rc-course-title,
html.site-dark body div.rc-title,
html.site-dark body div.sb-title,
html.site-dark body span.dc-value { color: #fff !important; }
html.site-dark body .breadcrumb-inner a,
html.site-dark body .cart-empty p,
html.site-dark body .ls2-crumb a,
html.site-dark body a.au-forgot,
html.site-dark body div.au-switch,
html.site-dark body div.lesson-duration,
html.site-dark body div.rc-course-meta,
html.site-dark body span.dc-label,
html.site-dark body span.ls2-t { color: #3ddba0 !important; }
html.site-dark body div.ec-include,
html.site-dark body div.learn-item,
html.site-dark body span.breadcrumb-current { color: #cfe3da !important; }

/* ---- pass3b.css ---- */
html.site-dark body div.lesson-num,
html.site-dark body span.ch-badge.ch-badge-level-beginner,
html.site-dark body span.lesson-free-badge { color: #3ddba0 !important; }
html.site-dark body div.lessons-locked-note { color: #cfe3da !important; }

/* ---- course + lesson extras ---- */
html.site-dark body [style*="background:#ECF7F2"] { background: rgba(26,158,114,.14) !important; }
html.site-dark body :is(div,button)[style*="background:white"] { background: rgba(255,255,255,.04) !important; color: #fff !important; }
html.site-dark body [style*="border:2px solid #E3EBE7"], html.site-dark body [style*="border:1px solid #E3EBE7"] { border-color: rgba(26,158,114,.35) !important; }
html.site-dark body #welcomeQuiz h2, html.site-dark body #welcomeQuiz h3 { color: #fff !important; }
html.site-dark body .ls2-side > h2 { background: rgba(26,158,114,.14) !important; color: #fff !important; border-color: rgba(26,158,114,.3) !important; }
html.site-dark body .enroll-card .ec-btn.btn-outline { background: transparent !important; color: #fff !important; border: 1px solid rgba(26,158,114,.5) !important; }
html.site-dark body .enroll-card .ec-btn.btn-outline:hover { border-color: #3ddba0 !important; color: #3ddba0 !important; }
html.site-dark body .enroll-card .ec-price { color: #3ddba0 !important; }
html.site-dark body .enroll-card .ec-price-sub, html.site-dark body .enroll-card .ec-include { color: #cfe3da !important; }
html.site-dark body .enroll-card .ec-include svg { stroke: #3ddba0 !important; }

/* ---- fix3: catch-all for content written in the admin ---- */
html.site-dark body [data-gwx-lt] { background-color: rgba(26,158,114,.12) !important; background-image: none !important; border-color: rgba(26,158,114,.35) !important; }
html.site-dark body [data-gwx-dt="h"] { color: #fff !important; }
html.site-dark body [data-gwx-dt="t"] { color: #cfe3da !important; }
html.site-dark body [data-gwx-dt="g"] { color: #3ddba0 !important; }
/* ---- fix4: services hover + hero booking mock ---- */
html.site-dark body .svc-cell::after { background: rgba(26,158,114,.14) !important; }
html.site-dark body .svc-cell:hover .svc-icon { background: rgba(26,158,114,.25) !important; border-color: rgba(61,219,160,.5) !important; }
html.site-dark body .svc-cell:hover .svc-icon svg { stroke: #3ddba0 !important; }
html.site-dark body .svc-cell:hover .svc-title { color: #fff !important; }
html.site-dark body .svc-cell:hover .svc-body { color: #cfe3da !important; }
html.site-dark body .svc-cell:hover .svc-chip { color: #3ddba0 !important; background: rgba(26,158,114,.16) !important; border-color: rgba(26,158,114,.4) !important; }

html.site-dark body .dash-window.bk, html.site-dark body .dash-window.bk .bk-app { background: #0d1a16 !important; }
html.site-dark body .dash-window.bk .bk-app * { background-color: transparent !important; border-color: rgba(26,158,114,.28) !important; color: #cfe3da !important; }
html.site-dark body .dash-window.bk .bk-app :is(.bk-brand, .bk-h, .bk-date, .bk-heads b, strong, b, .on) { color: #fff !important; }
html.site-dark body .dash-window.bk .bk-app .bk-tabs .on { color: #3ddba0 !important; border-color: #3ddba0 !important; }
html.site-dark body .dash-window.bk .bk-app .bk-sub, html.site-dark body .dash-window.bk .bk-app .bk-gut, html.site-dark body .dash-window.bk .bk-app .bk-hours, html.site-dark body .dash-window.bk .bk-app .bk-l { color: #8fb0a3 !important; }
html.site-dark body .dash-window.bk .bk-app .bk-logo { background-color: rgba(26,158,114,.3) !important; }
html.site-dark body .dash-window.bk .bk-app .bk-ev { background-color: rgba(26,158,114,.24) !important; border-left-color: #3ddba0 !important; }
html.site-dark body .dash-window.bk .bk-app .bk-ev * { color: #fff !important; }
html.site-dark body .dash-window.bk .bk-app .bk-ev.pend { background-color: rgba(240,170,50,.2) !important; border-left-color: #f0aa32 !important; }
html.site-dark body .dash-window.bk .bk-app .bk-btn { background-color: #1A9E72 !important; color: #fff !important; }
html.site-dark body .dash-window.bk .bk-app .bk-seg { background-color: rgba(255,255,255,.05) !important; }
html.site-dark body .dash-window.bk .bk-app .bk-seg .on { background-color: rgba(26,158,114,.3) !important; color: #fff !important; }
html.site-dark body .dash-window.bk .bk-app .bk-now { background-color: #e5484d !important; color: #fff !important; }

/* hero dashboards 1 and 3 */
html.site-dark body .dash-window .dash-nav-brand, html.site-dark body .dash-window .dash-nav-brand * { color: #fff !important; }
html.site-dark body .dash-window .dash-nav-grp { color: #8fb0a3 !important; }
html.site-dark body .dash-window .dash-row-name { color: #fff !important; }
html.site-dark body .dash-window .dash-row-date { color: #8fb0a3 !important; }
html.site-dark body .dash-window .dash-kpi-trend { background: rgba(26,158,114,.16) !important; color: #3ddba0 !important; border: 1px solid rgba(26,158,114,.35) !important; }
html.site-dark body .dash-window .dash-brand-sq { background: rgba(26,158,114,.3) !important; border-color: rgba(26,158,114,.5) !important; }
html.site-dark body .dash-window .db-done { background: rgba(61,219,160,.22) !important; color: #3ddba0 !important; }
html.site-dark body .dash-window .db-active { background: rgba(26,158,114,.2) !important; color: #3ddba0 !important; }
html.site-dark body .dash-window .db-queued { background: rgba(255,255,255,.08) !important; color: #cfe3da !important; }
html.site-dark body .dash-window .dash-chart-range { color: #8fb0a3 !important; }
html.site-dark body .dash-window .bk-tag { background: rgba(26,158,114,.16) !important; color: #3ddba0 !important; }

/* ---- fix5: no light borders. Cards get a slightly lighter shade + soft shadow; separators become darker lines ---- */
html.site-dark body [data-gwx-bd~="t"][data-gwx-bd~="t"] { border-top-color: rgba(0,0,0,.5) !important; }
html.site-dark body [data-gwx-bd~="r"][data-gwx-bd~="r"] { border-right-color: rgba(0,0,0,.5) !important; }
html.site-dark body [data-gwx-bd~="b"][data-gwx-bd~="b"] { border-bottom-color: rgba(0,0,0,.5) !important; }
html.site-dark body [data-gwx-bd~="l"][data-gwx-bd~="l"] { border-left-color: rgba(0,0,0,.5) !important; }
html.site-dark body [data-gwx-bx][data-gwx-bx] { border-color: transparent !important; }
html.site-dark body [data-gwx-bx~="o"][data-gwx-bx~="o"] { background-image: linear-gradient(rgba(90,255,185,.05), rgba(90,255,185,.05)) !important; }
html.site-dark body [data-gwx-bx~="l"][data-gwx-bx~="l"] { box-shadow: 0 14px 30px -16px rgba(0,0,0,.75), 0 2px 8px rgba(0,0,0,.3) !important; }
html.site-dark body [data-gwx-bx~="o"][data-gwx-bx~="o"]:hover { background-image: linear-gradient(rgba(90,255,185,.085), rgba(90,255,185,.085)) !important; }
html.site-dark body :is(input, select, textarea):focus { box-shadow: 0 0 0 2px rgba(61,219,160,.55) !important; outline: none !important; }
/* ---- fix6: hover states that turned dark or white ---- */
html.site-dark body .blog-card:hover .bc-title, html.site-dark body .course-card:hover .cc-title { color: #3ddba0 !important; }
html.site-dark body .filter-tab:hover { color: #3ddba0 !important; background-color: rgba(26,158,114,.14) !important; }
html.site-dark body .platforms .pf-row li:hover, html.site-dark body .shop-mega-item:hover, html.site-dark body .gwx-chip:hover { background-color: rgba(26,158,114,.14) !important; color: #fff !important; }
html.site-dark body .ls2-item:hover { background-color: rgba(26,158,114,.14) !important; }
html.site-dark body .header-actions .login-link:hover { color: #3ddba0 !important; }
html.site-dark body .header-actions .hdr-search:focus-within { background: rgba(255,255,255,.06) !important; }
html.site-dark body .site-nav .nav-inner .nav-links > li > a:hover, html.site-dark body .site-nav .nav-inner .nav-links > li:hover > a { color: #3ddba0 !important; }
/* ---- fix7: article page hovers ---- */
html.site-dark body .article-content tr:hover td { background: rgba(26,158,114,.12) !important; }
html.site-dark body .sc-toc a:hover { background: rgba(26,158,114,.16) !important; color: #fff !important; }
html.site-dark body .article-content a:hover { color: #3ddba0 !important; }
html.site-dark body .related-post:hover { background: rgba(26,158,114,.10) !important; }
html.site-dark body .share-btn:hover { background: rgba(26,158,114,.14) !important; color: #3ddba0 !important; }

/* ---- fix8: contact pop-up, shop product photos, theme button in the header ---- */
html.site-dark body img { mix-blend-mode: normal !important; }
html.site-dark body .shop-card-img, html.site-dark body .shop-card-img[data-gwx-lt] { background-color: #f1f6f3 !important; background-image: none !important; }
html.site-dark body .shop-card:hover .shop-card-img { background-color: #fff !important; }
html.site-dark body .modal-overlay { background: rgba(0,0,0,.72) !important; }
html.site-dark body .modal-content { background: #0d1a16 !important; border-radius: 0 !important; box-shadow: 0 30px 80px rgba(0,0,0,.7) !important; }
html.site-dark body .modal-left { border-right: 1px solid rgba(0,0,0,.5) !important; background: transparent !important; }
html.site-dark body .modal-left h2 { color: #fff !important; }
html.site-dark body .modal-left p { color: #8fb0a3 !important; }
html.site-dark body .modal-form-group label { color: #cfe3da !important; }
html.site-dark body .modal-form-group input, html.site-dark body .modal-form-group textarea, html.site-dark body .modal-form-group select { background: rgba(255,255,255,.06) !important; border: 1px solid transparent !important; color: #fff !important; border-radius: 0 !important; }
html.site-dark body .modal-form-group input::placeholder, html.site-dark body .modal-form-group textarea::placeholder { color: #6f8b80 !important; }
html.site-dark body .modal-file-upload { background: rgba(255,255,255,.05) !important; border: 1px dashed rgba(0,0,0,.6) !important; border-radius: 0 !important; }
html.site-dark body .modal-file-upload:hover { background: rgba(26,158,114,.14) !important; }
html.site-dark body .modal-file-text, html.site-dark body .modal-file-upload * { color: #8fb0a3 !important; }
html.site-dark body .modal-close { color: #cfe3da !important; }
html.site-dark body .modal-right { background: linear-gradient(135deg, #0F5239 0%, #072A20 100%) !important; border-radius: 0 !important; }
html.site-dark body .modal-right .project-item { background: rgba(255,255,255,.07) !important; border: 0 !important; border-radius: 0 !important; }
html.site-dark body .modal-right .project-item:hover { background: rgba(26,158,114,.25) !important; }
html.site-dark body .modal-submit { border-radius: 0 !important; }

.gwx-site-toggle.gwx-in-header, html.site-dark .gwx-site-toggle.gwx-in-header { position: static !important; z-index: auto !important; flex: none; width: 40px; height: 40px; margin: 0 0 0 4px; border: 0 !important; background: rgba(26,158,114,.12) !important; color: #0F7B4F; }
html.site-dark .gwx-site-toggle.gwx-in-header { color: #3ddba0; background: rgba(26,158,114,.2) !important; }
.gwx-site-toggle.gwx-in-header:hover { background: rgba(26,158,114,.28) !important; color: #1A9E72; }
html.site-dark .gwx-site-toggle.gwx-in-header:hover { color: #fff; }
html.site-dark body .shop-cart-link svg { stroke: #cfe3da !important; color: #cfe3da !important; }
/* ---- fix9: blog, course and portfolio cards become real tiles with inner padding ---- */
html.site-dark body .blog-card, html.site-dark body .course-card, html.site-dark body .portfolio-card {
  background-color: rgba(90,255,185,.045) !important; box-shadow: 0 14px 30px -16px rgba(0,0,0,.75), 0 2px 8px rgba(0,0,0,.3) !important; }
html.site-dark body .blog-card .bc-body, html.site-dark body .course-card .cc-body { padding: 0 22px 24px !important; }
html.site-dark body .portfolio-card .pc-body { padding-left: 22px !important; padding-right: 22px !important; padding-bottom: 22px !important; }
html.site-dark body .portfolio-card .pc-footer { margin-left: 0 !important; margin-right: 0 !important; }
/* ---- fix10: shop language switch looks like the main site (a plain FR / EN link) ---- */
.shop-header-top .gwx-lang { display: inline-flex !important; background: none !important; padding: 0 !important; margin: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
.shop-header-top .gwx-lang::before { display: none !important; }
.shop-header-top .gwx-lang a { display: none !important; opacity: 1 !important; min-width: 0 !important; border-radius: 0 !important; background: none !important;
  font-size: 16px !important; font-weight: 500 !important; letter-spacing: .06em !important; padding: 10px 12px !important; color: #2f4a40 !important; }
.shop-header-top .gwx-lang a:not(.on) { display: inline-block !important; }
.shop-header-top .gwx-lang a:hover { color: #0B3D2E !important; background: rgba(26,158,114,.08) !important; }
html.site-dark .shop-header-top .gwx-lang a { color: #d6e6df !important; }
html.site-dark .shop-header-top .gwx-lang a:hover { color: #3ddba0 !important; background: rgba(26,158,114,.12) !important; }
/* ---- fix11: lesson page hovers (nav buttons, collapsible headers, quiz options) ---- */
html.site-dark body .lesson-nav-btn:hover, html.site-dark body .collapsible-header:hover, html.site-dark body .option:hover {
  background: rgba(26,158,114,.18) !important; background-image: none !important; color: #fff !important; border-color: transparent !important; }
html.site-dark body .lesson-nav-btn:hover *, html.site-dark body .collapsible-header:hover *, html.site-dark body .option:hover * { color: #fff !important; }
/* ---- fix12: lesson content sections must not use the homepage section look ---- */
html.site-dark body .ls2-body .section, html.site-dark body .ls2-extra .section, html.site-dark body .lesson-container .section {
  background: transparent !important; background-image: none !important; border: 0 !important; padding: 0 !important; margin-bottom: 48px !important; }
html.site-dark body .ls2-body .lesson-container { padding: 0 !important; margin: 24px auto 0 !important; }
/* ---- fix15: chat button signal rings (replaces breathing) ---- */
body .gwx-chat-btn, body #gwxChat .gwx-chat-btn { animation: none !important; overflow: visible !important; }
body .gwx-chat-btn::before, body .gwx-chat-btn::after {
  content: "" !important; position: absolute !important; inset: 0 !important; border-radius: 50% !important;
  border: 2px solid #3ddba0 !important; background: transparent !important; box-shadow: none !important;
  opacity: 0; pointer-events: none !important; transform: scale(1); will-change: transform, opacity;
  animation: gwxSignal 2.8s cubic-bezier(.2,.6,.3,1) infinite !important; }
body .gwx-chat-btn::after { animation-delay: 1.4s !important; }
@keyframes gwxSignal { 0% { transform: scale(1); opacity: .65; } 70%, 100% { transform: scale(1.9); opacity: 0; } }
body #gwxChat.gwx-open .gwx-chat-btn::before, body #gwxChat.gwx-open .gwx-chat-btn::after { animation: none !important; display: none !important; }
@media (prefers-reduced-motion: reduce) { body .gwx-chat-btn::before, body .gwx-chat-btn::after { animation: none !important; display: none !important; } }
/* ---- fix18: search results page readable (dark cards, white titles, dark filter chips) ---- */
html.site-dark body .search-hero { background: #0a1814 !important; }
html.site-dark body .search-form input { background: rgba(255,255,255,.06) !important; color: #fff !important; border: 0 !important; box-shadow: 0 10px 24px -14px rgba(0,0,0,.7) !important; }
html.site-dark body .search-form input::placeholder { color: #8fb0a3 !important; opacity: 1 !important; }
html.site-dark body .search-form svg { stroke: #8fb0a3 !important; }
html.site-dark body .search-meta, html.site-dark body .sr-note { color: #8fb0a3 !important; }
html.site-dark body .sr-chip { background: rgba(255,255,255,.05) !important; color: #cfe3da !important; border: 0 !important; border-radius: 0 !important; box-shadow: 0 6px 14px -10px rgba(0,0,0,.7) !important; }
html.site-dark body .sr-chip:hover { background: rgba(90,255,185,.08) !important; color: #fff !important; }
html.site-dark body .sr-chip.on { background: rgba(61,219,160,.14) !important; color: #3ddba0 !important; box-shadow: inset 0 -2px 0 #3ddba0 !important; }
html.site-dark body a.sr-card { background: rgba(255,255,255,.035) !important; border: 0 !important; border-radius: 0 !important; padding: 22px 26px !important; box-shadow: 0 14px 30px -16px rgba(0,0,0,.75), 0 2px 8px rgba(0,0,0,.3) !important; }
html.site-dark body a.sr-card:hover { background: rgba(90,255,185,.07) !important; transform: translateY(-2px); }
html.site-dark body a.sr-card .sr-type { color: #3ddba0 !important; }
html.site-dark body a.sr-card .sr-title { color: #fff !important; }
html.site-dark body a.sr-card:hover .sr-title { color: #fff !important; }
html.site-dark body a.sr-card .sr-snip { color: #cfe3da !important; }
html.site-dark body a.sr-card .sr-url { color: #8fb0a3 !important; opacity: 1 !important; font-size: 12.5px !important; }
html.site-dark body a.sr-card mark, html.site-dark body a.sr-card .sr-title mark, html.site-dark body a.sr-card .sr-snip mark { background: rgba(61,219,160,.28) !important; color: #fff !important; border-radius: 0 !important; }
html.site-dark body .sr-empty h2 { color: #fff !important; }
html.site-dark body .sr-empty p { color: #cfe3da !important; }
html.site-dark body .sr-links a { background: rgba(255,255,255,.05) !important; color: #cfe3da !important; border: 0 !important; border-radius: 0 !important; box-shadow: 0 6px 14px -10px rgba(0,0,0,.7) !important; }
html.site-dark body .sr-links a:hover { background: rgba(90,255,185,.08) !important; color: #3ddba0 !important; }
/* ---- fix23: mobile chat sheet ---- */
body #gwxChat input, body #gwxChat textarea, body #gwxChat .gwx-chat-form input { font-size: 16px !important; -webkit-text-size-adjust: 100%; touch-action: manipulation; }
html.site-dark body #gwxChat .gwx-chat-form input, html.site-dark body #gwxChat .gwx-chat-form textarea { background: #fff !important; color: #0f1f1a !important; -webkit-text-fill-color: #0f1f1a !important; caret-color: #1A9E72 !important; }
html.site-dark body #gwxChat .gwx-chat-form input::placeholder { color: #6b7f77 !important; -webkit-text-fill-color: #6b7f77 !important; opacity: 1 !important; }
body #gwxChat .gwx-chat-msgs { overscroll-behavior: contain; -webkit-overflow-scrolling: touch; touch-action: pan-y; }
@media (max-width: 600px) {
  html.gwx-chat-open { overflow: hidden !important; overscroll-behavior: none; }
  html.gwx-chat-open body { position: fixed !important; left: 0; right: 0; width: 100% !important; overflow: hidden !important; }
  body #gwxChat.gwx-open { right: 12px !important; left: auto !important; top: auto !important; bottom: calc(12px + var(--gwx-kb, 0px)) !important; transition: none !important; }
  body #gwxChat.gwx-open .gwx-chat-panel { width: min(360px, calc(100vw - 24px)) !important; height: min(400px, 68dvh, calc(var(--gwx-vvh, 100dvh) - 24px)) !important; max-height: none !important; }
}
/* ---- fix24: bigger logo on phones, dark menu button ---- */
@media (max-width: 900px) {
  html body .logo-section .logo-icon, html body .header-top .logo-icon { width: 62px !important; height: 62px !important; flex-shrink: 0 !important; }
  html body .logo-section .logo-icon img, html body .header-top .logo-icon img { width: 100% !important; height: 100% !important; }
  html body .logo-section { gap: 12px !important; }
}
html.site-dark body .mobile-toggle, html.site-dark body button.mobile-toggle { background: rgba(61,219,160,.12) !important; border: 0 !important; box-shadow: none !important; width: 44px !important; height: 44px !important; }
html.site-dark body .mobile-toggle span, html.site-dark body .mobile-toggle .bar, html.site-dark body .mobile-toggle i { background: #3ddba0 !important; background-color: #3ddba0 !important; }
html.site-dark body .mobile-toggle:hover, html.site-dark body .mobile-toggle[aria-expanded="true"] { background: rgba(61,219,160,.22) !important; }
/* ---- fix25: hero dashboards share one slot, same size, smooth crossfade ---- */
html body .hero-visual { display: grid !important; grid-template-columns: minmax(0, 1fr); align-items: stretch; }
html body .hero-visual > .dash-window[data-dashboard] { grid-area: 1 / 1; display: block !important; height: 100%; margin-left: auto; margin-right: auto; width: 100%; will-change: opacity, transform; transition: opacity .7s ease, transform .7s ease !important; }
html body .hero-visual > .dash-window[data-dashboard][style*="display: none"] { visibility: hidden; opacity: 0 !important; pointer-events: none; transform: none !important; }
html body .hero-visual > .dash-window[data-dashboard] { backface-visibility: hidden; }
