:root {
  --blk: #0f172a;
  --gold: #3b82f6;
  --gold2: #60a5fa;
  --wht: #e2e8f0;
  --g1: #1e293b;
  --g2: #263248;
  --blueprint-navy: #e2e8f0;
  --blueprint-blue: #3b82f6;
  --blueprint-cyan: #60a5fa;
  --blueprint-paper: #0f172a;
  --blueprint-line: rgba(255, 255, 255, 0.1);
  --blueprint-ink: #cbd5e1;
  --blueprint-muted: #94a3b8;
  --blueprint-gold: #f2b84b;
}

html {
  background: var(--blueprint-paper);
}
body {
  background: #0f172a;
  color: var(--blueprint-ink);
}

nav {
  background: rgba(15, 23, 42, 0.9) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.2);
}
nav.on {
  background: rgba(15, 23, 42, 0.96) !important;
}
.nav-logo,
.ft-logo {
  color: var(--blueprint-navy) !important;
}
.nav-logo span,
.ft-logo span {
  color: var(--blueprint-blue) !important;
}
.nav-links a {
  color: rgba(203, 213, 225, 0.72) !important;
}
.nav-links a:hover {
  color: var(--blueprint-blue) !important;
}
.nav-cta,
.btn-g,
.form-submit,
.cf.sub button,
.ft-cta,
.ft-cta-f {
  background: linear-gradient(135deg, var(--blueprint-blue), var(--blueprint-cyan)) !important;
  color: #ffffff !important;
  box-shadow: 0 12px 28px rgba(59, 130, 246, 0.28);
}
.nav-cta:hover,
.btn-g:hover,
.form-submit:hover,
.cf.sub button:hover,
.ft-cta:hover,
.ft-cta-f:hover {
  background: linear-gradient(135deg, #2563eb, #3b82f6) !important;
}

#loader {
  background: var(--blueprint-paper) !important;
}
.ld-logo {
  color: var(--blueprint-navy) !important;
}
.ld-logo img {
  filter: brightness(0) invert(1);
}
.ld-logo span,
.gc,
.ct-h2 em {
  color: var(--blueprint-blue) !important;
}
.ld-bar {
  background: rgba(255, 255, 255, 0.1) !important;
}
.ld-fill,
#gf,
.mq,
.bwt-progf,
.connf {
  background: var(--blueprint-blue) !important;
}
#cd {
  background: var(--blueprint-cyan) !important;
}
#cr {
  border-color: rgba(96, 165, 250, 0.35) !important;
}

#hero,
.pg-header {
  background:
    radial-gradient(ellipse at 18% 20%, rgba(59, 130, 246, 0.2), transparent 48%),
    linear-gradient(135deg, #050d1b 0%, #0a1628 58%, #0d1f3c 100%) !important;
}
#hero::after {
  background: linear-gradient(
    108deg,
    rgba(5, 13, 27, 0.96) 0%,
    rgba(5, 13, 27, 0.7) 48%,
    rgba(5, 13, 27, 0.2) 100%
  ) !important;
}
.pg-header::before,
#promise::before,
#contact::before,
#wu-cta::before {
  background: radial-gradient(ellipse at 50% 0, rgba(59, 130, 246, 0.16), transparent 60%) !important;
}
.hero-chip,
.pg-eye,
.sec-eye,
.sl-phase,
.ec-eye,
.ci-promise-label,
.toc-title,
.sec-num,
.sc-type,
.tool-role,
.cert-name,
.prom-n,
.st-n,
.st-u,
.stat-n,
.adv-num {
  color: var(--blueprint-blue) !important;
}
.hc-line,
.pg-eye::before,
.sec-eye::before,
.sl-dash,
.sc-line,
.psc-divider,
.st-bar,
.stat-r,
.ec-row .vg {
  background: var(--blueprint-blue) !important;
}
.hc-dot {
  background: var(--blueprint-cyan) !important;
}
.hero-h1,
.pg-h1,
.sec-h2,
.ct-h2,
.why-h2,
.sl-h2,
.cf-title,
.tool-name,
.cert-full,
.ci-promise p,
.ci-ch-val,
.prom-l,
.stat-l,
.st-l,
.sv-name,
.sc-trade {
  color: var(--blueprint-navy) !important;
}
.hero-sub,
.pg-sub,
.ct-sub,
.why-p,
.sv-desc,
.sl-p,
.adv p,
.cert-desc,
.sec p,
.sec li,
.toc li a,
.ci-ch-note,
.ci-checklist li,
.form-note,
.ft-desc,
.ft-tag {
  color: var(--blueprint-muted) !important;
}
.ld-pct,
.sc-txt,
.sl-tag,
.step p,
.ec-row .l,
.pg-meta,
.psc-label,
.psc-text,
.prob-right p,
.prob-list li,
.adv-card p,
.cta-sub,
.upload-label,
.upload-formats,
.ci-promise span,
.cf-sub,
.ci-ck-title,
.faq-a-inner,
.prom-l {
  color: var(--blueprint-muted) !important;
}
.ec-row .v,
.adv h4,
.prob-right h2,
.faq-q,
.sec h2,
.toc-title,
.data-table td:first-child {
  color: var(--blueprint-navy) !important;
}
[style*='rgba(237,235,230'],
[style*='#EDEBE6'],
[style*='color:white'],
[style*='color: white'],
[style*='color:#fff'],
[style*='color: #fff'] {
  color: var(--blueprint-muted) !important;
}
[style*='rgba(212,168,67'],
[style*='#D4A843'] {
  color: var(--blueprint-blue) !important;
}

#svc-ov,
#proc,
#samples,
#contact-main,
#faq,
#promise,
#problem,
#advantages,
#wu-stats,
#tools,
#certs,
#contact,
.pg-body {
  background: transparent !important;
}
.sv,
.step,
.stat,
.adv,
.est-card,
.sc,
.ci-promise,
.ci-channel,
.contact-form-wrap,
.faq-item,
.prom,
.prob-stat-card,
.adv-card,
.tool,
.cert-card,
.toc,
.highlight-box {
  background: rgba(30, 41, 59, 0.86) !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.25);
}
.sv:hover,
.step:hover,
.stat:hover,
.adv-card:hover,
.tool:hover,
.sc:hover,
.ci-channel:hover,
.prom:hover {
  border-color: rgba(96, 165, 250, 0.35) !important;
  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.35) !important;
}
.est-card::before,
.ci-promise::before,
.contact-form-wrap::before,
.prob-stat-card::before {
  background: linear-gradient(to right, var(--blueprint-blue), var(--blueprint-cyan), transparent) !important;
}

.bp-card {
  background: rgba(30, 41, 59, 0.88) !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.3) !important;
}
.bp-cval,
.bp-clab {
  color: var(--blueprint-navy) !important;
}
.bp-out,
.bp-iw,
.bp-dl,
.bp-tk,
.bp-na,
.bp-scan,
.dim-line,
.dim-tick,
.scaffold,
.floor-line,
.measure-line,
.measure-cap {
  stroke: rgba(96, 165, 250, 0.45) !important;
}
.bp-col,
.bp-dn,
.bp-np,
.win-glass,
.door-fill {
  fill: rgba(59, 130, 246, 0.22) !important;
}
.bp-lab,
.bp-nt,
.bld-label {
  fill: rgba(203, 213, 225, 0.72) !important;
}
.ground-plane,
.found-slab,
.wall-front,
.wall-right,
.wall-front-2,
.wall-right-2,
.roof-fl,
.roof-fr,
.roof-br,
.roof-bl,
.chimney-f,
.chimney-r,
.chimney-t {
  fill: rgba(30, 41, 59, 0.78) !important;
  stroke: rgba(96, 165, 250, 0.45) !important;
}
.ground-grid {
  stroke: rgba(96, 165, 250, 0.16) !important;
}

.btn-o {
  border-color: rgba(96, 165, 250, 0.26) !important;
  color: var(--blueprint-navy) !important;
  background: rgba(30, 41, 59, 0.6) !important;
}
.btn-o:hover {
  border-color: var(--blueprint-blue) !important;
  color: var(--blueprint-blue) !important;
}
.mq {
  color: #fff !important;
}
.mq-d {
  color: rgba(255, 255, 255, 0.55) !important;
}

.form-group input,
.form-group select,
.form-group textarea,
.cf input,
.cf select,
.cf textarea {
  background: #1e293b !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  color: var(--blueprint-ink) !important;
}
.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus,
.cf input:focus,
.cf select:focus,
.cf textarea:focus {
  border-color: rgba(96, 165, 250, 0.55) !important;
  box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.12) !important;
}
.form-group input::placeholder,
.form-group textarea::placeholder,
.cf input::placeholder,
.cf textarea::placeholder {
  color: rgba(148, 163, 184, 0.58) !important;
}
.form-group label,
.cf label,
.ci-ch-label,
.ft-col-title {
  color: rgba(203, 213, 225, 0.58) !important;
}
.form-group select option,
.cf select option {
  background: #1e293b !important;
  color: var(--blueprint-ink) !important;
}
.upload-area {
  border-color: rgba(96, 165, 250, 0.3) !important;
  background: rgba(30, 41, 59, 0.62) !important;
}
.upload-area:hover {
  border-color: rgba(96, 165, 250, 0.55) !important;
  background: rgba(96, 165, 250, 0.06) !important;
}

.ci-ch-icon,
.ci-check,
.prom-icon,
.adv-ic,
.tool-icon,
.cert-badge,
.s-ring {
  background: rgba(96, 165, 250, 0.1) !important;
  border-color: rgba(96, 165, 250, 0.2) !important;
}
.ci-ch-icon svg,
.ci-check svg,
.prom-icon svg,
.adv-ic svg,
.tool-icon svg,
.cert-badge svg,
.s-ring svg,
.sc-icon-bg svg,
.upload-icon svg {
  stroke: var(--blueprint-blue) !important;
}
.sc-icon-bg {
  opacity: 0.12 !important;
}
.sc:hover .sc-icon-bg {
  opacity: 0.25 !important;
}
.fill-dot {
  fill: var(--blueprint-blue) !important;
}
.sc-type {
  background: rgba(96, 165, 250, 0.09) !important;
  border-color: rgba(96, 165, 250, 0.18) !important;
}
.sc-dl {
  background: rgba(96, 165, 250, 0.08) !important;
  border-color: rgba(96, 165, 250, 0.18) !important;
  color: var(--blueprint-blue) !important;
}
.sc:hover .sc-dl {
  background: rgba(96, 165, 250, 0.13) !important;
  border-color: rgba(96, 165, 250, 0.38) !important;
}

.faq-q {
  color: var(--blueprint-navy) !important;
}
.faq-q:hover,
.faq-item.open .faq-q,
.sec a,
.toc li a:hover,
.highlight-box strong {
  color: var(--blueprint-blue) !important;
}
.faq-a-inner {
  color: var(--blueprint-muted) !important;
}
.faq-q-icon {
  border-color: rgba(255, 255, 255, 0.1) !important;
}
.faq-item.open .faq-q-icon {
  border-color: rgba(96, 165, 250, 0.35) !important;
}
.data-table th {
  color: rgba(203, 213, 225, 0.62) !important;
  border-bottom-color: rgba(255, 255, 255, 0.1) !important;
}
.data-table td {
  color: var(--blueprint-muted) !important;
  border-bottom-color: rgba(96, 165, 250, 0.08) !important;
}
.data-table td:first-child,
.sec strong {
  color: var(--blueprint-navy) !important;
}

.reveal,
.slide,
.step,
.stat,
.adv,
.est-card,
.sc,
.ct-i,
.prob-grid,
.adv-grid,
.stats-row,
.tools-grid,
.certs-grid {
  color: var(--blueprint-ink) !important;
}
.reveal h1,
.reveal h2,
.reveal h3,
.reveal h4,
.slide h1,
.slide h2,
.slide h3,
.slide h4,
.step h1,
.step h2,
.step h3,
.step h4,
.stat h1,
.stat h2,
.stat h3,
.stat h4,
.adv h1,
.adv h2,
.adv h3,
.adv h4,
.est-card h1,
.est-card h2,
.est-card h3,
.est-card h4,
.sc h1,
.sc h2,
.sc h3,
.sc h4,
.ct-i h1,
.ct-i h2,
.ct-i h3,
.ct-i h4,
.prob-grid h1,
.prob-grid h2,
.prob-grid h3,
.prob-grid h4,
.adv-grid h1,
.adv-grid h2,
.adv-grid h3,
.adv-grid h4,
.tools-grid h1,
.tools-grid h2,
.tools-grid h3,
.tools-grid h4,
.certs-grid h1,
.certs-grid h2,
.certs-grid h3,
.certs-grid h4 {
  color: var(--blueprint-navy) !important;
}
.reveal p,
.reveal li,
.reveal span:not(.sec-eye):not(.pg-eye):not(.sc-type):not(.adv-num),
.slide p,
.slide li,
.slide span:not(.sl-phase):not(.sc-type),
.step p,
.step li,
.step span,
.stat p,
.stat li,
.stat span:not(.stat-n),
.adv p,
.adv li,
.adv span:not(.adv-num),
.est-card p,
.est-card li,
.est-card span:not(.ec-eye):not(.vg),
.sc p,
.sc li,
.sc span:not(.sc-type),
.ct-i p,
.ct-i li,
.ct-i span,
.prob-grid p,
.prob-grid li,
.prob-grid span:not(.psc-num),
.adv-grid p,
.adv-grid li,
.adv-grid span:not(.adv-num),
.stats-row p,
.stats-row li,
.stats-row span:not(.st-n):not(.st-u),
.tools-grid p,
.tools-grid li,
.tools-grid span,
.certs-grid p,
.certs-grid li,
.certs-grid span {
  color: var(--blueprint-muted) !important;
}
.slide {
  background: rgba(30, 41, 59, 0.9) !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.25);
}
.sl-feats li {
  border-bottom-color: rgba(96, 165, 250, 0.12) !important;
}
.sl-feats li::before,
.prob-list li::before {
  background: var(--blueprint-blue) !important;
}
.stats-wm,
.wu-stats-wm {
  color: rgba(255, 255, 255, 0.03) !important;
  -webkit-text-stroke: 1px rgba(255, 255, 255, 0.06);
}

footer {
  background: #050d1b !important;
  border-top-color: rgba(255, 255, 255, 0.08) !important;
}
.ft-bottom {
  border-top-color: rgba(255, 255, 255, 0.08) !important;
}
.ft-links a,
.ft-legal a {
  color: rgba(203, 213, 225, 0.68) !important;
}
.ft-links a:hover,
.ft-legal a:hover {
  color: var(--blueprint-blue) !important;
}

#svc-ov {
  background: #111827 !important;
}
#svc-ov .sec-eye {
  color: var(--blueprint-blue) !important;
}
#svc-ov .sec-h2 {
  color: var(--blueprint-navy) !important;
}
#svc-ov .sv {
  background: #1e293b !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.25) !important;
}
#svc-ov .sv-num {
  color: var(--blueprint-blue) !important;
  opacity: 1 !important;
}
#svc-ov .sv-name {
  color: var(--blueprint-navy) !important;
  opacity: 1 !important;
}
#svc-ov .sv-desc {
  color: #8ea5c5 !important;
  opacity: 1 !important;
}
#bwt,
#bwt-pin {
  background: #111827 !important;
}
#bwt .slide {
  background: #1e293b !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  padding: 34px 32px !important;
}
#bwt .sl-phase,
#bwt .sl-phase * {
  color: var(--blueprint-blue) !important;
  opacity: 1 !important;
}
#bwt .sl-h2 {
  color: var(--blueprint-navy) !important;
  opacity: 1 !important;
}
#bwt .sl-tag,
#bwt .sl-feats li {
  color: #8ea5c5 !important;
  opacity: 1 !important;
}
#bwt .sl-feats li {
  border-bottom-color: rgba(96, 165, 250, 0.16) !important;
}
#bwt .pdot {
  background: rgba(96, 165, 250, 0.28) !important;
}
#bwt .pdot.on {
  background: var(--blueprint-blue) !important;
}

a.nav-cta,
a.btn-g,
a.ft-cta,
a.ft-cta-f,
button.form-submit,
.cf.sub button,
form button[type='submit'] {
  background: linear-gradient(135deg, #2563eb, #3b82f6) !important;
  color: #ffffff !important;
  border-color: transparent !important;
  box-shadow: 0 12px 28px rgba(59, 130, 246, 0.28) !important;
}
a.nav-cta:hover,
a.btn-g:hover,
a.ft-cta:hover,
a.ft-cta-f:hover,
button.form-submit:hover,
.cf.sub button:hover,
form button[type='submit']:hover {
  background: linear-gradient(135deg, #1d4ed8, #2563eb) !important;
}

nav a.nav-cta {
  background: #2563eb !important;
  color: #ffffff !important;
  box-shadow: 0 12px 26px rgba(37, 99, 235, 0.3) !important;
}
nav a.nav-cta:hover {
  background: #1d4ed8 !important;
}
#hero {
  background: #050d1b !important;
}
#hero::after {
  background: none !important;
}
#hero .btn-g {
  background: #2563eb !important;
  color: #ffffff !important;
  box-shadow: 0 12px 28px rgba(37, 99, 235, 0.35) !important;
}
#hero .btn-g:hover {
  background: #1d4ed8 !important;
}
#hero .hero-h1,
#hero .hero-sub {
  color: #ffffff !important;
}
#hero .hero-chip,
#hero .gc {
  color: #bfdbfe !important;
}
#hero .hc-line,
#hero .hc-dot {
  background: #bfdbfe !important;
}
#hero #hc {
  opacity: 0.22 !important;
}
#hero .bp-out {
  stroke: rgba(191, 219, 254, 0.9) !important;
}
#hero .bp-iw,
#hero .bp-dl,
#hero .bp-tk,
#hero .bp-na {
  stroke: rgba(147, 197, 253, 0.58) !important;
}
#hero .bp-scan {
  stroke: rgba(255, 255, 255, 0.45) !important;
}
#hero .bp-col,
#hero .bp-dn,
#hero .bp-np {
  fill: rgba(147, 197, 253, 0.72) !important;
}
#hero .bp-lab,
#hero .bp-nt {
  fill: rgba(191, 219, 254, 0.74) !important;
}
#hero .bp-card {
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: rgba(191, 219, 254, 0.2) !important;
  box-shadow: 0 16px 42px rgba(0, 0, 0, 0.4) !important;
}
#hero .bp-cval {
  color: #bfdbfe !important;
}
#hero .bp-clab {
  color: rgba(255, 255, 255, 0.7) !important;
}
#hero .btn-o {
  color: rgba(255, 255, 255, 0.88) !important;
  border-color: rgba(191, 219, 254, 0.36) !important;
}
#hero .btn-o:hover {
  color: #ffffff !important;
  border-color: rgba(255, 255, 255, 0.68) !important;
}
#hero .sc-txt {
  color: rgba(191, 219, 254, 0.7) !important;
}
#hero .sc-line {
  background: linear-gradient(to bottom, rgba(191, 219, 254, 0.95), transparent) !important;
}

body,
#svc-ov,
#proc,
#stats,
#why,
#samples,
#contact-main,
#faq,
#promise,
#problem,
#advantages,
#wu-stats,
#tools,
#certs,
#contact,
.pg-body {
  background-color: #0f172a !important;
}

nav {
  background: rgba(15, 23, 42, 0.96) !important;
  border-bottom-color: rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.2) !important;
}
nav.on {
  background: rgba(15, 23, 42, 0.99) !important;
}
.nav-logo,
.ft-logo,
.hero-h1,
.sec-h2,
.why-h2,
.sl-h2,
.ct-h2,
.pg-body h1,
.pg-body h2,
.pg-body h3,
.pg-body h4,
.cf-title,
.tool-name,
.cert-full,
.sv-name,
.sc-trade,
.step h3,
.stat-l,
.adv h4,
.ec-row .v,
.faq-q,
.toc-title {
  color: #e2e8f0 !important;
}
.nav-logo span,
.ft-logo span,
.hero-chip,
.pg-eye,
.sec-eye,
.sl-phase,
.ec-eye,
.sc-type,
.stat-n,
.adv-num,
.sv-num,
.prom-n,
.st-n,
.st-u,
.tool-role,
.cert-name,
.ct-h2 em,
.gc {
  color: #60a5fa !important;
}
.nav-links a,
.hero-sub,
.pg-body p,
.pg-body li,
.pg-sub,
.ct-sub,
.why-p,
.sv-desc,
.sl-tag,
.sl-feats li,
.adv p,
.step p,
.stat p,
.est-card p,
.sc p,
.ft-desc,
.ft-tag,
.ft-copy,
.form-note,
.ci-ch-note,
.cert-desc,
.toc li a {
  color: #94a3b8 !important;
}
.nav-links a:hover,
.ft-links a:hover,
.ft-legal a:hover,
.toc li a:hover {
  color: #60a5fa !important;
}

.sv,
.step,
.stat,
.adv,
.est-card,
.sc,
.slide,
.ci-promise,
.ci-channel,
.contact-form-wrap,
.faq-item,
.prom,
.prob-stat-card,
.adv-card,
.tool,
.cert-card,
.toc,
.highlight-box {
  background: #1e293b !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.25) !important;
}
.sv:hover,
.sc:hover,
.faq-item:hover,
.tool:hover,
.cert-card:hover {
  border-color: rgba(96, 165, 250, 0.35) !important;
  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.35) !important;
}
.adv-card:hover,
.tool:hover {
  background: rgba(30, 41, 59, 0.98) !important;
}
.adv-card::after {
  background: linear-gradient(to right, rgba(96, 165, 250, 0.35), transparent) !important;
}
.psc-num {
  color: #e2e8f0 !important;
}
.adv-grid {
  gap: 20px !important;
}
.promise-inner {
  gap: 16px !important;
}
.st:hover {
  border-color: rgba(96, 165, 250, 0.25) !important;
}
.sec h2 {
  border-bottom-color: rgba(255, 255, 255, 0.1) !important;
}
.toc {
  border-left-color: var(--blueprint-blue) !important;
}
#theme-toggle {
  border-color: rgba(96, 165, 250, 0.22) !important;
  background: transparent !important;
}
#theme-toggle:hover {
  border-color: rgba(96, 165, 250, 0.4) !important;
  background: rgba(96, 165, 250, 0.06) !important;
}
#theme-toggle svg {
  stroke: #e2e8f0 !important;
}

.pg-header,
#wu-cta {
  background: #050d1b !important;
}
.pg-header::before,
#wu-cta::before {
  background: radial-gradient(ellipse at 50% 0, rgba(191, 219, 254, 0.16), transparent 60%) !important;
}
.pg-header .pg-h1,
#wu-cta h2,
#wu-cta .cta-title {
  color: #ffffff !important;
}
.pg-header .pg-sub,
#wu-cta .cta-sub {
  color: rgba(255, 255, 255, 0.78) !important;
}
.pg-header .pg-eye {
  color: #bfdbfe !important;
}

a.btn-g,
a.ft-cta,
a.ft-cta-f,
button.form-submit,
.cf.sub button,
form button[type='submit'] {
  background: #2563eb !important;
  color: #ffffff !important;
  box-shadow: 0 12px 28px rgba(37, 99, 235, 0.3) !important;
}
a.btn-g:hover,
a.ft-cta:hover,
a.ft-cta-f:hover,
button.form-submit:hover,
.cf.sub button:hover,
form button[type='submit']:hover {
  background: #1d4ed8 !important;
}
nav a.nav-cta {
  background: #2563eb !important;
}

.ld-fill,
#gf,
.mq,
.bwt-progf,
.connf,
.hc-line,
.pg-eye::before,
.sec-eye::before,
.sl-dash,
.psc-divider,
.st-bar,
.stat-r,
.ec-row .vg,
.sl-feats li::before,
.prob-list li::before,
.pdot.on {
  background: #3b82f6 !important;
}
.pdot {
  background: rgba(148, 163, 184, 0.32) !important;
}
.adv-ic,
.s-ring,
.sc-type,
.sc-dl,
.ec-badge {
  background: rgba(59, 130, 246, 0.08) !important;
  border-color: rgba(59, 130, 246, 0.2) !important;
  color: #60a5fa !important;
}
.adv-ic svg,
.s-ring svg,
.sc-icon-bg svg,
.sc-dl svg {
  stroke: #60a5fa !important;
}
.step .s-n {
  color: #ffffff !important;
}
.cf input,
.cf select,
.cf textarea,
.form-input,
.form-select,
.form-textarea {
  background: #1e293b !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  color: #e2e8f0 !important;
}
.cf input:focus,
.cf select:focus,
.cf textarea:focus,
.form-input:focus,
.form-select:focus,
.form-textarea:focus {
  border-color: #3b82f6 !important;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15) !important;
}

footer {
  background: #050d1b !important;
  border-top-color: rgba(255, 255, 255, 0.08) !important;
}
footer .ft-logo,
footer .ft-col-title {
  color: #ffffff !important;
}
footer .ft-logo span {
  color: #bfdbfe !important;
}
footer .ft-desc,
footer .ft-tag,
footer .ft-copy,
footer .ft-links a,
footer .ft-legal a {
  color: rgba(255, 255, 255, 0.65) !important;
}
footer .ft-links a:hover,
footer .ft-legal a:hover {
  color: #ffffff !important;
}
footer .ft-bottom {
  border-top-color: rgba(255, 255, 255, 0.08) !important;
}

#why {
  padding: 96px 7vw !important;
}
#why .why-g {
  grid-template-columns: 1.4fr 1fr !important;
  gap: clamp(40px, 4vw, 60px) !important;
  align-items: start !important;
  margin-top: 42px !important;
}
#why .why-g > div:last-child {
  justify-self: stretch;
  width: 100%;
  max-width: 420px;
}
#why .adv {
  gap: 16px !important;
  padding: 15px 0 !important;
}
#why .adv-ic {
  background: rgba(59, 130, 246, 0.1) !important;
  border-color: rgba(59, 130, 246, 0.22) !important;
}
#why .adv-ic svg {
  stroke: var(--blueprint-blue) !important;
}
#why .est-card {
  width: 100%;
  padding: 30px 28px !important;
}

#svc-ov,
#bwt,
#bwt-pin {
  background: #111827 !important;
}
#svc-ov .sv,
#bwt .slide {
  background: #1e293b !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.25) !important;
}
#svc-ov .sec-eye,
#svc-ov .sv-num,
#bwt .sl-phase,
#bwt .sl-phase *,
#bwt .pdot.on {
  color: #60a5fa !important;
}
#svc-ov .sec-h2,
#svc-ov .sv-name,
#bwt .sl-h2 {
  color: #e2e8f0 !important;
}
#svc-ov .sv-desc,
#bwt .sl-tag,
#bwt .sl-feats li {
  color: #94a3b8 !important;
}
#bwt .sl-feats li {
  border-bottom-color: rgba(255, 255, 255, 0.08) !important;
}
#bwt .pdot {
  background: rgba(96, 165, 250, 0.3) !important;
}
#bwt .pdot.on {
  background: #60a5fa !important;
}
#why .adv-ic {
  background: rgba(59, 130, 246, 0.08) !important;
  border-color: rgba(59, 130, 246, 0.2) !important;
}
#why .adv-ic svg {
  stroke: #60a5fa !important;
}

html,
body {
  background: #0f172a !important;
}
body,
#svc-ov,
#proc,
#stats,
#why,
#samples,
#contact-main,
#faq,
#promise,
#problem,
#advantages,
#wu-stats,
#tools,
#certs,
#contact,
.pg-body {
  background: #0f172a !important;
}

.sv,
.step,
.stat,
.adv,
.est-card,
.sc,
.slide,
.ci-promise,
.ci-channel,
.contact-form-wrap,
.faq-item,
.prom,
.prob-stat-card,
.adv-card,
.tool,
.cert-card,
.toc,
.highlight-box {
  background: #1e293b !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
  box-shadow: 0 16px 42px rgba(0, 0, 0, 0.3) !important;
}

nav {
  background: rgba(15, 23, 42, 0.98) !important;
}
#hero,
.pg-header,
#wu-cta,
footer {
  background: #050d1b !important;
}
#bwt,
#bwt-pin {
  background: #0f172a !important;
}

.nav-logo,
.ft-logo,
.hero-h1,
.sec-h2,
.why-h2,
.sl-h2,
.ct-h2,
.pg-body h1,
.pg-body h2,
.pg-body h3,
.pg-body h4,
.cf-title,
.tool-name,
.cert-full,
.sv-name,
.sc-trade,
.step h3,
.stat-l,
.adv h4,
.ec-row .v,
.faq-q,
.toc-title {
  color: #e2e8f0 !important;
}

.hero-chip,
.pg-eye,
.sec-eye,
.sl-phase,
.ec-eye,
.sc-type,
.stat-n,
.adv-num,
.sv-num,
.prom-n,
.st-n,
.st-u,
.tool-role,
.cert-name,
.ct-h2 em,
.gc,
.nav-logo span {
  color: #60a5fa !important;
}

.nav-links a,
.hero-sub,
.pg-body p,
.pg-body li,
.pg-sub,
.ct-sub,
.why-p,
.sv-desc,
.sl-tag,
.sl-feats li,
.adv p,
.step p,
.stat p,
.est-card p,
.sc p,
.ft-desc,
.ft-tag,
.ft-copy,
.form-note,
.ci-ch-note,
.cert-desc,
.toc li a {
  color: #94a3b8 !important;
}

#hero .hero-h1,
#hero .hero-sub,
.pg-header .pg-h1,
#wu-cta h2,
#wu-cta .cta-title,
footer .ft-logo,
footer .ft-col-title {
  color: #ffffff !important;
}
#hero .hero-chip,
#hero .gc,
.pg-header .pg-eye,
footer .ft-logo span {
  color: #bfdbfe !important;
}

a.btn-g,
a.ft-cta,
a.ft-cta-f,
button.form-submit,
.cf.sub button,
form button[type='submit'],
.ld-fill,
#gf,
.mq,
.bwt-progf,
.connf,
.hc-line,
.pg-eye::before,
.sec-eye::before,
.sl-dash,
.psc-divider,
.st-bar,
.stat-r,
.ec-row .vg,
.sl-feats li::before,
.prob-list li::before,
.pdot.on {
  background: #2563eb !important;
}
nav a.nav-cta {
  background: #2563eb !important;
}
a.btn-g:hover,
a.ft-cta:hover,
a.ft-cta-f:hover,
button.form-submit:hover,
.cf.sub button:hover,
form button[type='submit']:hover {
  background: #1d4ed8 !important;
}

#why .adv {
  transform: translateX(0) !important;
  padding: 18px clamp(18px, 2vw, 28px) !important;
  border-bottom-color: rgba(255, 255, 255, 0.1) !important;
}
#why .adv-ic {
  margin-left: 0 !important;
}

#svc-ov {
  padding: 62px 7vw 70px !important;
}
#svc-ov .sec-h2 {
  margin-bottom: 28px !important;
}
#svc-ov .svc-grid {
  margin-top: 0 !important;
}
#svc-ov .sv {
  padding-top: 26px !important;
  padding-bottom: 26px !important;
}

#bwt-pin {
  height: clamp(470px, 48vh, 490px) !important;
  min-height: 470px;
  max-height: 490px;
}
#bwt .bwt-left {
  justify-content: flex-start !important;
  padding: clamp(22px, 2.5vh, 30px) 5vw 32px 7vw !important;
}
#bwt .bwt-right {
  align-items: flex-start !important;
  padding-top: clamp(26px, 3vh, 34px) !important;
}
#bwt .slides-wrap {
  min-height: 270px !important;
}
#bwt #bsvg {
  max-height: 380px;
}
#proc {
  padding: 36px 7vw 76px !important;
}
#proc .sec-h2 {
  margin-bottom: 44px !important;
}
#stats {
  padding: 76px 7vw !important;
}

#svc-ov {
  padding: 84px 7vw 42px !important;
}
#svc-ov .sec-h2 {
  margin-bottom: 44px !important;
}
#svc-ov .svc-grid {
  margin-top: 0 !important;
}
#bwt {
  padding: 24px 0 72px !important;
}
#bwt-pin {
  height: clamp(500px, 50vh, 540px) !important;
  min-height: 500px;
  max-height: 540px;
}
#proc {
  padding: 78px 7vw 86px !important;
}
#proc .sec-h2 {
  margin-bottom: 52px !important;
}
#stats {
  padding: 84px 7vw !important;
}
#why {
  padding: 88px 7vw 92px !important;
}
#why .why-g {
  margin-top: 44px !important;
}
#samples {
  padding: 92px 7vw !important;
}
#samples .sec-h2 {
  margin-bottom: 44px !important;
}
#samples .samples-g {
  margin-top: 0 !important;
}
#contact {
  padding: 96px 7vw 104px !important;
}
#contact .ct-sub {
  margin-bottom: 38px !important;
}

#proc .steps,
#stats .stats-g {
  gap: 18px !important;
}
#proc .step,
#stats .stat {
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.25) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
}
#proc .step {
  background: #1e293b !important;
  padding: 36px 28px 30px !important;
}
#stats .stat {
  background: #1e293b !important;
}

#samples .sc {
  isolation: isolate;
}
#samples .sc-icon-bg {
  bottom: auto !important;
  right: 18px !important;
  top: 50% !important;
  width: 74px !important;
  height: 74px !important;
  opacity: 0.08 !important;
  transform: translateY(-50%) !important;
  z-index: 0;
}
#samples .sc:hover .sc-icon-bg {
  opacity: 0.14 !important;
  transform: translateY(-50%) scale(1.03) !important;
}
#samples .sc-type,
#samples .sc-trade,
#samples .sc-dl {
  position: relative;
  z-index: 1;
}

#why .why-g {
  grid-template-columns: 1.4fr 1fr !important;
  gap: clamp(40px, 4vw, 60px) !important;
  align-items: start !important;
}
#why .why-g > div:last-child {
  justify-self: stretch !important;
  width: 100% !important;
  max-width: none !important;
  align-self: end !important;
}
#why .est-card {
  width: 100% !important;
  padding: 34px 34px !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.25) !important;
}
#why .ec-row {
  align-items: center;
  gap: 18px;
  border-bottom-color: rgba(255, 255, 255, 0.1) !important;
}
#why .ec-row .v,
#why .ec-row .vg {
  background: transparent !important;
  color: #e2e8f0 !important;
  font-weight: 700 !important;
  text-align: right;
  line-height: 1.45;
}
#why .ec-row .vg {
  color: #60a5fa !important;
}
#why .ec-row .l {
  color: #94a3b8 !important;
  flex-shrink: 0;
}
#why .ec-badge {
  margin-top: 20px !important;
  padding: 13px 16px !important;
  background: rgba(59, 130, 246, 0.08) !important;
  border-color: rgba(59, 130, 246, 0.2) !important;
}

#why .adv {
  padding: 20px 22px !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-left: 3px solid rgba(96, 165, 250, 0.4) !important;
  border-radius: 10px !important;
  margin-bottom: 10px !important;
  gap: 18px !important;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.2) !important;
}
#why .adv:last-child {
  margin-bottom: 0 !important;
}
#why .adv-ic {
  width: 52px !important;
  height: 52px !important;
  border-radius: 10px !important;
  flex-shrink: 0 !important;
}
#why .adv-ic svg {
  width: 22px !important;
  height: 22px !important;
}
#why .adv h4 {
  font-size: 15px !important;
  margin-bottom: 5px !important;
}
#why .adv p {
  font-size: 13.5px !important;
  line-height: 1.65 !important;
}
#why .why-p {
  margin-bottom: 28px !important;
}
#why .ec-eye {
  margin-bottom: 24px !important;
}
#why .ec-row {
  padding: 15px 0 !important;
  gap: 20px !important;
}
#why .ec-badge {
  margin-top: 24px !important;
  padding: 14px 18px !important;
  border-radius: 8px !important;
  font-size: 13px !important;
  background: rgba(59, 130, 246, 0.08) !important;
  border-color: rgba(59, 130, 246, 0.2) !important;
}

@media (max-width: 900px) {
  #why {
    padding: 82px 7vw !important;
  }
  #why .why-g {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }
  #why .why-g > div:last-child {
    max-width: none;
  }
}

@media (max-width: 1199.98px) {
  .hero-inner {
    padding: 0 5vw !important;
    gap: 3vw !important;
  }
  .hero-left {
    max-width: 52% !important;
  }
  .bp-wrap {
    max-width: 420px !important;
  }
  #svc-ov,
  #proc,
  #samples,
  #contact {
    padding-left: 5vw !important;
    padding-right: 5vw !important;
  }
  .svc-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
  .samples-g {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .stats-g,
  .stats-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .tools-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 991.98px) {
  nav {
    padding: 16px 5vw !important;
    gap: 18px !important;
  }
  .nav-links {
    gap: 12px 18px !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
  }
  .hero-inner {
    position: relative !important;
    min-height: 760px !important;
    padding: 130px 6vw 80px !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
  }
  .hero-left {
    max-width: 720px !important;
  }
  .hero-right {
    display: none !important;
  }
  .hero-h1,
  .pg-h1 {
    letter-spacing: -2px !important;
  }
  #hero {
    height: auto !important;
    min-height: 760px !important;
  }
  #svc-ov,
  #proc,
  #why,
  #samples,
  #contact,
  #problem,
  #advantages,
  #wu-stats,
  #tools,
  #certs,
  #contact-main,
  #faq,
  #promise {
    padding-top: 72px !important;
    padding-bottom: 76px !important;
  }
  .svc-grid,
  .steps,
  .stats-g,
  .samples-g,
  .prob-grid,
  .adv-grid,
  .tools-grid,
  .certs-grid,
  .contact-grid,
  .faq-grid,
  .promise-inner {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  #bwt {
    padding: 46px 0 68px !important;
  }
  #bwt-pin {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    overflow: visible !important;
  }
  #bwt .bwt-left,
  #bwt .bwt-right {
    width: 100% !important;
    padding: 0 6vw !important;
  }
  #bwt .slides-wrap {
    min-height: 330px !important;
  }
  #bwt #bsvg {
    width: min(520px, 92vw) !important;
    height: auto !important;
    max-height: 360px !important;
    margin: 0 auto !important;
    display: block !important;
  }
  .conn {
    display: none !important;
  }
  .step {
    padding: 0 18px !important;
  }
  .why-g {
    grid-template-columns: 1fr !important;
  }
  .ct-form,
  .form-row {
    grid-template-columns: 1fr !important;
  }
  .ft-top {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 34px !important;
  }
}

@media (max-width: 767.98px) {
  body {
    cursor: auto !important;
  }
  #cd,
  #cr {
    display: none !important;
  }
  nav {
    position: sticky !important;
    top: 0 !important;
    align-items: flex-start !important;
    flex-direction: column !important;
    padding: 14px 5vw !important;
  }
  .nav-logo {
    font-size: 16px !important;
  }
  .nav-links {
    width: 100% !important;
    justify-content: flex-start !important;
    gap: 10px 14px !important;
  }
  .nav-links a {
    font-size: 11px !important;
  }
  .nav-links .nav-cta-li {
    width: 100% !important;
  }
  .nav-cta {
    display: inline-flex !important;
    justify-content: center !important;
    width: 100% !important;
    padding: 11px 16px !important;
  }
  #hero {
    min-height: 680px !important;
  }
  .hero-inner {
    min-height: 680px !important;
    padding: 78px 6vw 64px !important;
  }
  .hero-chip,
  .pg-eye,
  .sec-eye,
  .sl-phase {
    letter-spacing: 2.5px !important;
  }
  .hero-h1 {
    font-size: clamp(44px, 14vw, 72px) !important;
    letter-spacing: -1.5px !important;
  }
  .hero-sub {
    max-width: none !important;
    margin-bottom: 30px !important;
  }
  .hero-btns,
  .cta-btns {
    width: 100% !important;
    flex-direction: column !important;
  }
  .btn-g,
  .btn-o,
  .ft-cta,
  .ft-cta-f {
    width: 100% !important;
    text-align: center !important;
  }
  .mq-i {
    padding: 0 14px !important;
  }
  #svc-ov,
  #proc,
  #why,
  #samples,
  #contact,
  #problem,
  #advantages,
  #wu-stats,
  #tools,
  #certs,
  #contact-main,
  #faq,
  #promise {
    padding: 58px 6vw !important;
  }
  .svc-grid,
  .steps,
  .stats-g,
  .samples-g,
  .prob-grid,
  .adv-grid,
  .stats-row,
  .tools-grid,
  .certs-grid,
  .contact-grid,
  .faq-grid,
  .promise-inner {
    grid-template-columns: 1fr !important;
  }
  .sv,
  .slide,
  .step,
  .stat,
  .sc,
  .adv-card,
  .tool,
  .cert-card,
  .contact-form-wrap,
  .ci-promise,
  .ci-channel,
  .faq-item,
  .prom {
    padding: 24px 20px !important;
  }
  #bwt {
    padding: 38px 0 58px !important;
  }
  #bwt .slides-wrap {
    min-height: 350px !important;
  }
  #bwt .sl-h2 {
    font-size: clamp(34px, 11vw, 52px) !important;
  }
  #bwt .bwt-right {
    display: none !important;
  }
  .phase-dots {
    margin-top: 22px !important;
  }
  .s-ring {
    width: 78px !important;
    height: 78px !important;
  }
  .why-h2,
  .sec-h2,
  .ct-h2 {
    font-size: clamp(34px, 11vw, 56px) !important;
    letter-spacing: -1.5px !important;
  }
  #why .adv {
    padding: 16px 0 !important;
  }
  .ec-row {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 4px !important;
  }
  .ft-top,
  .ft-bottom {
    grid-template-columns: 1fr !important;
  }
  .ft-bottom {
    align-items: flex-start !important;
    flex-direction: column !important;
  }
}

@media (max-width: 640px) {
  nav {
    background: rgba(15, 23, 42, 0.98) !important;
  }
}

@media (max-width: 575.98px) {
  .hero-inner {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  #svc-ov,
  #proc,
  #why,
  #samples,
  #contact,
  #problem,
  #advantages,
  #wu-stats,
  #tools,
  #certs,
  #contact-main,
  #faq,
  #promise {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  #bwt .bwt-left,
  #bwt .bwt-right {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .hero-chip {
    align-items: flex-start !important;
    line-height: 1.5 !important;
  }
  .nav-links {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .nav-links .nav-cta-li {
    grid-column: 1 / -1 !important;
  }
  .svc-grid,
  .samples-g {
    gap: 12px !important;
  }
}

/* ── Vuexy/Bootstrap integration overrides ───────────────────────── */
body { padding-top: 0 !important; }
body, html { font-family: 'Inter', sans-serif !important; }
h1, h2, h3, h4, h5, h6, p { margin: 0 !important; }
ul, ol { margin: 0 !important; padding: 0 !important; list-style: none !important; }

/* ── Hamburger nav toggle (dark theme) ───────────────────────────── */
.nav-toggler {
  border-color: rgba(96, 165, 250, 0.22) !important;
  background: transparent !important;
  color: #e2e8f0 !important;
}
.nav-toggler:hover {
  border-color: rgba(96, 165, 250, 0.4) !important;
  background: rgba(96, 165, 250, 0.06) !important;
}
.nav-toggler svg { stroke: #e2e8f0 !important; }

@media (min-width: 992px) {
  .nav-menu { display: flex !important; }
}

@media (max-width: 991.98px) {
  nav {
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 0 !important;
  }
  .nav-menu { width: 100% !important; }
  .nav-menu.show .nav-links {
    flex-direction: column !important;
    width: 100% !important;
    gap: 2px !important;
    padding: 10px 0 14px !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
  }
  .nav-menu.show .nav-links a { color: rgba(203, 213, 225, 0.85) !important; }
  .nav-menu.show .nav-cta {
    display: inline-flex !important;
    width: 100% !important;
    justify-content: center !important;
    margin-top: 6px !important;
  }
}

@media (max-width: 767.98px) {
  nav {
    flex-direction: row !important;
    align-items: center !important;
  }
}

@media (max-width: 640px) {
  nav { background: rgba(15, 23, 42, 0.98) !important; }
}
