/* Content surfaces only. No section, background-canvas or particle overrides. */
:is(.theme-home,.theme-contact) :is(.h-svc,.c-dirs .w-svc-card,.c-prob,.h-q,.c-quote,.rw-project,.rw-network) {
  background:rgba(7,20,34,.72); border:1px solid rgba(120,170,210,.16); border-radius:20px;
  backdrop-filter:blur(12px); box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 20px 60px rgba(0,0,0,.15);
}
.rw-head { display:flex; align-items:center; justify-content:space-between; gap:16px; width:100%; padding:0 0 16px; margin:0 0 22px; border-bottom:1px solid rgba(120,170,210,.16); color:#a8c0d0; font-size:.7rem; font-weight:600; letter-spacing:.09em; }
.rw-head i { display:inline-block; width:6px; height:6px; border-radius:50%; background:#34d399; flex:none; }
.rw-head > span { border:0 !important; background:none !important; padding:0 !important; color:inherit !important; font-size:inherit !important; }
.rw-ready { display:inline-flex; align-items:center; gap:8px; }
:is(.theme-home,.theme-contact) :is(.h-svc,.c-dirs .w-svc-card) { position:relative; overflow:hidden; padding:30px; }
:is(.theme-home,.theme-contact) :is(.h-svc,.c-dirs .w-svc-card)::before { content:''; position:absolute; inset:0 0 auto; height:2px; background:linear-gradient(90deg,#10b981,#22d3ee,#3b82f6); }
:is(.theme-home,.theme-contact) :is(.h-svc,.c-dirs .w-svc-card).soc::before { background:linear-gradient(90deg,#8b5cf6,#ec4899,#fb967f); }
:is(.theme-home,.theme-contact) :is(.h-svc,.c-dirs .w-svc-card) .rw-system { list-style:none; display:grid; gap:0; margin:24px 0 30px; padding:0; max-width:none; }
:is(.theme-home,.theme-contact) .rw-system li { position:relative; margin:0; max-width:none; padding:10px 16px; background:transparent; border:0; border-radius:0; color:#dce9f1; font-size:.85rem; }
:is(.theme-home,.theme-contact) .rw-system.linear li + li { margin-left:20px; border-left:1px solid #22d3ee55; padding-left:24px; }
.rw-system.linear li + li::before { content:''; position:absolute; left:0; top:50%; width:14px; height:1px; background:#22d3ee66; }
:is(.theme-home,.theme-contact) .rw-system.branch { grid-template-columns:1fr 1fr; text-align:center; }
.rw-system.branch li:first-child,.rw-system.branch li:nth-child(2),.rw-system.branch li:last-child { grid-column:1/-1; }
.rw-system.branch li:nth-child(2)::before,.rw-system.branch li:last-child::before { content:''; position:absolute; width:1px; height:10px; background:#ec489966; top:0; left:50%; }
:is(.theme-home,.theme-contact) .rw-system.branch li:nth-child(3),:is(.theme-home,.theme-contact) .rw-system.branch li:nth-child(4) { border-top:1px solid #ec489966; border-bottom:1px solid #ec489933; }
:is(.theme-home,.theme-contact) .rw-system.branch li::after { display:none; }
:is(.theme-home,.theme-contact) .rw-system.branch li::before { margin:0; }
:is(.theme-home,.theme-contact) :is(.h-svc,.c-dirs .w-svc-card) .btn { margin-top:auto; width:100%; justify-content:space-between; }
.theme-contact .c-prob { padding:26px; gap:10px; transition:transform .2s,border-color .2s; }
.theme-contact .c-prob:hover { transform:translateY(-3px); border-color:#22d3ee66; }
.theme-contact .c-prob.soc:hover { border-color:#ec489966; }
.c-prob .rw-head { margin-bottom:6px; }
.c-prob .rw-input,.c-prob .rw-output { color:#a8c0d0; font-size:.65rem; letter-spacing:.12em; }
.c-prob q { min-height:3.8em; }
.theme-contact .c-prob > span:not(.c-res) { border-color:#22d3ee66; color:#a5e9f4; }
.theme-contact .c-prob .c-res { border-radius:4px; }
:is(.theme-home,.theme-contact) :is(.h-q,.c-quote) { position:relative; padding:28px; overflow:hidden; }
:is(.theme-home,.theme-contact) :is(.h-q,.c-quote)::before { content:''; position:absolute; inset:0 0 auto; height:2px; background:linear-gradient(90deg,#22d3ee,#10b981); }
:is(.theme-home,.theme-contact) :is(.h-q,.c-quote):nth-child(2)::before { background:linear-gradient(90deg,#22d3ee,#3b82f6); }
:is(.h-q,.c-quote) figcaption { border-top:1px solid #789ad029; padding-top:18px; margin-top:24px; }
main.theme-contact .c-clients { gap:0; border-bottom:1px solid #789ad029; }
main.theme-contact .c-clients li { border:0; border-radius:0; background:none; padding:0; }
main.theme-contact .c-clients a { display:block; padding:14px 16px; color:#a8c0d0; font-size:.8rem; border-bottom:2px solid transparent; text-decoration:none; }
main.theme-contact .c-clients a:hover,main.theme-contact .c-clients a:focus-visible { color:#fff; border-bottom-color:#34d399; }
:is(.theme-home,.theme-contact) .rw-faq { border:0; border-bottom:1px solid #789ad02e; border-radius:0; padding:0; }
:is(.theme-home,.theme-contact) .rw-faq summary { display:flex; align-items:baseline; gap:20px; padding:22px 42px 22px 0; }
.rw-faq-num { flex:none; color:#7ca6b8; font-size:.75rem; font-variant-numeric:tabular-nums; }
:is(.theme-home,.theme-contact) .rw-faq summary::after { content:'+'; border:0; width:20px; height:24px; font-size:24px; font-weight:400; color:#a8c0d0; top:20px; transform:none; }
:is(.theme-home,.theme-contact) .rw-faq[open] summary::after { transform:rotate(45deg); }
:is(.theme-home,.theme-contact) .rw-faq[open] { background:rgba(0,220,180,.03); }
:is(.theme-home,.theme-contact) .rw-faq summary:hover { color:#fff; }
.rw-faq summary:hover .rw-faq-num { color:#5eead4; }
:is(.theme-home,.theme-contact) .rw-faq > p { padding:0 32px 0 38px; }
.rw-faq-link { display:inline-block; margin:0 32px 22px 38px; font-size:.82rem; text-underline-offset:5px; }
.rw-network { padding:22px 26px; min-width:260px; }
.theme-contact .rw-network ol { display:block; }
.theme-contact .rw-network ol li { display:block; padding:12px 0 12px 22px; font-size:.8rem; position:relative; }
.theme-contact .rw-network ol li + li { margin-left:4px; border-left:1px solid #22d3ee55; }
.theme-contact .rw-network ol li + li::before { position:absolute; left:0; top:22px; width:12px; height:1px; }
.rw-network small { display:block; margin-top:5px; font-size:.65rem; color:#a8c0d0; }
:is(.theme-home,.theme-contact) .rw-project { padding:clamp(24px,4vw,48px); }
.rw-project-head { grid-column:1/-1; margin:0; }
.theme-home .rw-project .h-nik { background:none; box-shadow:none; border:0; border-left:1px solid #789ad029; border-radius:0; }
.rw-project h2 { max-width:22ch; }
.rw-project .c-final-meta { border-top:1px solid #789ad029; padding-top:20px; }
@supports not (backdrop-filter:blur(1px)) { :is(.theme-home,.theme-contact) :is(.h-svc,.c-dirs .w-svc-card,.c-prob,.h-q,.c-quote,.rw-project,.rw-network) { background:rgba(7,20,34,.95); } }
@media(max-width:640px) { :is(.theme-home,.theme-contact) :is(.h-svc,.c-dirs .w-svc-card,.h-q,.c-quote) { padding:24px 20px; } .theme-home .rw-project .h-nik { border-left:0; border-top:1px solid #789ad029; padding-top:24px; } .rw-head { font-size:.65rem; } .c-prob q { min-height:0; } }
@media(prefers-reduced-motion:reduce) { .theme-contact .c-prob { transition:none; } .theme-contact .c-prob:hover { transform:none; } }
/* Override the contact page's deliberately specific generic list reset. */
main.wrap.theme-contact > section > ul.c-clients { gap:0; }
main.wrap.theme-contact > section > ul.c-clients > li { padding:0; border:0; background:none; box-shadow:none; }
/* Capability separators belong to the old pills, not to branching diagrams. */
:is(.theme-home,.theme-contact) .rw-system.branch li:nth-child(3)::before,
:is(.theme-home,.theme-contact) .rw-system.branch li:nth-child(4)::before { content:none; }
