.io-section{padding:88px 0 96px;background:#061c38;color:#d2e3ed;overflow:hidden}
.io-heading{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end;margin-bottom:42px}
.io-heading .eyebrow{color:#80e7ed}
.io-heading h1,.io-heading h2{color:#fff;font-size:clamp(36px,4vw,56px);line-height:1.1;margin:0}
.io-heading h1 em,.io-heading h2 em{color:#6debd9;font-style:normal}
.io-heading-copy>p{font-size:19px;line-height:1.7;max-width:520px;margin:0;color:#b6cddd}
.io-home{padding-top:46px;background:radial-gradient(ellipse at 50% 28%,#0a304b 0,transparent 58%),#061c38}
.io-home .io-heading{align-items:center;gap:54px;margin-bottom:30px}
.io-home .io-heading .eyebrow{font-size:14px;margin-bottom:18px}
.io-home .io-heading h1{font-size:clamp(44px,4.6vw,66px)}
.io-home .io-heading-copy>p{font-size:18px;line-height:1.65}
.io-home-actions{display:flex;flex-wrap:wrap;gap:18px 23px;align-items:center;margin-top:22px}
.io-cta-primary{color:#062b3b;background:#7cf0dc;border-color:#7cf0dc;box-shadow:0 8px 24px #6debd91a}
.io-cta-primary:hover{background:#a1ffe9}
.io-cta-secondary{display:inline-flex;align-items:center;gap:10px;color:#c9f1f4;font-size:16px;font-weight:700;border-bottom:1px solid #79b3be;padding:8px 0}
.io-cta-secondary:hover{color:#fff;border-color:#9bf9e8}
.io-home .io-scene{margin-top:23px}
.io-home .io-node{min-height:108px;padding-block:15px}
.io-board{position:relative;border:1px solid #284c67;border-radius:22px;background:radial-gradient(ellipse at 50% 28%,#0d4662 0,transparent 52%),#08243e;padding:28px;box-shadow:0 25px 70px #0002}
.io-board-top{display:flex;align-items:center;justify-content:space-between;gap:20px}
.io-board-top>span{font-size:14px;letter-spacing:.12em;font-weight:800;color:#a2d9e5;display:flex;gap:10px;align-items:center}
.io-board-top i{width:7px;height:7px;background:#6debd9;box-shadow:0 0 12px #6debd9;display:inline-block;border-radius:50%}
.io-playback{font:inherit;font-size:15px;color:#d2e6ef;background:#ffffff08;border:1px solid #3b607b;border-radius:30px;padding:8px 15px;cursor:pointer;white-space:nowrap}
.io-playback:hover,.io-playback:focus-visible{background:#ffffff15;border-color:#78e9de}
.io-scene{position:relative;display:grid;grid-template-columns:1fr .92fr 1fr;gap:58px;align-items:center;margin:28px 0 30px}
.io-column{position:relative;z-index:1;display:grid;gap:13px;min-width:0}
.io-column>h3{color:#b4d3e1;font-size:16px;font-weight:650;margin:0 0 4px}
.io-node{display:flex;gap:13px;align-items:start;min-height:119px;border:1px solid #315976;background:linear-gradient(130deg,#113856,#0b2a46);border-radius:12px;padding:17px 15px;box-shadow:0 7px 20px #0001;transition:border-color .5s,box-shadow .5s}
.io-node-icon{display:grid;place-items:center;flex:none;width:34px;height:36px;color:#8cdef2}
.io-node-icon svg{display:block;width:30px;height:30px}
.io-node h4{font-size:18px;font-weight:750;color:#f3faff;line-height:1.2;margin:0 0 6px;letter-spacing:-.025em}
.io-node p{font-size:16px;line-height:1.4;margin:0;color:#c1d8e6}
.io-node-tag{display:block;color:#a1c6d6;font-size:14px;line-height:1.4;margin-top:8px}
.io-node-outcome{border-color:#2a635f;background:linear-gradient(130deg,#103b48,#0c2c42)}
.io-node-outcome .io-node-icon{color:#80ecdb}
.io-node-outcome .io-node-tag{color:#a0d5c9}
.io-wires{position:absolute;inset:31px 0 0;width:100%;height:calc(100% - 31px);z-index:0;pointer-events:none}
.io-wire{stroke:#397c91;stroke-width:1.5;fill:none;opacity:.75}
.io-packet{stroke:#8affdf;stroke-width:3;fill:none;stroke-linecap:round;stroke-dasharray:4 72;animation:io-flow 4s linear infinite;animation-delay:var(--io-delay);filter:drop-shadow(0 0 4px #5fffe0)}
.io-hub{min-height:315px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;text-align:center;z-index:1}
.io-logo{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:195px;height:183px;border:1px solid #a1f1f3;border-radius:27px;background:linear-gradient(135deg,#fff,#e2faff);box-shadow:0 0 40px #59e7ed44,0 0 0 10px #6de7ec0b}
.io-logo img:first-child{width:80px;height:80px;object-fit:contain}
.io-logo img:last-child{width:166px;height:auto}
.io-orbit{position:absolute;width:242px;height:242px;top:6px;left:calc(50% - 121px);border:1px solid #5ec8dc40;border-radius:50%;pointer-events:none}
.io-orbit-one:before{content:"";position:absolute;top:25px;left:39px;width:7px;height:7px;background:#a3fff0;box-shadow:0 0 15px #6cf8e4;border-radius:50%}
.io-orbit-one{animation:io-orbit 22s linear infinite}
.io-orbit-two{transform:scale(1.13);border-style:dashed;opacity:.5;animation:io-breathe 6s ease-in-out infinite}
.io-hub-caption{position:relative;z-index:1;color:#c9f4f4;font-size:16px;line-height:1.4;font-weight:650;max-width:260px}
.io-principles{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;position:relative;z-index:1}
.io-principles span{font-size:14px;border:1px solid #376476;background:#0a2c43;padding:4px 8px;border-radius:20px;color:#c1e3e9}
.io-integration{position:relative;display:flex;align-items:center;gap:22px;border:1px solid #327770;border-radius:12px;padding:23px;background:linear-gradient(100deg,#113c47,#0b2d41);overflow:hidden}
.io-integration:before{content:"";position:absolute;left:0;top:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,#6debd9,transparent);animation:io-return 6s ease-in-out infinite}
.io-integration-symbol{font-size:38px;line-height:1;color:#81f6df;flex:none}
.io-integration h3{font-size:22px;line-height:1.3;color:#edfffa;margin:0 0 7px}
.io-integration p{color:#c2dcd9;font-size:17px;line-height:1.6;margin:0;max-width:720px}
.io-integration-tag{flex:0 0 150px;color:#80e3d2;font-size:15px;font-weight:650;line-height:1.6;text-align:center}
.io-explorer{margin-top:30px}
.io-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.io-step{position:relative;display:flex;align-items:center;justify-content:center;gap:9px;padding:16px 8px;font:inherit;font-size:16px;cursor:pointer;color:#aecad8;border:1px solid #31516a;background:#0a283f;border-radius:8px;transition:background .3s,border-color .3s,color .3s;overflow:hidden}
.io-step span{font-size:13px;color:#76c4d3;font-weight:750}
.io-step[aria-pressed=true]{color:#fff;background:#114a5b;border-color:#64d9d0}
.io-step:focus-visible,.io-playback:focus-visible{outline:2px solid #c0fff3;outline-offset:4px}
.io-step:hover{border-color:#7ed6da}
.io-step[aria-pressed=true]:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:#82f7de;transform-origin:left;animation:io-progress 7s linear both}
.io-details{padding:26px 5px 4px;min-height:179px}
.io-detail h3{font-size:26px;line-height:1.25;margin:0 0 10px;color:#fff;letter-spacing:-.025em}
.io-detail p{font-size:18px;color:#c4d9e4;line-height:1.65;margin:0;max-width:970px}
.io-detail>span{display:block;font-size:15px;color:#80c9d3;margin-top:12px}
.io-note{font-size:14px;line-height:1.65;color:#94b4c6;margin:24px 0 0;padding-top:18px;border-top:1px solid #28495e}
.io-board[data-io-stage="0"] .io-node-source{border-color:#6bbac7;box-shadow:0 0 18px #3ed3df12}
.io-board[data-io-stage="1"] .io-logo,.io-board[data-io-stage="2"] .io-logo,.io-board[data-io-stage="3"] .io-logo{box-shadow:0 0 55px #59e7ed66,0 0 0 10px #6de7ec11}
.io-board[data-io-stage="4"] .io-node-outcome{border-color:#6ce1bc;box-shadow:0 0 18px #3edfb712}
.io-paused *,.io-paused *:before,.io-paused *:after{animation-play-state:paused!important}
.io-board [hidden]{display:none!important}
@keyframes io-flow{to{stroke-dashoffset:-152}}
@keyframes io-orbit{to{transform:rotate(360deg)}}
@keyframes io-breathe{50%{opacity:.85;transform:scale(1.19)}}
@keyframes io-return{0%{transform:translateX(100%)}100%{transform:translateX(-100%)}}
@keyframes io-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:1100px){.io-board{padding:24px}.io-scene{gap:27px;grid-template-columns:1fr .8fr 1fr}.io-logo{width:164px;height:164px}.io-logo img:last-child{width:145px}.io-orbit{width:202px;height:202px;left:calc(50% - 101px);top:26px}.io-node{gap:8px;padding:15px 12px}.io-node-icon{width:28px}.io-node h4{font-size:17px}.io-integration-tag{display:none}}
@media(max-width:850px){.io-heading{grid-template-columns:1fr;gap:24px}.io-heading-copy>p{max-width:700px}.io-scene{grid-template-columns:1fr;gap:35px;margin-top:30px}.io-column{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.io-column>h3{grid-column:1/-1}.io-node{display:block;min-height:0;padding:17px 13px}.io-node-icon{margin-bottom:10px}.io-hub{min-height:270px;gap:14px}.io-logo{width:185px;height:176px}.io-orbit{width:228px;height:228px;left:calc(50% - 114px);top:-5px}.io-wires{display:none}.io-hub:before,.io-hub:after{content:"";position:absolute;left:calc(50% - 1px);width:2px;height:32px;background:linear-gradient(#72e7dd00,#72e7dd,#72e7dd00);background-size:100% 200%;animation:io-vertical 2s linear infinite}.io-hub:before{top:-35px}.io-hub:after{bottom:-35px}.io-steps{gap:7px}.io-step{font-size:15px;flex-direction:column;gap:3px}.io-details{min-height:205px}.io-integration{padding:20px}.io-note{font-size:15px}}
@keyframes io-vertical{to{background-position:0 200%}}
@media(max-width:580px){.io-section{padding:58px 0 60px}.io-heading{gap:22px;margin-bottom:28px}.io-heading-copy>p{font-size:18px}.io-board{padding:20px 15px;border-radius:16px}.io-board-top{align-items:flex-start;flex-direction:column;gap:12px}.io-board-top>span{font-size:13px}.io-column{grid-template-columns:1fr;gap:10px}.io-node{display:flex;gap:12px;padding:16px}.io-node-icon{width:32px;margin:0}.io-node h4{font-size:18px}.io-node p{font-size:16px}.io-node-tag{font-size:14px}.io-hub{margin:7px 0}.io-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.io-step{font-size:15px;padding:12px 5px}.io-step:nth-child(4),.io-step:nth-child(5){grid-column:auto}.io-integration{display:block;padding:20px}.io-integration-symbol{display:inline-block;margin-bottom:12px}.io-integration h3{font-size:23px}.io-integration p{font-size:17px}.io-detail h3{font-size:24px}.io-detail p{font-size:17px}.io-details{min-height:0;padding-top:24px}.io-note{font-size:14px}.io-hub-caption{font-size:17px}.io-principles span{font-size:14px}}
@media(prefers-reduced-motion:reduce){.io-board *,.io-board *:before,.io-board *:after{animation:none!important;transition:none!important}}

@media(max-width:850px){.io-home .io-heading{gap:24px}.io-home .io-heading-copy>p{max-width:700px}}
@media(max-width:580px){.io-home{padding-top:34px}.io-home .io-heading h1{font-size:clamp(40px,10vw,52px)}.io-home .io-heading .eyebrow{font-size:13px;letter-spacing:.12em}.io-home .io-heading{gap:23px;margin-bottom:30px}.io-home-actions{gap:15px;margin-top:22px}.io-home-actions .button{width:100%}.io-home-actions .io-cta-secondary{margin:auto}.io-home .io-node{padding-block:16px}}

/* Prelaunch edition: project status is visible beside the main title. */
.io-home .io-heading-copy .prelaunch-availability{display:flex;align-items:flex-start;gap:9px;font-size:16px;font-weight:750;color:#bbfff0;line-height:1.5;margin:13px 0 0}
.prelaunch-status-dot{display:block;flex:none;width:7px;height:7px;border-radius:50%;background:#7cf0dc;box-shadow:0 0 0 4px #7cf0dc14;margin-top:8px}
.io-home .io-home-actions{margin-top:18px}
@media(max-width:580px){.io-home .io-heading .eyebrow{font-size:14px;line-height:1.6}.io-home .io-heading-copy .prelaunch-availability{font-size:16px}}
