   html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
  display: block;
}
body {
  line-height: 1;
}
ol, ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}

    :root{
      --magenta:#E91E63;
      --magenta-2:#D81B60;
      --rosa:#F48FB1;
      --turquesa:#00B8D4;
      --turquesa-2:#00A3BD;
      --ink:#111827;
      --text:#374151;
      --muted:#6B7280;
      --bg:#FFFFFF;
      --soft:#F7F7FB;
      --soft-2:#F3F4F6;
      --border: rgba(17,24,39,.10);

      --radius: 18px;
      --radius-2: 26px;

      --shadow-sm: 0 6px 18px rgba(17,24,39,.08);
      --shadow-md: 0 14px 40px rgba(17,24,39,.12);

      --container-max: 1120px;
    }

    html{ scroll-behavior:smooth; }
    body{
      font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
      color: var(--text);
      background: var(--bg);
      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
    }
    h1,h2,h3,h4{
      font-family: 'Playfair Display', serif;
      color: var(--ink);
      letter-spacing: .2px;
    }
    .container-max{ max-width: var(--container-max); }

    /* Accessibility */
    :focus-visible{
      outline: 3px solid rgba(0,184,212,.55);
      outline-offset: 3px;
      border-radius: 12px;
    }

    /* Navbar */
    .nav-blur{
      background: rgba(255,255,255,.78);
      backdrop-filter: blur(10px);
      border-bottom: 1px solid var(--border);
    }
    .brand-mark{
      width: 42px; height: 42px; border-radius: 12px;
      background: radial-gradient(120% 120% at 10% 10%, rgba(0,184,212,.55), rgba(233,30,99,.55));
      display:grid; place-items:center;
      box-shadow: var(--shadow-sm);
      overflow:hidden;
    }
    .brand-mark img{
      width: 100%; height: 100%;
      object-fit: cover;
    }
    .nav-link{
      color: var(--text);
      font-weight: 600;
      opacity: .92;
    }
    .nav-link:hover{ color: var(--magenta); }
    .nav-link.active{
      color: var(--magenta) !important;
    }

    /* Buttons */
    .btn-main{
      background: linear-gradient(135deg, var(--magenta), var(--magenta-2));
      color:#fff;
      border: 0;
      padding: 12px 18px;
      border-radius: 999px;
      font-weight: 700;
      box-shadow: var(--shadow-sm);
    }
    .btn-main:hover{ filter: brightness(.98); transform: translateY(-1px); }
    .btn-ghost{
      background: rgba(0,184,212,.08);
      color: var(--turquesa-2);
      border: 1px solid rgba(0,184,212,.22);
      padding: 12px 18px;
      border-radius: 999px;
      font-weight: 800;
    }
    .btn-ghost:hover{ background: rgba(0,184,212,.12); transform: translateY(-1px); }

    /* Sections */
    .section{ padding: 88px 0; }
    .section-soft{ background: linear-gradient(180deg, var(--soft), #fff); }
    .eyebrow{
      display:inline-flex; align-items:center; gap:10px;
      color: var(--magenta);
      font-weight: 800;
      letter-spacing: .12em;
      text-transform: uppercase;
      font-size: .78rem;
    }

    img.logoFooter,
    img.logo-head {
        width: 10em;
        height: auto;
        display: block;
    }

    .eyebrow .dot{
      width: 10px; height: 10px; border-radius: 999px;
      background: radial-gradient(circle at 30% 30%, var(--turquesa), var(--magenta));
      box-shadow: 0 0 0 6px rgba(233,30,99,.08);
    }
    .title{
      font-weight: 700;
      margin-top: 10px;
    }
    .lead{
      color: var(--muted);
      line-height: 1.7;
    }

.hero {
  min-height: 100vh;
  display: flex;
  align-items: center;
  overflow: hidden;
}

/* Imagen de fondo */
.hero-bg {
  position: absolute;
  inset: 0;
  background: url('https://miriamsuarezpadilla.com/wp-content/uploads/2025/04/WhatsApp-Image-2025-04-02-at-12.19.15.jpeg') center/cover no-repeat;
  z-index: 1;
}

/* Overlay para contraste */
.hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    90deg,
    rgba(194, 24, 91, 0.85) 0%,
    rgba(194, 24, 91, 0.65) 40%,
    rgba(0, 184, 212, 0.25) 100%
  );
  z-index: 2;
}

/* Contenido arriba */
.hero .container {
  z-index: 3;
}

/* Tarjeta */
.hero-card {
  background: rgba(255,255,255,0.08);
  backdrop-filter: blur(10px);
  border-radius: 16px;
}

/* Texto blanco */
.hero h1,
.hero p,
.hero .hero-badge {
  color: #fff;
}

/* Botón secundario */
.btn-ghost {
  border: 1px solid #fff;
  color: #fff;
}

.btn-ghost:hover {
  background: #fff;
  color: var(--magenta);
}

/* Stats */
.stat {
  color: #fff;
}

.stat b {
  display: block;
}


    /* Cards */
    .card-soft{
      border-radius: var(--radius);
      border: 1px solid var(--border);
      box-shadow: var(--shadow-sm);
      overflow:hidden;
    }
    .card-soft .card-body{ padding: 22px; }
    .icon-pill{
      width: 48px; height: 48px;
      border-radius: 14px;
      display:grid; place-items:center;
      background: radial-gradient(120% 120% at 20% 20%, rgba(0,184,212,.22), rgba(233,30,99,.18));
      border: 1px solid rgba(233,30,99,.16);
      color: var(--ink);
    }
    .icon-pill i{ color: var(--turquesa-2); }

    /* Timeline / Agenda */
    .timeline{
      position:relative;
      padding-left: 22px;
    }
    .timeline::before{
      content:"";
      position:absolute;
      left: 9px;
      top: 0;
      bottom: 0;
      width: 2px;
      background: linear-gradient(var(--magenta), rgba(0,184,212,.35));
      border-radius: 999px;
      opacity: .55;
    }
    .t-item{
      position:relative;
      padding: 16px 16px 16px 22px;
      border-radius: 16px;
      border: 1px solid var(--border);
      background: rgba(255,255,255,.78);
      box-shadow: var(--shadow-sm);
      margin-bottom: 14px;
    }
    .t-item::before{
      content:"";
      position:absolute;
      left: -18px;
      top: 22px;
      width: 12px;
      height: 12px;
      border-radius: 999px;
      background: radial-gradient(circle at 30% 30%, var(--turquesa), var(--magenta));
      box-shadow: 0 0 0 6px rgba(0,184,212,.10);
    }
    .badge-soft{
      border: 1px solid rgba(0,184,212,.22);
      background: rgba(0,184,212,.08);
      color: var(--turquesa-2);
      font-weight: 800;
    }

    /* Quote */
    .quote{
      position:relative;
      border-radius: var(--radius-2);
      background: linear-gradient(135deg, rgba(233,30,99,.10), rgba(0,184,212,.10));
      border: 1px solid rgba(17,24,39,.08);
      overflow:hidden;
    }
    .quote::before{
      content:"";
      position:absolute;
      inset: -120px -160px auto auto;
      width: 360px; height: 360px;
      background: radial-gradient(circle at 35% 35%, rgba(233,30,99,.26), transparent 60%);
      pointer-events:none;
      filter: blur(1px);
    }

    /* Footer */
    footer{
      background: #0B0F19;
      color: rgba(255,255,255,.72);
      border-top: 1px solid rgba(255,255,255,.08);
    }
    .footer-link{ color: rgba(255,255,255,.70); text-decoration:none; }
    .footer-link:hover{ color: #fff; }

    /* Utilities */
    .divider{
      height: 1px;
      background: linear-gradient(90deg, transparent, rgba(17,24,39,.10), transparent);
      margin: 24px 0;
    }