@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap');
:root{--bg:#0a0f0c;--bg-rgb:10,15,12;--panel:#111a14;--ink:#eef2f7;--ink-dim:#9aa4b2;--accent:#3fae6a;--accent-rgb:63,174,106;--accent-2:#d4b65a;--accent2-rgb:212,182,90;--on-accent:#06160d;--line:rgba(255,255,255,.08);--hero-img:url('fondo.png')}
*{box-sizing:border-box;margin:0;padding:0}
html,body{background:var(--bg);color:var(--ink);font-family:'Manrope',system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
h1,h2,h3,.brand{font-family:'Space Grotesk','Manrope',sans-serif;letter-spacing:-.01em}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{max-width:1120px;margin:0 auto;padding:0 24px}
.nav{position:sticky;top:0;z-index:10;background:rgba(var(--bg-rgb),.85);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{font-weight:700;letter-spacing:.5px}
.brand span{color:var(--accent)}
.nav-links{display:flex;gap:24px;font-size:14px;color:var(--ink-dim)}
.nav-links a:hover{color:var(--ink)}
.btn{display:inline-block;padding:12px 22px;border-radius:999px;font-weight:600;font-size:14px;transition:transform .15s}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--accent);color:var(--on-accent)}
.btn-ghost{border:1px solid var(--line);color:var(--ink);background:rgba(var(--bg-rgb),.35);backdrop-filter:blur(4px)}
.hero{padding:120px 0 96px;position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(var(--bg-rgb),.68),rgba(var(--bg-rgb),.90)),var(--hero-img) center/cover no-repeat}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 60% at 20% 0%,rgba(var(--accent2-rgb),.20),transparent 60%),radial-gradient(50% 50% at 90% 10%,rgba(var(--accent-rgb),.16),transparent 60%);pointer-events:none}
.hero .container{position:relative;z-index:1}
.eyebrow{display:inline-block;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--accent);margin-bottom:16px}
.hero h1{font-size:clamp(34px,5vw,58px);line-height:1.04;font-weight:700;letter-spacing:-.02em;max-width:18ch}
.hero p.lead{margin-top:20px;color:var(--ink-dim);font-size:18px;max-width:60ch}
.hero-cta{margin-top:32px;display:flex;gap:12px;flex-wrap:wrap}
.section{padding:72px 0;border-top:1px solid var(--line)}
.section h2{font-size:clamp(26px,3.4vw,38px);font-weight:700;letter-spacing:-.01em;max-width:22ch}
.section p.sub{color:var(--ink-dim);margin-top:10px;max-width:60ch}
.grid{display:grid;gap:18px;margin-top:36px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:24px;transition:border-color .2s,transform .2s}
.card:hover{border-color:rgba(var(--accent-rgb),.5);transform:translateY(-2px)}
.card h3{font-size:18px;margin-bottom:8px}
.card p{color:var(--ink-dim);font-size:14.5px}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:18px;margin-top:36px}
.kpi{padding:20px;background:var(--panel);border:1px solid var(--line);border-radius:14px;text-align:center}
.kpi b{display:block;font-size:30px;color:var(--accent);font-weight:700;font-family:'Space Grotesk',sans-serif}
.kpi span{color:var(--ink-dim);font-size:13px}
.cta-band{margin:80px 0;padding:48px 32px;border-radius:18px;background:linear-gradient(135deg,rgba(var(--accent2-rgb),.18),rgba(var(--accent-rgb),.12));border:1px solid var(--line);text-align:center}
.cta-band h2{margin:0 auto}
.cta-band .btn{margin-top:24px}
footer{padding:40px 0;border-top:1px solid var(--line);color:var(--ink-dim);font-size:13px;text-align:center}
footer a{color:var(--accent)}
.badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:rgba(var(--accent-rgb),.12);color:var(--accent);font-size:12px;letter-spacing:.5px}
@media (max-width:640px){.nav-links{display:none}.hero{padding:88px 0 56px}.section{padding:56px 0}}
/* WDS local hero background override */
:root { --hero-img: url('fondo.png'); }
.hero {
  min-height: 730px;
  padding: 470px 0 96px;
  background-image: linear-gradient(180deg, rgba(var(--bg-rgb, 12, 13, 15), .68), rgba(var(--bg-rgb, 12, 13, 15), .90)), var(--hero-img);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.hero h1,
.hero h2 { max-width: 27ch; }
.hero p.lead { max-width: 79ch; }
@media (max-width: 640px) {
  .hero {
    min-height: 360px;
    padding: 360px 0 56px;
  }
}
/* WDS premium readable section headings */
@media (min-width: 821px) {
  .section h2,
  .cta-band h2 {
    max-width: none;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
  }
}
@media (max-width: 820px) {
  .section h2,
  .cta-band h2 {
    white-space: normal;
  }
}
/* WDS Atlantica steel gray palette */
:root {
  --bg: #1d68b3;
  --bg-rgb: 18,20,22;
  --panel: #6d8398;
  --ink: #f3f5f6;
  --ink-dim: #c3c8cc;
  --accent: #b8c0c6;
  --accent-rgb: 184,192,198;
  --accent-2: #3c4247;
  --accent2-rgb: 60,66,71;
  --on-accent: #101214;
  --line: rgba(230, 234, 237, .14);
}

html,
body {
  background: #4f445e;
  color: #f3f5f6;
}

.nav {
  background: rgb(70 64 116 / 94%);
  border-bottom-color: rgba(230,234,237,.13);
}

.brand span,
.eyebrow,
.badge,
.kpi b,
footer a {
  color: #cbd3d8;
}

.nav-links,
.hero p.lead,
.section p.sub,
.card p,
.kpi span,
footer {
  color: #c3c8cc;
}

.btn-primary {
  background: linear-gradient(135deg, #d3d9dd, #919ba2);
  border: 1px solid rgba(255,255,255,.20);
  color: #101214;
  box-shadow: 0 12px 28px rgba(0,0,0,.22);
}

.btn-ghost {
  background: rgba(39,43,47,.72);
  border-color: rgba(230,234,237,.32);
  color: #f3f5f6;
}

.hero {
  background-image: linear-gradient(180deg, rgba(18,20,22,.52), rgba(18,20,22,.84)), var(--hero-img);
}

.hero::before {
  background: radial-gradient(55% 55% at 22% 0%, rgba(184,192,198,.18), transparent 62%);
}

.section {
  background: #504781;
  border-top-color: rgba(230,234,237,.13);
}

.card,
.kpi {
  background: linear-gradient(180deg, #6087ae, #22262a);
  border-color: rgba(230,234,237,.13);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 18px 40px rgba(0,0,0,.18);
}

.card:hover {
  border-color: rgba(203,211,216,.46);
}

.cta-band {
  background: linear-gradient(135deg, #385b77, #171a1d);
  border-color: rgba(230,234,237,.14);
}

.badge {
  background: rgba(203,211,216,.10);
}
