/* Extra UI blocks for HMIS-FOX pages */
.breadcrumbs{font-size:13px;color:#475569;margin:0 0 14px 0}
.breadcrumbs a{color:#005f86;text-decoration:underline;text-underline-offset:3px}
.page-wrap{padding:0 0 64px 0}
.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:16px;align-items:start}
@media (max-width:980px){.two-col{grid-template-columns:1fr}}
.feature-list{margin:10px 0 0 0;padding:0 18px;color:#475569;line-height:1.9}
.kpi{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media (max-width:980px){.kpi{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.kpi{grid-template-columns:1fr}}
.kpi .metric{padding:14px}
.module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media (max-width:980px){.module-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.module-grid{grid-template-columns:1fr}}
.module-card{padding:18px}
.module-card h3{margin:8px 0;color:#005f86;font-size:18px}
.module-card p{margin:0;color:#475569;line-height:1.7}
.module-card .pill{margin-bottom:10px}
.cta-inline{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.faq{display:grid;gap:12px}
details.faq-item{border:1px solid rgba(0,0,0,.08);border-radius:14px;padding:12px 14px;background:rgba(255,255,255,.7)}
details.faq-item summary{cursor:pointer;font-weight:800;color:#0f172a}
details.faq-item p{margin:8px 0 0 0;color:#475569;line-height:1.8}
.note{font-size:13px;color:#475569}
.active{color:#005f86}

/* FAQ / details improvements */
details.glass{padding:12px 14px}
details.glass summary{cursor:pointer;font-weight:800;color:#0f172a;list-style:none}
details.glass summary::-webkit-details-marker{display:none}
details.glass summary:after{content:"＋";float:left;color:#005f86;font-weight:900}
details.glass[open] summary:after{content:"－"}
details.glass p{margin:10px 0 0 0;color:#475569;line-height:1.8}


/* SEO helper block */
.seo-block{padding:26px 0}
.seo-text{padding:18px}
.seo-text h2{margin:0 0 8px 0;color:#0b1220;font-size:18px}
.seo-text p{margin:0;color:#475569;line-height:1.9;font-size:14px}

/* News */
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media (max-width:980px){.news-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.news-grid{grid-template-columns:1fr}}
.news-card{padding:18px}
.news-card h3{margin:8px 0;color:#005f86;font-size:18px}
.news-card p{margin:0;color:#475569;line-height:1.7}
.news-meta{display:flex;gap:10px;flex-wrap:wrap;font-size:13px;color:#475569;margin-bottom:8px}


/* Clients marquee (homepage) */
.clients-marquee .marquee{
  padding: 14px;
  overflow: hidden;
}
.marquee-track{
  display: flex;
  gap: 14px;
  align-items: center;
  width: max-content;
  animation: hmisfox-marquee 38s linear infinite;
  will-change: transform;
}
.marquee:hover .marquee-track{ animation-play-state: paused; }
.logo-card{
  flex: 0 0 auto;
  min-width: 220px;
  height: 88px;
  padding: 10px 14px;
  border-radius: 16px;
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(0,0,0,.06);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  box-shadow: 0 10px 22px rgba(2,6,23,.06);
}
.logo-card img{
  max-height: 64px;
  width: auto;
  object-fit: contain;
}
.logo-card.text span{
  font-weight: 900;
  color: #0f172a;
  font-size: 18px;
}
.logo-card.cta{
  flex-direction: column;
  text-align: center;
  border-style: dashed;
  border-color: rgba(0,95,134,.28);
}
.logo-card.cta .cta-top{
  font-weight: 950;
  color: var(--brand-blue);
  font-size: 20px;
}
.logo-card.cta .cta-sub{
  color: #475569;
  font-weight: 700;
  font-size: 14px;
}
@keyframes hmisfox-marquee{
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}
@media (max-width: 640px){
  .logo-card{ min-width: 170px; height: 78px; }
  .logo-card img{ max-height: 56px; }
  .logo-card.text span{ font-size: 16px; }
}
@media (prefers-reduced-motion: reduce){
  .marquee-track{ animation: none; }
}
