:root {
  --wine: #7b0f2f;
  --wine-bright: #a91642;
  --wine-dark: #30040f;
  --cream: #fff4e4;
  --gold: #d9b469;
  --gold-light: #ffe3a2;
  --gold-deep: #a96d24;
  --ink: #260910;
  --paper: #fff9ef;
}

body { background: var(--paper); color: var(--ink); }
h1 { font-size: clamp(2.7rem, 7vw, 6.1rem); line-height: .95; }
h2 { font-size: clamp(2.05rem, 4.7vw, 4.1rem); line-height: 1.02; }
.lead { font-size: clamp(1.05rem, 1.45vw, 1.28rem); }
.site-header { background: rgba(48, 4, 15, .94); border-bottom: 1px solid rgba(217, 180, 105, .24); box-shadow: 0 12px 35px rgba(29, 0, 8, .16); }
.brand-name, .nav-links a { color: var(--cream); }
.nav-links a:hover, .nav-links a:focus { color: var(--gold-light); }
.brand-mark { background: linear-gradient(145deg, var(--gold-light), var(--gold-deep)); color: var(--wine-dark); box-shadow: 0 0 18px rgba(217, 180, 105, .22); }
.nav-cta, .button.gold { color: #2d0711; background: linear-gradient(115deg, #9b641f 0%, #f1d48e 34%, #c58b38 67%, #ffe3a2 100%); border-color: #e6c67e; box-shadow: 0 10px 28px rgba(217, 180, 105, .19); }
.button { border-radius: 999px; letter-spacing: .02em; }
.button:hover { transform: translateY(-2px); box-shadow: 0 13px 30px rgba(38, 9, 16, .18); }
.page-hero { padding-block: clamp(6.2rem, 10vw, 8.8rem) clamp(4.5rem, 8vw, 7rem); }
.page-hero h1 { max-width: 1000px; font-size: clamp(2.8rem, 6.5vw, 5.6rem); }

/* Home: una atmósfera continua de burdeos metálico. */
.home-page { background: radial-gradient(circle at 12% 7%, rgba(190, 34, 76, .72), transparent 28rem), radial-gradient(circle at 88% 42%, rgba(112, 14, 43, .7), transparent 36rem), linear-gradient(145deg, #8b1237 0%, #57091f 48%, #35040f 100%); background-attachment: fixed; color: var(--cream); }
.home-page .hero { min-height: calc(100vh - 78px); background: radial-gradient(ellipse at 18% 18%, rgba(255, 92, 132, .27), transparent 34%), radial-gradient(ellipse at 75% 64%, rgba(217, 180, 105, .13), transparent 32%), linear-gradient(135deg, #a21743 0%, #690c2b 48%, #3b0514 100%); border-bottom: 1px solid rgba(255, 222, 155, .2); overflow: hidden; }
.home-page .hero:before { inset: -15% -7% -15% 48%; background: radial-gradient(circle at 27% 26%, rgba(255, 225, 157, .98) 0 1.2px, rgba(217, 180, 105, .2) 2px, transparent 7px), radial-gradient(circle at 66% 20%, rgba(255, 236, 192, .82) 0 1px, transparent 5px), radial-gradient(circle at 82% 56%, rgba(244, 192, 92, .92) 0 1.5px, transparent 8px), radial-gradient(circle at 42% 73%, rgba(255, 210, 125, .8) 0 1px, transparent 6px), radial-gradient(ellipse at 66% 49%, rgba(224, 155, 64, .18), transparent 45%); background-size: 320px 270px, 410px 350px, 520px 420px, 440px 390px, 100% 100%; filter: drop-shadow(0 0 9px rgba(255, 190, 89, .42)); opacity: .7; }
.home-page .hero:after { content: ""; position: absolute; inset: -30%; background: linear-gradient(112deg, transparent 37%, rgba(255, 222, 160, .08) 47%, transparent 55%); transform: rotate(-4deg); animation: metal-sweep 12s ease-in-out infinite; pointer-events: none; }
@keyframes metal-sweep { 0%, 35% { transform: translateX(-24%) rotate(-4deg); opacity: 0; } 55% { opacity: 1; } 80%, 100% { transform: translateX(28%) rotate(-4deg); opacity: 0; } }
.home-page .hero-grid { grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr); gap: clamp(2.5rem, 6vw, 6rem); }
.home-page .hero h1 { max-width: 850px; font-size: clamp(3rem, 6.3vw, 6rem); text-shadow: 0 10px 35px rgba(42, 0, 11, .22); }
.home-page .hero h1 span { color: var(--gold-light); }
.home-page .hero-side { background: linear-gradient(145deg, rgba(48, 4, 15, .48), rgba(130, 17, 52, .34)); border: 1px solid rgba(255, 221, 151, .28); box-shadow: 0 30px 75px rgba(31, 0, 8, .24), inset 0 1px rgba(255, 255, 255, .08); backdrop-filter: blur(12px); }
.home-page .section, .home-page .section.white, .home-page .section.wine { position: relative; color: var(--cream); background: linear-gradient(150deg, rgba(95, 9, 35, .86), rgba(53, 4, 17, .92)); border-bottom: 1px solid rgba(217, 180, 105, .13); }
.home-page .section.white { background: radial-gradient(circle at 86% 20%, rgba(202, 47, 88, .21), transparent 28rem), linear-gradient(150deg, rgba(255, 244, 228, .12), rgba(84, 6, 29, .5)); }
.home-page .section h2, .home-page .section h3, .home-page .section p { color: inherit; }
.home-page .eyebrow, .home-page .meta, .home-page .feature-label { color: var(--gold-light); }
.home-page .recognition { max-width: 1100px; padding-block: clamp(1rem, 4vw, 3rem); }
.home-page .recognition h2 { font-size: clamp(2.4rem, 5.4vw, 5rem); max-width: 950px; text-shadow: 0 0 34px rgba(217, 180, 105, .16); }
.home-page .recognition h2 em { color: var(--gold-light); font-style: normal; background: linear-gradient(90deg, #ffe4a8, #c98b34, #ffe0a0); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.home-page .recognition .lead { max-width: 780px; padding-left: 1.4rem; border-left: 2px solid var(--gold); }
.home-page .feature-pair { max-width: 1040px; margin-inline: auto; gap: 1.15rem; }
.home-page .feature { min-height: 390px; padding: clamp(2rem, 4.2vw, 3.4rem); border: 1px solid rgba(255, 224, 158, .22); box-shadow: 0 24px 70px rgba(27, 0, 8, .2); }
.home-page .feature.method { background: radial-gradient(circle at 80% 15%, rgba(255, 220, 153, .13), transparent 15rem), linear-gradient(145deg, #8f1338, #54071f); }
.home-page .feature.book { background: radial-gradient(circle at 83% 18%, rgba(217, 180, 105, .16), transparent 14rem), linear-gradient(145deg, #160308, #050203); }
.home-page .article-card { background: linear-gradient(160deg, rgba(82, 7, 30, .78), rgba(42, 3, 14, .88)); border-color: rgba(217, 180, 105, .2); box-shadow: 0 20px 55px rgba(28, 0, 8, .14); }
.home-page .article-card:before { background: linear-gradient(90deg, var(--gold-deep), var(--gold-light), var(--wine-bright)); }
.home-page .article-card a, .home-page .text-link { color: var(--gold-light); }
.home-page .site-footer { background: #25020c; border-top-color: rgba(217, 180, 105, .18); }

/* Método CRITERIO: estructura, claridad y autoridad. */
.method-page { background: linear-gradient(135deg, #fff8ec, #f4e5d6); color: var(--ink); }
.method-page .page-hero { position: relative; overflow: hidden; background: radial-gradient(circle at 82% 25%, rgba(255, 210, 126, .2), transparent 24rem), linear-gradient(135deg, #96143d, #53071f 68%, #31030f); color: var(--cream); }
.method-page .page-hero:after { content: ""; position: absolute; width: 360px; height: 360px; right: -70px; bottom: -160px; border: 1px solid rgba(255, 222, 153, .22); border-radius: 50%; box-shadow: 0 0 70px rgba(217, 180, 105, .12); }
.method-page .page-hero h1 { font-size: clamp(3rem, 6.1vw, 5.5rem); }
.method-page .section.white { background: linear-gradient(155deg, #fffaf1, #f5e6d7); }
.method-page .section.wine { background: linear-gradient(135deg, #7e0f31, #3d0415); }
.method-page .steps { gap: 1rem; }
.method-page .step { min-height: 300px; background: linear-gradient(155deg, rgba(116, 12, 43, .94), rgba(55, 4, 19, .98)); border: 1px solid rgba(255, 222, 153, .18); box-shadow: 0 20px 55px rgba(47, 2, 15, .13); }
.method-page .boundary-box { background: rgba(255, 250, 241, .7); border-color: rgba(123, 15, 47, .16); box-shadow: 0 20px 60px rgba(64, 6, 22, .09); }

/* NeuroRiqueza: negro lacado y oro metálico. */
.book-page, .book-page body { background: radial-gradient(circle at 83% 9%, rgba(115, 10, 43, .34), transparent 31rem), linear-gradient(145deg, #0a0507, #020202 62%); color: #f7ead2; }
.book-page .site-header { background: rgba(3, 2, 2, .94); }
.book-page .book-hero { position: relative; overflow: hidden; background: radial-gradient(circle at 78% 34%, rgba(128, 15, 47, .25), transparent 24rem), radial-gradient(circle at 66% 60%, rgba(217, 180, 105, .09), transparent 20rem), #040303; }
.book-page .book-title, .book-page .book-hero h1, .book-page .section-header h2 { background: linear-gradient(105deg, #986222 0%, #ffe7aa 34%, #c18834 65%, #f5d98b 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; text-shadow: none; }
.book-page .book-title { font-size: clamp(3.2rem, 8vw, 7.2rem); }
.book-page .spark-field:before { opacity: .56; background: radial-gradient(circle at 18% 22%, rgba(255, 231, 177, .95) 0 1px, transparent 6px), radial-gradient(circle at 64% 18%, rgba(217, 180, 105, .85) 0 1.4px, transparent 7px), radial-gradient(circle at 80% 58%, rgba(255, 221, 145, .78) 0 1px, transparent 5px), radial-gradient(circle at 38% 74%, rgba(147, 20, 54, .74) 0 2px, transparent 8px), radial-gradient(ellipse at 70% 52%, rgba(217, 180, 105, .1), transparent 42%); background-size: 330px 290px, 490px 430px, 570px 470px, 440px 400px, 100% 100%; }
.book-page .section.black, .book-page .section.white { background: linear-gradient(145deg, #090607, #020202); color: #f7ead2; border-top: 1px solid rgba(217, 180, 105, .13); }
.book-page .card { background: linear-gradient(155deg, rgba(22, 15, 16, .95), rgba(5, 4, 4, .98)); border: 1px solid rgba(217, 180, 105, .23); box-shadow: 0 24px 70px rgba(0, 0, 0, .35); }
.book-page .card-number, .book-page .eyebrow, .book-page .meta { color: var(--gold-light); }
.book-page .site-footer { background: #020202; border-top-color: rgba(217, 180, 105, .18); }

/* Páginas editoriales y blog. */
.profile-page, .blog-index, .contact-page { background: radial-gradient(circle at 88% 15%, rgba(123, 15, 47, .08), transparent 28rem), linear-gradient(145deg, #fff9ee, #f4e5d6); color: var(--ink); }
.profile-page .page-hero, .blog-index .page-hero, .contact-page .page-hero { background: linear-gradient(145deg, #fff8ec, #eedccc); border-bottom: 1px solid rgba(123, 15, 47, .1); }
.blog-index .article-card { background: rgba(255, 251, 244, .83); border-color: rgba(123, 15, 47, .12); box-shadow: 0 20px 55px rgba(73, 9, 29, .08); }
.blog-index .article-card:before { background: linear-gradient(90deg, var(--wine), var(--gold), var(--wine-bright)); }

@media (max-width: 900px) {
  .nav-links { background: #390513; border: 1px solid rgba(217, 180, 105, .2); box-shadow: 0 24px 55px rgba(32, 0, 9, .28); }
  .home-page .hero-grid { grid-template-columns: 1fr; }
  .home-page .hero { min-height: auto; }
  .home-page .hero-side { max-width: 620px; }
  .home-page .feature { min-height: 340px; }
}

@media (max-width: 620px) {
  h1 { font-size: clamp(2.6rem, 13vw, 4.2rem); }
  h2 { font-size: clamp(2rem, 10vw, 3.2rem); }
  .home-page .hero { padding-top: 5.6rem; }
  .home-page .hero h1 { font-size: clamp(2.85rem, 14vw, 4.5rem); }
  .home-page .hero:before { inset: 10% -90% -10% 8%; opacity: .46; }
  .home-page .recognition h2 { font-size: clamp(2.3rem, 11.5vw, 3.75rem); }
  .home-page .feature, .method-page .step { min-height: 0; }
  .book-page .book-title { font-size: clamp(3rem, 15vw, 4.8rem); }
}

@media (prefers-reduced-motion: reduce) { .home-page .hero:after { animation: none; } }
