﻿/* A connected-care illustration, built from accessible text and decorative paths. */
.platform-network { position: relative; margin: 44px auto 0; }
.platform-network-scene {
    position: relative;
    height: 740px;
    overflow: hidden;
    border: 1px solid #dce3f4;
    border-radius: 24px;
    background: radial-gradient(ellipse at 49% 50%, #dfe6ff 0, transparent 55%),
        radial-gradient(#cfd8eb 1px, transparent 1px), #f6f8fd;
    background-size: auto, 22px 22px, auto;
}
.platform-network-paths { position: absolute; top: calc(50% - 330px); left: 0; width: 100%; height: 660px; fill: none; }
.platform-network-tracks { stroke: #c2cdec; stroke-width: 2; }
.platform-network-signals { stroke: #5975df; stroke-width: 3; stroke-linecap: round; }
.platform-network-signals use { stroke-dasharray: 6 94; animation: network-flow 5s linear infinite backwards; }
.platform-network-signals use:nth-child(2) { animation-delay: 1.5s; }
.platform-network-signals use:nth-child(3) { animation-delay: 3s; }
.platform-network-signals use:nth-child(4) { animation-delay: 4s; }
.platform-network-chart, .platform-network-connections li {
    position: absolute;
    z-index: 1;
    border: 1px solid #dce3f2;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 12px 32px #293d7310;
}
.platform-network-scene h3 { margin: 0; color: #233453; font-size: 20px; font-weight: 600; }
.platform-network-scene p { margin: 7px 0 0; color: #5b6880; font-size: 13px; line-height: 1.6; }
.platform-network-chart { top: 50%; left: 3%; width: 26%; padding: 24px; transform: translateY(-50%); }
.platform-network-card-top { display: flex; align-items: center; gap: 10px; margin-bottom: 18px; }
.platform-network-icon {
    display: grid;
    flex: 0 0 38px;
    place-items: center;
    width: 38px;
    height: 38px;
    border-radius: 11px;
    background: #edf1ff;
    color: #536dcc;
    font-size: 17px;
}
.platform-network-kicker { color: #65738c; font-size: 10px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; }
.platform-network-record { display: grid; gap: 11px; margin-top: 20px; padding-top: 17px; border-top: 1px solid #edf0f7; }
.platform-network-record span { display: flex; align-items: center; gap: 10px; color: #65738c; font-size: 12px; }
.platform-network-record i { color: #49867d; font-size: 10px; }
.platform-network-practice {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 46%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 210px;
    height: 210px;
    border: 1px solid #738bef;
    border-radius: 50%;
    background: linear-gradient(145deg, #536ed5, #354d9c);
    box-shadow: 0 18px 45px #445fb733, inset 0 1px 0 #ffffff40;
    text-align: center;
    transform: translate(-50%, -50%);
}
.platform-network-practice h3 { margin-top: 8px; color: #fff; font-size: 23px; }
.platform-network-practice p { color: #e4eaff; }
.platform-network-practice .platform-network-kicker { color: #d8e1ff; }
.platform-network-orbit { position: absolute; inset: -15px; border: 1px solid #a2b3ee; border-radius: 50%; }
.platform-network-orbit::after {
    content: '';
    position: absolute;
    inset: -13px;
    border: 1px solid #acbcef;
    border-radius: 50%;
    animation: network-ripple 5s ease-out infinite;
}
.platform-network-connections { margin: 0; padding: 0; list-style: none; }
.platform-network-connections li {
    left: 66%;
    width: 31%;
    padding: 18px;
    transform: translateY(-50%);
}
.platform-network-connections h3 { font-size: 17px; }
.platform-network-connection-heading { display: flex; align-items: center; gap: 12px; }
.platform-network-connections p { margin-top: 10px; font-size: 13px; }
.platform-network-colleagues { top: calc(50% - 220px); }
.platform-network-specialists { top: 50%; }
.platform-network-technology { top: calc(50% + 220px); }
.platform-network-specialists .platform-network-icon { background: #e8f4f0; color: #3d8074; }
.platform-network-technology .platform-network-icon { background: #f1ecfa; color: #8463b2; }
@keyframes network-flow { from { stroke-dashoffset: 100; } to { stroke-dashoffset: 0; } }
@keyframes network-ripple { 0% { transform: scale(.94); opacity: .7; } 80%, 100% { transform: scale(1.13); opacity: 0; } }
@media (min-width: 992px) and (max-width: 1199px) {
    .platform-network-chart { padding: 18px; }
    .platform-network-card-top { flex-direction: column; align-items: flex-start; }
    .platform-network-practice { width: 175px; height: 175px; }
    .platform-network-practice h3 { font-size: 20px; }
    .platform-network-connections li { padding: 15px; }
    .platform-network-connections .platform-network-icon { flex-basis: 28px; width: 28px; height: 28px; font-size: 14px; border-radius: 8px; }
}
@media (max-width: 991px) {
    .platform-network-scene { display: flex; flex-direction: column; align-items: center; height: auto; padding: 70px 22px 36px; }
    .platform-network-paths { display: none; }
    .platform-network-chart, .platform-network-practice, .platform-network-connections li { position: relative; top: auto; left: auto; transform: none; }
    .platform-network-chart { width: 100%; max-width: 440px; padding: 20px; }
    .platform-network-chart p br { display: none; }
    .platform-network-card-top { margin-bottom: 12px; }
    .platform-network-record { gap: 8px; margin-top: 14px; padding-top: 14px; }
    .platform-network-practice { flex: 0 0 190px; width: 190px; height: 190px; margin: 54px 0; }
    .platform-network-practice::before, .platform-network-practice::after { content: ''; position: absolute; left: 50%; width: 2px; height: 54px; background: #a2b3ee; }
    .platform-network-practice::before { bottom: 100%; }
    .platform-network-practice::after { top: 100%; }
    .platform-network-connections { display: grid; gap: 12px; width: 100%; max-width: 440px; }
    .platform-network-connections li { width: 100%; padding: 20px; }
}
@media (prefers-reduced-motion: reduce) {
    .platform-network-signals use, .platform-network-orbit::after { animation: none; }
    .platform-network-signals use { stroke-dasharray: none; opacity: .45; }
    .platform-network-orbit::after { opacity: .4; }
}
.platform-closing { display: grid; align-content: center; min-height: 100vh; min-height: 100dvh; padding-block: clamp(32px, 5vh, 64px); }
.platform-closing-panel { display: flex; flex-direction: column; align-items: center; gap: 40px; text-align: center; }
.platform-closing-panel h2 { margin-bottom: 20px; }
.platform-closing-panel p { max-width: 530px; margin-inline: auto; }
.platform-closing-panel .btn { flex-shrink: 0; }
@media (max-width: 767px) {
    .platform-closing-panel { gap: 28px; }
}
