@font-face{font-family:"DM Sans";font-weight:100 1000;font-style:normal;font-display:swap;src:url(_m/fonts.gstatic.com/s/dmsans/v17/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAfJtRR232VGM.woff2) format("woff2")}
@font-face{font-family:"DM Sans";font-weight:100 1000;font-style:normal;font-display:swap;src:url(_m/fonts.gstatic.com/s/dmsans/v17/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAfJtRSW32.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Sacramento;font-weight:400;font-style:normal;font-display:swap;src:url(_m/fonts.gstatic.com/s/sacramento/v17/buEzpo6gcdjy0EiZMBUG0C8V_NxLeiw.woff2) format("woff2")}

:root{--yellow:#ffebaf;--yellow-strong:#f6d36b;--gold:#b3821c;--ink:#1c1a17;--muted:#6b665d;--orange:#e8956f;--rust:#c8693f;--line:#eadfc9;--coral-t:#fbd9c9;--coral-x:#933b1c;--lime-t:#e6f0c6;--lime-x:#5f6d2b;--teal-t:#d5ebef;--teal-x:#2f6f7a;--sky:#eef7fb;--sky-line:#a9cdd3}
*{box-sizing:border-box}
body.rc{margin:0;min-height:100vh;font-family:"DM Sans",sans-serif;color:var(--ink);background:linear-gradient(#fff9e5 0%,#fcefe8 32%,#e6f7fa 70%,#fbffeb 100%) fixed;-webkit-font-smoothing:antialiased;overflow-x:hidden}
.rc a{color:inherit;text-decoration:none}
.rc .w{width:min(1120px,100% - 32px);margin-inline:auto}
.script{font-family:Sacramento,cursive;font-weight:400;letter-spacing:0;color:var(--orange)}
.rc main{padding:28px 0 72px}
.card{background:#fff;border-radius:32px;box-shadow:0 2px 18px rgba(120,90,20,.06)}
.pill{display:inline-block;background:var(--yellow);color:var(--gold);font-weight:600;font-size:14px;padding:8px 18px;border-radius:999px}
.btn{display:inline-block;background:var(--yellow);color:var(--gold);font-weight:600;font-size:14px;padding:11px 20px;border-radius:999px;transition:transform .2s,background .2s;text-align:center}
.btn:hover{transform:translateY(-1px);background:var(--yellow-strong)}
/* Hero */
.hero{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:24px;padding:clamp(28px,5vw,64px) 0 0 clamp(24px,5vw,64px);overflow:hidden}
.hero .copy{padding-bottom:clamp(28px,5vw,64px)}
.hero h1{margin:18px 0 16px;font-size:clamp(34px,5vw,58px);line-height:1.04;letter-spacing:-.03em;font-weight:700}
.hero h1 .script{font-size:1.3em;line-height:.8}
.hero p{margin:0;color:var(--muted);font-size:18px;line-height:1.55;max-width:460px}
.hero img{display:block;width:100%;max-width:760px;height:auto;margin:0 0 0 auto;align-self:end}
/* Secciones */
.sec{margin-top:88px}
.sec>h2{margin:0;text-align:center;font-size:clamp(32px,4.4vw,52px);line-height:1.08;letter-spacing:-.03em;font-weight:700}
.sec>h2 .script{font-size:1.3em;line-height:.7}
.sec>.lead{margin:16px auto 0;max-width:560px;text-align:center;color:var(--muted);font-size:17px;line-height:1.55}
.books{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}
.book{padding:22px 18px 20px;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;transition:transform .25s,box-shadow .25s}
.book:hover{transform:translateY(-4px);box-shadow:0 10px 28px rgba(120,90,20,.12)}
.book img{width:100%;max-width:190px;height:auto;display:block;border-radius:6px;box-shadow:0 3px 14px rgba(60,45,10,.14);aspect-ratio:3/4;object-fit:cover;object-position:top}
.book .btn{margin-top:auto}
.book h3{margin:0;font-size:15px;line-height:1.3;font-weight:600;min-height:2.6em;display:flex;align-items:center}
.orgs{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:40px}
.org{padding:26px 18px 22px;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;transition:transform .25s,box-shadow .25s}
.org:hover{transform:translateY(-4px);box-shadow:0 10px 28px rgba(120,90,20,.12)}
.org .badge{width:132px;aspect-ratio:1;border-radius:50%;overflow:hidden;background:#fff;box-shadow:0 0 0 6px var(--yellow)}
.org .badge img{width:100%;height:100%;object-fit:cover;display:block}
.org h3{margin:6px 0 0;font-size:16px;line-height:1.3;font-weight:600;min-height:2.6em;display:flex;align-items:center}
/* Directorio */
.dir{margin-top:88px;background:var(--sky);border:2px solid var(--sky-line);box-shadow:none;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:24px;padding:clamp(24px,5vw,56px)}
.dir h2{margin:14px 0 12px;font-size:clamp(28px,3.6vw,44px);line-height:1.1;letter-spacing:-.03em;font-weight:700}
.dir h2 .script{font-size:1.3em;line-height:.8}
.dir p{margin:0 0 22px;color:var(--muted);font-size:17px;line-height:1.5;max-width:420px}
.dir img{display:block;width:100%;max-width:300px;height:auto;margin-inline:auto;border-radius:20px;box-shadow:0 10px 28px rgba(60,90,100,.16);background:#fff}
/* Lista */
.entries{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:40px}
.entry{padding:26px 26px 24px;display:flex;flex-direction:column;gap:12px}
.entry h3{margin:0;font-size:19px;line-height:1.25;font-weight:700;letter-spacing:-.01em}
.entry p{margin:0;color:var(--muted);font-size:16px;line-height:1.55}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:6px}
.chip{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:14px;line-height:1.25;padding:8px 14px;border-radius:999px}
.chip.tel{background:var(--yellow);color:var(--gold);transition:background .2s}
.chip.tel:hover{background:var(--yellow-strong)}
.chip.link{background:var(--teal-t);color:var(--teal-x);word-break:break-all}
.chip.time{background:var(--lime-t);color:var(--lime-x)}
.chip.mode{background:var(--coral-t);color:var(--coral-x)}
/* Pie */
.foot{margin-top:88px;padding:40px 24px 44px;text-align:center}
.foot img{height:56px;width:auto;display:block;margin:0 auto 26px}
.foot ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:14px 36px}
.foot li a{display:inline-flex;align-items:center;gap:10px;color:var(--rust);font-weight:700;font-size:20px}
.foot li a:hover{text-decoration:underline;text-underline-offset:4px}
.foot svg{width:26px;height:26px;fill:currentColor}
@media (max-width:900px){
  .hero{grid-template-columns:1fr;gap:0;padding-bottom:0}
  .hero .copy{padding-right:24px}
  .hero img{max-width:480px;margin:0 0 0 auto}
  .books,.orgs{grid-template-columns:repeat(2,1fr);gap:14px}
  .dir{grid-template-columns:1fr}
  .entries{grid-template-columns:1fr}
  .sec,.dir,.foot{margin-top:64px}
}
@media (max-width:480px){
  .card{border-radius:26px}
  .book,.org{padding:18px 12px 16px}
  .org .badge{width:104px}
  .entry{padding:22px 20px}
  .foot li a{font-size:18px}
}
