@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:#0b0b0d;--bg-rgb:11,11,13;--panel:#15151a;--ink:#eef2f7;--ink-dim:#9aa4b2;--accent:#ff3b6b;--accent-rgb:255,59,107;--accent-2:#7c5cff;--accent2-rgb:124,92,255;--on-accent:#1a0610;--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:27ch}
.hero p.lead{margin-top:20px;color:var(--ink-dim);font-size:18px;max-width:80ch}
.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 Forge orange palette */
:root {
  --bg: #fff7ed;
  --bg-rgb: 255,247,237;
  --panel: #ffffff;
  --ink: #111111;
  --ink-dim: #4b5563;
  --accent: #ff7a18;
  --accent-rgb: 255,122,24;
  --accent-2: #111111;
  --accent2-rgb: 17,17,17;
  --on-accent: #111111;
  --line: rgba(17,17,17,.12);
}
body { background: var(--bg); color: var(--ink); }
.nav { background: rgba(255,255,255,.92); border-bottom: 1px solid var(--line); }
.brand, .nav-links a, .btn-ghost { color: var(--ink); }
.brand span, .eyebrow, .kpi b, footer a { color: var(--accent); }
.btn-primary { background: var(--accent); color: #111; border: 1px solid var(--accent); }
.btn-ghost { background: rgba(255,255,255,.76); border-color: rgba(17,17,17,.2); }
.hero {
  background-image: linear-gradient(90deg, rgba(255,247,237,.88), rgba(255,247,237,.54) 42%, rgba(17,17,17,.28)), var(--hero-img);
}
.hero::before { background: radial-gradient(50% 55% at 20% 0%, rgba(255,122,24,.30), transparent 60%); }
.hero h1 { color: #111; }
.hero .lead { color: #1f2937; }
.card, .kpi { background: #fff; border-color: rgba(17,17,17,.12); }
.card:hover { border-color: rgba(255,122,24,.55); }
.cta-band { background: linear-gradient(135deg, rgba(255,122,24,.22), rgba(255,255,255,.9)); border-color: rgba(255,122,24,.35); color: #111; }
footer { color: #4b5563; border-top-color: rgba(17,17,17,.12); }
/* 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;
  }
}
