.nav__menu a.is-active { color:var(--teal); }
.technology-page { background:#fff; color:#26384c; }
.technology-hero h1 { max-width:100%; overflow-wrap:anywhere; }
.technology-intro,.technology-core,.technology-flow,.technology-references { width:var(--content-width); margin:0 auto 80px; }
.technology-intro { display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:70px; align-items:center; padding-top:62px; }
.technology-intro__copy>span,.technology-section-title>span,.technology-flow__copy>span { display:inline-block; margin-bottom:20px; padding:7px 11px; background:#e9f8fa; color:#008c9b; font-size:11px; font-weight:800; letter-spacing:.045em; border-radius:4px; }
.technology-intro h2,.technology-section-title h2,.technology-flow h2 { margin:0; font-size:clamp(28px,2.6vw,38px); line-height:1.22; letter-spacing:-.025em; color:#26384c; }
.technology-intro p,.technology-card p,.technology-flow p { color:#687e8d; font-size:15px; line-height:1.75; }
.technology-intro__copy p { margin:24px 0 0; max-width:660px; }
.technology-intro__panel { padding:12px 30px; border:1px solid #d9eef1; border-radius:16px; background:linear-gradient(135deg,#f5fcfd,#e8f6f8); box-shadow:0 16px 40px #23485809; }
.technology-intro__panel article { padding:25px 0; display:flex; flex-direction:column; gap:9px; }
.technology-intro__panel article+article { border-top:1px solid #d1e8ec; }
.technology-intro__panel strong { color:#009eac; font-size:38px; font-weight:400; line-height:1.1; letter-spacing:-.035em; }
.technology-intro__panel small { color:#6b8391; font-size:11px; text-transform:uppercase; letter-spacing:.1em; }
.technology-section-title { max-width:850px; margin-bottom:36px; }
.technology-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.technology-card { position:relative; padding:30px 32px 32px 118px; border:1px solid #e0edf0; border-radius:14px; background:linear-gradient(130deg,#f2fafb,#fff 70%); box-shadow:0 10px 28px #284b6007; transition:transform .25s,box-shadow .25s; }
.technology-card:hover { transform:translateY(-4px); box-shadow:0 18px 36px #284b6012; }
.technology-card__icon { position:absolute; top:20px; left:13px; width:96px; height:100px; display:grid; place-items:center; }
.technology-card__icon img { width:124px; max-width:none; height:124px; object-fit:contain; }
.technology-card__icon--twin { width:108px; height:108px; top:12px; left:8px; }
.technology-card__icon--twin img { width:108px; height:108px; object-fit:contain; }
.technology-card h3 { margin:4px 0 14px; font-size:21px; line-height:1.28; letter-spacing:-.015em; }
.technology-card p { margin:0; font-size:14px; }
.technology-flow { display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1fr); border-radius:14px; overflow:hidden; box-shadow:0 20px 50px #233f5212; }
.technology-flow__visual { display:grid; place-items:center; padding:38px 28px; background:radial-gradient(ellipse at center,#eaf9fa 0%,#fbfefe 70%); }
.agent-map { width:100%; max-width:480px; text-align:center; }
.agent-map__eyebrow { display:block; margin-bottom:12px; font-size:10px; font-weight:800; letter-spacing:.15em; color:#61919b; }
.agent-diagram { display:block; width:100%; height:auto; overflow:visible; }
.agent-map .agent-map__feedback { display:flex; justify-content:center; align-items:center; gap:8px; margin:8px 0 0; font-size:11px; color:#7194a0; }
.agent-map__feedback span { font-size:20px; color:#21a6b2; }
.technology-flow__copy { padding:42px 38px; background:#dff5f7; }
.technology-flow h2 { font-size:32px; }
.technology-flow .agent-capabilities { list-style:none; padding:0; margin:24px 0 0; display:grid; gap:20px; }
.technology-flow li { padding:0 0 0 16px; border-left:2px solid #8ed3db; }

.technology-flow h3 { font-size:17px; margin:0 0 7px; }
.technology-flow li p { margin:0; font-size:14px; line-height:1.7; }
.technology-references { text-align:center; margin-bottom:70px; }
.technology-references a { display:inline-flex; gap:28px; align-items:center; padding:17px 0; border-bottom:1px solid #aadfe5; color:#008c9b; font-size:17px; font-weight:700; text-decoration:none; }
.technology-references a:hover { color:#26384c; }
.technology-references a:focus-visible { outline:2px solid #009eac; outline-offset:6px; }
@media(max-width:1100px){.technology-intro{gap:36px}.technology-card{padding:110px 26px 28px}.technology-card__icon{top:8px;left:14px}.technology-card__icon--twin{top:5px;left:7px}.technology-flow__copy{padding:32px 26px}.technology-flow h2{font-size:28px}}
@media(max-width:800px){.technology-intro,.technology-core,.technology-flow,.technology-references{width:calc(100% - 40px);margin-bottom:54px}.technology-intro{grid-template-columns:1fr;gap:28px;padding-top:40px}.technology-intro__panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:20px 12px}.technology-intro__panel article{padding:10px 12px}.technology-intro__panel article+article{border-top:0;border-left:1px solid #d1e8ec}.technology-intro__panel strong{font-size:28px}.technology-intro__panel small{font-size:9px}.technology-flow{grid-template-columns:1fr}.technology-flow__visual{padding:34px 26px}.technology-flow__copy{padding:32px 26px}}
@media(max-width:520px){.technology-cards{grid-template-columns:1fr;gap:18px}.technology-card{padding:28px 24px 28px 102px}.technology-card__icon{top:14px;left:3px;width:90px}.technology-card__icon--twin{top:5px;left:0;width:98px;height:98px}.technology-card__icon--twin img{width:98px;height:98px}.technology-card h3{font-size:19px}.technology-intro h2,.technology-section-title h2{font-size:28px}.technology-intro__panel strong{font-size:25px}.technology-intro__panel article{padding:10px 7px}.technology-flow li{padding-left:14px}.technology-flow__copy{padding:30px 22px}.technology-references a{font-size:15px;gap:16px}}
@media(prefers-reduced-motion:reduce){.technology-card{transition:none}}

.technology-flow__intro {color:#587681;font-size:14px;line-height:1.7;margin:18px 0 0}
.agent-map__objectives {display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:20px}
.agent-map__objectives span {padding:7px 10px;border:1px solid #cce7eb;border-radius:20px;color:#437582;font-size:11px;background:#fff}
