
/* 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:#f8fbfd;
  --bg-soft-2:#edf6fb;
  --border:#e2e8f0;
  --footer-dark:#0f172a;
  --footer-text:#cbd5e1;
}
html { scroll-behavior:smooth; scroll-padding-top:78px; }
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; }
section[id] { scroll-margin-top:78px; }

/* 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 .55rem; font-size:14px; }
.navbar .nav-link::after { content:''; position:absolute; left:.55rem; right:.55rem; 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%, #ffffff 68%, var(--bg-soft-2) 100%); color:#0f172a; padding: 3.2rem 0 2.2rem; border-bottom:1px solid #e7edf4; }
.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; }
.hero-actions { flex-wrap:wrap; }
.quick-ctas { display:flex; flex-wrap:wrap; gap:.4rem; margin-top:.65rem; }
.quick-cta { display:inline-flex; align-items:center; gap:.35rem; color:#0f172a; background:#fff; border:1px solid #d6e3f5; border-radius:999px; padding:.32rem .68rem; font-size:13px; font-weight:650; text-decoration:none; }
.quick-cta:hover { color:var(--brand-blue); background:#f0f6fb; }

/* Values tiles */
.value-tiles .tile { background:#ffffff; border:1px solid #e7edf4; border-radius:12px; padding:.85rem; color:#0f172a; box-shadow:0 5px 14px rgba(15,23,42,.045); }
.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:1rem; padding-top:1rem; border-top:1px solid rgba(26,94,157,.16); }
.sector-chip { display:inline-flex; align-items:center; gap:.38rem; background:#fff; color:var(--brand-blue); border:1px solid rgba(26,94,157,.28); border-radius:999px; padding:.35rem .7rem; font-weight:600; box-shadow:0 4px 12px rgba(26,94,157,.07); 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-white { background:#ffffff; }
.section-muted { background:#f7f9fc; box-shadow:inset 0 1px 0 #e9eef5, inset 0 -1px 0 #e9eef5; }
.section-tint { background:#f3f7fb; box-shadow:inset 0 1px 0 #e6edf5, inset 0 -1px 0 #e6edf5; }
.section-white, .section-muted, .section-tint { padding-top:2.5rem !important; padding-bottom:2.5rem !important; }
.section-roomy { padding-top:3.4rem !important; padding-bottom:3.4rem !important; }
.section-title { font-weight:800; color:var(--brand-graphite); font-size:20px; }
.section-sub { color:#334155; font-size:14px; }
.card-service { border:1px solid #e7edf4; border-radius:12px; background:#fff; box-shadow:0 5px 14px rgba(15,23,42,.04); 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; }
.value-list { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:.8rem 1.1rem; margin:0; padding:0; list-style:none; }
.value-list li, .compact-list li { color:#334155; font-size:13.5px; }
.value-list li { display:flex; align-items:flex-start; gap:.45rem; }
.value-list i { color:var(--brand-blue); margin-top:.1rem; }
.compact-list { margin:.4rem 0 0; padding-left:1rem; }
.managed-band { border-top:0; border-bottom:0; }
.managed-services { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:.75rem; margin:0; padding:0; list-style:none; }
.managed-services li { display:flex; align-items:flex-start; gap:.65rem; min-height:74px; border:1px solid #e7edf4; border-radius:12px; background:#fff; padding:.85rem; font-size:13.5px; color:#334155; box-shadow:0 5px 14px rgba(15,23,42,.04); }
.managed-services i { flex:0 0 auto; width:32px; height:32px; border-radius:10px; display:inline-flex; align-items:center; justify-content:center; color:var(--brand-blue); background:rgba(26,94,157,.10); margin-top:-.1rem; font-size:16px; }
.use-case { border:1px solid #e7edf4; border-radius:10px; background:#fff; padding:.7rem .8rem; min-height:58px; display:flex; align-items:center; gap:.5rem; color:#334155; font-size:13.5px; box-shadow:0 4px 12px rgba(15,23,42,.035); }
.use-case i { color:var(--brand-blue); font-size:18px; }
.work-step { height:100%; border:1px solid #e7edf4; border-radius:12px; background:#fff; padding:1rem; box-shadow:0 5px 14px rgba(15,23,42,.04); }
.work-step .step-number { display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; border-radius:999px; background:rgba(26,94,157,.12); color:var(--brand-blue); font-weight:800; font-size:13px; margin-bottom:.55rem; }
.work-step h6 { margin:0 0 .2rem; font-weight:800; }
.work-step p { margin:0; color:#334155; font-size:13.5px; }

/* Ecosystem */
.ecosystem .brand-box { border:1px solid #e7edf4; border-radius:12px; padding:16px; background:#fff; height:104px; display:flex; align-items:center; justify-content:center; box-shadow:0 4px 12px rgba(15,23,42,.035); }
.ecosystem .brand-box img { display:block; max-height:58px; max-width:170px; object-fit:contain; }
.ecosystem .brand-lockup { display:flex; align-items:center; justify-content:center; gap:.55rem; color:#0f172a; font-weight:800; font-size:18px; line-height:1; }
.ecosystem .brand-lockup img { max-width:34px; max-height:34px; }

/* Map */
.map-embed { border:1px solid #e2e8f0; border-radius:12px; overflow:hidden; background:#fff; box-shadow:0 5px 14px rgba(15,23,42,.04); }
.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; } .managed-services{ grid-template-columns:repeat(2, minmax(0, 1fr)); } }
@media (max-width:767px){ .hero{ padding:2.8rem 0 1.8rem; } .hero h1{ font-size:25px; } .map-embed iframe{ height:260px; } .value-list, .managed-services{ grid-template-columns:1fr; } }
