/* Servant's original near-black / bone / red palette, in a dark presentation. */
:root{color-scheme:dark;--paper:#0b0b0b;--white:#141414;--ink:#f5f1ea;--muted:#bcb6ad;--line:#373431;--surface:#1c1b1a;--brand-dark:#111;--brand-accent:#f00000}
body,main{background:#0b0b0b;color:#f5f1ea}
.header{background:rgba(11,11,11,.96);border-color:#33312e}
.concept-bar{background:#111;border-bottom:1px solid #302b28;color:#c9c4bb}
.concept-bar a{color:#f5f1ea}
.logo{color:#f5f1ea}.logo span{color:#f00000}
.header .navlinks{background:#0b0b0b}
.btn,.btn.light{background:#191817;color:#f5f1ea;border-color:#625b53}
.btn.primary,.btn.red,.navlinks .nav-cta{background:#151313;color:#f5f1ea;border-color:#f00000}
.btn.primary:hover,.btn.red:hover,.navlinks .nav-cta:hover{background:#30201e}
.btn:not(.primary):not(.red):not(.nav-cta):hover{background:#292624}
.textlink:hover{color:#fff}.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline-color:#ff6b5e}
.hero h1 em,.pagehero h1 em{color:#f5f1ea}
.hero{min-height:calc(100svh - var(--masthead-height,122px));padding:32px 0 28px;grid-template-columns:minmax(0,1.03fr) minmax(0,1fr);grid-template-rows:1fr auto;column-gap:55px;row-gap:24px;align-items:center}
.hero h1{font-size:clamp(44px,5.3vw,76px)}
.hero .eyebrow{margin-bottom:20px}.hero p.hero-purpose{margin:22px 0;font-size:15px!important}
.hero-copy>.fine{margin-bottom:0;margin-top:14px}
.hero .actions{gap:24px}.hero .actions .btn{font-size:11px;padding:13px 19px}
.path-art{background:#131211;border-color:#39332f;min-height:clamp(330px,49svh,510px);padding:24px;isolation:isolate}
.hero-track{stroke:#282522;opacity:1}
.waypoint,.waypoint.two{background:#171615;color:#f5f1ea;border:1px solid #49423c;box-shadow:0 8px 30px #0004}
.waypoint small,.waypoint.two small{color:#c9c4bb}
.hero .waypoint{width:235px;padding:15px 18px;opacity:1;transform:none}
.hero .waypoint.one{margin-top:15px}.hero .waypoint.three{margin-bottom:14px}
.hero .waypoint strong{font-size:16px}.art-header{align-items:center}.art-header,.art-footer{color:#c9c4bb}
.art-header span:last-child{font-size:8px}
.process-motion{color:#f5f1ea;background:#1c1917;border:1px solid #665d54;border-radius:30px;padding:7px 11px;font-size:10px;min-height:34px;display:inline-flex;align-items:center;gap:7px;letter-spacing:0;white-space:nowrap}
.process-motion:hover{background:#302924}.process-motion[aria-pressed=true]{border-color:#ff6b5e}.motion-preference{display:none}
.hero-routes{grid-column:1/-1;border-top:1px solid #3c3630;padding-top:18px;align-self:end}
.hero-routes-heading{display:flex;justify-content:space-between;gap:20px;font-size:11px;font-weight:600;margin-bottom:12px}
.hero-routes-heading>span{font-size:10px;font-weight:400;color:#bcb6ad}
.hero-route-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.hero-route-grid>a{display:flex;flex-direction:column;gap:8px;border:1px solid #463d35;background:#151311;border-radius:5px;padding:15px 16px;text-decoration:none;min-height:104px;transition:background-color .2s,border-color .2s}
.hero-route-grid>a:hover{background:#231b18;border-color:#f00000}
.hero-route-grid>a strong{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px;font-weight:500;line-height:1.3}
.hero-route-grid>a strong>span{color:#ff6b5e;font-size:17px}
.route-kicker{font-size:8px;letter-spacing:.1em;color:#c9c4bb}
.hero-route-grid>a small{font-size:10px;color:#bcb6ad;line-height:1.35}
.route,.route.featured{background:#141414;color:#f5f1ea;border-color:#45403b}.route.featured{border-color:#f00000}
.route p,.route.featured p{color:#bcb6ad}.route .number,.route.featured .number,.task-id,.stage-list small,.divider-strip span{color:#c9c4bb}
.section.alt,.footer{background:#141414}.service-grid,.week .output{background:#191817}
.kinvia-panel{background:#141414;border:1px solid #38312d}.kinvia-demo{background:#191614}
.mini-chat{background:#1b1917;color:#f5f1ea}.mini-chat .bubble,.mini-chat .bubble.reply{background:#27221e;color:#f5f1ea}
.online-dot{background:#f00000}.comparison article,.inline-callout{background:#191716;border-color:#46403a}
.status,.result-tag{color:#f5f1ea}.notice,.result-box{background:#1d1916;border-left-color:#f00000}
.note{background:#231a16;color:#ddd0c4}.note a{color:#fff}
.helper-fab{background:#171211;color:#f5f1ea;border-color:#f00000;box-shadow:0 8px 25px #0005}
.home-hero-visible .helper-fab{display:none}
dialog{background:#111;color:#f5f1ea;border-color:#4c423a}dialog::backdrop{background:#000c}
.radio-option{background:#1a1816;color:#f5f1ea}.radio-option:has(input:checked){background:#30231d;border-color:#ff6b5e}.radio-option input{accent-color:#f5f1ea}
.error{color:#ff9e91!important}.chatlog p,.chatlog .user{background:#24201c;color:#f5f1ea}.chatlog .user{background:#171614}
.chat-prompts button,.chat-form input{background:#1c1917;color:#f5f1ea;border-color:#5d5248}.chat-prompts button:hover{border-color:#ff6b5e}
.chat-form button{background:#231714;color:#f5f1ea}.close,.all-tasks-btn,.menu-toggle{background:#191614;color:#f5f1ea;border-color:#5d5248}
.result-box p,.notice p{color:#c9c4bb}.prose strong,.task-body strong{color:#f5f1ea}
.evidence-pair img{background:#161616;border-color:#4b423a}.risk-table th{color:#c9c4bb}
.skip{background:#f5f1ea;color:#0b0b0b}

/* One 12-second cycle: understand (0–4s), create (4–8s), enable (8–12s).
   All stage labels remain visible. The loop has a persistent pause control. */
@media(prefers-reduced-motion:no-preference){
 .hero .hero-trace{stroke-dasharray:1;animation:vision-path 12s linear infinite}
 .hero .waypoint.one{animation:vision-stage 12s linear 0s infinite}
 .hero .waypoint.two{animation:vision-stage 12s linear 4s infinite}
 .hero .waypoint.three{animation:vision-stage 12s linear 8s infinite}
 .hero .marker-one{animation:vision-marker 12s linear 0s infinite}
 .hero .marker-two{animation:vision-marker 12s linear 4s infinite}
 .hero.hero-motion-paused .path-art *,.hero.hero-motion-away .path-art *{animation-play-state:paused!important}
 .body-dialog-open .hero .path-art *{animation-play-state:paused!important}
}
@keyframes vision-path{0%{stroke-dashoffset:1;opacity:.5}5%{opacity:1}94%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:.4}}
@keyframes vision-stage{0%,31%{border-color:#f00000;background:#2b1915;box-shadow:0 0 24px #f0000015}34%,100%{border-color:#49423c;background:#171615;box-shadow:0 8px 30px #0004}}
@keyframes vision-marker{0%,28%{opacity:1;transform:scale(1.05)}34%,92%{opacity:.35;transform:scale(.65)}100%{opacity:1;transform:scale(1.05)}}
@media(min-width:1450px){.hero{padding-block:45px 32px}.hero h1{font-size:clamp(76px,5.2vw,94px)}}
@media(max-height:760px) and (min-width:701px){.hero{padding-block:18px 16px;row-gap:16px}.hero h1{font-size:clamp(40px,4.9vw,64px)}.hero .eyebrow{margin-bottom:14px}.hero p.hero-purpose{font-size:14px!important;margin:18px 0}.path-art{min-height:325px}.hero-route-grid>a{min-height:92px;padding:12px 14px;gap:6px}.hero-routes{padding-top:14px}}
@media(max-width:950px){.hero{column-gap:28px}.hero h1{font-size:clamp(40px,5.4vw,58px)}.hero .waypoint{width:205px;padding:12px 15px}.hero .waypoint strong{font-size:14px}.hero .actions{gap:16px}.hero-route-grid{gap:9px}.hero-route-grid>a{padding:12px}.hero-route-grid>a strong{font-size:12px}.hero-route-grid>a small{font-size:9px}}
@media(max-width:700px){
 .hero{grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:24px;padding:28px 0 24px;min-height:calc(100svh - var(--masthead-height,112px))}
 .hero-copy{grid-row:1}.hero h1{font-size:clamp(38px,10vw,61px)}.hero .eyebrow{font-size:8px;margin-bottom:16px}.hero p.hero-purpose{font-size:13px!important;margin:18px 0}
 .hero .actions{gap:10px}.hero .actions .btn{font-size:10px;padding:11px 14px;min-height:44px}.hero .actions .textlink{font-size:11px}.hero-copy>.fine{font-size:9px!important;margin-top:10px}
 .hero-routes{grid-row:2;padding-top:15px}.hero-routes-heading{font-size:11px}.hero-routes-heading>span{font-size:9px}
 .hero-route-grid{grid-template-columns:1fr 1fr;gap:8px}.hero-route-grid>a{min-height:96px;padding:12px;gap:7px}.hero-route-grid>a strong{font-size:12px}.hero-route-grid>a small{font-size:9px}.route-kicker{font-size:7px}
 .path-art{grid-row:3;min-height:170px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:8px;padding:16px;margin-top:0}
 .art-header,.art-footer{grid-column:1/-1}.art-header{font-size:8px}.art-footer{font-size:7px}.hero .waypoint,.hero .waypoint.one,.hero .waypoint.two,.hero .waypoint.three{width:auto;margin:0;padding:10px 9px;align-self:stretch;display:flex;flex-direction:column;justify-content:center;gap:7px}
 .hero .waypoint small{font-size:7px;letter-spacing:.06em;margin:0}.hero .waypoint strong{font-size:11px;line-height:1.4}.process-motion{font-size:9px;padding:6px 9px;min-height:30px}.path-art svg{opacity:.5}
}
@media(prefers-reduced-motion:reduce){
 .process-motion{display:none}.motion-preference{display:inline;font-size:8px;letter-spacing:0}
 .hero .path-art *{animation:none!important;transform:none}.hero .hero-trace{stroke-dasharray:none;stroke-dashoffset:0;opacity:.7}
 .hero-route-grid>a{transition:none}
}
@media print{body,main,.header,.section.alt,.footer,.hero-route-grid>a,.path-art,.waypoint{background:#fff!important;color:#000!important}.hero{min-height:auto}.process-motion{display:none}.hero .path-art *{animation:none!important}}
