/* shared visual identity — used by index, consultoria, santiago-planner */
:root {
  --wlc-red:    #DB3A3D;
  --wlc-blue:   #1E55B5;
  --wlc-navy:   #1B2A5E;
  --wlc-yellow: #F5B71C;
  --wlc-cream:  #F3E8D5;
}

@font-face {
  font-family: 'Chalkiez';
  src: url('/assets/fonts/Chalkiez-Regular.woff2') format('woff2'),
       url('/assets/fonts/Chalkiez-Regular.otf')   format('opentype');
  font-weight: 400;
  font-display: swap;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  font-family: 'Lufga', sans-serif;
  background: var(--wlc-cream);
  color: var(--wlc-navy);
  line-height: 1.6;
}

/* NAV */
nav.wlp-nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 100;
  background: rgba(243, 232, 213, 0.95);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid rgba(27, 42, 94, 0.1);
  padding: 0 24px; height: 64px;
  display: flex; align-items: center; justify-content: space-between;
}
.nav-brand { display: flex; flex-direction: column; gap: 0; text-decoration: none; }
.nav-logo {
  font-family: 'Chalkiez', sans-serif;
  font-size: 1.5rem; color: var(--wlc-red); line-height: 1.1;
}
.nav-sub {
  font-size: 0.65rem; font-weight: 500; color: var(--wlc-navy);
  opacity: 0.65; letter-spacing: 0.03em; text-transform: uppercase;
}
.nav-actions { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.nav-cta {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 8px 16px; border: 2px solid var(--wlc-red);
  color: var(--wlc-red); background: transparent;
  border-radius: 8px; font-family: 'Lufga', sans-serif;
  font-weight: 600; font-size: 0.82rem; text-decoration: none;
  transition: background 0.2s, color 0.2s; white-space: nowrap;
}
.nav-cta:hover { background: var(--wlc-red); color: #fff; }
.nav-cta-filled { background: var(--wlc-red); color: #fff; }
.nav-cta-filled:hover { background: #c0282b; }

/* SECTIONS */
section { padding: 80px 24px; }
.container { max-width: 900px; margin: 0 auto; }
.section-label {
  display: inline-block; font-size: 0.75rem; font-weight: 700;
  letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--wlc-red); margin-bottom: 12px;
}
.section-title {
  font-size: clamp(1.4rem, 3vw, 2rem); font-weight: 800;
  color: var(--wlc-navy); margin-bottom: 40px; line-height: 1.25;
}
.bg-white { background: #fff; }
.bg-navy { background: var(--wlc-navy); color: #fff; }
.bg-navy .section-label { color: var(--wlc-yellow); }
.bg-navy .section-title { color: #fff; }

/* CARDS */
.inc-card {
  background: #fff; border-radius: 16px; padding: 32px;
  box-shadow: 0 2px 12px rgba(27, 42, 94, 0.06);
}
.inc-card-header {
  display: flex; align-items: center; gap: 10px;
  font-size: 1rem; font-weight: 700; color: var(--wlc-navy);
  margin-bottom: 20px;
}
.inc-badge {
  width: 28px; height: 28px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 0.85rem; flex-shrink: 0;
}
.inc-badge.yes { background: #dcfce7; }
.inc-badge.no  { background: #fee2e2; }
.inc-card ul { list-style: none; display: flex; flex-direction: column; gap: 12px; }
.inc-card li {
  display: flex; align-items: flex-start; gap: 10px;
  font-size: 0.92rem; color: #374151; line-height: 1.45;
}
.inc-card li::before { flex-shrink: 0; margin-top: 2px; }
.inc-card.yes-card li::before { content: '✅'; font-size: 0.8rem; }
.inc-card.no-card  li::before { content: '❌'; font-size: 0.8rem; }

.two-col { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
@media (max-width: 640px) { .two-col { grid-template-columns: 1fr; } }

/* STEPS */
.steps { display: flex; flex-direction: column; gap: 20px; }
.step {
  display: flex; gap: 20px; background: #fff;
  border-radius: 14px; padding: 24px 28px;
  box-shadow: 0 2px 10px rgba(27, 42, 94, 0.05);
  align-items: flex-start;
}
.step-num {
  flex-shrink: 0; width: 36px; height: 36px; border-radius: 50%;
  background: var(--wlc-red); color: #fff; font-weight: 800;
  font-size: 0.9rem; display: flex; align-items: center; justify-content: center;
}
.step-text { font-size: 0.95rem; color: #374151; line-height: 1.55; padding-top: 6px; }
.step-text strong { color: var(--wlc-navy); }

/* BUTTONS */
.btn-red {
  display: inline-block; padding: 16px 36px;
  background: var(--wlc-red); color: #fff;
  border-radius: 10px; font-family: 'Lufga', sans-serif;
  font-size: 1rem; font-weight: 700; text-decoration: none;
  transition: background 0.2s, transform 0.15s;
  box-shadow: 0 4px 20px rgba(219, 58, 61, 0.3);
}
.btn-red:hover { background: #c0282b; transform: translateY(-1px); }

.btn-yellow {
  display: inline-block; padding: 15px 32px;
  background: var(--wlc-yellow); color: var(--wlc-navy);
  border-radius: 10px; font-family: 'Lufga', sans-serif;
  font-size: 1rem; font-weight: 700; text-decoration: none;
  transition: filter 0.2s, transform 0.15s;
  box-shadow: 0 4px 16px rgba(245, 183, 28, 0.35);
}
.btn-yellow:hover { filter: brightness(0.93); transform: translateY(-1px); }

.btn-outline-white {
  display: inline-block; padding: 13px 30px;
  border: 2px solid rgba(255,255,255,0.6); color: #fff;
  border-radius: 10px; font-family: 'Lufga', sans-serif;
  font-size: 1rem; font-weight: 600; text-decoration: none;
  transition: background 0.2s;
}
.btn-outline-white:hover { background: rgba(255,255,255,0.1); }

/* FOOTER */
footer.wlp-footer {
  background: var(--wlc-navy); color: rgba(255,255,255,0.6);
  text-align: center; padding: 28px 24px; font-size: 0.82rem;
}
footer.wlp-footer .footer-links {
  display: flex; gap: 20px; justify-content: center;
  margin-top: 10px; flex-wrap: wrap;
}
footer.wlp-footer a {
  color: rgba(255,255,255,0.7); text-decoration: none;
  font-weight: 500; transition: color 0.15s;
}
footer.wlp-footer a:hover { color: #fff; }

/* MOBILE NAV */
@media (max-width: 720px) {
  nav.wlp-nav { padding: 0 14px; }
  .nav-cta { padding: 7px 12px; font-size: 0.75rem; }
  .nav-logo { font-size: 1.25rem; }
}
@media (max-width: 520px) {
  .nav-actions .nav-cta-secondary { display: none; }
}
