/* Shared CIICAM navigation and footer for Pulso Sanitario. The article styles
   remain local to the supplied pages. */
:root { --ciicam-teal: #0cb8b3; --ciicam-navy: #03162a; }
body { padding-left: 0; padding-right: 0; }
body.menu-open { overflow: hidden; }
.blog-content { padding-left: max(16px, env(safe-area-inset-left, 0px)); padding-right: max(16px, env(safe-area-inset-right, 0px)); }
.ciicam-skip { position: absolute; left: -999px; top: 10px; z-index: 100; padding: 10px 14px; background: #fff; font: 700 14px "DM Sans", sans-serif; }
.ciicam-skip:focus { left: 10px; }

.site-header, .site-header * , .ciicam-footer, .ciicam-footer * { box-sizing: border-box; }
.site-header {
  position: relative; z-index: 30; min-height: 92px; display: flex; flex-wrap: nowrap;
  align-items: center; justify-content: space-between; gap: 24px;
  padding: 9px max(3vw, 20px); background: rgba(255,255,255,.98);
  border-bottom: 1px solid rgba(3,22,42,.12);
  box-shadow: 0 8px 28px rgba(3,22,42,.07);
  font-family: "DM Sans", sans-serif; line-height: 1.6;
}
.ciicam-brand {
  min-width: 0; display: flex; align-items: center; gap: 15px;
  padding: 5px 14px 5px 7px; border: 1px solid rgba(10,173,178,.2);
  border-radius: 10px; background: linear-gradient(135deg,#fff 55%,rgba(62,216,208,.08));
  box-shadow: 0 8px 24px rgba(3,22,42,.08); text-decoration: none;
}
.ciicam-brand img { width: 292px; height: 68px; object-fit: contain; object-position: left center; max-width: none; }
.ciicam-brand span {
  max-width: 165px; padding-left: 15px; border-left: 2px solid var(--ciicam-teal);
  color: #29495a; font-size: .7rem; font-weight: 800; line-height: 1.3;
  letter-spacing: .055em; text-transform: uppercase;
}
.site-header nav { display: flex; align-items: center; gap: 23px; }
.site-header nav a { text-decoration: none; color: #20394a; font-size: .86rem; font-weight: 700; white-space: nowrap; }
.site-header nav a:hover, .site-header nav a[aria-current="page"] { color: #087d82; }
.site-header .nav-cta { padding: 10px 17px; background: var(--ciicam-teal); color: var(--ciicam-navy); }
.site-header .menu-toggle {
  display: none; padding: 8px 12px; background: transparent;
  border: 1px solid var(--ciicam-navy); color: var(--ciicam-navy);
  font: 700 .85rem "DM Sans", sans-serif; cursor: pointer;
}

.ciicam-footer {
  padding: 48px max(5vw, 24px) 24px; background: #020f1d; color: #fff;
  font: 400 16px/1.6 "DM Sans", sans-serif;
}
.ciicam-footer .footer-top {
  max-width: 1240px; margin: auto; display: grid;
  grid-template-columns: 1.2fr .8fr auto; gap: 50px; align-items: center;
}
.ciicam-footer .footer-top img { width: 360px; max-width: 100%; display: block; }
.ciicam-footer .footer-top p { margin: 10px 0 0; color: #78929f; font-size: .72rem; text-transform: uppercase; letter-spacing: .08em; }
.ciicam-footer .footer-nexa b, .ciicam-footer .footer-nexa span { display: block; }
.ciicam-footer .footer-nexa b { font: 800 1.25rem "Manrope", sans-serif; }
.ciicam-footer .footer-nexa b em { color: #3ed8d0; font-style: normal; }
.ciicam-footer .footer-nexa span { margin-top: 5px; color: #77919e; font-size: .72rem; }
.ciicam-footer .footer-links { display: flex; gap: 17px; }
.ciicam-footer .footer-links a { color: #fff; text-decoration: none; font-size: .78rem; }
.ciicam-footer > small {
  max-width: 1240px; display: block; margin: 30px auto 0; padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,.11); color: #8aa1ad; font-size: .68rem;
}

@media (max-width: 1510px) {
  .ciicam-brand span { display: none; }
  .ciicam-brand img { width: 260px; height: 62px; }
  .site-header nav { gap: 16px; }
}
@media (max-width: 1260px) {
  .site-header { min-height: 80px; }
  .ciicam-brand { padding: 4px 10px 4px 5px; }
  .ciicam-brand img { width: 245px; height: 58px; }
  .site-header .menu-toggle { display: block; }
  .site-header nav {
    display: none; position: absolute; left: 0; right: 0; top: 80px;
    max-height: calc(100vh - 80px); overflow: auto; flex-direction: column;
    align-items: stretch; padding: 24px; background: #fff;
    border-bottom: 1px solid #d7e4e9;
  }
  .site-header nav.open { display: flex; }
  .site-header nav a { padding: 9px 0; }
  .site-header .nav-cta { text-align: center; }
}
@media (max-width: 700px) {
  .ciicam-footer .footer-top { grid-template-columns: 1fr; gap: 28px; }
}
@media (max-width: 540px) {
  .site-header { gap: 10px; padding-inline: 12px; }
  .ciicam-brand { padding-right: 7px; }
  .ciicam-brand img { width: min(62vw, 220px); height: 54px; }
  .ciicam-footer .footer-links { flex-wrap: wrap; }
}
@media (prefers-color-scheme: dark) {
  .site-header { background: #101b2a; border-bottom-color: #263c4a; }
  .site-header nav a { color: #e8ecf3; }
  .site-header nav a:hover, .site-header nav a[aria-current="page"] { color: #5ce0dd; }
  .site-header .menu-toggle { color: #e8ecf3; border-color: #9aa6ba; }
  .site-header .nav-cta { color: var(--ciicam-navy); }
}
@media (prefers-color-scheme: dark) and (max-width: 1260px) {
  .site-header nav { background: #101b2a; border-color: #263c4a; }
}
