/* Visual polish: neutral surfaces, single teal accent, plainer type. Loads last. */
:root{
  --ink:#0e2a30; --deep:#0b2f36; --paper:#fff; --cream:#f2f5f6; --sage:#7fd6c8;
  --coral:#4fd1bb; --line:#dde4e6; --muted:#5a6f75;
  --font:'Instrument Sans',system-ui,sans-serif; --heading:'Bricolage Grotesque','Instrument Sans',system-ui,sans-serif;
  --sc-canvas:#fff; --sc-surface:#f2f5f6; --sc-ink:#0e2a30; --sc-ink-soft:#4d6369; --sc-accent:#4fd1bb;
  --accent:#0f8f7f; --on-dark:#cfe3e4;
}
html{scrollbar-color:#8aa3a8 #eef2f3}
body{background:#fff;color:var(--ink);font-size:16px}
p{color:#4d6369}
em{font-family:var(--heading);font-style:normal}
h1,h2,h3{font-weight:600}
h2,h3{letter-spacing:-.025em}
.hero h1{letter-spacing:-.035em;line-height:1.05}
.hero h1 em,.difference h2 em,.impact h2 em{color:var(--sage)}
::selection{background:#bfeee6;color:var(--deep)}
:focus-visible{outline-color:var(--accent)}
.header :focus-visible,.hero :focus-visible,.report-story :focus-visible,.difference :focus-visible,.impact :focus-visible,footer :focus-visible,.contact :focus-visible{outline-color:#7fe0cf}

/* header + dark surfaces */
.header,.hero,.difference,.impact,footer,.report-story,.relay-stage,.relay-use{background:var(--deep)}
.header{border-bottom:1px solid #ffffff14}
nav>a{color:#c3d6d8}
.brand{font-weight:600;letter-spacing:-.02em}
.brand svg{stroke:var(--sage)}
.nav-cta{background:#fff;color:var(--deep)}
.nav-cta:hover{background:#e6f4f1}

/* buttons */
.button{border-radius:8px;font-weight:600;gap:12px;padding:14px 22px}
.button span{font-size:inherit}
.coral{background:var(--coral);color:#06262b}.coral:hover{background:#7fe0cf}
.dark{background:var(--deep);color:#fff}.dark:hover{background:#164650}
.text-link{gap:8px;font-size:14px}
.text-link::after{content:'→';transition:transform .2s}
.text-link:hover::after{transform:translateX(3px)}
.text-link span{display:none}
.relay-use .text-link{color:#8fe3d3}
.light-link{color:#fff}

/* hero */
.hero-category{font-size:15px;letter-spacing:0;color:#a9d8d0;font-weight:500}
.hero-description{color:var(--on-dark);font-size:18px;max-width:430px}
.scene-orbit{border-color:#7fd6c840}
.scene-sheet{background:#f6f9f9;border-color:#fff;border-radius:10px}
.scene-sheet>span{font-size:12px;letter-spacing:0;font-weight:600;color:var(--accent)}
.scene-sheet>p{color:var(--ink);font-size:16px}
.scene-sheet>small{font-size:12px;color:#4d6369}
.paper-line{background:#d9e3e5}
.scene-hub{background:#0b2f36;border-radius:14px;border-color:#7fd6c855}
.scene-hub span{font-size:19px;letter-spacing:-.02em}
.scene-request{background:#e5f4f1;border-radius:10px;border-color:#fff}
.scene-request p{font-size:15px;color:var(--ink)}

/* section labels: plain sentence-case text */
.mini-label,.section-kicker,.diagram-label,.plan-label,.team-grid article>span,.eyebrow,.panel-top .mini-label{
  font-size:14px;letter-spacing:0;font-weight:600;color:var(--accent);margin-bottom:14px}
.section-kicker,.plan-label{color:#8fe3d3}
.relay-input span{font-size:13px;letter-spacing:0;font-weight:600;color:var(--accent)}
.relay-input small,.system-node,.diagram-footer,.scope-note,.demo-note,.relay-disclosure,.contact-note,.footer-bottom,.footer-bottom .quiet-link{font-size:13px;letter-spacing:0}
.diagram-footer span:last-child{font-size:13px;letter-spacing:0}
.concept-badge{display:none}
.scope-note,.diagram-footer,.solution-panel .demo-note{color:#5a7076}

/* platform */
.orchestration{background:#f2f5f6;border-color:#dde4e6;border-radius:12px}
.diagram{background-image:radial-gradient(#c4d2d5 1px,transparent 1px)}
.connector-lines{stroke:#9db4b8}
.core{background:var(--deep);border:4px solid #fff;border-radius:14px;box-shadow:0 12px 30px #0b2f3622}
.system-node{background:#fff;border-color:#d5dfe1;border-radius:8px;font-size:13px;font-weight:500;color:var(--ink)}
.check-list li:before{color:var(--accent)}
.check-list{font-size:15px}
.platform-copy>p{font-size:16px}

/* relay */
.relay-input{background:#f4f8f8;border-radius:10px}
.relay-request{background:#0b2f36;border-color:#7fd6c880;border-radius:12px}
.relay-output{background:var(--coral);color:#06262b;border-radius:10px}
.relay-output p{color:#0c3b3a}
.relay-controls{border-color:#7fd6c844;border-radius:8px}
.relay-controls button[aria-pressed=true]{background:#e5f4f1;color:var(--deep)}
.relay-controls button{color:#cfe3e4}
.relay-paths{stroke:#9ed9ce}
.relay-copy>p:not(.section-kicker),.relay-use>p,.relay-copy .relay-disclosure,.relay-state{color:var(--on-dark)!important}
.relay-use{border-top-color:#ffffff1f}

/* solutions */
.solutions{background:#f2f5f6;border-color:var(--line)}
.solution-tabs button{border-bottom-color:#d5dfe1;border-radius:6px}
.solution-tabs button[aria-selected=true]{background:#e2eceb}
.solution-tabs button:hover{background:#e8f0ef}
.solution-tabs button small{color:#4f666c;font-size:14px}
.solution-tabs button b{color:var(--accent);font-weight:600}
.solution-panel{background:#fff;border-color:#d9e2e4;border-radius:12px}
.solution-panel>p{font-size:15px}
.command{background:#f2f5f6;border-color:#dde4e6;border-radius:8px;font-size:14px}
.workflow-steps{font-size:15px}
.workflow-steps li>span{border-color:#c4d3d6;font-size:12px}
.workflow-steps li.complete{color:#0b6b5f}.workflow-steps li.complete>span{background:#cdeee8;border-color:#cdeee8}
.demo-button{background:var(--deep);color:#fff;border-radius:8px;justify-content:center;font-size:14px}
.demo-result{color:#0b6b5f;font-size:14px}.demo-result:not(:empty){border-left-color:var(--accent)}

/* approach, difference, team */
.steps-grid article{border-top:2px solid var(--deep);padding-top:22px}
.steps-grid p{font-size:16px}
.difference-points p{color:#bcd3d4;font-size:15px}
.team-grid article>span{color:var(--accent)}
.team-grid p{font-size:15px}
.team-grid h3{font-size:20px}
.team-grid article{padding-block:28px}

/* impact */
.impact-plan{background:#0b2f36;border:1px solid #ffffff1c;border-radius:12px}
.impact-plan p,.impact-content>p{color:#c3d8d8;font-size:15px}

/* faq */
details p{font-size:16px}summary{font-size:17px;font-weight:500}
summary>span{color:var(--accent)}

/* contact */
.contact{background:var(--deep);color:#fff;border-top:1px solid #ffffff14}
.contact h2{color:#fff}
.contact p,.contact-note{color:var(--on-dark)}
.contact .button.dark{background:var(--coral);color:#06262b}.contact .button.dark:hover{background:#7fe0cf}
.contact .text-link{color:#fff}

/* footer + dialogs */
.footer-top>p{font-family:var(--font);font-style:normal;color:#b6cdd0;font-size:16px}
.footer-bottom{border-top-color:#ffffff1f;color:#a9c2c5}
dialog{border-radius:14px;border-color:var(--line)}
dialog>p,#enquiry-result p{font-size:15px}
input,textarea,select{background:#fff;border-color:#c4d3d6;border-radius:8px}
input:focus,textarea:focus,select:focus{border-color:var(--accent)}
#enquiry-preview{background:#f2f5f6}
.form-notice{color:#4d6369;font-size:13px}
.result-icon{background:#cdeee8}
.nojs-note{background:#e2eceb;color:var(--ink)}
@media(max-width:650px){
  .hero-category{font-size:14px}.hero-description{font-size:16px}
  .eyebrow,.mini-label,.section-kicker{font-size:13px}
}
