
    :root {
      --font-main: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

      /* Tema claro */
      --bg-main-light: #f7f2eb;
      --bg-alt-light: #ffffff;
      --text-main-light: #1c1c24;
      --text-muted-light: #5a5a6a;
      --accent-light: #1b3558;
      --accent-soft-light: rgba(27, 53, 88, 0.08);
      --border-soft-light: rgba(0, 0, 0, 0.06);

      /* Tema oscuro */
      --bg-main-dark: #050816;
      --bg-alt-dark: #0b1020;
      --text-main-dark: #f5f5f7;
      --text-muted-dark: #a5a5b8;
      --accent-dark: #f4d38b;
      --accent-soft-dark: rgba(244, 211, 139, 0.12);
      --border-soft-dark: rgba(255, 255, 255, 0.09);
    }

    * {
      box-sizing: border-box;
    }

    html {
      scroll-behavior: smooth;
    }

    h1, h2, h3, h4 {
      margin: 0;
      line-height: 1.1;
    }

    p {
      margin: 0;
    }

    body {
      margin: 0;
      font-family: var(--font-main);
      background: var(--bg-main-light);
      color: var(--text-main-light);
      -webkit-font-smoothing: antialiased;
      overflow-x: hidden;
      transition: background 0.4s ease, color 0.4s ease;
    }

    body.dark-theme {
      background: radial-gradient(circle at top, #1b2138 0, var(--bg-main-dark) 40%, #02030a 100%);
      color: var(--text-main-dark);
    }

    .page {
      min-height: 100vh;
    }

    a {
      color: inherit;
      text-decoration: none;
    }

    .container {
      width: 100%;
      max-width: 1120px;
      margin: 0 auto;
      padding: 0 1.5rem;
    }

    @media (max-width: 480px) {
      .container {
        padding: 0 1.1rem;
      }
    }

    header {
      position: sticky;
      top: 0;
      z-index: 50;
      backdrop-filter: blur(18px);
      background: rgba(247, 242, 235, 0.9);
      border-bottom: 1px solid var(--border-soft-light);
      transition: background 0.4s ease, border-color 0.4s ease;
    }

    body.dark-theme header {
      background: rgba(5, 8, 22, 0.9);
      border-color: var(--border-soft-dark);
    }

    .header-inner {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 0.85rem 0;
      gap: 1rem;
      flex-wrap: wrap;
    }

    @media (max-width: 720px) {
      .header-inner {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 0.5rem;
        padding: 0.85rem 1.25rem;
      }
    }

    @media (max-width: 480px) {
      .header-inner {
        padding: 0.75rem 1.1rem;
      }
    }

    .brand {
      display: flex;
      align-items: center;
      gap: 0.75rem;
    }

    .brand-mark {
      width: 32px;
      height: 32px;
      border-radius: 999px;
      position: relative;
      background: conic-gradient(from 210deg, #f4d38b, #e29b61, #1b3558, #f4d38b);
      padding: 1px;
      flex-shrink: 0;
    }

    .brand-mark-inner {
      width: 100%;
      height: 100%;
      border-radius: inherit;
      background: var(--bg-main-light);
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
    }

    body.dark-theme .brand-mark-inner {
      background: var(--bg-main-dark);
    }

    .brand-triangle {
      width: 14px;
      height: 12px;
      background: linear-gradient(to bottom right, #1b3558, #e29b61);
      clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
    }

    body.dark-theme .brand-triangle {
      background: linear-gradient(to bottom right, #f4d38b, #f5895b);
    }

    .brand-text {
      display: flex;
      flex-direction: column;
      line-height: 1.1;
    }

    .brand-text span:first-child {
      font-weight: 600;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      font-size: 0.8rem;
    }

    .brand-tagline {
      font-size: 0.7rem;
      opacity: 0.75;
    }

    @media (max-width: 480px) {
      .brand-tagline {
        display: none;
      }
    }

    nav {
      display: flex;
      align-items: center;
      gap: 0.75rem;
      font-size: 0.8rem;
      text-transform: uppercase;
      letter-spacing: 0.12em;
      flex-wrap: wrap;
    }

    @media (max-width: 720px) {
      nav {
        gap: 0.6rem;
        font-size: 0.72rem;
        letter-spacing: 0.08em;
      }
    }

    @media (max-width: 480px) {
      nav {
        gap: 0.45rem;
        font-size: 0.68rem;
      }
    }

    .nav-link {
      position: relative;
      padding-bottom: 0.15rem;
      cursor: pointer;
      white-space: nowrap;
    }

    .nav-link::after {
      content: "";
      position: absolute;
      inset-inline: 0;
      bottom: 0;
      height: 1px;
      transform: scaleX(0);
      transform-origin: center;
      background: var(--accent-light);
      transition: transform 0.2s ease;
    }

    body.dark-theme .nav-link::after {
      background: var(--accent-dark);
    }

    .nav-link:hover::after {
      transform: scaleX(1);
    }

    .theme-toggle {
      border-radius: 999px;
      padding: 0.4rem 0.8rem;
      border: 1px solid var(--border-soft-light);
      font-size: 0.7rem;
      text-transform: uppercase;
      letter-spacing: 0.12em;
      background: rgba(255, 255, 255, 0.6);
      color: var(--text-main-light);
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 0.25rem;
      transition: background 0.2s ease, border-color 0.2s ease;
      flex-shrink: 0;
    }

    .theme-toggle:hover {
      background: rgba(255,255,255,0.9);
    }

    body.dark-theme .theme-toggle {
      background: rgba(7, 12, 32, 0.8);
      border-color: var(--border-soft-dark);
      color: var(--text-main-dark);
    }

    body.dark-theme .theme-toggle:hover {
      background: rgba(20, 28, 65, 0.95);
    }

    .theme-label {
      display: inline;
    }

    @media (max-width: 480px) {
      .theme-toggle {
        padding: 0.4rem 0.6rem;
      }
      .theme-label {
        display: none;
      }
    }

    /* HERO */
    .hero {
      padding: 4.2rem 0 3.5rem;
    }

    @media (max-width: 720px) {
      .hero {
        padding: 2.5rem 0 2.5rem;
      }
    }

    .hero-inner {
      display: grid;
      grid-template-columns: minmax(0, 1.45fr) minmax(0, 1.1fr);
      gap: 3rem;
      align-items: center;
    }

    @media (max-width: 880px) {
      .hero-inner {
        grid-template-columns: 1fr;
        gap: 2rem;
      }
    }

    .hero-kicker {
      font-size: 0.8rem;
      letter-spacing: 0.16em;
      text-transform: uppercase;
      opacity: 0.7;
      margin-bottom: 0.75rem;
    }

    .hero-title {
      font-size: clamp(2.1rem, 4vw, 2.8rem);
      line-height: 1.05;
      letter-spacing: -0.03em;
      margin: 0 0 1rem 0;
    }

    .hero-title span.highlight {
      background: linear-gradient(120deg, #e29b61, #1b3558);
      -webkit-background-clip: text;
      background-clip: text;
      -webkit-text-fill-color: transparent;
      color: transparent;
    }

    body.dark-theme .hero-title span.highlight {
      background: linear-gradient(120deg, #f4d38b, #f5895b);
      -webkit-background-clip: text;
      background-clip: text;
      -webkit-text-fill-color: transparent;
    }

    .hero-sub {
      font-size: 0.98rem;
      line-height: 1.6;
      color: var(--text-muted-light);
      max-width: 32rem;
      margin-bottom: 1.75rem;
    }

    body.dark-theme .hero-sub {
      color: var(--text-muted-dark);
    }

    .hero-ctas {
      display: flex;
      flex-wrap: wrap;
      gap: 0.9rem;
      align-items: center;
      margin-bottom: 1.5rem;
    }

    .btn-primary {
      border-radius: 999px;
      padding: 0.85rem 1.6rem;
      border: none;
      font-size: 0.9rem;
      font-weight: 600;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      background: radial-gradient(circle at top left, #f4d38b, #e29b61, #1b3558);
      color: #0b0b10;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 0.5rem;
      box-shadow: 0 14px 35px rgba(0, 0, 0, 0.18);
      transition: opacity 0.2s ease, transform 0.15s ease;
    }

    .btn-primary:hover {
      opacity: 0.9;
      transform: translateY(-1px);
    }

    .btn-primary:active {
      transform: translateY(0);
    }

    @media (max-width: 480px) {
      .btn-primary {
        width: 100%;
        justify-content: center;
        padding: 0.85rem 1.2rem;
        font-size: 0.82rem;
      }
    }

    .btn-primary span.icon {
      font-size: 1.1rem;
    }

    .btn-ghost {
      border-radius: 999px;
      padding: 0.75rem 1.2rem;
      border: 1px solid rgba(0, 0, 0, 0.2);
      font-size: 0.85rem;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      background: transparent;
      color: var(--text-main-light);
      cursor: pointer;
      transition: background 0.2s ease, border-color 0.2s ease;
    }

    .btn-ghost:hover {
      background: var(--accent-soft-light);
    }

    body.dark-theme .btn-ghost:hover {
      background: var(--accent-soft-dark);
    }

    @media (max-width: 480px) {
      .btn-ghost {
        width: 100%;
        text-align: center;
        justify-content: center;
        font-size: 0.8rem;
      }
    }

    body.dark-theme .btn-ghost {
      border-color: var(--border-soft-dark);
      color: var(--text-main-dark);
      background: rgba(5, 8, 22, 0.3);
    }

    body.dark-theme .btn-ghost:hover {
      background: var(--accent-soft-dark);
    }

    .hero-note {
      font-size: 0.8rem;
      color: var(--text-muted-light);
      max-width: 26rem;
      margin-top: 0.25rem;
      line-height: 1.6;
    }

    body.dark-theme .hero-note {
      color: var(--text-muted-dark);
    }

    /* Hero visual */
    .hero-visual {
      position: relative;
      min-height: 260px;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    @media (max-width: 880px) {
      .hero-visual {
        min-height: 200px;
      }
    }

    .hero-orbit {
      width: 100%;
      max-width: 360px;
      aspect-ratio: 1 / 1;
      border-radius: 32px;
      padding: 1.3px;
      background: radial-gradient(circle at 20% 0, #f4d38b, #e29b61, rgba(27, 53, 88, 0.9), #050816);
      box-shadow:
        0 22px 60px rgba(0, 0, 0, 0.25),
        0 0 0 1px rgba(255, 255, 255, 0.04);
    }

    @media (max-width: 480px) {
      .hero-orbit {
        max-width: 280px;
        border-radius: 24px;
      }
    }

    .hero-orbit-inner {
      width: 100%;
      height: 100%;
      border-radius: 29px;
      background: linear-gradient(145deg, rgba(247, 242, 235, 0.95), rgba(255, 255, 255, 0.85));
      position: relative;
      overflow: hidden;
    }

    body.dark-theme .hero-orbit-inner {
      background: radial-gradient(circle at top, #101628, #050816);
    }

    .hero-grid {
      position: absolute;
      inset: 10%;
      border-radius: 26px;
      overflow: hidden;
      opacity: 0.45;
      background-image:
        linear-gradient(to right, rgba(0, 0, 0, 0.14) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(0, 0, 0, 0.14) 1px, transparent 1px);
      background-size: 32px 32px;
      mix-blend-mode: multiply;
    }

    body.dark-theme .hero-grid {
      opacity: 0.28;
      background-image:
        linear-gradient(to right, rgba(250, 250, 255, 0.15) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(250, 250, 255, 0.15) 1px, transparent 1px);
      mix-blend-mode: screen;
    }

    .semiotic-ring {
      position: absolute;
      inset: 18%;
      border-radius: 999px;
      border: 1px solid rgba(0, 0, 0, 0.16);
      display: flex;
      align-items: center;
      justify-content: center;
    }

    body.dark-theme .semiotic-ring {
      border-color: rgba(255, 255, 255, 0.2);
    }

    .semiotic-triangle {
      width: 100px;
      height: 90px;
      position: relative;
      clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
      background: radial-gradient(circle at top, #f4d38b, #e29b61, #1b3558);
      box-shadow: 0 18px 35px rgba(0, 0, 0, 0.4);
    }

    body.dark-theme .semiotic-triangle {
      background: radial-gradient(circle at top, #f4d38b, #f5895b, #f4d38b);
    }

    .semiotic-node {
      width: 18px;
      height: 18px;
      border-radius: 999px;
      background: var(--bg-alt-light);
      border: 1px solid var(--border-soft-light);
      position: absolute;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 0.6rem;
    }

    body.dark-theme .semiotic-node {
      background: var(--bg-alt-dark);
      border-color: var(--border-soft-dark);
    }

    .semiotic-node span {
      opacity: 0.85;
    }

    .node-top {
      top: 8%;
      left: 50%;
      transform: translateX(-50%);
    }

    .node-left {
      bottom: 8%;
      left: 16%;
    }

    .node-right {
      bottom: 8%;
      right: 16%;
    }

    .hero-tag {
      position: absolute;
      bottom: 12%;
      left: 8%;
      right: 8%;
      background: rgba(255, 255, 255, 0.93);
      color: #1c1c24;
      padding: 0.55rem 0.8rem;
      border-radius: 999px;
      font-size: 0.7rem;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 0.4rem;
      box-shadow: 0 10px 25px rgba(0, 0, 0, 0.16);
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    @media (max-width: 480px) {
      .hero-tag {
        font-size: 0.62rem;
        letter-spacing: 0.06em;
        padding: 0.4rem 0.65rem;
        left: 5%;
        right: 5%;
      }
    }

    body.dark-theme .hero-tag {
      background: rgba(5, 8, 22, 0.92);
      color: var(--text-main-dark);
    }

    .hero-tag-dot {
      width: 8px;
      height: 8px;
      border-radius: 999px;
      background: linear-gradient(120deg, #e29b61, #1b3558);
    }

    /* Sección genérica */
    section {
      padding: 3.5rem 0;
      scroll-margin-top: 70px;
    }

    @media (max-width: 720px) {
      section {
        padding: 2.5rem 0;
      }
    }

    @media (max-width: 480px) {
      section {
        padding: 2rem 0;
      }
    }

    .section-header {
      margin-bottom: 2.25rem;
      max-width: 40rem;
    }

    @media (max-width: 640px) {
      .section-header {
        max-width: 100%;
        margin-bottom: 1.75rem;
      }
    }

    .section-kicker {
      font-size: 0.78rem;
      text-transform: uppercase;
      letter-spacing: 0.16em;
      opacity: 0.7;
      margin-bottom: 0.45rem;
    }

    .section-title {
      font-size: clamp(1.25rem, 3vw, 1.6rem);
      letter-spacing: -0.03em;
      margin: 0 0 0.4rem 0;
    }

    .section-description {
      font-size: 0.95rem;
      color: var(--text-muted-light);
      line-height: 1.7;
      margin-top: 0.3rem;
    }

    body.dark-theme .section-description {
      color: var(--text-muted-dark);
    }

    /* Fix: p reset breaks description spacing inside section-header */
    .section-header p,
    .identity-grid p {
      margin-top: 0.4rem;
    }

    /* Identidad */
    .identity {
      border-top: 1px solid var(--border-soft-light);
    }

    body.dark-theme .identity {
      border-top-color: var(--border-soft-dark);
    }

    .identity-grid {
      display: grid;
      grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
      gap: 3rem;
      align-items: center;
    }

    @media (max-width: 880px) {
      .identity-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
      }
    }

    .identity-card {
      border-radius: 24px;
      padding: 1.5rem 1.6rem;
      background: var(--bg-alt-light);
      border: 1px solid var(--border-soft-light);
      display: grid;
      grid-template-columns: 1fr;
      gap: 0.75rem;
      margin-top: 0.5rem;
    }

    body.dark-theme .identity-card {
      background: var(--bg-alt-dark);
      border-color: var(--border-soft-dark);
    }

    .identity-label {
      font-size: 0.8rem;
      text-transform: uppercase;
      letter-spacing: 0.16em;
      opacity: 0.65;
    }

    .identity-main {
      font-size: clamp(0.95rem, 2vw, 1.1rem);
      font-weight: 500;
      line-height: 1.5;
    }

    .identity-points {
      display: flex;
      flex-wrap: wrap;
      gap: 0.6rem;
      margin-top: 0.3rem;
    }

    .identity-pill {
      padding: 0.4rem 0.7rem;
      border-radius: 999px;
      border: 1px solid var(--border-soft-light);
      font-size: 0.78rem;
    }

    body.dark-theme .identity-pill {
      border-color: var(--border-soft-dark);
    }

    .triangle-diagram {
      border-radius: 22px;
      padding: 1.4rem 1.6rem 1.6rem;
      background: radial-gradient(circle at top, var(--accent-soft-light), transparent 55%);
      border: 1px solid var(--border-soft-light);
      position: relative;
      overflow: hidden;
    }

    body.dark-theme .triangle-diagram {
      background: radial-gradient(circle at top, rgba(244, 211, 139, 0.12), transparent 55%);
      border-color: var(--border-soft-dark);
    }

    .triangle-caption {
      font-size: 0.8rem;
      text-transform: uppercase;
      letter-spacing: 0.14em;
      opacity: 0.7;
      margin-bottom: 0.7rem;
    }

    .triangle-wrap {
      position: relative;
      height: 220px;
    }

    .triangle-base {
      position: absolute;
      inset: 18% 20% 10%;
      clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
      background: linear-gradient(145deg, rgba(27, 53, 88, 0.14), rgba(226, 155, 97, 0.2));
      border-radius: 18px;
    }

    body.dark-theme .triangle-base {
      background: linear-gradient(145deg, rgba(244, 211, 139, 0.22), rgba(245, 137, 91, 0.26));
    }

    .triangle-label {
      position: absolute;
      font-size: 0.75rem;
      padding: 0.2rem 0.55rem;
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.9);
      color: #1c1c24;
    }

    body.dark-theme .triangle-label {
      background: rgba(5, 8, 22, 0.9);
      color: var(--text-main-dark);
    }

    .triangle-label-top {
      top: 6%;
      left: 50%;
      transform: translateX(-50%);
    }

    .triangle-label-left {
      bottom: 6%;
      left: 14%;
    }

    .triangle-label-right {
      bottom: 6%;
      right: 14%;
    }


    /* Diagnóstico digital */
    .diagnostic {
      position: relative;
      overflow: hidden;
      background:
        radial-gradient(circle at 15% 0%, rgba(226, 155, 97, 0.16), transparent 32%),
        radial-gradient(circle at 90% 10%, rgba(27, 53, 88, 0.14), transparent 34%),
        linear-gradient(to bottom, rgba(255,255,255,0.54), rgba(255,255,255,0.08));
      border-top: 1px solid var(--border-soft-light);
      border-bottom: 1px solid var(--border-soft-light);
    }

    body.dark-theme .diagnostic {
      background:
        radial-gradient(circle at 15% 0%, rgba(244, 211, 139, 0.14), transparent 32%),
        radial-gradient(circle at 88% 8%, rgba(226, 155, 97, 0.12), transparent 34%),
        linear-gradient(to bottom, rgba(11,16,32,0.95), rgba(5,8,22,0.96));
      border-color: var(--border-soft-dark);
    }

    .diagnostic-grid {
      display: grid;
      grid-template-columns: minmax(0, 1.05fr) minmax(0, 1.25fr);
      gap: 2rem;
      align-items: start;
    }

    @media (max-width: 880px) {
      .diagnostic-grid {
        grid-template-columns: 1fr;
      }
    }

    .diagnostic-lead {
      border-radius: 24px;
      padding: 1.6rem;
      background: rgba(255,255,255,0.68);
      border: 1px solid var(--border-soft-light);
      box-shadow: 0 18px 45px rgba(0,0,0,0.06);
    }

    body.dark-theme .diagnostic-lead {
      background: rgba(5,8,22,0.72);
      border-color: var(--border-soft-dark);
      box-shadow: 0 18px 45px rgba(0,0,0,0.24);
    }

    .diagnostic-list {
      display: grid;
      gap: 0.72rem;
      margin-top: 1rem;
      padding: 0;
      list-style: none;
    }

    .diagnostic-list li {
      display: flex;
      gap: 0.55rem;
      color: var(--text-muted-light);
      font-size: 0.92rem;
      line-height: 1.55;
    }

    body.dark-theme .diagnostic-list li {
      color: var(--text-muted-dark);
    }

    .diagnostic-list li::before {
      content: "▲";
      color: var(--accent-light);
      font-size: 0.65rem;
      margin-top: 0.28rem;
      flex: 0 0 auto;
    }

    body.dark-theme .diagnostic-list li::before {
      color: var(--accent-dark);
    }

    .diagnostic-cards {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 1rem;
    }

    @media (max-width: 720px) {
      .diagnostic-cards {
        grid-template-columns: 1fr;
      }
    }

    .diagnostic-card {
      border-radius: 20px;
      padding: 1.3rem;
      background: var(--bg-alt-light);
      border: 1px solid var(--border-soft-light);
      min-height: 190px;
      display: flex;
      flex-direction: column;
      gap: 0.7rem;
      transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
    }

    .diagnostic-card:hover {
      border-color: rgba(27,53,88,0.2);
      box-shadow: 0 10px 30px rgba(0,0,0,0.07);
      transform: translateY(-2px);
    }

    body.dark-theme .diagnostic-card {
      background: rgba(5, 8, 22, 0.92);
      border-color: var(--border-soft-dark);
    }

    body.dark-theme .diagnostic-card:hover {
      border-color: rgba(244,211,139,0.24);
      box-shadow: 0 10px 30px rgba(0,0,0,0.32);
    }

    .diagnostic-icon {
      width: 34px;
      height: 34px;
      border-radius: 999px;
      display: flex;
      align-items: center;
      justify-content: center;
      background: var(--accent-soft-light);
      font-size: 0.9rem;
    }

    body.dark-theme .diagnostic-icon {
      background: var(--accent-soft-dark);
    }

    .diagnostic-card h3 {
      font-size: 1rem;
      font-weight: 650;
      margin: 0;
    }

    .diagnostic-card p {
      color: var(--text-muted-light);
      font-size: 0.88rem;
      line-height: 1.65;
    }

    body.dark-theme .diagnostic-card p {
      color: var(--text-muted-dark);
    }

    /* Servicios */
    .services {
      background: linear-gradient(to bottom, rgba(255, 255, 255, 0.7), transparent);
    }

    body.dark-theme .services {
      background: radial-gradient(circle at top, rgba(244, 211, 139, 0.08), transparent 55%);
    }

    .services-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 1.5rem;
    }

    @media (max-width: 980px) {
      .services-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (max-width: 640px) {
      .services-grid {
        grid-template-columns: 1fr;
      }
    }

    .service-card {
      border-radius: 20px;
      padding: 1.5rem 1.6rem;
      background: var(--bg-alt-light);
      border: 1px solid var(--border-soft-light);
      display: flex;
      flex-direction: column;
      gap: 0.75rem;
      transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
    }

    .service-card:hover {
      border-color: rgba(27, 53, 88, 0.2);
      box-shadow: 0 8px 28px rgba(0,0,0,0.07);
      transform: translateY(-2px);
    }

    body.dark-theme .service-card:hover {
      border-color: rgba(244, 211, 139, 0.25);
      box-shadow: 0 8px 28px rgba(0,0,0,0.3);
    }

    body.dark-theme .service-card {
      background: rgba(5, 8, 22, 0.9);
      border-color: var(--border-soft-dark);
    }

    .service-icon {
      width: 32px;
      height: 32px;
      border-radius: 999px;
      background: var(--accent-soft-light);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 0.9rem;
    }

    body.dark-theme .service-icon {
      background: var(--accent-soft-dark);
    }

    .service-title {
      font-weight: 600;
      font-size: 1rem;
      margin: 0;
    }

    .service-body {
      font-size: 0.9rem;
      color: var(--text-muted-light);
      line-height: 1.7;
      margin: 0;
    }

    body.dark-theme .service-body {
      color: var(--text-muted-dark);
    }

    .service-meta {
      margin-top: auto;
      font-size: 0.78rem;
      text-transform: uppercase;
      letter-spacing: 0.16em;
      opacity: 0.65;
    }

    /* Metodología */
    .method {
      background: var(--bg-alt-light);
    }

    body.dark-theme .method {
      background: #050816;
    }

    .method-steps {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 1.4rem;
    }

    @media (max-width: 980px) {
      .method-steps {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (max-width: 480px) {
      .method-steps {
        grid-template-columns: 1fr;
      }
    }

    .method-card {
      border-radius: 18px;
      padding: 1.2rem 1.3rem;
      border: 1px solid var(--border-soft-light);
      background: rgba(255, 255, 255, 0.9);
      position: relative;
      transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
    }

    .method-card:hover {
      border-color: rgba(27, 53, 88, 0.18);
      box-shadow: 0 6px 20px rgba(0,0,0,0.06);
      transform: translateY(-2px);
    }

    body.dark-theme .method-card:hover {
      border-color: rgba(244, 211, 139, 0.2);
      box-shadow: 0 6px 20px rgba(0,0,0,0.3);
    }

    body.dark-theme .method-card {
      border-color: var(--border-soft-dark);
      background: rgba(5, 8, 22, 0.96);
    }

    .method-index {
      font-size: 0.75rem;
      text-transform: uppercase;
      letter-spacing: 0.16em;
      opacity: 0.7;
      margin-bottom: 0.4rem;
    }

    .method-title {
      font-size: 0.95rem;
      font-weight: 600;
      margin-bottom: 0.4rem;
      margin-top: 0.1rem;
    }

    .method-body {
      font-size: 0.86rem;
      color: var(--text-muted-light);
      line-height: 1.7;
      margin: 0;
    }

    body.dark-theme .method-body {
      color: var(--text-muted-dark);
    }

    /* Sesión 50 */
    .session {
      position: relative;
    }

    .session-inner {
      border-radius: 22px;
      padding: 2rem 1.8rem;
      background: radial-gradient(circle at top left, rgba(244, 211, 139, 0.6), rgba(27, 53, 88, 0.9));
      color: #050816;
      display: grid;
      grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
      gap: 2rem;
      align-items: center;
      overflow: hidden;
      position: relative;
    }

    @media (max-width: 880px) {
      .session-inner {
        grid-template-columns: 1fr;
        padding: 1.6rem 1.4rem;
      }
    }

    @media (max-width: 480px) {
      .session-inner {
        padding: 1.4rem 1.2rem;
        border-radius: 16px;
        gap: 1.5rem;
      }
    }

    body.dark-theme .session-inner {
      /* en oscuro, texto claro */
      color: #f5f5f7;
      background: radial-gradient(circle at top left, rgba(244, 211, 139, 0.5), rgba(10, 13, 35, 0.98));
    }

    .session-left h3 {
      font-size: clamp(1.2rem, 3vw, 1.5rem);
      letter-spacing: -0.03em;
      margin-bottom: 0.6rem;
    }

    .session-left p {
      font-size: 0.95rem;
      margin-bottom: 1.1rem;
      line-height: 1.6;
    }

    .session-list {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 0.6rem;
      font-size: 0.85rem;
    }

    @media (max-width: 640px) {
      .session-list {
        grid-template-columns: 1fr;
      }
    }

    .session-item {
      display: flex;
      align-items: flex-start;
      gap: 0.45rem;
    }

    .session-bullet {
      margin-top: 0.25rem;
      width: 9px;
      height: 9px;
      border-radius: 999px;
      background: #050816;
    }

    body.dark-theme .session-bullet {
      background: #f4d38b;
    }

    .session-cta {
      margin-top: 1.2rem;
      display: flex;
      flex-wrap: wrap;
      gap: 0.7rem;
      align-items: center;
    }

    .session-meta {
      font-size: 0.8rem;
      opacity: 0.9;
    }

    .session-right {
      position: relative;
      min-height: 140px;
    }

    @media (max-width: 480px) {
      .session-right {
        min-height: 100px;
      }
    }

    .session-right {
      position: relative;
      min-height: 140px;
    }

    @media (max-width: 880px) {
      .session-right {
        min-height: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 0.75rem;
        padding: 0.5rem 0;
      }
    }

    .session-orbit {
      position: absolute;
      inset: 5% 12%;
      border-radius: 20px;
      border: 1px dashed rgba(5, 8, 22, 0.3);
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 1rem;
    }

    @media (max-width: 880px) {
      .session-orbit {
        position: static;
        inset: auto;
        width: 100%;
        padding: 1rem 1.25rem;
      }
    }

    body.dark-theme .session-orbit {
      border-color: rgba(245, 245, 247, 0.6);
    }

    .session-symbol {
      font-size: 0.8rem;
      text-transform: uppercase;
      letter-spacing: 0.25em;
      text-align: center;
    }

    .session-tag {
      position: absolute;
      top: 10%;
      right: 10%;
      font-size: 0.75rem;
      padding: 0.35rem 0.7rem;
      border-radius: 999px;
      background: rgba(247, 242, 235, 0.9);
      color: #050816;
      white-space: nowrap;
    }

    @media (max-width: 880px) {
      .session-tag {
        position: static;
        align-self: flex-start;
      }
    }

    body.dark-theme .session-tag {
      background: rgba(5, 8, 22, 0.9);
      color: #f5f5f7;
    }

    .session-tag span {
      opacity: 0.95;
    }

    /* Cierre */
    .closing {
      text-align: center;
      padding-bottom: 4rem;
    }

    .closing-line {
      font-size: clamp(1.1rem, 3vw, 1.3rem);
      letter-spacing: -0.03em;
      margin-bottom: 1.2rem;
      line-height: 1.5;
    }

    .closing-cta {
      display: inline-flex;
      align-items: center;
      gap: 0.5rem;
      padding: 0.7rem 1.4rem;
      border-radius: 999px;
      border: 1px solid var(--border-soft-light);
      font-size: 0.85rem;
      text-transform: uppercase;
      letter-spacing: 0.16em;
      cursor: pointer;
      background: transparent;
      color: var(--text-main-light);
      transition: background 0.2s ease, border-color 0.2s ease;
    }

    .closing-cta:hover {
      background: var(--accent-soft-light);
      border-color: rgba(0,0,0,0.12);
    }

    body.dark-theme .closing-cta {
      border-color: var(--border-soft-dark);
      color: var(--text-main-dark);
      background: rgba(5, 8, 22, 0.4);
    }

    body.dark-theme .closing-cta:hover {
      background: var(--accent-soft-dark);
      border-color: rgba(244,211,139,0.3);
    }

    footer {
      padding: 1.5rem 0 2.5rem;
      font-size: 0.75rem;
      color: var(--text-muted-light);
      text-align: center;
      border-top: 1px solid var(--border-soft-light);
    }

    body.dark-theme footer {
      color: var(--text-muted-dark);
      border-top-color: var(--border-soft-dark);
    }

    /* ======================================
       PREFERS-COLOR-SCHEME: Evita flash al cargar
       El JS luego aplica la preferencia guardada
    ====================================== */
    @media (prefers-color-scheme: dark) {
      body:not(.light-forced) {
        background: radial-gradient(circle at top, #1b2138 0, #050816 40%, #02030a 100%);
        color: #f5f5f7;
      }
      body:not(.light-forced) header {
        background: rgba(5, 8, 22, 0.9);
        border-color: rgba(255,255,255,0.09);
      }
    }
  
    /* Mobile nav toggle */
    .nav-toggle {
      display: none;
      border-radius: 999px;
      padding: 0.48rem 0.72rem;
      border: 1px solid var(--border-soft-light, rgba(0,0,0,.08));
      background: rgba(255,255,255,.62);
      color: inherit;
      cursor: pointer;
      align-items: center;
      gap: .45rem;
      font-size: .72rem;
      text-transform: uppercase;
      letter-spacing: .1em;
    }

    body.dark-theme .nav-toggle {
      background: rgba(7, 12, 32, 0.82);
      border-color: var(--border-soft-dark, rgba(255,255,255,.09));
    }

    .nav-toggle-bars {
      width: 16px;
      height: 12px;
      position: relative;
      display: inline-block;
    }

    .nav-toggle-bars::before,
    .nav-toggle-bars::after,
    .nav-toggle-bars span {
      content: "";
      position: absolute;
      left: 0;
      width: 16px;
      height: 1.5px;
      border-radius: 99px;
      background: currentColor;
      transition: transform .2s ease, opacity .2s ease, top .2s ease;
    }

    .nav-toggle-bars::before { top: 0; }
    .nav-toggle-bars span { top: 5px; }
    .nav-toggle-bars::after { top: 10px; }

    .nav-toggle[aria-expanded="true"] .nav-toggle-bars::before {
      top: 5px;
      transform: rotate(45deg);
    }

    .nav-toggle[aria-expanded="true"] .nav-toggle-bars span {
      opacity: 0;
    }

    .nav-toggle[aria-expanded="true"] .nav-toggle-bars::after {
      top: 5px;
      transform: rotate(-45deg);
    }

    @media (max-width: 760px) {
      .header-inner {
        position: relative;
      }

      .nav-toggle {
        display: inline-flex;
      }

      nav.site-nav {
        display: none;
        width: 100%;
        flex-direction: column;
        align-items: stretch;
        gap: .25rem;
        padding: .75rem 0 .25rem;
        font-size: .78rem;
        letter-spacing: .08em;
      }

      nav.site-nav.is-open {
        display: flex;
      }

      nav.site-nav .nav-link,
      nav.site-nav .theme-toggle {
        width: 100%;
        justify-content: space-between;
        padding: .72rem .2rem;
        border-bottom: 1px solid var(--border-soft-light, rgba(0,0,0,.06));
      }

      body.dark-theme nav.site-nav .nav-link,
      body.dark-theme nav.site-nav .theme-toggle {
        border-bottom-color: var(--border-soft-dark, rgba(255,255,255,.09));
      }

      nav.site-nav .nav-link::after {
        display: none;
      }

      .theme-toggle {
        border: 0;
        background: transparent;
        border-radius: 0;
      }

      body.dark-theme .theme-toggle {
        background: transparent;
      }
    }

    @media (max-width: 480px) {
      .hero {
        padding-top: 2.15rem;
      }

      .hero-title {
        font-size: clamp(2rem, 11vw, 2.55rem);
      }

      .hero-sub,
      .section-description {
        font-size: .94rem;
      }

      .hero-ctas,
      .session-cta {
        align-items: stretch;
      }

      .btn-primary,
      .btn-ghost,
      .closing-cta {
        width: 100%;
        justify-content: center;
        text-align: center;
      }

      .services-grid,
      .diagnostic-grid,
      .method-steps,
      .session-list {
        gap: 1rem;
      }
    }

  

/* Landing styles */

    :root {
      --font-main: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      --bg-main: #f7f2eb;
      --bg-alt: #ffffff;
      --text-main: #1c1c24;
      --text-muted: #5a5a6a;
      --accent: #1b3558;
      --accent-warm: #e29b61;
      --accent-gold: #f4d38b;
      --accent-soft: rgba(27, 53, 88, 0.08);
      --border-soft: rgba(0, 0, 0, 0.07);
      --dark-bg: #050816;
      --dark-card: #0b1020;
      --dark-text: #f5f5f7;
      --dark-muted: #a5a5b8;
      --dark-border: rgba(255,255,255,.09);
      --radius-xl: 28px;
      --radius-lg: 22px;
      --shadow-soft: 0 24px 70px rgba(0,0,0,.16);
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      font-family: var(--font-main);
      background: var(--bg-main);
      color: var(--text-main);
      -webkit-font-smoothing: antialiased;
      overflow-x: hidden;
    }
    body.dark-theme {
      background: radial-gradient(circle at top, #1b2138 0, var(--dark-bg) 42%, #02030a 100%);
      color: var(--dark-text);
    }
    a { color: inherit; text-decoration: none; }
    h1, h2, h3, p { margin: 0; }
    .container { width: 100%; max-width: 1120px; margin: 0 auto; padding: 0 1.5rem; }
    @media(max-width:480px){ .container{ padding:0 1.1rem; } }

    header {
      position: sticky;
      top: 0;
      z-index: 50;
      backdrop-filter: blur(18px);
      background: rgba(247, 242, 235, 0.9);
      border-bottom: 1px solid var(--border-soft);
    }
    body.dark-theme header { background: rgba(5,8,22,.9); border-color: var(--dark-border); }
    .header-inner { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.85rem 0; flex-wrap:wrap; }
    .brand { display:flex; align-items:center; gap:.75rem; }
    .brand-mark { width:32px; height:32px; border-radius:999px; padding:1px; background:conic-gradient(from 210deg, var(--accent-gold), var(--accent-warm), var(--accent), var(--accent-gold)); flex-shrink:0; }
    .brand-mark-inner { width:100%; height:100%; border-radius:inherit; background:var(--bg-main); display:flex; align-items:center; justify-content:center; }
    body.dark-theme .brand-mark-inner { background: var(--dark-bg); }
    .brand-triangle { width:14px; height:12px; background:linear-gradient(to bottom right, var(--accent), var(--accent-warm)); clip-path:polygon(50% 0%, 0% 100%, 100% 100%); }
    body.dark-theme .brand-triangle { background:linear-gradient(to bottom right, var(--accent-gold), #f5895b); }
    .brand-text { display:flex; flex-direction:column; line-height:1.1; }
    .brand-text span:first-child { font-weight:700; letter-spacing:.08em; text-transform:uppercase; font-size:.8rem; }
    .brand-tagline { font-size:.7rem; opacity:.75; }
    nav { display:flex; align-items:center; gap:.75rem; font-size:.78rem; text-transform:uppercase; letter-spacing:.11em; flex-wrap:wrap; }
    .nav-link { cursor:pointer; position:relative; padding-bottom:.15rem; white-space:nowrap; }
    .nav-link::after { content:""; position:absolute; left:0; right:0; bottom:0; height:1px; transform:scaleX(0); background:var(--accent); transition:transform .2s ease; }
    body.dark-theme .nav-link::after { background:var(--accent-gold); }
    .nav-link:hover::after { transform:scaleX(1); }
    .theme-toggle { border-radius:999px; padding:.4rem .8rem; border:1px solid var(--border-soft); background:rgba(255,255,255,.6); color:var(--text-main); cursor:pointer; font-size:.7rem; text-transform:uppercase; letter-spacing:.12em; }
    body.dark-theme .theme-toggle { background:rgba(7,12,32,.8); border-color:var(--dark-border); color:var(--dark-text); }
    @media(max-width:720px){ .header-inner{ padding:.8rem 1.15rem; } nav{ font-size:.68rem; gap:.5rem; } }
    @media(max-width:480px){ .brand-tagline{ display:none; } .theme-label{ display:none; } }

    section { padding: 4.2rem 0; scroll-margin-top: 80px; }
    @media(max-width:720px){ section{ padding:3rem 0; } }

    .hero { position:relative; overflow:hidden; padding:5.2rem 0 4.8rem; }
    .hero::before { content:""; position:absolute; inset:-20%; background:radial-gradient(circle at 18% 18%, rgba(244,211,139,.55), transparent 26%), radial-gradient(circle at 80% 14%, rgba(27,53,88,.18), transparent 28%), radial-gradient(circle at 60% 80%, rgba(226,155,97,.18), transparent 26%); pointer-events:none; }
    body.dark-theme .hero::before { background:radial-gradient(circle at 18% 18%, rgba(244,211,139,.16), transparent 26%), radial-gradient(circle at 80% 14%, rgba(226,155,97,.16), transparent 26%), radial-gradient(circle at 50% 80%, rgba(27,53,88,.35), transparent 30%); }
    .hero-inner { position:relative; display:grid; grid-template-columns:minmax(0,1.35fr) minmax(320px,.9fr); gap:3rem; align-items:center; }
    @media(max-width:900px){ .hero-inner{ grid-template-columns:1fr; } }
    .kicker { font-size:.78rem; letter-spacing:.16em; text-transform:uppercase; opacity:.72; margin-bottom:.8rem; }
    .hero-title { font-size:clamp(2.35rem,5vw,4.4rem); line-height:.98; letter-spacing:-.055em; margin-bottom:1.2rem; max-width:800px; }
    .highlight { background:linear-gradient(120deg, var(--accent-warm), var(--accent)); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; color:transparent; }
    body.dark-theme .highlight { background:linear-gradient(120deg, var(--accent-gold), #f5895b); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
    .hero-sub { max-width:610px; color:var(--text-muted); line-height:1.72; font-size:1.02rem; margin-bottom:1.8rem; }
    body.dark-theme .hero-sub { color:var(--dark-muted); }
    .hero-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.7rem; max-width:640px; margin:0 0 1.9rem; }
    @media(max-width:640px){ .hero-list{ grid-template-columns:1fr; } }
    .hero-list-item { display:flex; align-items:flex-start; gap:.55rem; color:var(--text-muted); font-size:.92rem; line-height:1.45; }
    body.dark-theme .hero-list-item { color:var(--dark-muted); }
    .dot { width:9px; height:9px; border-radius:999px; background:linear-gradient(120deg, var(--accent-warm), var(--accent)); margin-top:.35rem; flex:0 0 auto; }
    body.dark-theme .dot { background:linear-gradient(120deg, var(--accent-gold), #f5895b); }
    .hero-ctas { display:flex; flex-wrap:wrap; gap:.9rem; align-items:center; margin-bottom:1rem; }
    .btn-primary, .btn-ghost { border-radius:999px; display:inline-flex; align-items:center; justify-content:center; gap:.5rem; cursor:pointer; transition:transform .15s ease, opacity .2s ease, background .2s ease, border-color .2s ease; }
    .btn-primary { padding:.92rem 1.55rem; border:0; font-size:.86rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; background:radial-gradient(circle at top left, var(--accent-gold), var(--accent-warm), var(--accent)); color:#080910; box-shadow:0 16px 40px rgba(0,0,0,.2); }
    .btn-primary:hover { transform:translateY(-1px); opacity:.92; }
    .btn-ghost { padding:.82rem 1.25rem; border:1px solid rgba(0,0,0,.18); background:rgba(255,255,255,.18); color:var(--text-main); font-size:.83rem; letter-spacing:.1em; text-transform:uppercase; }
    .btn-ghost:hover { background:var(--accent-soft); }
    body.dark-theme .btn-ghost { border-color:var(--dark-border); color:var(--dark-text); background:rgba(5,8,22,.28); }
    body.dark-theme .btn-ghost:hover { background:rgba(244,211,139,.12); }
    @media(max-width:480px){ .btn-primary, .btn-ghost{ width:100%; } }
    .hero-note { font-size:.84rem; color:var(--text-muted); line-height:1.6; max-width:460px; }
    body.dark-theme .hero-note { color:var(--dark-muted); }

    .hero-panel { position:relative; border-radius:var(--radius-xl); padding:1.2px; background:linear-gradient(145deg, rgba(244,211,139,.95), rgba(226,155,97,.72), rgba(27,53,88,.88)); box-shadow:var(--shadow-soft); }
    .hero-panel-inner { border-radius:calc(var(--radius-xl) - 2px); min-height:420px; padding:1.45rem; background:linear-gradient(145deg, rgba(255,255,255,.88), rgba(247,242,235,.72)); position:relative; overflow:hidden; }
    body.dark-theme .hero-panel-inner { background:radial-gradient(circle at top, #101628, #050816); }
    .panel-grid { position:absolute; inset:0; opacity:.28; background-image:linear-gradient(to right, rgba(0,0,0,.12) 1px, transparent 1px), linear-gradient(to bottom, rgba(0,0,0,.12) 1px, transparent 1px); background-size:30px 30px; }
    body.dark-theme .panel-grid { background-image:linear-gradient(to right, rgba(255,255,255,.13) 1px, transparent 1px), linear-gradient(to bottom, rgba(255,255,255,.13) 1px, transparent 1px); opacity:.2; }
    .audit-card { position:relative; z-index:1; border:1px solid rgba(0,0,0,.08); background:rgba(255,255,255,.72); border-radius:22px; padding:1rem; margin-bottom:.85rem; backdrop-filter:blur(10px); }
    body.dark-theme .audit-card { border-color:var(--dark-border); background:rgba(5,8,22,.72); }
    .audit-card.small { width:82%; margin-left:auto; }
    .audit-label { font-size:.7rem; letter-spacing:.14em; text-transform:uppercase; opacity:.62; margin-bottom:.45rem; }
    .audit-title { font-size:1rem; font-weight:700; margin-bottom:.45rem; }
    .audit-text { color:var(--text-muted); font-size:.85rem; line-height:1.55; }
    body.dark-theme .audit-text { color:var(--dark-muted); }
    .signal-row { display:flex; gap:.45rem; margin-top:.85rem; }
    .signal { height:7px; border-radius:999px; background:linear-gradient(90deg, var(--accent-gold), var(--accent-warm), var(--accent)); }
    .signal:nth-child(1){ width:35%; } .signal:nth-child(2){ width:23%; opacity:.75; } .signal:nth-child(3){ width:15%; opacity:.55; }
    .panel-tag { position:absolute; left:1.4rem; right:1.4rem; bottom:1.4rem; z-index:1; border-radius:999px; padding:.65rem .8rem; background:rgba(255,255,255,.88); color:#1c1c24; text-align:center; font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; box-shadow:0 14px 30px rgba(0,0,0,.14); }
    body.dark-theme .panel-tag { background:rgba(5,8,22,.88); color:var(--dark-text); }

    .section-header { max-width:720px; margin-bottom:2rem; }
    .section-title { font-size:clamp(1.55rem,3vw,2.25rem); letter-spacing:-.04em; line-height:1.08; margin-bottom:.65rem; }
    .section-description { color:var(--text-muted); line-height:1.75; font-size:.98rem; }
    body.dark-theme .section-description { color:var(--dark-muted); }

    .problem { border-top:1px solid var(--border-soft); }
    body.dark-theme .problem { border-top-color:var(--dark-border); }
    .problem-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:2rem; align-items:start; }
    @media(max-width:820px){ .problem-grid{ grid-template-columns:1fr; } }
    .quote-card { border-radius:var(--radius-lg); padding:1.6rem; border:1px solid var(--border-soft); background:var(--bg-alt); box-shadow:0 12px 40px rgba(0,0,0,.05); }
    body.dark-theme .quote-card { background:rgba(5,8,22,.82); border-color:var(--dark-border); }
    .quote-card p { font-size:clamp(1.05rem,2vw,1.35rem); line-height:1.55; letter-spacing:-.02em; }
    .problem-copy { color:var(--text-muted); line-height:1.8; }
    body.dark-theme .problem-copy { color:var(--dark-muted); }

    .analysis { background:linear-gradient(to bottom, rgba(255,255,255,.68), transparent); }
    body.dark-theme .analysis { background:radial-gradient(circle at top, rgba(244,211,139,.08), transparent 56%); }
    .analysis-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }
    @media(max-width:980px){ .analysis-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
    @media(max-width:560px){ .analysis-grid{ grid-template-columns:1fr; } }
    .analysis-card { border-radius:20px; padding:1.35rem; border:1px solid var(--border-soft); background:var(--bg-alt); min-height:190px; display:flex; flex-direction:column; gap:.65rem; transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
    .analysis-card:hover { transform:translateY(-3px); box-shadow:0 14px 38px rgba(0,0,0,.08); border-color:rgba(27,53,88,.18); }
    body.dark-theme .analysis-card { background:rgba(5,8,22,.88); border-color:var(--dark-border); }
    body.dark-theme .analysis-card:hover { border-color:rgba(244,211,139,.24); box-shadow:0 14px 38px rgba(0,0,0,.28); }
    .analysis-icon { width:36px; height:36px; border-radius:999px; display:flex; align-items:center; justify-content:center; background:var(--accent-soft); color:var(--accent); font-weight:800; }
    body.dark-theme .analysis-icon { background:rgba(244,211,139,.12); color:var(--accent-gold); }
    .analysis-title { font-size:1rem; font-weight:700; }
    .analysis-body { color:var(--text-muted); line-height:1.65; font-size:.9rem; }
    body.dark-theme .analysis-body { color:var(--dark-muted); }

    .deliverable { background:var(--bg-alt); }
    body.dark-theme .deliverable { background:#050816; }
    .deliverable-inner { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.85fr); gap:2rem; align-items:center; }
    @media(max-width:860px){ .deliverable-inner{ grid-template-columns:1fr; } }
    .deliverable-list { display:grid; gap:.7rem; }
    .deliverable-item { display:flex; align-items:flex-start; gap:.65rem; padding:.85rem .95rem; border-radius:16px; background:rgba(27,53,88,.055); border:1px solid rgba(0,0,0,.045); color:var(--text-muted); line-height:1.55; }
    body.dark-theme .deliverable-item { background:rgba(244,211,139,.08); border-color:var(--dark-border); color:var(--dark-muted); }
    .check { width:20px; height:20px; border-radius:999px; background:linear-gradient(120deg,var(--accent-gold),var(--accent-warm)); color:#050816; display:flex; align-items:center; justify-content:center; font-size:.76rem; font-weight:900; flex:0 0 auto; margin-top:.1rem; }
    .format-card { border-radius:var(--radius-lg); padding:1.6rem; background:radial-gradient(circle at top left, rgba(244,211,139,.62), rgba(27,53,88,.88)); color:#050816; }
    body.dark-theme .format-card { color:var(--dark-text); background:radial-gradient(circle at top left, rgba(244,211,139,.42), rgba(10,13,35,.98)); }
    .format-card h3 { font-size:1.15rem; margin-bottom:.65rem; }
    .format-card p { line-height:1.65; margin-bottom:1rem; }
    .format-pills { display:flex; flex-wrap:wrap; gap:.5rem; }
    .format-pill { padding:.35rem .65rem; border-radius:999px; border:1px solid rgba(5,8,22,.18); background:rgba(247,242,235,.5); font-size:.78rem; }
    body.dark-theme .format-pill { border-color:rgba(255,255,255,.18); background:rgba(5,8,22,.35); }

    .difference-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:2rem; align-items:center; }
    @media(max-width:840px){ .difference-grid{ grid-template-columns:1fr; } }
    .difference-symbol { min-height:280px; border-radius:var(--radius-xl); border:1px solid var(--border-soft); background:radial-gradient(circle at center, rgba(244,211,139,.55), rgba(226,155,97,.18), transparent 68%); display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden; }
    body.dark-theme .difference-symbol { border-color:var(--dark-border); background:radial-gradient(circle at center, rgba(244,211,139,.15), rgba(226,155,97,.09), transparent 68%); }
    .big-triangle { width:150px; height:130px; clip-path:polygon(50% 0%, 0% 100%, 100% 100%); background:linear-gradient(145deg,var(--accent),var(--accent-warm),var(--accent-gold)); filter:drop-shadow(0 20px 45px rgba(0,0,0,.25)); }
    body.dark-theme .big-triangle { background:linear-gradient(145deg,var(--accent-gold),#f5895b,var(--accent)); }
    .difference-copy { color:var(--text-muted); line-height:1.85; }
    body.dark-theme .difference-copy { color:var(--dark-muted); }
    .difference-copy strong { color:var(--text-main); }
    body.dark-theme .difference-copy strong { color:var(--dark-text); }

    .final-cta { text-align:center; padding:4.8rem 0 5.2rem; }
    .final-box { border-radius:var(--radius-xl); padding:2.2rem 1.5rem; background:linear-gradient(145deg, rgba(255,255,255,.7), rgba(255,255,255,.3)); border:1px solid var(--border-soft); box-shadow:0 18px 50px rgba(0,0,0,.08); }
    body.dark-theme .final-box { background:rgba(5,8,22,.72); border-color:var(--dark-border); }
    .final-title { font-size:clamp(1.55rem,3vw,2.35rem); line-height:1.12; letter-spacing:-.04em; margin-bottom:1.15rem; }
    .final-sub { color:var(--text-muted); line-height:1.7; margin-bottom:1.45rem; }
    body.dark-theme .final-sub { color:var(--dark-muted); }

    footer { padding:1.5rem 0 2.5rem; text-align:center; font-size:.75rem; color:var(--text-muted); border-top:1px solid var(--border-soft); }
    body.dark-theme footer { color:var(--dark-muted); border-top-color:var(--dark-border); }

    .reveal { opacity:0; transform:translateY(16px); transition:opacity .55s ease, transform .55s ease; }
    .reveal.visible { opacity:1; transform:translateY(0); }

    @media (prefers-color-scheme: dark) {
      body:not(.light-forced) { background: radial-gradient(circle at top, #1b2138 0, #050816 42%, #02030a 100%); color: #f5f5f7; }
      body:not(.light-forced) header { background: rgba(5,8,22,.9); border-color: rgba(255,255,255,.09); }
    }
  
    /* Header compartido Semiátrica */
    header {
      position: sticky;
      top: 0;
      z-index: 50;
      backdrop-filter: blur(18px);
      background: rgba(247, 242, 235, 0.9);
      border-bottom: 1px solid var(--border-soft-light, rgba(0,0,0,.06));
      transition: background 0.4s ease, border-color 0.4s ease;
    }

    body.dark-theme header {
      background: rgba(5, 8, 22, 0.9);
      border-color: var(--border-soft-dark, rgba(255,255,255,.09));
    }

    .header-inner {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 0.85rem 0;
      gap: 1rem;
      flex-wrap: wrap;
    }

    .brand {
      display: flex;
      align-items: center;
      gap: 0.75rem;
      color: inherit;
      text-decoration: none;
    }

    .brand-mark {
      width: 32px;
      height: 32px;
      border-radius: 999px;
      position: relative;
      background: conic-gradient(from 210deg, #f4d38b, #e29b61, #1b3558, #f4d38b);
      padding: 1px;
      flex-shrink: 0;
    }

    .brand-mark-inner {
      width: 100%;
      height: 100%;
      border-radius: inherit;
      background: var(--bg-main-light, #f7f2eb);
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
    }

    body.dark-theme .brand-mark-inner {
      background: var(--bg-main-dark, #050816);
    }

    .brand-triangle {
      width: 14px;
      height: 12px;
      background: linear-gradient(to bottom right, #1b3558, #e29b61);
      clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
    }

    body.dark-theme .brand-triangle {
      background: linear-gradient(to bottom right, #f4d38b, #f5895b);
    }

    .brand-text {
      display: flex;
      flex-direction: column;
      line-height: 1.1;
    }

    .brand-text span:first-child {
      font-weight: 600;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      font-size: 0.8rem;
    }

    .brand-tagline {
      font-size: 0.7rem;
      opacity: 0.75;
    }

    nav {
      display: flex;
      align-items: center;
      gap: 0.75rem;
      font-size: 0.8rem;
      text-transform: uppercase;
      letter-spacing: 0.12em;
      flex-wrap: wrap;
    }

    .nav-link {
      position: relative;
      padding-bottom: 0.15rem;
      cursor: pointer;
      white-space: nowrap;
      color: inherit;
      text-decoration: none;
    }

    .nav-link::after {
      content: "";
      position: absolute;
      inset-inline: 0;
      bottom: 0;
      height: 1px;
      transform: scaleX(0);
      transform-origin: center;
      background: var(--accent-light, #1b3558);
      transition: transform 0.2s ease;
    }

    body.dark-theme .nav-link::after {
      background: var(--accent-dark, #f4d38b);
    }

    .nav-link:hover::after {
      transform: scaleX(1);
    }

    .theme-toggle {
      border-radius: 999px;
      padding: 0.4rem 0.8rem;
      border: 1px solid var(--border-soft-light, rgba(0,0,0,.06));
      font-size: 0.7rem;
      text-transform: uppercase;
      letter-spacing: 0.12em;
      background: rgba(255, 255, 255, 0.6);
      color: var(--text-main-light, #1c1c24);
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 0.25rem;
      transition: background 0.2s ease, border-color 0.2s ease;
      flex-shrink: 0;
    }

    body.dark-theme .theme-toggle {
      background: rgba(7, 12, 32, 0.8);
      border-color: var(--border-soft-dark, rgba(255,255,255,.09));
      color: var(--text-main-dark, #f5f5f7);
    }

    @media (max-width: 720px) {
      .header-inner {
        padding: 0.85rem 1.25rem;
      }
      nav {
        gap: 0.6rem;
        font-size: 0.72rem;
        letter-spacing: 0.08em;
      }
    }

    @media (max-width: 480px) {
      .header-inner {
        padding: 0.75rem 1.1rem;
      }
      .brand-tagline,
      .theme-label {
        display: none;
      }
      nav {
        gap: 0.45rem;
        font-size: 0.68rem;
      }
      .theme-toggle {
        padding: 0.4rem 0.6rem;
      }
    }

  
    /* Mobile nav toggle */
    .nav-toggle {
      display: none;
      border-radius: 999px;
      padding: 0.48rem 0.72rem;
      border: 1px solid var(--border-soft-light, rgba(0,0,0,.08));
      background: rgba(255,255,255,.62);
      color: inherit;
      cursor: pointer;
      align-items: center;
      gap: .45rem;
      font-size: .72rem;
      text-transform: uppercase;
      letter-spacing: .1em;
    }

    body.dark-theme .nav-toggle {
      background: rgba(7, 12, 32, 0.82);
      border-color: var(--border-soft-dark, rgba(255,255,255,.09));
    }

    .nav-toggle-bars {
      width: 16px;
      height: 12px;
      position: relative;
      display: inline-block;
    }

    .nav-toggle-bars::before,
    .nav-toggle-bars::after,
    .nav-toggle-bars span {
      content: "";
      position: absolute;
      left: 0;
      width: 16px;
      height: 1.5px;
      border-radius: 99px;
      background: currentColor;
      transition: transform .2s ease, opacity .2s ease, top .2s ease;
    }

    .nav-toggle-bars::before { top: 0; }
    .nav-toggle-bars span { top: 5px; }
    .nav-toggle-bars::after { top: 10px; }

    .nav-toggle[aria-expanded="true"] .nav-toggle-bars::before {
      top: 5px;
      transform: rotate(45deg);
    }

    .nav-toggle[aria-expanded="true"] .nav-toggle-bars span {
      opacity: 0;
    }

    .nav-toggle[aria-expanded="true"] .nav-toggle-bars::after {
      top: 5px;
      transform: rotate(-45deg);
    }

    @media (max-width: 760px) {
      .header-inner {
        position: relative;
      }

      .nav-toggle {
        display: inline-flex;
      }

      nav.site-nav {
        display: none;
        width: 100%;
        flex-direction: column;
        align-items: stretch;
        gap: .25rem;
        padding: .75rem 0 .25rem;
        font-size: .78rem;
        letter-spacing: .08em;
      }

      nav.site-nav.is-open {
        display: flex;
      }

      nav.site-nav .nav-link,
      nav.site-nav .theme-toggle {
        width: 100%;
        justify-content: space-between;
        padding: .72rem .2rem;
        border-bottom: 1px solid var(--border-soft-light, rgba(0,0,0,.06));
      }

      body.dark-theme nav.site-nav .nav-link,
      body.dark-theme nav.site-nav .theme-toggle {
        border-bottom-color: var(--border-soft-dark, rgba(255,255,255,.09));
      }

      nav.site-nav .nav-link::after {
        display: none;
      }

      .theme-toggle {
        border: 0;
        background: transparent;
        border-radius: 0;
      }

      body.dark-theme .theme-toggle {
        background: transparent;
      }
    }

    @media (max-width: 480px) {
      .hero {
        padding-top: 2.15rem;
      }

      .hero-title {
        font-size: clamp(2rem, 11vw, 2.55rem);
      }

      .hero-sub,
      .section-description {
        font-size: .94rem;
      }

      .hero-ctas,
      .session-cta {
        align-items: stretch;
      }

      .btn-primary,
      .btn-ghost,
      .closing-cta {
        width: 100%;
        justify-content: center;
        text-align: center;
      }

      .services-grid,
      .diagnostic-grid,
      .method-steps,
      .session-list {
        gap: 1rem;
      }
    }

  
    

  

/* WordPress theme additions */
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.wp-site-blocks{min-height:100vh}
.alignwide{max-width:1120px;margin-left:auto;margin-right:auto}.alignfull{max-width:none}
.blog-hero{padding:4rem 0 2rem;border-bottom:1px solid var(--border-soft-light)}
body.dark-theme .blog-hero{border-color:var(--border-soft-dark)}
.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;padding:2rem 0 4rem}.post-card{border-radius:20px;padding:1.35rem;background:var(--bg-alt-light);border:1px solid var(--border-soft-light);transition:transform .2s ease, box-shadow .2s ease}.post-card:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(0,0,0,.07)}body.dark-theme .post-card{background:rgba(5,8,22,.9);border-color:var(--border-soft-dark)}body.dark-theme .post-card:hover{box-shadow:0 8px 28px rgba(0,0,0,.3)}.post-card-title{font-size:1.05rem;margin-bottom:.55rem}.post-card-meta{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;opacity:.65;margin-bottom:.65rem}.post-card-excerpt{font-size:.9rem;line-height:1.7;color:var(--text-muted-light)}body.dark-theme .post-card-excerpt{color:var(--text-muted-dark)}.content-wrap{max-width:760px;margin:0 auto;padding:3.8rem 1.5rem}.entry-title{font-size:clamp(2rem,4vw,3rem);letter-spacing:-.04em;margin-bottom:.9rem}.entry-meta{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;opacity:.68;margin-bottom:2rem}.entry-content{font-size:1rem;line-height:1.85;color:var(--text-main-light)}body.dark-theme .entry-content{color:var(--text-main-dark)}.entry-content p{margin:0 0 1.25rem}.entry-content h2,.entry-content h3{margin:2rem 0 .8rem}.entry-content a{text-decoration:underline;text-underline-offset:3px}.pagination{display:flex;justify-content:center;gap:.75rem;padding:0 0 4rem}.pagination a,.pagination span{padding:.55rem .8rem;border-radius:999px;border:1px solid var(--border-soft-light)}body.dark-theme .pagination a,body.dark-theme .pagination span{border-color:var(--border-soft-dark)}.no-results{padding:3rem 0 5rem;color:var(--text-muted-light)}body.dark-theme .no-results{color:var(--text-muted-dark)}.wp-block-search__inside-wrapper{display:flex;gap:.5rem}.wp-block-search__input{border-radius:999px;border:1px solid var(--border-soft-light);padding:.75rem 1rem;background:var(--bg-alt-light);color:inherit}.wp-block-search__button{border-radius:999px;border:none;padding:.75rem 1rem;background:linear-gradient(120deg,#f4d38b,#e29b61,#1b3558);color:#050816;font-weight:700}
@media(max-width:980px){.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.post-grid{grid-template-columns:1fr}.content-wrap{padding:2.8rem 1.1rem}.blog-hero{padding:2.8rem 0 1.4rem}}

/* Gutenberg editable pages */
.semiatrica-gutenberg-page {
  padding: 3.5rem 0;
}
.semiatrica-gutenberg-page > .entry-content {
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 1.5rem;
}
.semiatrica-gutenberg-page .wp-block-group {
  border-radius: 24px;
}
.semiatrica-gutenberg-page .wp-block-button__link {
  border-radius: 999px;
  padding: 0.85rem 1.35rem;
  font-size: .86rem;
  font-weight: 650;
  letter-spacing: .08em;
  text-transform: uppercase;
  background: radial-gradient(circle at top left, #f4d38b, #e29b61, #1b3558);
  color: #0b0b10;
}
.semiatrica-gutenberg-page .wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent;
  color: inherit;
  border: 1px solid var(--border-soft-light);
}
body.dark-theme .semiatrica-gutenberg-page .wp-block-button.is-style-outline .wp-block-button__link {
  border-color: var(--border-soft-dark);
}
.semiatrica-gutenberg-page .wp-block-columns {
  gap: 1.4rem;
}
.semiatrica-card {
  border: 1px solid var(--border-soft-light);
  background: var(--bg-alt-light);
  border-radius: 22px;
  padding: 1.4rem;
}
body.dark-theme .semiatrica-card {
  border-color: var(--border-soft-dark);
  background: rgba(5, 8, 22, 0.9);
}
.semiatrica-kicker {
  font-size: .78rem;
  text-transform: uppercase;
  letter-spacing: .16em;
  opacity: .7;
}
@media (max-width: 640px){
  .semiatrica-gutenberg-page { padding: 2rem 0; }
  .semiatrica-gutenberg-page > .entry-content { padding: 0 1.1rem; }
}


/* ===== MENU FIX ===== */

.site-nav ul,
.main-navigation ul,
.primary-menu,
.menu {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    gap: 1rem;
}

.site-nav li,
.main-navigation li,
.primary-menu li,
.menu li {
    list-style: none;
    margin: 0;
    padding: 0;
}

.site-nav a,
.main-navigation a,
.primary-menu a,
.menu a {
    text-decoration: none;
}

/* ===== PAGE TITLE FIX ===== */

.page-header,
.entry-header {
    display: none;
}

/* ===== MOBILE MENU IMPROVEMENTS ===== */

@media (max-width: 760px) {

    .site-nav ul,
    .main-navigation ul,
    .primary-menu,
    .menu {
        flex-direction: column;
        align-items: flex-start;
        width: 100%;
        gap: .25rem;
    }

    .site-nav li,
    .main-navigation li,
    .primary-menu li,
    .menu li {
        width: 100%;
    }

    .site-nav a,
    .main-navigation a,
    .primary-menu a,
    .menu a {
        width: 100%;
        display: block;
        padding: .7rem 0;
    }
}


/* ===== V1.1.2 CONTENT RENDER FIX ===== */
.reveal.visible {
    opacity: 1;
    transform: translateY(0);
}

.no-js .reveal {
    opacity: 1;
    transform: none;
}

.semiatrica-gutenberg-page:empty {
    display: none;
}



/* ===== Ecommerce / WooCommerce Landing ===== */
.semiatrica-ecommerce-page .hero-sub strong,
.semiatrica-ecommerce-page .section-description strong,
.ecommerce-data-item strong{color:var(--text-main-dark,#f5f5f7);font-weight:650}
.ecommerce-data-panel{position:relative;border-radius:28px;padding:1px;background:linear-gradient(145deg,rgba(244,211,139,.85),rgba(226,155,97,.45),rgba(27,53,88,.8));box-shadow:0 24px 80px rgba(0,0,0,.36)}
.ecommerce-data-panel-inner{border-radius:27px;padding:1.35rem;min-height:450px;background:radial-gradient(420px 260px at 50% 15%,rgba(244,211,139,.12),transparent 60%),rgba(5,8,22,.92);overflow:hidden;position:relative}
.ecommerce-data-panel-inner::before{content:"";position:absolute;inset:0;opacity:.16;background-image:linear-gradient(to right,rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.12) 1px,transparent 1px);background-size:28px 28px}
.ecommerce-metric-card{position:relative;z-index:1;border:1px solid var(--border-soft-dark,rgba(255,255,255,.10));border-radius:20px;padding:1rem;background:rgba(255,255,255,.055);backdrop-filter:blur(12px);margin-bottom:.9rem}
.ecommerce-metric-label{font-size:.72rem;color:var(--text-muted-dark,#a5a5b8);text-transform:uppercase;letter-spacing:.15em;margin-bottom:.4rem}
.ecommerce-metric-value{font-size:1.65rem;font-weight:780;letter-spacing:-.04em;color:var(--text-main-dark,#f5f5f7)}
.ecommerce-metric-copy{margin-top:.4rem;color:var(--text-muted-dark,#a5a5b8);line-height:1.55;font-size:.88rem}
.ecommerce-funnel{position:relative;z-index:1;display:grid;gap:.55rem;margin-top:1rem}
.ecommerce-funnel-step{border:1px solid var(--border-soft-dark,rgba(255,255,255,.10));border-radius:999px;padding:.65rem .8rem;display:flex;justify-content:space-between;gap:1rem;background:rgba(255,255,255,.04);color:rgba(255,255,255,.86);font-size:.86rem}
.ecommerce-funnel-step strong{color:var(--accent-dark,#f4d38b)}
.ecommerce-problem{border-top:1px solid var(--border-soft-dark,rgba(255,255,255,.09));border-bottom:1px solid var(--border-soft-dark,rgba(255,255,255,.09));background:rgba(255,255,255,.025)}
.ecommerce-signal-grid,.ecommerce-analysis-grid,.ecommerce-deliverable-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.ecommerce-analysis-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.ecommerce-data-section{background:radial-gradient(800px 420px at 70% 20%,rgba(226,155,97,.12),transparent 60%),rgba(255,255,255,.018)}
.ecommerce-data-box{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;align-items:stretch}
.ecommerce-data-copy{border-radius:28px;padding:1.6rem;border:1px solid var(--border-soft-dark,rgba(255,255,255,.09));background:rgba(255,255,255,.052)}
.ecommerce-data-list{display:grid;gap:.8rem;margin-top:1rem}
.ecommerce-data-item{display:flex;gap:.7rem;color:var(--text-muted-dark,#a5a5b8);line-height:1.6;font-size:.94rem}
.ecommerce-data-item>span{margin-top:.4rem;width:8px;height:8px;border-radius:999px;background:var(--accent-dark,#f4d38b);flex:0 0 auto}
.ecommerce-comparison{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.ecommerce-compare-card{border:1px solid var(--border-soft-dark,rgba(255,255,255,.09));border-radius:22px;padding:1.35rem;background:rgba(255,255,255,.045)}
.ecommerce-compare-card.featured{border-color:rgba(244,211,139,.36);background:rgba(244,211,139,.08)}
.ecommerce-compare-card h3{font-size:1.05rem;margin-bottom:.8rem}
.ecommerce-compare-card ul{margin:0;padding-left:1.1rem;color:var(--text-muted-dark,#a5a5b8);line-height:1.8;font-size:.92rem}
.ecommerce-deliverable{border-top:1px solid var(--border-soft-dark,rgba(255,255,255,.09))}
.ecommerce-deliverable-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.ecommerce-mini-card{border:1px solid var(--border-soft-dark,rgba(255,255,255,.09));border-radius:18px;padding:1rem;background:rgba(255,255,255,.045);min-height:120px}
.ecommerce-mini-card strong{display:block;font-size:.92rem;margin-bottom:.4rem;color:var(--text-main-dark,#f5f5f7)}
.ecommerce-mini-card span{color:var(--text-muted-dark,#a5a5b8);font-size:.84rem;line-height:1.55}
.ecommerce-cta-section{padding:5rem 0 5.6rem}
.ecommerce-cta-box{max-width:860px;margin:0 auto;border-radius:28px;padding:2.4rem 1.6rem;border:1px solid rgba(244,211,139,.26);background:radial-gradient(520px 260px at 50% 0%,rgba(244,211,139,.18),transparent 70%),rgba(255,255,255,.05);box-shadow:0 24px 80px rgba(0,0,0,.36)}
.ecommerce-cta-box h2{font-size:clamp(1.8rem,3.2vw,2.9rem);line-height:1.05;letter-spacing:-.055em;margin-bottom:.9rem}
.ecommerce-cta-box p{color:var(--text-muted-dark,#a5a5b8);line-height:1.7;max-width:620px;margin:0 auto 1.4rem}
@media(max-width:980px){.ecommerce-data-box,.ecommerce-comparison{grid-template-columns:1fr}.ecommerce-signal-grid,.ecommerce-analysis-grid,.ecommerce-deliverable-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ecommerce-data-panel-inner{min-height:auto}}
@media(max-width:560px){.ecommerce-signal-grid,.ecommerce-analysis-grid,.ecommerce-deliverable-grid{grid-template-columns:1fr}.ecommerce-data-copy,.ecommerce-cta-box{border-radius:20px}}
