/* Clean palette: white + neutral gray, mint only as accent */
:root{
  --canvas:#ffffff;
  --surface:#f5f6f7;
  --surface-accent:#f4faf7;
  --stroke:#e6e8ea;
  --stroke-soft:#eef0f2;
  --text:#1b1f23;
  --text-secondary:#5c6570;
  --text-muted:#8a929b;
  --accent:#0f8a6f;
  --accent-hover:#0c735d;
  --accent-soft:#eef8f4;
  --ink:var(--text);
  --muted:var(--text-secondary);
  --green:var(--accent);
  --fog:var(--surface);
  --line:var(--stroke);
}
body{background:var(--canvas);color:var(--text)}
h1{color:#111417}
h2,h3{color:var(--text)}
p{color:var(--text-secondary)}

.nav-product,nav a{color:var(--text-secondary)}
.btn{background:#171a1d;color:#fff}
.btn:hover{background:#2c3238}
.btn:focus-visible,a:focus-visible,summary:focus-visible{outline-color:var(--accent)}

.hero-eyebrow,.hero-v2-lead,.hero-v2-actions>a{color:var(--text-secondary)}
.hero-v2 h1 span{color:var(--accent)}
.art-caption,.hero-service{color:var(--text-muted)}
.hero-service i{background:var(--stroke)}

.product-v2{background:var(--canvas);border-top:1px solid var(--stroke-soft)}
.product-v2-title .sec-label,.sec-label{color:var(--accent)}
.product-v2-title h2 span{color:var(--text-secondary)}
.product-v2-title>p:last-child,.sec-head>p:last-child{color:var(--text-secondary)}

.capability-switch{border-color:var(--stroke)}
.capability-switch button{color:var(--text-muted)}
.capability-switch button.active{color:var(--text);border-color:var(--accent)}
.explorer-number{color:var(--accent)}
.explorer-visual{
  background:var(--surface);
  border:1px solid var(--stroke);
}
.mini-label{color:var(--text-muted)}
.explorer-source,.explorer-targets>div{
  background:#fff;
  border-color:var(--stroke);
  box-shadow:0 10px 28px rgba(17,20,23,.05);
}
.explorer-source span,.explorer-source small,.explorer-targets small{color:var(--text-secondary)}
.branch-line,.branch-line:before{border-color:#c9ced3}
.explorer-targets>div span{color:var(--accent)}
.visual-bottom{border-color:var(--stroke);color:var(--text-secondary)}
.original-material{border-color:var(--stroke)}
.original-material summary{color:var(--text-secondary)}
.original-material summary>span{color:var(--text-muted)}
.explorer-linear>span,.settlement{
  border:1px solid var(--stroke);
  box-shadow:0 8px 22px rgba(17,20,23,.04);
}
.explorer-linear>b{color:var(--accent)}
.settlement p{border-color:var(--stroke-soft)}
.settlement p:last-child{color:var(--accent)}
.settlement span{color:var(--text-secondary)}

/* Icons: soft mint fill, no green-gray borders */
.scene-icon,
.scene-card:nth-child(2) .scene-icon,
.scene-card:nth-child(3) .scene-icon,
.role-icon,
.delivery-icon{
  background:var(--accent-soft);
  border-color:transparent;
  color:var(--accent);
}

#features{background:var(--surface)}
.cap-prose .cap-visual-card{border-color:var(--stroke);background:var(--canvas)}
.cap-prose .cap-visual-card>p,
.cap-prose .cap-boundary p{color:var(--text-secondary)}
.cap-diagram,
.cap-visual-card:nth-child(2) .cap-diagram,
.cap-visual-card:nth-child(3) .cap-diagram,
.cap-visual-card:nth-child(4) .cap-diagram{
  background:var(--surface);
  background-image:none;
  border:1px solid var(--stroke-soft);
}
.diagram-tile,
.diagram-branch>div,
.settle-nodes span{
  background:#fff;
  border-color:var(--stroke);
  box-shadow:none;
  color:var(--text);
}
.diagram-tile .line-icon,
.journey-dot,
.diagram-arrow,
.cap-pictogram{color:var(--accent)}
.diagram-branch .line-icon{color:var(--text-muted)}
.journey-dot{box-shadow:none;background:#fff;border:1px solid var(--stroke)}
.mini-journey:before{background:#d5d9dd}
.permission-actions span{
  color:var(--text-secondary);
  background:#fff;
  border-left-color:var(--accent);
}
.mini-journey strong{color:var(--text-secondary)}
.cap-boundary{border-color:var(--stroke-soft)}
.cap-boundary summary{color:var(--text-muted)}
.cap-boundary summary:after{color:var(--accent)}

.fit-split{background:var(--surface);border:1px solid var(--stroke-soft)}
.diff-note{color:var(--text-muted)}
.tag-row,.num,.role-sub{color:var(--accent)}
.process-step{border-color:var(--stroke)}
.role-cols article{border-color:var(--stroke)}

#delivery,#select{background:var(--canvas)}
#delivery h2,#evidence h2,#select h2,#faq h2,.cta h2{color:var(--text);font-weight:500}
#delivery h3,#select h3,.impl-item strong{font-weight:500;color:var(--text)}
.delivery-prose li,.delivery-prose>p,.pick-cols p,.impl-item p{color:var(--text-secondary)}
.delivery-prose strong{font-weight:500;color:var(--text)}
#evidence{background:var(--surface)}

.price-band{
  background:var(--surface);
  border:1px solid var(--stroke);
}
.price-line{color:var(--text);font-weight:600;font-size:44px}
.price-line small{color:var(--text-secondary)}
.price-band p{color:var(--text-secondary)}

#faq{background:var(--surface)}
.faq-item{border-color:var(--stroke)}
.faq-item summary{color:var(--text);font-weight:500}
summary:after{color:var(--text-muted)}
.related a{color:var(--text)}
.related a:after{color:var(--accent)}

.cta{
  background:var(--surface);
  border-top:1px solid var(--stroke);
}
.cta h2{font-size:34px}
.cta p{color:var(--text-secondary)}
.evidence-box .btn-primary,
.cta .btn-primary{background:var(--accent);color:#fff}
.evidence-box .btn-primary:hover,
.cta .btn-primary:hover{background:var(--accent-hover)}
.evidence-box .btn-ghost,
.btn-ghost-light{
  background:#fff;
  border:1px solid var(--stroke);
  color:var(--text);
}
.evidence-box .btn-ghost:hover,
.btn-ghost-light:hover{
  background:var(--canvas);
  color:var(--accent);
  border-color:#c9ced3;
}

.footer{color:var(--text-secondary)}
.footer p,.footer small{color:var(--text-muted)}
dialog{box-shadow:0 24px 80px rgba(17,20,23,.14)}
.close{color:var(--text-muted)}

/* Kill leftover muddy greens from refined/middle */
.explorer-visual,
.cap-diagram,
.fit-split,
.price-band,
.cta,
#evidence,
#faq,
#features{
  background-image:none !important;
}

@media(max-width:640px){
  .cta h2{font-size:27px}
  .price-line{font-size:38px}
}
