/* Siempre Activo · páginas de contenido (servicios, sectores, ciudades, blog). Generadas por seo_pages.py */
:root {
  --night: #050A17; --deep: #081124; --navy: #0A1630; --steel: #13284B; --cobalt: #2B5BFF; --sky: #8FB0FF;
  --bone: #EFE8D8; --mute: rgba(239, 232, 216, .78); --line: rgba(239, 232, 216, .14);
  --display: "Bricolage Grotesque", ui-sans-serif, system-ui, sans-serif;
  --serif: "Instrument Serif", ui-serif, Georgia, serif;
  --mono: "JetBrains Mono", ui-monospace, Menlo, monospace;
  --gut: clamp(16px, 4vw, 48px);
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--night); color: var(--bone); font: 400 18px/1.65 var(--display); -webkit-font-smoothing: antialiased; }
a { color: inherit; }
:focus-visible { outline: 2px solid var(--sky); outline-offset: 3px; border-radius: 6px; }

.pg-nav { position: sticky; top: 0; z-index: 10; display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap;
  padding: 14px var(--gut); background: rgba(5, 10, 23, .86); backdrop-filter: blur(12px); border-bottom: 1px solid var(--line); }
.pg-logo { display: inline-flex; align-items: center; gap: 10px; font-weight: 700; font-size: 19px; letter-spacing: -.02em; text-decoration: none; }
.pg-dot { width: 9px; height: 9px; border-radius: 50%; background: var(--sky); box-shadow: 0 0 14px var(--cobalt); }
.pg-nav nav { display: flex; gap: 4px 18px; flex-wrap: wrap; align-items: center; font-size: 15px; }
.pg-nav nav a { text-decoration: none; color: var(--mute); }
.pg-nav nav a:hover { color: var(--bone); }
.pg-nav .pg-cta { color: var(--night); background: var(--bone); padding: 8px 14px; border-radius: 99px; font-weight: 600; }

.pg { padding: clamp(28px, 6vw, 72px) var(--gut) 40px; }
.pg-art { max-width: 820px; margin: 0 auto; }
.pg-crumbs { font: 500 13px/1.4 var(--mono); color: var(--mute); margin: 0 0 26px; }
.pg-crumbs a { text-decoration: none; } .pg-crumbs a:hover { text-decoration: underline; }
.pg-kicker { font: 500 13px/1 var(--mono); letter-spacing: .08em; text-transform: uppercase; color: var(--sky); margin: 0 0 14px; }
.pg h1 { font-size: clamp(36px, 6vw, 64px); line-height: 1.02; letter-spacing: -.035em; font-weight: 750; margin: 0 0 18px; }
.pg h2 { font-size: clamp(25px, 3.4vw, 34px); line-height: 1.12; letter-spacing: -.025em; font-weight: 700; margin: 48px 0 14px; }
.pg-meta { color: var(--mute); font-size: 15px; margin: 0 0 18px; }
.pg-intro p { font-size: clamp(19px, 2vw, 22px); color: var(--bone); }
.pg p, .pg li { color: var(--mute); }
.pg ul { padding-left: 1.1em; margin: 0 0 1em; }
.pg li { margin: 0 0 8px; }
.pg li::marker { color: var(--sky); }

.pg-actions { display: flex; gap: 12px; flex-wrap: wrap; margin: 26px 0 8px; }
.pg-btn { display: inline-flex; align-items: center; height: 52px; padding: 0 24px; border-radius: 99px; background: var(--bone); color: var(--night); font-weight: 650; text-decoration: none; }
.pg-btn:hover { background: #fff; }
.pg-btn--ghost { background: transparent; color: var(--bone); border: 1px solid var(--line); }
.pg-btn--ghost:hover { background: var(--navy); }

.pg-faq details { border-top: 1px solid var(--line); padding: 14px 0; }
.pg-faq details:last-child { border-bottom: 1px solid var(--line); }
.pg-faq summary { cursor: pointer; font-weight: 600; color: var(--bone); }
.pg-faq details p { margin: 10px 0 0; }

.pg-band { margin: 56px 0 0; padding: clamp(24px, 4vw, 40px); border-radius: 22px; background: linear-gradient(135deg, var(--steel), var(--navy)); border: 1px solid var(--line); }
.pg-band h2 { margin-top: 0; }

.pg-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; }
.pg-cards--big { grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); margin-top: 28px; }
.pg-card { display: flex; flex-direction: column; gap: 6px; padding: 18px; border-radius: 18px; background: var(--deep); border: 1px solid var(--line); text-decoration: none; transition: border-color .2s, transform .2s; }
.pg-card:hover { border-color: var(--sky); transform: translateY(-2px); }
.pg-card small { font: 500 12px/1.3 var(--mono); letter-spacing: .06em; text-transform: uppercase; color: var(--sky); }
.pg-card strong { font-size: 19px; line-height: 1.2; color: var(--bone); }
.pg-card span { font-size: 15px; color: var(--mute); line-height: 1.45; }

.pg-foot { margin-top: 64px; padding: 40px var(--gut) 28px; border-top: 1px solid var(--line); background: var(--deep); font-size: 15px; }
.pg-foot__grid { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 24px; }
.pg-foot h3 { font: 500 12px/1 var(--mono); letter-spacing: .08em; text-transform: uppercase; color: var(--sky); margin: 0 0 12px; }
.pg-foot__grid a { display: block; color: var(--mute); text-decoration: none; padding: 3px 0; }
.pg-foot__grid a:hover { color: var(--bone); }
.pg-foot__base { max-width: 1200px; margin: 28px auto 0; display: flex; flex-wrap: wrap; gap: 8px 24px; justify-content: space-between; color: var(--mute); font-size: 13.5px; }
.pg-foot__base a { color: var(--mute); }
@media (max-width: 640px) { .pg-nav nav { font-size: 14px; gap: 4px 12px; } .pg-btn { height: 48px; padding: 0 20px; } }
