
/* Sistemas del Sur — Final v2025-12-30 */
:root {
  --brand-blue:#1a5e9d;
  --brand-graphite:#2f3136;
  --brand-white:#ffffff;
  --brand-red:#DF0000;
  --text:#0f172a;
  --muted:#334155;
  --bg-soft:#f8fafc;
  --bg-soft-2:#eef2ff;
  --border:#e2e8f0;
  --footer-dark:#0f172a;
  --footer-text:#cbd5e1;
}
html { scroll-behavior:smooth; }
body { font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'SF Pro Display', 'Helvetica Neue', Helvetica, Arial, sans-serif; color:var(--text); font-size:15px; line-height:1.5; }
.container { max-width:1140px; }

/* Header glass minimal */
.glass-header { position:sticky; top:0; z-index:1030; backdrop-filter: saturate(180%) blur(12px); background: rgba(255,255,255,0.78); border-bottom:1px solid rgba(226,232,240,0.7); }
.navbar-brand img { max-height:36px; }
.navbar .nav-link { color: var(--text); font-weight:600; letter-spacing:.01em; position:relative; padding:.7rem .7rem; }
.navbar .nav-link::after { content:''; position:absolute; left:.7rem; right:.7rem; bottom:.45rem; height:2px; background: linear-gradient(90deg, var(--brand-blue), rgba(26,94,157,.35)); transform: scaleX(0); transform-origin: left; transition: transform .28s ease; opacity:.9; }
.navbar .nav-link:hover { color: var(--brand-graphite); }
.navbar .nav-link:hover::after { transform: scaleX(1); }

/* Header buttons */
.btn-portal { background: var(--brand-red); color:#ffffff !important; font-weight:700; border:none; border-radius:999px; padding:.45rem .9rem; box-shadow: 0 8px 20px rgba(223,0,0,.22); }
.btn-portal:hover { background: var(--brand-red); color:#fff !important; filter:brightness(1.06); box-shadow:0 10px 24px rgba(223,0,0,.30); }
.btn-portal-outline { border:2px solid var(--brand-blue); color:var(--brand-blue) !important; background:#fff; border-radius:999px; font-weight:700; }

/* Hero (Apple-like minimal) */
.hero { background: linear-gradient(180deg, var(--bg-soft) 0%, var(--bg-soft-2) 100%); color:#0f172a; padding: 3.2rem 0 2.2rem; }
.hero h1 { font-weight:800; margin-bottom:.4rem; font-size:28px; }
.hero .lead-strong { font-size:15px; color:var(--muted); }
.chip-group { margin-top:.75rem; }
.chip { display:inline-flex; align-items:center; gap:.35rem; background:#ffffff; color:var(--brand-blue); border:1px solid #e5e7eb; border-radius:999px; padding:.28rem .6rem; margin:.2rem; font-size:13px; }

/* CTA */
.btn-cta-primary { background: var(--brand-blue); color:#fff; border:none; border-radius:12px; font-weight:800; padding:.7rem 1.15rem; box-shadow:0 8px 20px rgba(26,94,157,.25); font-size:14px; }
.btn-cta-primary:hover { filter:brightness(1.05); box-shadow:0 10px 24px rgba(26,94,157,.32); }
.btn-cta-secondary { background:#ffffff; color:#0f172a; border:1.5px solid #d6e3f5; border-radius:12px; font-weight:700; padding:.7rem 1.15rem; font-size:14px; }
.btn-cta-secondary:hover { background:#f0f6fb; }

/* Values tiles */
.value-tiles .tile { background:#ffffff; border:1px solid #e5e7eb; border-radius:12px; padding:.85rem; color:#0f172a; box-shadow:0 6px 18px rgba(0,0,0,.06); }
.value-tiles .tile strong { color:#0f172a; font-size:14px; }
.value-tiles .tile .small { color:#334155; font-size:13px; }

/* Sectors chips */
.sectors { display:flex; flex-wrap:wrap; gap:.4rem; margin-top:.8rem; }
.sector-chip { display:inline-flex; align-items:center; gap:.38rem; background:#fff; color:var(--brand-blue); border:1.4px solid rgba(26,94,157,.45); border-radius:999px; padding:.35rem .7rem; font-weight:600; box-shadow:0 6px 16px rgba(26,94,157,.10); font-size:13px; }
.sector-chip .dot { width:9px; height:9px; border-radius:999px; background: var(--brand-red); }
.sector-chip:hover { background: rgba(26,94,157,.06); }

/* Sections/cards */
.section-title { font-weight:800; color:var(--brand-graphite); font-size:20px; }
.section-sub { color:#334155; font-size:14px; }
.card-service { border:1px solid #e5e7eb; border-radius:12px; background:#fff; box-shadow:0 6px 18px rgba(0,0,0,.06); padding:.9rem; }
.card-service .icon { width:42px; height:42px; border-radius:10px; display:inline-flex; align-items:center; justify-content:center; background:rgba(26,94,157,.12); color:var(--brand-blue); font-size:20px; }
.card-service ul { margin:.4rem 0 0 0; padding-left:1rem; }
.card-service ul li { font-size:13px; color:#334155; }

/* Ecosystem */
.ecosystem .brand-box { border:1px dashed #cbd5e1; border-radius:12px; padding:16px; background:#f9fafb; height:100px; display:flex; align-items:center; justify-content:center; }
.ecosystem .brand-box img { max-height:64px; max-width:160px; filter:grayscale(25%); }

/* Map */
.map-embed { border:1px solid #e2e8f0; border-radius:12px; overflow:hidden; background:#fff; box-shadow:0 6px 18px rgba(0,0,0,.06); }
.map-embed iframe { width:100%; height:320px; border:0; }

/* Footer (dark, logo white area) */
.footer { background: var(--footer-dark); color: var(--footer-text); padding:2rem 0 0; }
.footer a { color:#e2e8f0; text-decoration:none; }
.footer a:hover { text-decoration:underline; }
.footer .footer-top { padding-bottom:1rem; }
.footer .footer-logo { height:50px; display:flex; align-items:center; }
.footer .footer-logo img { max-height:42px; }
.footer h6 { color:#ffffff; font-weight:700; font-size:14px; }
.footer .copy { border-top:1px solid rgba(226,232,240,.25); padding:.8rem 0; font-size:12.5px; color:#94a3b8; }

/* WhatsApp float */
.whatsapp-float { position:fixed; right:18px; bottom:calc(18px + env(safe-area-inset-bottom)); z-index:1060; }
.whatsapp-float .btn { background:#25D366; color:#fff; border-radius:50px; box-shadow:0 10px 24px rgba(37,211,102,.35); padding:.65rem 1rem; font-weight:700; }
.whatsapp-float .btn .bi { margin-right:.35rem; }

/* Submit button */
.btn-brand{ background: var(--brand-blue); color:#fff !important; border:none; border-radius:10px; font-weight:700; padding:.55rem .9rem; box-shadow:0 6px 16px rgba(26,94,157,.20);} 
.btn-brand:hover{ filter:brightness(1.06); box-shadow:0 8px 20px rgba(26,94,157,.28);} 

@media (max-width:992px){ .navbar .nav-link{ padding:.6rem .6rem; } }
@media (max-width:767px){ .hero{ padding:2.8rem 0 1.8rem; } .map-embed iframe{ height:260px; } }
