/* Medical signal layer. Original layout, typography and service structure retained. */
.art{opacity:.28}
.lifeline{position:absolute;inset:auto -12% 14%;width:124%;pointer-events:none;z-index:1}
.lifeline svg{display:block;width:100%;overflow:visible}
.echo{transform-origin:center;animation:signal-breathe 8s ease-in-out infinite}
.echo-one{transform:translateY(-25px);animation-delay:-4s}
.echo-two{transform:translateY(26px);opacity:.65}
.signal-scan{stroke-dasharray:3 97;animation:signal-travel 6s linear infinite;filter:drop-shadow(0 0 5px #ed778888)}
@keyframes signal-travel{from{stroke-dashoffset:3}to{stroke-dashoffset:-97}}
@keyframes signal-breathe{0%,100%{opacity:.3}50%{opacity:.85}}
.paused .lifeline *{animation-play-state:paused}
.medical-accent{stroke:#c94158}
.icon{background:linear-gradient(145deg,#eef2ff,#f7f5fa)}
@media(max-width:850px){.lifeline{inset:auto -20% -26px auto;width:90%;opacity:.65}.art{opacity:.22}.visual-title{max-width:100%}.tags{max-width:88%}}
@media(max-width:480px){.lifeline{width:108%;right:-37%;bottom:-25px;opacity:.42}.tags{max-width:93%}}
@media(prefers-reduced-motion:reduce){.lifeline *{animation:none!important}}
@media(max-width:850px){.visual{padding-bottom:64px}.lifeline{bottom:-80px;opacity:.6}}
@media(max-width:480px){.lifeline{bottom:-66px;opacity:.52}}
/* Stronger medical accents, retaining the original blue brand mark. */
.icon{color:#c6384e;background:#fff0f2;border-color:#f0cbd2}
.medical-accent{stroke:#b52640;stroke-width:1.9}
.brand .mark{position:relative}
.brand .mark::after{content:'+';position:absolute;right:-6px;bottom:-5px;width:17px;height:17px;display:grid;place-items:center;border:2px solid var(--paper);background:#c6384e;color:#fff;border-radius:4px;font:bold 15px/1 Arial,sans-serif;letter-spacing:0}
