@charset "UTF-8";
:root{--paper:#ffffff;--ink:#202747;--muted:#565d75;--primary:#3545c5;--accent:#ffcc9a;--line:#dedde8;--white:#fff;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-underline-offset:5px}a:hover{color:#2837a1}a:focus-visible,pre:focus-visible,.table-wrap:focus-visible{outline:3px solid #3545c5;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;letter-spacing:-.045em}h1{font-size:clamp(40px,4.65vw,68px);font-weight:600}h2{font-size:clamp(31px,3.4vw,46px);font-weight:550;margin-bottom:25px}h3{font-size:23px;font-weight:600;letter-spacing:-.025em}p{margin-bottom:22px}strong{font-weight:650}.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.header{position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line);background:#ffffff}.nav{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-size:29px;font-weight:700;letter-spacing:-1.3px}.brand-dot{color:#e87641;margin-left:-10px}.brand-mark{display:grid;place-items:center;width:33px;height:37px;border-radius:9px;background:transparent;color:var(--accent);font-size:25px;font-weight:800;line-height:1;transform:skewY(-5deg);object-fit:fill}nav{display:flex;align-items:center;gap:32px}nav a{font-size:14px;text-decoration:none;font-weight:550}nav a[aria-current]{color:var(--primary);text-decoration:underline}.button{display:inline-flex;justify-content:center;align-items:center;gap:32px;padding:15px 23px;background:var(--primary);color:#fff;border:1px solid var(--primary);border-radius:7px;font-weight:550;text-decoration:none;font-size:14px;line-height:1.4}.button:hover{background:#2837a1;color:white}.button.small{padding:11px 19px;gap:24px}.button.light{background:var(--accent);color:var(--ink);border:0}.button.light:hover{background:#ffdfbd}.skip{position:fixed;top:-100px;left:20px;z-index:20;background:white;padding:12px}.skip:focus{top:12px}.eyebrow{font-size:20px;letter-spacing:1.7px;font-weight:700;line-height:1.5;margin-bottom:27px;display:flex;align-items:center;gap:9px}.status-dot{width:6px;height:6px;background:#e87641;border-radius:50%;display:inline-block}.hero{padding-block:84px 78px;display:grid;grid-template-columns:1.2fr 1fr;gap:65px;align-items:center}.hero h1{margin-bottom:27px}.hero h1 span{color:#3545c5}.lead{font-size:18px;line-height:1.75;color:var(--muted);max-width:590px}.actions{display:flex;gap:27px;align-items:center;margin-top:30px;flex-wrap:wrap}.text-link{font-size:14px;font-weight:650;text-decoration:none;border-bottom:1px solid #939ce0;padding-bottom:4px;display:inline-block}.concept{font-size:12px;color:var(--muted);margin:26px 0 0}.process-visual{background:#edf0ff;border:1px solid #d7dcfa;border-radius:24px;padding:27px 30px 20px;box-shadow:0 18px 40px -32px #3545c5;position:relative}.visual-top{display:flex;justify-content:space-between;gap:12px;font-size:14px;font-weight:650;letter-spacing:1px;align-items:center;margin-bottom:23px}.visual-tag{font-size:9px;background:#dce1ff;padding:4px 7px;border-radius:4px}.process-node{display:flex;gap:14px;align-items:center;background:#fff;border:1px solid #dce0f4;border-radius:9px;padding:16px 18px;box-shadow:0 4px 6px -6px #8a93bc}.process-node strong{font-size:15px;display:block}.process-node small{font-size:12px;color:var(--muted);display:block}.node-icon{font:12px/1.5 ui-monospace,monospace;color:#3545c5;background:#edf0ff;padding:8px;border-radius:7px}.check,.error-indicator{margin-left:auto;border-radius:50%;width:23px;height:23px;display:grid;place-items:center;font-size:13px;font-weight:700}.check{color:#256346;background:#e2f1d6}.error-indicator{color:#ffffff;background:#c62828}.process-node.error{border-color:#d34444;background:#fff5f5}.connector{height:45px;margin-left:36px;border-left:1px dashed #a6addc;display:flex;align-items:center;padding-left:23px;color:#565d75;font-size:10px}.visual-note{display:flex;align-items:center;gap:14px;margin-top:22px}.visual-note .brand-mark{width:28px;height:30px;font-size:20px}.visual-note p{font-size:11px;line-height:1.7;margin:0;color:#444d77}.visual-note strong{font-size:12px}.section{padding-block:90px}.split-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:95px;align-items:start}.split-heading>p{color:var(--muted);padding-top:5px}.three-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin:33px 0}.three-columns article{border-top:1px solid var(--line);padding-top:25px}.index{font:11px/1.5 ui-monospace,monospace;letter-spacing:1px;color:#5d6384;display:block;margin-bottom:24px}.three-columns p,.use-cases p{font-size:18px;color:var(--muted);margin-bottom:12px}.three-columns h3{line-height:1.25}.cloud-section{background:#edf0ff;border-block:1px solid #dce0f5}.cloud-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.roles article{padding:0 0 21px;margin-bottom:24px;border-bottom:1px solid #cdd3ef}.roles article:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.roles span{font-size:10px;letter-spacing:1.3px;font-weight:700;color:#3545c5}.roles h3{margin:11px 0;font-size:21px}.roles p{font-size:14px;color:var(--muted);margin:0}.use-cases{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;margin-top:42px}.use-cases article{border-top:1px solid var(--line);padding-top:23px}.use-cases h3{font-size:20px;line-height:1.25;min-height:50px}.architecture{padding:55px;background:#2935a3;border-radius:18px;color:#fffaf3;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.architecture .eyebrow{color:#ffcc9a}.architecture h2{font-size:38px}.architecture p{font-size:14px;color:#e1e5ff}.architecture .button{margin-top:9px}.arch-diagram>div{padding:24px;border:1px solid #818ce1;border-radius:9px;background:#3a47b3}.arch-diagram small{display:block;font-size:9px;letter-spacing:1.7px;color:#ffcc9a}.arch-diagram strong{font-size:26px;display:block;margin:5px 0}.arch-diagram span{font-size:12px;color:#e1e5ff}.arch-diagram>p{text-align:center;margin:14px 0;font-family:ui-monospace,monospace;font-size:11px}.arch-diagram .arch-caption{font:10px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;margin-bottom:0}.steps{list-style:none;counter-reset:step;display:grid;grid-template-columns:repeat(5,1fr);gap:23px;padding:0;margin:35px 0 0}.steps li{counter-increment:step;border-top:1px solid #d2d7f3;padding-top:20px}.steps li:before{content:'0' counter(step);font:12px/1.5 ui-monospace,monospace;display:block;color:#3545c5;margin-bottom:24px}.steps h3{font-size:17px;line-height:1.3}.steps p{font-size:13px;color:var(--muted);margin:0}.security{border-top:1px solid var(--line);padding-top:55px;padding-bottom:60px}.security p:not(.eyebrow){max-width:750px;color:var(--muted)}.contact{text-align:center;border-top:1px solid var(--line);padding-block:75px 90px}.contact .eyebrow{justify-content:center}.contact p:not(.eyebrow){color:var(--muted)}.contact .button{margin-top:8px}footer{background:#eeebf7;border-top:1px solid var(--line)}.footer-top{display:flex;justify-content:space-between;gap:30px;align-items:start;padding-block:42px}.footer-top p{font-size:13px;color:var(--muted);margin:0}.footer-top>a:last-child{font-size:14px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid #d9d4e9;padding-block:22px;font-size:11px;color:var(--muted)}.footer-bottom nav{gap:23px}.footer-bottom nav a{font-size:12px}.doc-heading{padding-block:64px 45px;border-bottom:1px solid var(--line)}.doc-heading h1{font-size:clamp(38px,4vw,58px);max-width:850px}.doc-heading .lead{max-width:750px}.docs-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:60px;padding-top:45px;padding-bottom:80px}.docs-layout aside nav{display:flex;flex-direction:column;align-items:start;gap:13px;position:sticky;top:130px}.docs-layout aside a{font-size:12px;line-height:1.5;color:var(--muted)}.docs-layout aside .eyebrow{margin-bottom:5px}.prose{font-size:16px;line-height:1.8;min-width:0;overflow-wrap:anywhere}.prose h2{font-size:30px;margin-top:60px;padding-top:25px;border-top:1px solid var(--line)}.prose h3{font-size:23px;margin-top:35px}.prose h4,.prose h5{font-size:19px;margin-top:27px;letter-spacing:-.02em}.prose h2:first-child{margin-top:0;padding-top:0;border:0}.prose li{padding-left:4px;margin-block:7px}.prose ul{padding-left:23px;margin-bottom:28px}.prose pre{padding:25px;background:#edf0ff;border:1px solid #d9def5;border-radius:9px;overflow:auto;font:12px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre;overflow-wrap:normal}.prose code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.85em}.prose p code{background:#e7eafe;padding:3px 6px;border-radius:3px}.table-wrap{overflow:auto;margin-bottom:30px}table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}td,th{padding:13px 15px;border:1px solid var(--line)}th{background:#e7eafe}.legal{max-width:850px;padding-block:65px 90px}.legal h1{font-size:54px}.legal h2{font-size:24px;margin-top:32px}.notice{padding:20px 23px;background:#fff0da;border-left:3px solid #c47424;border-radius:3px;font-size:14px}
/* Color fields inspired by the reference's warm, expressive visual direction. */
.hero{position:relative;isolation:isolate}
.hero:before{content:"";position:absolute;z-index:-1;inset:18px -25px 0;background:radial-gradient(ellipse at 89% 12%,#ffe5c2 0,transparent 42%),radial-gradient(ellipse at 5% 85%,#ece8ff 0,transparent 45%);border-radius:32px;pointer-events:none}
.process-visual{background:linear-gradient(145deg,#e6e7ff 0%,#eaf0ff 48%,#ffe3cb 100%);border-color:#d7d9f1;box-shadow:0 22px 55px -30px #6c6bb5}
.visual-top{display:block;letter-spacing:0;line-height:1.5}
.visual-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:14px}
.visual-breadcrumb>span:first-child{color:var(--muted);font-size:12px;font-weight:500}
.breadcrumb-separator{color:var(--muted)}
.visual-breadcrumb strong{min-width:0;overflow-wrap:anywhere}
.visual-detail-label{display:block;margin-top:5px;font-size:11px;font-weight:500;color:var(--muted)}
/* Let node text wrap without compressing its numbered and status icons. */
.process-visual{min-width:0}
.process-node>div{flex:1;min-width:0;overflow-wrap:anywhere}
.node-icon{flex-shrink:0}
.check,.error-indicator{flex:0 0 23px;line-height:1}
.process-node .recovery-note{margin-top:8px;color:#565d75}
.process-node-action{display:inline-flex;align-items:center;justify-content:center;max-width:100%;margin-top:10px;padding:6px 10px;border:1px solid #3545c5;border-radius:5px;background:#3545c5;color:#fff;font:600 11px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-align:center;overflow-wrap:anywhere;cursor:default}
.process-node:nth-of-type(2) .node-icon{background:#dfe5ff}
.process-node:nth-of-type(4) .node-icon{background:#eee2ff;color:#7042a8}
.error .node-icon{background:#ffe0e0;color:#a51f1f}.error small{color:#a51f1f}
.brand-mark{color:#fff7ed}


.three-columns article{border-top-width:3px}
.three-columns article:nth-child(1){border-top-color:#5b68d6}
.three-columns article:nth-child(2){border-top-color:#e7985e}
.three-columns article:nth-child(3){border-top-color:#a889ca}
.cloud-section{background:#edf0ff}
.use-cases{gap:18px}
.use-cases article{overflow-wrap:anywhere;padding:25px 23px 22px;border:1px solid transparent;border-radius:16px}
.use-cases article:nth-child(1){background:#e5eaff;border-color:#d6dcfa}
.use-cases article:nth-child(2){background:#ffead7;border-color:#f5dbc5}
.use-cases article:nth-child(3){background:#eee4f8;border-color:#e3d6f0}
.use-cases article:nth-child(4){background:#f4edc9;border-color:#e9dfb6}
.use-cases .index{color:#4e5472}
.architecture{background:linear-gradient(120deg,#2935a3,#404fcb)}
.arch-diagram>div{background:#3948b3}
.arch-diagram>div:nth-of-type(2){background:#4b48a7;border-color:#9894da}
.steps li:nth-child(3n+1){border-top:3px solid #6471d8}
.steps li:nth-child(3n+2){border-top:3px solid #e99b66}
.steps li:nth-child(3n){border-top:3px solid #aa88ce}
.contact{background:#f5dfce;border:1px solid #efd0b8;border-radius:24px;margin-bottom:70px;padding-inline:22px}
.contact .eyebrow{color:#8c4728}
.doc-heading{position:relative;background:linear-gradient(110deg,transparent 30%,#eeebfa);border-radius:0 0 22px 22px;padding-inline:26px}
.prose h2{color:#303eae}
.prose th{color:#303b8a}
@media(min-width:1500px){.hero{padding-block:110px 100px}}
@media(max-width:1000px){.wrap{width:calc(100% - 56px)}.hero{gap:35px}.hero h1{font-size:46px}.hero .eyebrow{font-size:9px}.actions{gap:18px}.process-visual{padding:22px}.split-heading,.cloud-grid{gap:45px}.architecture{gap:35px;padding:35px}.use-cases{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.use-cases h3{min-height:0}.steps{grid-template-columns:repeat(3,1fr)}.docs-layout{grid-template-columns:190px minmax(0,1fr);gap:30px}.three-columns{gap:25px}}
@media(max-width:700px){.eyebrow,.contact h2{overflow-wrap:anywhere}.wrap{width:calc(100% - 40px)}.nav{min-height:78px;gap:10px}.brand{font-size:25px}.brand-mark{width:27px;height:30px;font-size:21px}nav{gap:15px}nav a{font-size:12px}.button.small{padding:9px 12px;gap:8px}.hero{grid-template-columns:minmax(0,1fr);padding-block:48px;gap:38px}.hero:before{inset-inline:-20px}.hero h1{font-size:clamp(37px,8vw,54px)}.hero .eyebrow{font-size:17px;letter-spacing:1px}.lead{font-size:16px}.hero .concept{margin-top:20px}.process-visual{max-width:500px;width:100%;margin:auto}.section{padding-block:55px}.split-heading,.cloud-grid,.architecture{grid-template-columns:1fr;gap:20px}.three-columns{grid-template-columns:1fr;gap:20px;margin-block:20px}.three-columns h3 br{display:none}.three-columns .index{margin-bottom:14px}.use-cases{grid-template-columns:1fr;gap:25px 20px;margin-top:30px}.use-cases h3{font-size:18px}.architecture{padding:30px 25px;gap:30px}.architecture h2{font-size:33px}.steps{grid-template-columns:1fr;gap:21px;margin-top:20px}.steps li{display:grid;grid-template-columns:30px 1fr;column-gap:12px}.steps li:before{grid-row:span 2;margin-bottom:0}.steps h3{margin-bottom:10px}.steps p{grid-column:2}.security{padding-block:40px}.contact{padding-block:50px 60px}.contact h2{font-size:32px}.footer-top{flex-wrap:wrap;gap:22px}.footer-top p{width:100%;order:3}.footer-bottom{gap:15px}.footer-bottom>span:last-child{width:100%}.doc-heading{padding-block:40px 30px}.docs-layout{grid-template-columns:1fr;gap:30px;padding-block:30px 50px}.docs-layout aside nav{position:static;display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}.docs-layout aside .eyebrow{grid-column:1/-1}.prose{font-size:15px}.prose h2{font-size:27px;margin-top:40px}.prose h3{font-size:22px}.prose pre{font-size:11px;padding:15px}.legal{padding-block:45px}.legal h1{font-size:43px}}
@media(max-width:380px){.nav .brand-mark{display:none}.nav nav{gap:11px}.nav .brand{font-size:23px}.nav nav a{font-size:11px}.use-cases{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.hero:before{display:none}.contact,.use-cases article,.doc-heading{background:white}.header,.docs-layout aside,.actions,footer,.contact,.skip{display:none}.wrap{width:100%}.docs-layout{display:block}.hero,.cloud-grid,.architecture{display:block}.prose pre{white-space:pre-wrap}body{background:white;color:black}a{text-decoration:underline}.section{padding-block:25px}}

/* Interactive application overview and guided detail preview. */
.process-visual [hidden]{display:none}
.breadcrumb-back{padding:0;border:0;background:none;color:var(--primary);font:inherit;font-size:12px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.breadcrumb-back:focus-visible,.application-open:focus-visible{outline:3px solid var(--primary);outline-offset:4px}
.application-list{list-style:none;padding:0;margin:0;display:grid;gap:16px}
.application-list>li{position:relative;min-width:0}
.application-row{display:flex;align-items:center;gap:12px;width:100%;padding:19px 16px;background:#fff;border:1px solid #dce0f4;border-radius:9px;color:var(--ink);text-align:left;font:inherit}
.application-row>span:not(.traffic-light):not(.application-arrow){min-width:0;overflow-wrap:anywhere}
.application-row strong{display:block;font-size:13px}
.application-row small{display:block;font-size:11px;color:var(--muted);margin-top:4px}
.traffic-light{flex:0 0 11px;height:11px;border-radius:50%;box-shadow:0 0 0 4px #f0f2f6}
.traffic-light.success{background:#268448}.traffic-light.warning{background:#edb51c}.traffic-light.failure{background:#c62828}
.application-open{cursor:pointer;border-color:#e6aaaa;background:#fff5f5}
.application-open:hover,.process-visual.demo-click .application-open{border-color:#c62828;background:#ffe9e9}
.application-arrow{margin-left:auto;font-size:24px;color:var(--muted)}
/* Animate position at a fixed SVG size to avoid resampling the cursor. */
.demo-pointer{position:absolute;z-index:2;display:block;width:28px;height:34px;right:calc(18% - 25px);top:calc(45% - 110px);pointer-events:none;opacity:0;shape-rendering:geometricPrecision;transition:top 1.3s ease-in-out,right 1.3s ease-in-out,opacity .2s}
.process-visual.demo-point .demo-pointer{opacity:1;right:18%;top:45%}
.process-visual.demo-click .demo-pointer{top:calc(45% + 1px);transition-duration:.15s}
.application-list>li:last-child::after{content:"";position:absolute;right:calc(18% + 15px);top:calc(45% + 3px);width:12px;height:12px;border:2px solid var(--primary);border-radius:50%;pointer-events:none;opacity:0;transform:translate(50%,-50%)}
.process-visual.demo-click .application-list>li:last-child::after{animation:demo-click-ring .65s ease-out}
@keyframes demo-click-ring{from{opacity:.9;transform:translate(50%,-50%) scale(.5)}to{opacity:0;transform:translate(50%,-50%) scale(3.5)}}
@media(prefers-reduced-motion:reduce){.demo-pointer{transition:none}.process-visual.demo-click .application-list>li:last-child::after{animation:none}}

/* Both views size the same grid cell, keeping the hero stable as they switch. */
.application-views{display:grid;min-width:0}
.application-views>.application-list-view,.application-views>.application-detail-view{grid-area:1 / 1;align-self:start;min-width:0}
.process-visual .application-views>[hidden]{display:block;visibility:hidden;pointer-events:none}

/* Keep landing-page descriptive copy consistent with the Produkt section. */
.home .hero-copy .lead,
.home .split-heading > p,
.home .three-columns p,
.home .use-cases p,
.home .roles p,
.home .architecture > div:first-child > p:not(.eyebrow),
.home .steps p,
.home .security p:not(.eyebrow),
.home .contact p:not(.eyebrow),
.home .footer-top p{font-size:18px}

/* Adjacent plain sections share one section spacing instead of doubling it. */
.home .section + .section{padding-top:0}

/* Guide attention to the failed process step after opening its details. */
.process-node.error{position:relative}
.demo-error-pointer{position:absolute;z-index:2;display:block;width:28px;height:34px;right:55px;top:-130px;pointer-events:none;opacity:0;shape-rendering:geometricPrecision;transition:top 1.3s ease-in-out,right 1.3s ease-in-out,opacity .2s}
.process-visual.demo-error .demo-error-pointer{right:20px;top:calc(50% + 8px);opacity:1}
@media(prefers-reduced-motion:reduce){.demo-error-pointer{display:none;transition:none}}

/* Join the homepage hero directly to the navbar separator at every viewport. */
.home .hero{padding-top:68px}
@media(max-width:700px){.home .hero{padding-top:40px}}
.home .hero:before{top:0;border-top-left-radius:0;border-top-right-radius:0}

@media(max-width:700px){.home .hero:before{border-radius:0}}
