/* Deploid: explain the work. Motion belongs to a choice or an action. */
:root{--ink:#142230;--muted:#526172;--ground:#f2f5f8;--accent:#2455ef;--line:#d8e1e9;--blue-soft:#eaf0ff}
::selection{background:#dce5ff;color:var(--ink)}
.masthead{height:100px;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:11px;letter-spacing:-1.4px;font-weight:650}.brand img{display:block}
nav a{padding-block:12px}.masthead nav a:hover,.masthead nav a[aria-current]{text-decoration:underline;text-underline-offset:7px}
.introduction{padding-top:52px;gap:65px;grid-template-columns:1.3fr .85fr;align-items:center}
.intro-copy{padding:0}.hero-service{font-size:15px;font-weight:500;color:var(--muted);margin-bottom:22px}
.introduction h1{font-size:clamp(47px,5.1vw,73px);font-weight:550;letter-spacing:-.055em;line-height:1.06}
.lead{font-size:17px;line-height:1.7;max-width:550px;margin-top:27px}.personal{font-size:12px;max-width:420px}
.author{position:static;padding:0;transform:none}.author img{border-radius:6px;aspect-ratio:1/1.12;object-position:center 40%;box-shadow:none}.author figcaption{padding-top:19px;gap:12px}.author strong{font-size:17px}.author figcaption span{font-size:11px}
.primary{border-radius:5px;box-shadow:none;transition:background .18s,transform .18s;min-height:52px;font-size:14px}.primary:hover{background:#173fba}.primary:active{transform:translateY(2px)}
.secondary{font-size:14px;transition:color .18s,text-decoration-color .18s}.secondary:hover{text-decoration-thickness:2px}
.section-heading,.scope-layout{gap:65px}.section-heading h2,.approach h2,.experience h2{font-weight:500;letter-spacing:-.045em}
.scope-options button{padding:20px 16px;font-size:17px;border-radius:0;transition:background .18s,color .18s;border-bottom:1px solid var(--line);min-height:62px}
.scope-options button[aria-pressed=true]{background:var(--blue-soft);border-radius:5px;color:#173fba;border-bottom-color:transparent;box-shadow:inset 3px 0 var(--accent)}
.scope-options button:hover{background:#f2f5fc}.scope-description{padding:0;background:transparent;min-width:0;min-height:0}.scope-description h3{font-size:27px;line-height:1.2;margin:0 0 17px;max-width:520px}.scope-description p{font-size:14px;line-height:1.65}.topic-copy{min-height:148px}.topic-case{margin-top:12px;color:var(--accent)}
.scenario{margin-top:25px;border:1px solid var(--line);border-radius:7px;overflow:hidden;background:white}
.scenario-comparison{display:grid;grid-template-columns:1fr 1fr;background:var(--ground)}.scenario-comparison>div{padding:19px 20px}.scenario-comparison>div+div{background:var(--blue-soft);border-left:1px solid #d4dff4}.scenario-comparison span{font-size:11px;color:var(--muted)}.scenario-comparison p{font-size:14px;color:var(--ink);margin-top:7px;line-height:1.5}
.scenario-route{list-style:none;margin:0;padding:24px;display:flex;flex-direction:column;gap:0}.scenario-route li{display:grid;grid-template-columns:100px 1fr;gap:15px;padding:14px 0;border-bottom:1px solid var(--line);font-size:12px;line-height:1.55}.scenario-route li:last-child{border:0}.scenario-route strong{font-weight:500;color:var(--accent)}.scenario-route span{color:var(--muted)}.scope-description .scenario-note{font-size:10px;padding:0 24px 19px;color:var(--muted)}
.approach{background:var(--ink);color:white}.approach-heading>p,.steps p{color:#c2cfda}.steps li{border-color:#53677c}.steps li:before{background:var(--ink);border-color:#53677c;color:white}.steps li:last-child{border-color:transparent}
.questions{gap:65px}.questions h2{line-height:1.15}.question-intro{margin-top:22px;font-size:14px;color:var(--muted);max-width:320px}.questions summary{font-size:17px;padding-block:22px;transition:color .18s}.questions summary:hover,.case-technical summary:hover{color:var(--accent)}.questions summary span,.case-technical summary span{color:var(--accent);transition:transform .2s}.questions details[open] p{animation:answer-in .2s ease-out}.questions details p{font-size:14px;line-height:1.75}
.contact{background:var(--blue-soft);color:var(--ink);border-top:1px solid #d9e3f8}.contact p{color:var(--muted)}.contact h2{font-size:42px;line-height:1.12}.contact-inner{gap:65px}.contact-cta{margin-bottom:24px}.contact .email{display:block;color:var(--accent);font-size:27px;white-space:normal;overflow-wrap:anywhere}.contact .email:hover{color:var(--ink)}
.catalog-heading{padding-bottom:35px}.catalog-heading h1{font-size:clamp(45px,5.6vw,76px);font-weight:550;letter-spacing:-.05em}.catalog-heading>p{font-size:17px;max-width:680px}.case-filters{display:flex;gap:10px;flex-wrap:wrap;padding-bottom:10px}.case-filters button{min-height:44px;border:1px solid var(--line);background:white;color:var(--muted);padding:10px 17px;border-radius:5px;cursor:pointer;font-size:13px;transition:background .18s,color .18s,border-color .18s}.case-filters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white}.case-filters button:hover{border-color:var(--ink)}.filter-status{min-height:22px;font-size:12px;color:var(--muted);margin:8px 0 16px}
.catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px;row-gap:46px}.catalog-row{display:flex;flex-direction:column;gap:24px;padding:0 0 32px;border-top:0;border-bottom:1px solid var(--line);align-items:stretch;min-width:0}.catalog-row[hidden]{display:none}.catalog-visual{padding:0;background:transparent;border-radius:7px;display:block;transition:none}.catalog-visual:hover{background:transparent}.catalog-copy h2{font-size:29px;line-height:1.15;font-weight:500}.case-kind{font-size:12px;margin-bottom:12px;color:var(--muted)}.catalog-copy>p:not(.case-kind){font-size:14px;line-height:1.65;margin-top:16px}.case-open{color:var(--accent);margin-top:14px}.catalog-end{margin-top:44px}
.system-map{background:var(--ground);border:1px solid var(--line);border-radius:7px;overflow:hidden;color:var(--ink)}
.map-head{display:flex;align-items:center;gap:11px;padding:17px 20px;border-bottom:1px solid var(--line);background:#fff}.map-head strong{font-weight:500;font-size:14px;line-height:1.4}.map-symbol{width:13px;height:13px;flex-shrink:0;border:3px solid var(--accent);border-radius:3px;position:relative}.map-type{margin-left:auto;font-size:10px;color:var(--muted);white-space:nowrap}.map-body{padding:25px;display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:center;min-height:220px}.system-route{list-style:none;margin:0;padding:0}.system-route li{position:relative;display:flex;flex-direction:column;padding:0 0 24px 23px;border-left:1px solid #aabbd1;gap:3px;min-height:62px;margin-left:5px}.system-route li:last-child{border-color:transparent;padding-bottom:0}.route-dot{position:absolute;left:-5px;top:5px;width:9px;height:9px;border:2px solid var(--accent);background:var(--ground);border-radius:50%}.system-route strong{font-size:14px;line-height:1.4;font-weight:500}.system-route li>span:last-child{font-size:11px;color:var(--muted);line-height:1.5}
.system-record{border:1px solid #ced9e6;border-radius:5px;background:#fff;box-shadow:0 6px 14px #18395908;align-self:center;overflow:hidden}.record-title{background:var(--blue-soft);padding:12px 14px;color:#20419a;font-weight:500;font-size:12px;border-bottom:1px solid #d5dff1}.system-record>div:not(.record-title){display:flex;flex-direction:column;gap:3px;margin:0 14px;padding:11px 0;border-bottom:1px solid #e6ebf2}.system-record>div:last-child{border:0}.system-record span{font-size:10px;color:var(--muted);line-height:1.5}.system-record strong{font-size:11px;font-weight:500;line-height:1.5}
.map-documents .system-record{border-radius:0;border-left:4px solid #b8c9ed}.map-planner .system-record>div:not(.record-title){border-left:3px solid #9ab0ee;padding-left:10px}.map-workspace .record-title{background:var(--ink);color:white}.map-transcription .system-record>div:last-child{background:#eef6f2;margin:0;padding:11px 14px}.map-listings .system-record strong{display:flex;align-items:center;gap:6px}.map-listings .system-record strong:before{content:'✓';color:#245846}.map-research .system-record>div:last-child strong{text-decoration:underline;text-underline-offset:3px;color:var(--accent)}
.catalog-visual .map-head{transition:background .18s}.catalog-visual:hover .map-head,.catalog-visual:focus-visible .map-head{background:var(--blue-soft)}.catalog-row:has(.catalog-visual:hover) h2{color:var(--accent)}
.case-flow{background:transparent;overflow:visible}.case-flow .map-body{grid-template-columns:1fr 1fr;padding:35px 45px;gap:60px}.case-flow .system-route strong{font-size:21px}.case-flow .system-route li>span:last-child{font-size:14px}.case-flow .system-route li{padding-bottom:32px;gap:6px}.case-flow .system-record{max-width:420px;width:100%}.case-flow .record-title{font-size:16px;padding:16px 20px}.case-flow .system-record>div:not(.record-title){padding-block:14px;margin-inline:20px}.case-flow .system-record span{font-size:12px}.case-flow .system-record strong{font-size:15px}.case-flow .map-head{padding:19px 28px}.case-flow .map-head strong{font-size:17px}.case-flow figcaption{font-size:11px;max-width:750px;margin:15px auto 0;padding:0;color:var(--muted)}
.explore-steps{display:flex;gap:10px;flex-wrap:wrap;padding:0 28px 18px}.explore-steps button{background:white;border:1px solid var(--line);border-radius:4px;min-height:44px;padding:10px 18px;color:var(--muted);cursor:pointer;font-size:13px;transition:background .18s,color .18s}.explore-steps button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:white}.explore-steps button:hover{border-color:var(--accent)}.step-explanation{padding:0 28px 25px;min-height:78px;font-size:14px;color:var(--muted);line-height:1.7}.system-route li.is-active strong{color:var(--accent)}
.case-heading h1{font-weight:550;letter-spacing:-.04em}.ownership{background:var(--ground);color:var(--muted)}.breadcrumbs{flex-wrap:wrap;line-height:1.6}.case-decisions>div{gap:36px}.case-decisions p{line-height:1.75}.case-next .actions{gap:24px}.stack li{border-radius:4px}
.case-filters,.explore-steps{display:none}.has-interactions .case-filters,.has-interactions .explore-steps{display:flex}
@keyframes answer-in{from{opacity:.3;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media(max-width:1050px){.introduction{gap:34px;grid-template-columns:1.2fr 1fr}.introduction h1{font-size:52px}.section-heading,.scope-layout,.questions,.contact-inner{gap:40px}.catalog-grid{gap:36px 26px}.catalog-copy h2{font-size:25px}.map-body{gap:15px;padding:20px 16px}.map-type{display:none}.map-head{padding:15px}.map-head strong{font-size:13px}.system-route strong{font-size:13px}.contact h2{font-size:36px}.topic-copy{min-height:165px}}
@media(max-width:680px){.shell{width:calc(100% - 40px)}.masthead{height:78px}.brand{font-size:23px;gap:7px}.brand img{width:22px;height:22px}nav{font-size:11px;gap:15px}nav a{min-height:44px;display:flex;align-items:center}.introduction{display:flex;align-items:stretch;gap:22px;padding-top:25px;padding-bottom:45px}.intro-copy{display:contents}.hero-service{order:0;font-size:13px;margin:0}.introduction h1{order:1;font-size:clamp(38px,9.8vw,57px);line-height:1.05;margin:0}.introduction .lead{order:2;margin:0;font-size:15px;line-height:1.7}.author{order:3;display:grid;grid-template-columns:115px 1fr;gap:22px}.author img{width:115px;height:125px;aspect-ratio:auto;object-position:center 40%}.author figcaption{padding:0;gap:7px}.author strong{font-size:17px}.author figcaption span{font-size:11px}.introduction .actions{order:4;margin:0;gap:19px}.introduction .personal{order:5;margin:0;font-size:11px}.primary{font-size:13px}.secondary{font-size:13px}.scope-layout{gap:26px}.scope-options button{font-size:16px;min-height:54px;padding:15px}.scope-description h3{font-size:26px}.topic-copy{min-height:0}.scope-description p{font-size:14px}.scenario{margin-top:21px}.scenario-comparison>div{padding:16px}.scenario-comparison p{font-size:13px}.scenario-route{padding:12px 19px}.scenario-route li{grid-template-columns:85px 1fr;gap:10px;font-size:12px}.scope-description .scenario-note{font-size:10px;padding:0 19px 17px}.questions{gap:20px}.questions h2{font-size:31px}.question-intro{font-size:13px;margin-top:17px}.questions summary{font-size:16px;padding-block:20px}.questions details p{font-size:14px}.contact h2{font-size:32px}.contact .email{font-size:24px}.contact-cta{margin-bottom:22px}.catalog-heading h1{font-size:44px}.catalog-heading>p{font-size:15px}.case-filters{gap:8px}.case-filters button{font-size:12px;padding:9px 12px}.catalog-grid{grid-template-columns:1fr;gap:33px}.catalog-row{gap:22px;padding-bottom:27px}.catalog-copy h2{font-size:29px}.catalog-copy>p:not(.case-kind){font-size:14px}.map-head{padding:16px}.map-head strong{font-size:14px}.map-body{padding:23px 18px;gap:16px;min-height:235px}.system-route strong{font-size:13px}.system-route li>span:last-child{font-size:11px}.record-title{padding:12px;font-size:11px}.system-record>div:not(.record-title){margin:0 12px}.system-record span{font-size:10px}.system-record strong{font-size:11px}.case-flow .map-body{padding:25px 20px;gap:24px;grid-template-columns:1fr}.case-flow .system-route{display:grid;grid-template-columns:1fr;gap:0}.case-flow .system-route strong{font-size:18px}.case-flow .system-route li>span:last-child{font-size:13px}.case-flow .system-route li{padding-bottom:24px}.case-flow .system-route li:last-child{padding-bottom:0}.case-flow .system-record{max-width:none}.case-flow .map-head{padding:17px 20px}.case-flow .map-head strong{font-size:15px}.case-flow figcaption{font-size:10px;line-height:1.65;text-align:left}.explore-steps{padding:0 20px 16px;gap:8px}.explore-steps button{font-size:12px;padding:9px 12px}.step-explanation{padding:0 20px 23px;font-size:13px;min-height:112px}.case-next .actions{gap:18px}}
@media(max-width:360px){.shell{width:calc(100% - 32px)}nav{gap:10px;font-size:10px}.brand{font-size:21px}.brand img{width:20px;height:20px}.introduction h1{font-size:32px}.introduction .lead{font-size:14px}.primary,.secondary{font-size:12px}.map-body{gap:12px;padding-inline:14px}.map-head strong{font-size:13px}.system-route li{padding-left:16px}.system-route strong{font-size:12px}.system-route li>span:last-child{font-size:10px}.system-record strong{font-size:10px}.record-title{font-size:10px;padding:10px}.system-record>div:not(.record-title){margin-inline:10px}.catalog-copy h2{font-size:27px}.contact h2{font-size:30px}.contact .email{font-size:23px}.catalog-heading h1{font-size:40px}.scenario-comparison>div{padding:13px}.case-flow .system-record strong{font-size:14px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.primary:active{transform:none}}
