/* Dimensional illustrations and a horizontal, reconfigurable circuit. */
.technology{position:relative;isolation:isolate;overflow:clip;padding:64px 40px 60px;background:linear-gradient(180deg,#fff 0%,#F5FAFD 70%,#EDF6FA 100%);color:var(--navy);scroll-margin-top:100px}
.technology-inner{max-width:1320px;margin:0 auto}
.technology-heading{display:flex;align-items:center;justify-content:space-between;gap:40px}
.technology-heading .eyebrow{justify-content:flex-start;font-size:10px;letter-spacing:.14em;color:var(--muted)}
.technology-heading h2{margin:12px 0 14px;font-size:clamp(28px,2.9vw,40px);line-height:1.2;font-weight:550;letter-spacing:-.045em}
.technology-intro>p:last-child{font-size:14px;line-height:1.7;color:var(--muted);margin:0}
.tech-hosting-options{flex:none;min-width:0;margin:0;padding:0;border:0;text-align:center}
.tech-hosting-options[hidden]{display:none}
.tech-hosting-options legend{width:100%;margin:0 0 10px;font-size:11px;color:var(--muted);text-align:center}
.tech-hosting-switch{display:flex;padding:5px;border:1px solid #C7DDE8;border-radius:40px;background:#E8F2F7}
.tech-hosting-options label{position:relative;cursor:pointer}
.tech-hosting-options label>span{display:flex;align-items:center;justify-content:center;min-height:42px;padding:10px 21px;border-radius:30px;font-size:12px;font-weight:550;white-space:nowrap;color:var(--muted);transition:background 180ms,color 180ms,box-shadow 180ms}
.tech-hosting-options input:checked+span{color:#fff;background:#123E55;box-shadow:0 3px 7px #12324614}
.technology[data-hosting="cloud"] .tech-hosting-options input:checked+span{background:#237FA9}
.tech-hosting-options input:focus-visible+span{outline:2px solid #D54054;outline-offset:4px}
.technology-visual{margin-top:30px}
.tech-map{position:relative;isolation:isolate;padding:45px 10px 92px}
.tech-host-boundary{position:absolute;z-index:-1;top:0;left:0;width:50%;height:calc(100% - 79px);border:1px solid #CFE2EC;border-radius:24px;background:linear-gradient(135deg,#EAF4F9B3,#EAF4F929);pointer-events:none;transition:background 250ms}
.tech-host-boundary>span{position:absolute;left:20px;top:14px;font-size:10px;font-weight:500;letter-spacing:.07em;color:#4C748A;text-transform:uppercase;white-space:nowrap}
.tech-access-label{position:absolute;z-index:2;left:calc(25% + 28px);right:10px;top:14px;text-align:center;font-size:10px;font-weight:500;letter-spacing:.07em;color:#4C748A;text-transform:uppercase;white-space:nowrap}
.technology[data-hosting="cloud"] .tech-host-boundary{background:linear-gradient(135deg,#E5F4FC,#D5EAF63D);border-color:#AFCFE0}
.tech-nodes{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.tech-node{position:relative;min-width:0;display:flex;align-items:center;flex-direction:column;text-align:center;padding-bottom:18px}
.tech-art{width:min(100%,260px);aspect-ratio:26/23;display:grid;place-items:center}
.tech-art img{display:block;width:100%;height:100%;object-fit:contain}
.tech-art img[hidden]{display:none}
.tech-node h3{font-size:18px;line-height:1.4;font-weight:600;letter-spacing:-.025em;margin:8px 0 5px}
.tech-node>p{margin:0;font-size:12px;line-height:1.5;color:#58788C}
.tech-core-components{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:10px;min-height:26px}
.tech-core-components span{padding:6px 9px;border:1px solid #C9E0EB;border-radius:999px;background:#fff;color:#245B75;font-size:9px;font-weight:600;white-space:nowrap;box-shadow:0 3px 9px #1232460A}
.tech-core-components i{color:#FF5262;font-size:13px;font-style:normal}
.tech-wires{position:absolute;z-index:0;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.tech-wires path{stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.tech-wire-base path{stroke:#A7C8D9;stroke-width:1.35}
.tech-wire-base path[data-connection="backbone"]{stroke:#5E9FBE;stroke-width:1.8}
.tech-flow-dot{fill:#FF5262;stroke:#fff;stroke-width:1.8;opacity:0;filter:drop-shadow(0 2px 3px #D33D5240)}
.tech-wire-ports circle{fill:#F5FAFD;stroke:#72A5BF;stroke-width:1.5}
.tech-wire-ports circle:first-child{stroke:#E75164;fill:#FFEEF0}
.tech-wire-ports .tech-wire-junction{fill:#D8EAF3;stroke:#6FA6C0;stroke-width:1}
.tech-explanation{display:flex;align-items:flex-start;justify-content:center;gap:24px;margin:5px auto 0;max-width:1040px;min-height:47px}
.tech-connection-key{display:flex;align-items:center;gap:9px;white-space:nowrap;flex:none;font-size:12px;font-weight:550;line-height:1.85;color:#21536E}
.tech-connection-key>span{width:22px;height:2px;background:linear-gradient(90deg,#2D8FC4,#FF5262);position:relative}
.tech-connection-key>span::after{content:"";position:absolute;right:0;top:-2px;width:6px;height:6px;border-radius:50%;background:#FF5262}
.tech-explanation>p{max-width:760px;margin:0;font-size:13px;line-height:1.85;color:var(--muted)}
.tech-access-footer{display:grid;grid-template-columns:1.35fr 1fr;gap:52px;align-items:center;margin-top:28px;padding-top:28px;border-top:1px solid #CDE1EB}
.tech-principles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.tech-principles h3{margin:0;font-size:16px;font-weight:550;line-height:1.4;letter-spacing:-.015em}
.tech-principles p{margin:8px 0 0;font-size:12px;line-height:1.8;color:var(--muted)}
.tech-devices{padding-left:34px;border-left:1px solid #CDE1EB}
.tech-devices>p{margin:0 0 16px;font-size:9px;letter-spacing:.12em;color:var(--muted)}
.tech-devices ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;list-style:none;margin:0;padding:0}
.tech-devices li{display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-width:0;font-size:10px;color:#426D85}
.tech-devices svg{width:44px;height:40px;flex:none}
.tech-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1600px){.technology{padding-top:72px;padding-bottom:68px}}
@media(max-width:1100px){.technology{padding:54px 32px}.technology-heading{gap:24px}.technology-heading h2{font-size:32px}.technology-intro>p:last-child{max-width:490px;font-size:13px}.tech-hosting-options label>span{padding:10px 16px}.tech-nodes{gap:22px}.tech-node h3{font-size:16px}.tech-node>p{font-size:11px}.tech-access-footer{gap:30px;grid-template-columns:1.2fr 1fr}.tech-principles{gap:24px}.tech-devices{padding-left:26px}.tech-devices ul{gap:12px}}
@media(max-width:850px){.technology{padding:48px 24px;scroll-margin-top:84px}.technology-heading{align-items:flex-start;flex-direction:column;gap:22px}.tech-hosting-options{display:flex;align-items:center;gap:16px}.tech-hosting-options legend{float:left;width:auto;margin:0;padding:0;align-self:center}.tech-hosting-options label>span{min-height:40px}.technology-visual{margin-top:25px}.tech-nodes{gap:18px}.tech-node h3{font-size:15px}.tech-node>p{font-size:10px}.tech-host-boundary>span{font-size:9px;left:14px}.tech-explanation{gap:20px}.tech-access-footer{grid-template-columns:1fr;gap:26px}.tech-devices{padding:22px 0 0;border-left:0;border-top:1px solid #CDE1EB;display:flex;align-items:center;gap:30px}.tech-devices>p{max-width:135px;line-height:1.7;margin:0}.tech-devices ul{gap:30px;flex:1}.tech-devices li{flex-direction:row;align-items:center;gap:5px}.tech-devices svg{width:34px;height:34px}}
@media(max-width:600px){.technology{padding:40px 20px}.technology-heading{gap:22px}.technology-heading h2{font-size:30px;max-width:360px;margin:12px 0}.technology-intro>p:last-child{font-size:13px;max-width:360px}.tech-hosting-options{display:block;width:100%;text-align:left}.tech-hosting-options legend{float:none;margin-bottom:10px;text-align:left;font-size:11px}.tech-hosting-switch{width:100%}.tech-hosting-options label{flex:1}.tech-hosting-options label>span{font-size:12px;padding:9px 14px}.tech-map{padding:43px 7px 20px}.tech-nodes{grid-template-columns:repeat(2,minmax(0,1fr));gap:78px 28px}.tech-node{padding-bottom:12px}.tech-art{max-width:215px}.tech-node h3{font-size:15px;line-height:1.35;margin:5px 0}.tech-node>p{font-size:10px;max-width:150px;min-height:30px;line-height:1.5}.tech-host-boundary{width:100%;height:46%;border-radius:20px}.tech-host-boundary>span{font-size:9px;letter-spacing:.045em;top:12px;left:15px}.technology[data-hosting="cloud"] .tech-host-boundary>span{font-size:8px;left:10px}.tech-explanation{display:block;margin-top:18px;min-height:117px}.tech-connection-key{font-size:11px;margin-bottom:9px}.tech-explanation>p{font-size:12px;line-height:1.8}.tech-access-footer{margin-top:20px;padding-top:24px}.tech-principles{grid-template-columns:1fr;gap:22px}.tech-principles h3{font-size:16px}.tech-principles p{font-size:12px;max-width:420px}.tech-devices{display:block}.tech-devices>p{max-width:none;margin:0 0 15px}.tech-devices ul{gap:10px}.tech-devices li{flex-direction:column;align-items:center;font-size:9px;gap:8px}.tech-devices svg{width:39px;height:37px}}
@media(max-width:350px){.technology{padding-left:16px;padding-right:16px}.technology-heading h2{font-size:28px}.tech-nodes{column-gap:20px}.tech-node h3{font-size:14px}.tech-host-boundary>span{font-size:8px}.tech-node>p{font-size:9px}.tech-hosting-options label>span{font-size:11px}.tech-explanation{min-height:139px}}
@media(max-width:850px){.tech-access-label{left:calc(25% + 18px);font-size:9px}.tech-core-components{gap:4px}.tech-core-components span{padding:5px 6px;font-size:8px}}
@media(max-width:600px){.tech-access-label{display:none}.tech-host-boundary>span{font-size:8px;letter-spacing:.035em;left:10px}.tech-core-components{flex-wrap:wrap;gap:3px 5px;margin-top:6px}.tech-core-components span{padding:4px 6px;font-size:7px}.tech-core-components i{font-size:11px}}
@media(prefers-reduced-motion:reduce){.tech-hosting-options label>span,.tech-host-boundary{transition:none}.tech-wire-pulses{display:none}}
/* Stronger connection hierarchy and a quieter, shorter supporting row. */
.tech-wire-base path,.tech-wire-base path[data-connection="backbone"]{stroke:#c0dce9;stroke-width:4}
.tech-flow-trail{stroke-width:4;stroke-linecap:round;opacity:0}
.tech-wire-ports circle{stroke-width:2;fill:#fff}
.tech-node .tech-art{transition:transform .45s,filter .45s}
.tech-node.tech-receiving .tech-art{transform:translateY(-6px);filter:drop-shadow(0 10px 10px #2d8fc426)}
.tech-node h3{transition:color .3s}
.tech-node.tech-receiving h3{color:#228cb9}
.tech-map{padding-bottom:74px}
.tech-explanation{align-items:center;background:#e7f3f9;border-radius:18px;padding:16px 24px;max-width:100%;min-height:0;margin-top:4px}
.tech-explanation>p{font-size:13px}
.tech-connection-key{color:#123e55}
.tech-principles>div{display:flex;align-items:center;gap:14px}
.tech-benefit-mark{display:grid;place-items:center;flex:none;width:35px;height:35px;border-radius:12px;background:#daedf6;color:#2487b1;font-size:11px}
.tech-principles h3{font-size:15px;line-height:1.65}
@media(max-width:600px){.tech-map{padding-bottom:20px}.tech-explanation{padding:16px 18px;min-height:0}.tech-principles{grid-template-columns:1fr;gap:18px}.tech-principles h3{font-size:14px}}
@media(prefers-reduced-motion:reduce){.tech-node .tech-art,.tech-node h3{transition:none}}

/* Quiet, distinct routes with one moving signal at a time. */
.tech-wire-base path,.tech-wire-base path[data-connection="backbone"]{stroke:#b1d2e2;stroke-width:1.7}
.tech-node.tech-receiving .tech-art{transform:none;filter:drop-shadow(0 5px 9px #2d8fc42b)}
.tech-node .tech-art{transition:filter .55s}
.tech-map{padding-bottom:82px}
.tech-access-footer{margin-top:0}
@media(max-width:600px){.tech-map{padding-bottom:24px}}
