

/* =========================================================
   evangelismo.css - estilos especificos migrados a capa unica pages.css
   ========================================================= */
/* =====================================================
   Landing Evangelismo - ID7D
   Extiende el sistema visual del home sin duplicarlo.
===================================================== */

.page-evangelismo .landing-hero{
  position:relative;
  overflow:hidden;
  color:#fff;
  min-height:440px;
  display:flex;
  align-items:center;
  background:
    radial-gradient(circle at 76% 22%, rgba(25,170,219,.30), transparent 28%),
    radial-gradient(circle at 90% 75%, rgba(25,170,219,.12), transparent 28%),
    linear-gradient(90deg, rgba(0,18,62,.98) 0%, rgba(0,32,102,.88) 50%, rgba(0,32,102,.34) 100%),
    linear-gradient(135deg, var(--navy), var(--blue));
}

.page-evangelismo .landing-hero::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:64px;
  background:linear-gradient(180deg,transparent,rgba(0,32,102,.16));
  pointer-events:none;
}

.landing-hero-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:1.1fr .82fr;
  gap:48px;
  align-items:center;
  padding:70px 0;
}

.landing-hero-copy{
  max-width:640px;
}

.landing-hero-copy h1{
  color:#fff;
  font-size:clamp(3rem,6vw,5rem);
  line-height:.96;
  letter-spacing:-.055em;
  margin-bottom:22px;
  text-wrap:balance;
}

.landing-hero-copy p:not(.eyebrow){
  max-width:560px;
  color:rgba(255,255,255,.9);
  font-size:1.12rem;
  margin-bottom:28px;
}

.hero-panel{
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  border-radius:var(--radius-lg);
  padding:30px;
  backdrop-filter:blur(18px);
  box-shadow:var(--shadow-lg);
}

.hero-panel-icon{
  width:62px;
  height:62px;
  border-radius:20px;
  display:grid;
  place-items:center;
  color:#fff;
  font-size:1.5rem;
  background:linear-gradient(135deg,var(--blue-2),var(--sky));
  margin-bottom:18px;
}

.hero-panel h2{
  color:#fff;
  font-size:1.8rem;
  line-height:1.08;
  margin-bottom:12px;
}

.hero-panel p{
  color:rgba(255,255,255,.82);
  margin-bottom:18px;
}

.hero-panel ul{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:10px;
}

.hero-panel li{
  display:flex;
  align-items:center;
  gap:10px;
  color:rgba(255,255,255,.86);
  font-weight:700;
  font-size:.94rem;
}

.hero-panel li i{
  color:var(--sky);
}

.ev-message{
  background:#fff;
}

.gospel-card .icon.orange{
  background:linear-gradient(135deg,var(--orange),#d64215);
}

.evangelismo-feature .video-card.evangelismo-video{
  background:
    linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,32,102,.76)),
    radial-gradient(circle at 80% 20%, rgba(25,170,219,.24), transparent 30%);
}

.evangelismo-feature .video-card.evangelismo-video::before{
  background:
    radial-gradient(circle at 78% 18%, rgba(25,170,219,.18), transparent 24%),
    linear-gradient(135deg,rgba(255,255,255,.02),transparent 50%);
}

.salvation-section{
  background:
    radial-gradient(circle at 18% 12%, rgba(25,170,219,.12), transparent 26%),
    linear-gradient(180deg,#f8fbff,#eef6fc);
}

.salvation-steps{
  position:relative;
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:18px;
}

.salvation-steps::before{
  content:"";
  position:absolute;
  left:7%;
  right:7%;
  top:53px;
  height:2px;
  background:rgba(25,170,219,.22);
}

.step-card{
  position:relative;
  z-index:1;
  background:#fff;
  border:1px solid var(--card-border);
  border-radius:var(--radius-sm);
  padding:24px 20px;
  box-shadow:var(--shadow-xs);
  transition:.2s ease;
}

.step-card:hover{
  transform:translateY(-4px);
  box-shadow:var(--shadow-sm);
  border-color:rgba(25,170,219,.36);
}

.step-number{
  display:inline-flex;
  margin-bottom:10px;
  font-size:.74rem;
  font-weight:900;
  letter-spacing:.12em;
  color:var(--sky);
}

.step-icon{
  width:54px;
  height:54px;
  border-radius:18px;
  display:grid;
  place-items:center;
  color:#fff;
  background:linear-gradient(135deg,var(--blue-2),var(--sky));
  box-shadow:0 14px 30px rgba(7,26,76,.12);
  margin-bottom:18px;
}

.step-card h3{
  font-size:1.16rem;
  line-height:1.15;
  margin-bottom:8px;
}

.step-card p{
  color:var(--text-soft);
  font-size:.9rem;
  margin-bottom:0;
}

.stories-section{
  background:var(--bg-soft);
}

.story-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}

.story-card{
  background:#fff;
  border:1px solid var(--card-border);
  border-radius:var(--radius-md);
  padding:30px;
  box-shadow:var(--shadow-sm);
  transition:.2s ease;
}

.story-card:hover{
  transform:translateY(-5px);
  box-shadow:var(--shadow-md);
  border-color:rgba(25,170,219,.35);
}

.story-avatar{
  width:62px;
  height:62px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#fff;
  background:linear-gradient(135deg,var(--blue),var(--sky));
  margin-bottom:18px;
}

.story-card span{
  display:block;
  color:var(--sky);
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.10em;
  margin-bottom:8px;
}

.story-card h3{
  font-size:1.35rem;
  margin-bottom:10px;
}

.story-card p{
  color:var(--text-soft);
  margin-bottom:18px;
}

.questions-section{
  background:#fff;
}

.questions-layout{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:44px;
  align-items:center;
}

.questions-layout h2{
  font-size:2.65rem;
  line-height:1.06;
  letter-spacing:-.04em;
  margin-bottom:16px;
}

.questions-layout p:not(.eyebrow){
  color:var(--text-soft);
  max-width:520px;
}

.questions-list{
  grid-template-columns:repeat(2,1fr);
}

.church-cta-section{
  background:var(--bg-soft);
  padding-top:0;
}

.church-cta-section .church-card{
  min-height:260px;
}

/* Dark mode */
html[data-theme="dark"] .page-evangelismo .landing-hero{
  background:
    radial-gradient(circle at 76% 22%, rgba(25,170,219,.18), transparent 28%),
    radial-gradient(circle at 90% 75%, rgba(25,170,219,.08), transparent 28%),
    linear-gradient(90deg, rgba(0,8,28,.98) 0%, rgba(0,20,70,.88) 54%, rgba(0,20,70,.44) 100%);
}

html[data-theme="dark"] .hero-panel{
  background:rgba(17,26,46,.70);
  border-color:rgba(255,255,255,.08);
}

html[data-theme="dark"] .ev-message,
html[data-theme="dark"] .questions-section{
  background:var(--bg-soft);
}

html[data-theme="dark"] .salvation-section{
  background:
    radial-gradient(circle at 18% 12%, rgba(25,170,219,.10), transparent 26%),
    linear-gradient(180deg,#0f172a,#0b1224);
}

html[data-theme="dark"] .step-card,
html[data-theme="dark"] .story-card{
  background:var(--card);
  border-color:var(--card-border);
}

html[data-theme="dark"] .salvation-steps::before{
  background:rgba(25,170,219,.16);
}

html[data-theme="dark"] .stories-section,
html[data-theme="dark"] .church-cta-section{
  background:#0b1224;
}

html[data-theme="dark"] .evangelismo-feature .video-card.evangelismo-video{
  background:
    linear-gradient(180deg, rgba(0,0,0,.18), rgba(0,20,70,.88)),
    radial-gradient(circle at 80% 20%, rgba(25,170,219,.16), transparent 30%);
}

/* Responsive */
@media (max-width:1024px){
  .landing-hero-grid,
  .questions-layout{
    grid-template-columns:1fr;
  }

  .hero-panel{
    max-width:620px;
  }

  .salvation-steps{
    grid-template-columns:repeat(2,1fr);
  }

  .salvation-steps::before{
    display:none;
  }
}

@media (max-width:720px){
  .page-evangelismo .landing-hero{
    min-height:auto;
  }

  .landing-hero-grid{
    padding:58px 0;
    gap:30px;
  }

  .landing-hero-copy h1{
    font-size:clamp(2.5rem,12vw,3.4rem);
  }

  .hero-panel{
    border-radius:24px;
    padding:24px;
  }

  .salvation-steps,
  .story-grid,
  .questions-list{
    grid-template-columns:1fr;
  }

  .questions-layout h2{
    font-size:2.25rem;
  }

  .church-cta-section{
    padding-top:0;
  }
}


/* DARK MODE SECTION DEPTH PATCH v2 - Evangelismo */
html[data-theme="dark"] .page-evangelismo .landing-hero{
  background:
    radial-gradient(circle at 78% 18%, rgba(25,170,219,.24), transparent 30%),
    radial-gradient(circle at 12% 78%, rgba(25,170,219,.11), transparent 28%),
    linear-gradient(135deg,#061126 0%,#09255b 54%,#0b4fa1 100%) !important;
}
html[data-theme="dark"] .ev-message,
html[data-theme="dark"] .questions-section{
  background:
    radial-gradient(circle at 12% 12%, rgba(235,195,102,.055), transparent 26%),
    linear-gradient(180deg,#0f172a,#111c33) !important;
}
html[data-theme="dark"] .salvation-section{
  background:
    radial-gradient(circle at 15% 10%, rgba(25,170,219,.11), transparent 32%),
    radial-gradient(circle at 85% 72%, rgba(25,170,219,.075), transparent 28%),
    linear-gradient(180deg,#071126,#0b1224) !important;
}
html[data-theme="dark"] .stories-section{
  background:
    radial-gradient(circle at 82% 12%, rgba(0,153,132,.08), transparent 30%),
    linear-gradient(180deg,#0c162d,#0f172a) !important;
}
html[data-theme="dark"] .church-cta-section{
  background:
    radial-gradient(circle at 18% 18%, rgba(235,195,102,.10), transparent 30%),
    linear-gradient(135deg,#070d1c,#101c36 58%,#0b1224) !important;
}
html[data-theme="dark"] .step-card,
html[data-theme="dark"] .story-card,
html[data-theme="dark"] .question-card{
  background:linear-gradient(180deg,rgba(20,32,58,.97),rgba(15,23,42,.97)) !important;
  border-color:rgba(148,163,184,.18) !important;
}

/* =========================================================
   EVANGELISMO - Fine spacing patch
   ========================================================= */
.ev-message,
.evangelismo-feature,
.salvation-section,
.stories-section,
.questions-section{
  padding-top:clamp(78px, 7vw, 104px) !important;
  padding-bottom:clamp(78px, 7vw, 104px) !important;
}

.church-cta-section{
  padding-top:clamp(68px, 6vw, 92px) !important;
  padding-bottom:clamp(78px, 7vw, 104px) !important;
}

.step-card,
.story-card,
.question-card{
  padding-top:clamp(24px, 3vw, 32px);
}

@media (max-width:720px){
  .ev-message,.evangelismo-feature,.salvation-section,.stories-section,.questions-section,.church-cta-section{padding-top:66px !important;padding-bottom:66px !important}
}


/* =========================================================
   formacion.css - estilos especificos migrados a capa unica pages.css
   ========================================================= */
/* =====================================================
   Landing Formación cristiana - ID7D
   Extiende el sistema visual del home.
===================================================== */

.page-formacion .landing-hero{
  position:relative;
  overflow:hidden;
  color:#fff;
  min-height:440px;
  display:flex;
  align-items:center;
  background:
    radial-gradient(circle at 75% 20%, rgba(25,170,219,.28), transparent 28%),
    radial-gradient(circle at 92% 76%, rgba(0,153,132,.12), transparent 28%),
    linear-gradient(90deg, rgba(0,18,62,.98) 0%, rgba(0,32,102,.88) 50%, rgba(0,32,102,.34) 100%),
    linear-gradient(135deg, var(--navy), var(--blue));
}

.page-formacion .landing-hero::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:64px;
  background:linear-gradient(180deg,transparent,rgba(0,32,102,.16));
  pointer-events:none;
}

.landing-hero-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:1.1fr .82fr;
  gap:48px;
  align-items:center;
  padding:70px 0;
}

.landing-hero-copy{max-width:660px}

.landing-hero-copy h1{
  color:#fff;
  font-size:clamp(3rem,6vw,5rem);
  line-height:.96;
  letter-spacing:-.055em;
  margin-bottom:22px;
  text-wrap:balance;
}

.landing-hero-copy p:not(.eyebrow){
  max-width:570px;
  color:rgba(255,255,255,.9);
  font-size:1.12rem;
  margin-bottom:28px;
}

.formation-panel{
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  border-radius:var(--radius-lg);
  padding:30px;
  backdrop-filter:blur(18px);
  box-shadow:var(--shadow-lg);
}

.formation-panel-icon{
  width:62px;
  height:62px;
  border-radius:20px;
  display:grid;
  place-items:center;
  color:#fff;
  font-size:1.5rem;
  background:linear-gradient(135deg,var(--blue-2),var(--sky));
  margin-bottom:18px;
}

.formation-panel h2{
  color:#fff;
  font-size:1.8rem;
  line-height:1.08;
  margin-bottom:12px;
}

.formation-panel p{
  color:rgba(255,255,255,.82);
  margin-bottom:18px;
}

.panel-stat-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}

.panel-stat-grid span{
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);
  border-radius:16px;
  padding:14px 10px;
  text-align:center;
  color:rgba(255,255,255,.82);
  font-size:.82rem;
  font-weight:700;
}

.panel-stat-grid strong{
  display:block;
  color:#fff;
  font-family:"Playfair Display",Georgia,serif;
  font-size:1.3rem;
  line-height:1;
  margin-bottom:4px;
}

.formation-route-section{background:#fff}

.route-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:24px;
}

.route-card{
  position:relative;
  background:rgba(255,255,255,.94);
  border:1px solid var(--card-border);
  border-radius:var(--radius-md);
  padding:34px 28px;
  box-shadow:var(--shadow-sm);
  transition:.2s ease;
  overflow:hidden;
}

.route-card::after{
  content:"";
  position:absolute;
  left:28px;
  right:28px;
  top:0;
  height:3px;
  background:var(--sky);
  opacity:0;
  transition:.2s ease;
}

.route-card:hover{
  transform:translateY(-6px);
  box-shadow:var(--shadow-md);
  border-color:rgba(25,170,219,.38);
}

.route-card:hover::after{opacity:1}

.route-card h3{
  font-size:1.35rem;
  line-height:1.15;
  margin-bottom:10px;
}

.route-card p{
  color:var(--text-soft);
  margin-bottom:18px;
}

.route-card span,
.worship-card span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:var(--sky);
  font-weight:800;
  font-size:.92rem;
}

.route-card span i,
.worship-card span i{transition:.2s ease}
.route-card:hover span i,
.worship-card:hover span i{transform:translateX(3px)}

.route-card-wide{grid-column:span 2}

.bible-section{
  background:
    radial-gradient(circle at 20% 20%, rgba(25,170,219,.14), transparent 28%),
    linear-gradient(180deg,#f8fbff,#eaf4fb);
}

.formation-feature{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:42px;
  align-items:center;
}

.formation-copy h2,
.doctrine-card-main h2,
.worship-copy h2,
.practical-box h2{
  font-size:2.75rem;
  line-height:1.06;
  letter-spacing:-.04em;
  margin-bottom:18px;
}

.formation-copy p:not(.eyebrow),
.doctrine-card-main p,
.worship-copy p,
.practical-box p{
  color:var(--text-soft);
  margin-bottom:26px;
}

.formation-resource-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:20px;
}

.formation-resource-card{
  position:relative;
  display:block;
  background:#fff;
  border:1px solid var(--card-border);
  border-radius:var(--radius-sm);
  padding:26px 22px;
  box-shadow:var(--shadow-xs);
  transition:.2s ease;
  overflow:hidden;
}

.formation-resource-card:hover{
  transform:translateY(-4px);
  box-shadow:var(--shadow-sm);
  border-color:rgba(25,170,219,.38);
}

.formation-resource-card.featured{
  grid-row:span 2;
  padding:32px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  min-height:100%;
  background:
    radial-gradient(circle at 85% 15%, rgba(25,170,219,.18), transparent 30%),
    linear-gradient(135deg,#fff,#eef8fe);
}

.resource-badge{
  position:absolute;
  top:20px;
  right:20px;
  border-radius:999px;
  padding:7px 11px;
  background:rgba(25,170,219,.10);
  color:var(--sky);
  font-weight:900;
  font-size:.72rem;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.formation-resource-card h3{
  font-size:1.22rem;
  margin:12px 0 8px;
}

.formation-resource-card p{
  color:var(--text-soft);
  font-size:.92rem;
  margin-bottom:0;
}

.doctrine-section{background:#fff}

.doctrine-layout{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:34px;
  align-items:stretch;
}

.doctrine-card-main{
  color:#fff;
  border-radius:var(--radius-lg);
  padding:38px;
  box-shadow:var(--shadow-md);
  background:
    radial-gradient(circle at 82% 18%, rgba(25,170,219,.22), transparent 30%),
    linear-gradient(135deg,var(--navy),var(--blue));
}

.doctrine-card-main h2,
.doctrine-card-main p{color:#fff}
.doctrine-card-main p{color:rgba(255,255,255,.84)}

.doctrine-list{
  display:grid;
  gap:18px;
}

.doctrine-list article{
  background:#fff;
  border:1px solid var(--card-border);
  border-radius:var(--radius-sm);
  padding:24px;
  box-shadow:var(--shadow-xs);
}

.doctrine-list span{
  color:var(--sky);
  font-size:.74rem;
  font-weight:900;
  letter-spacing:.12em;
}

.doctrine-list h3{
  font-size:1.25rem;
  margin:6px 0 8px;
}

.doctrine-list p{
  color:var(--text-soft);
  margin-bottom:0;
}

.growth-section{
  background:var(--bg-soft);
}

.growth-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
}

.growth-card{
  display:block;
  background:#fff;
  border:1px solid var(--card-border);
  border-radius:var(--radius-sm);
  padding:26px 22px;
  box-shadow:var(--shadow-xs);
  transition:.2s ease;
}

.growth-card:hover{
  transform:translateY(-4px);
  box-shadow:var(--shadow-sm);
  border-color:rgba(25,170,219,.38);
}

.growth-icon{
  width:52px;
  height:52px;
  border-radius:17px;
  display:grid;
  place-items:center;
  color:#fff;
  background:linear-gradient(135deg,var(--blue-2),var(--sky));
  margin-bottom:18px;
}

.growth-card h3{font-size:1.18rem;margin-bottom:8px}
.growth-card p{color:var(--text-soft);font-size:.92rem;margin-bottom:0}

.worship-section{
  background:
    radial-gradient(circle at 84% 20%, rgba(25,170,219,.14), transparent 28%),
    linear-gradient(180deg,#f7fbff,#edf7fd);
}

.worship-layout{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:40px;
  align-items:center;
}

.worship-cards{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:22px;
}

.worship-card{
  min-height:280px;
  color:#fff;
  border-radius:var(--radius-md);
  padding:30px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  box-shadow:var(--shadow-md);
  position:relative;
  overflow:hidden;
  transition:.2s ease;
}

.worship-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}

.worship-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 75% 18%, rgba(255,255,255,.18), transparent 24%),linear-gradient(180deg,rgba(255,255,255,.08),rgba(0,0,0,.28));
}

.worship-card > *{position:relative}
.worship-card > i{font-size:2.8rem;opacity:.25;margin-bottom:auto}
.worship-card h3{color:#fff;font-size:1.55rem;margin-bottom:8px}
.worship-card p{color:rgba(255,255,255,.86);font-size:.94rem;margin-bottom:16px}
.worship-card span{color:#fff}
.worship-card.hymns{background:linear-gradient(135deg,var(--blue),var(--blue-2))}
.worship-card.choruses{background:linear-gradient(135deg,var(--wine),var(--wine-deep))}

.practical-section{
  background:#fff;
  padding-top:0;
}

.practical-box{
  background:
    radial-gradient(circle at 86% 18%, rgba(25,170,219,.18), transparent 28%),
    linear-gradient(135deg,#eef8fe,#fff);
  border:1px solid var(--card-border);
  border-radius:var(--radius-lg);
  padding:38px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
  box-shadow:var(--shadow-sm);
}

.practical-box h2{font-size:2.35rem}
.practical-box p{max-width:720px;margin-bottom:0}

/* Dark mode */
html[data-theme="dark"] .page-formacion .landing-hero{
  background:
    radial-gradient(circle at 75% 20%, rgba(25,170,219,.18), transparent 28%),
    radial-gradient(circle at 92% 76%, rgba(0,153,132,.08), transparent 28%),
    linear-gradient(90deg, rgba(0,8,28,.98) 0%, rgba(0,20,70,.88) 54%, rgba(0,20,70,.44) 100%);
}

html[data-theme="dark"] .formation-panel{
  background:rgba(17,26,46,.70);
  border-color:rgba(255,255,255,.08);
}

html[data-theme="dark"] .formation-route-section,
html[data-theme="dark"] .doctrine-section,
html[data-theme="dark"] .practical-section{
  background:var(--bg-soft);
}

html[data-theme="dark"] .bible-section,
html[data-theme="dark"] .worship-section{
  background:
    radial-gradient(circle at 20% 20%, rgba(25,170,219,.10), transparent 28%),
    linear-gradient(180deg,#0f172a,#0b1224);
}

html[data-theme="dark"] .route-card,
html[data-theme="dark"] .formation-resource-card,
html[data-theme="dark"] .doctrine-list article,
html[data-theme="dark"] .growth-card{
  background:var(--card);
  border-color:var(--card-border);
}

html[data-theme="dark"] .formation-resource-card.featured,
html[data-theme="dark"] .practical-box{
  background:
    radial-gradient(circle at 85% 15%, rgba(25,170,219,.12), transparent 30%),
    linear-gradient(135deg,#111a2e,#0f172a);
  border-color:var(--card-border);
}

html[data-theme="dark"] .growth-section{
  background:#0b1224;
}

html[data-theme="dark"] .resource-badge{
  background:rgba(25,170,219,.12);
}

/* Responsive */
@media (max-width:1024px){
  .landing-hero-grid,
  .formation-feature,
  .doctrine-layout,
  .worship-layout{
    grid-template-columns:1fr;
  }

  .formation-panel{max-width:620px}
  .route-grid,.growth-grid{grid-template-columns:repeat(2,1fr)}
  .route-card-wide{grid-column:span 2}
}

@media (max-width:720px){
  .page-formacion .landing-hero{min-height:auto}
  .landing-hero-grid{padding:58px 0;gap:30px}
  .landing-hero-copy h1{font-size:clamp(2.5rem,12vw,3.4rem)}
  .formation-panel{border-radius:24px;padding:24px}
  .panel-stat-grid{grid-template-columns:1fr}
  .route-grid,.formation-resource-grid,.growth-grid,.worship-cards{grid-template-columns:1fr}
  .route-card-wide{grid-column:span 1}
  .formation-resource-card.featured{min-height:auto}
  .practical-box{flex-direction:column;align-items:flex-start;border-radius:24px;padding:28px}
  .formation-copy h2,.doctrine-card-main h2,.worship-copy h2,.practical-box h2{font-size:2.25rem}
}


/* DARK MODE SECTION DEPTH PATCH v2 - Formacion */
html[data-theme="dark"] .page-formacion .landing-hero{
  background:
    radial-gradient(circle at 76% 18%, rgba(25,170,219,.24), transparent 30%),
    radial-gradient(circle at 14% 82%, rgba(235,195,102,.10), transparent 28%),
    linear-gradient(135deg,#061126 0%,#09255b 54%,#0b4fa1 100%) !important;
}
html[data-theme="dark"] .formation-route-section,
html[data-theme="dark"] .doctrine-section{
  background:
    radial-gradient(circle at 12% 12%, rgba(25,170,219,.075), transparent 28%),
    linear-gradient(180deg,#0f172a,#111c33) !important;
}
html[data-theme="dark"] .bible-section{
  background:
    radial-gradient(circle at 80% 14%, rgba(235,195,102,.10), transparent 30%),
    radial-gradient(circle at 12% 76%, rgba(25,170,219,.075), transparent 26%),
    linear-gradient(180deg,#071126,#0b1224) !important;
}
html[data-theme="dark"] .growth-section{
  background:
    radial-gradient(circle at 82% 16%, rgba(0,153,132,.09), transparent 30%),
    linear-gradient(180deg,#0c162d,#0f172a) !important;
}
html[data-theme="dark"] .worship-section{
  background:
    radial-gradient(circle at 16% 18%, rgba(148,40,77,.18), transparent 30%),
    radial-gradient(circle at 86% 76%, rgba(25,170,219,.08), transparent 28%),
    linear-gradient(135deg,#071126,#15152d 54%,#0b1224) !important;
}
html[data-theme="dark"] .practical-section{
  background:
    radial-gradient(circle at 14% 16%, rgba(25,170,219,.085), transparent 28%),
    linear-gradient(180deg,#0f172a,#0a1329) !important;
}
html[data-theme="dark"] .route-card,
html[data-theme="dark"] .formation-resource-card,
html[data-theme="dark"] .doctrine-list article,
html[data-theme="dark"] .growth-card,
html[data-theme="dark"] .practical-box{
  background:linear-gradient(180deg,rgba(20,32,58,.97),rgba(15,23,42,.97)) !important;
  border-color:rgba(148,163,184,.18) !important;
}

/* =========================================================
   FORMACION - Fine spacing patch
   ========================================================= */
.formation-route-section,
.bible-section,
.doctrine-section,
.growth-section,
.worship-section{
  padding-top:clamp(78px, 7vw, 104px) !important;
  padding-bottom:clamp(78px, 7vw, 104px) !important;
}

.practical-section{
  padding-top:clamp(68px, 6vw, 92px) !important;
  padding-bottom:clamp(78px, 7vw, 104px) !important;
}

.route-card,
.bible-card,
.doctrine-card,
.growth-card,
.worship-card,
.practical-box{
  padding-top:clamp(24px, 3vw, 36px);
}

@media (max-width:720px){
  .formation-route-section,.bible-section,.doctrine-section,.growth-section,.worship-section,.practical-section{padding-top:66px !important;padding-bottom:66px !important}
}


/* =========================================================
   servir.css - estilos especificos migrados a capa unica pages.css
   ========================================================= */
/* =====================================================
   Landing Servir en la iglesia - ID7D
   Extiende el sistema visual del home.
===================================================== */

.page-servir .landing-hero{
  position:relative;
  overflow:hidden;
  color:#fff;
  min-height:440px;
  display:flex;
  align-items:center;
  background:
    radial-gradient(circle at 74% 22%, rgba(25,170,219,.24), transparent 28%),
    radial-gradient(circle at 92% 78%, rgba(148,40,77,.18), transparent 30%),
    linear-gradient(90deg, rgba(0,18,62,.98) 0%, rgba(0,32,102,.88) 50%, rgba(0,32,102,.34) 100%),
    linear-gradient(135deg, var(--navy), var(--blue));
}

.page-servir .landing-hero::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:64px;
  background:linear-gradient(180deg,transparent,rgba(0,32,102,.16));
  pointer-events:none;
}

.landing-hero-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:1.08fr .82fr;
  gap:48px;
  align-items:center;
  padding:70px 0;
}

.landing-hero-copy{max-width:680px}

.landing-hero-copy h1{
  color:#fff;
  font-size:clamp(3rem,6vw,5rem);
  line-height:.96;
  letter-spacing:-.055em;
  margin-bottom:22px;
  text-wrap:balance;
}

.landing-hero-copy p:not(.eyebrow){
  max-width:590px;
  color:rgba(255,255,255,.9);
  font-size:1.12rem;
  margin-bottom:28px;
}

.service-panel{
  background:rgba(0,22,66,.42);
  border:1px solid rgba(255,255,255,.20);
  border-radius:var(--radius-lg);
  padding:30px;
  backdrop-filter:blur(18px);
  box-shadow:var(--shadow-lg);
}

.service-panel-icon{
  width:62px;
  height:62px;
  border-radius:20px;
  display:grid;
  place-items:center;
  color:#fff;
  font-size:1.5rem;
  background:linear-gradient(135deg,var(--wine),var(--wine-deep));
  margin-bottom:18px;
}

.service-panel h2{
  color:#fff;
  font-size:1.8rem;
  line-height:1.08;
  margin-bottom:12px;
}

.service-panel p{
  color:rgba(255,255,255,.82);
  margin-bottom:18px;
}

.service-panel-list{
  display:grid;
  gap:10px;
}

.service-panel-list span{
  display:flex;
  align-items:center;
  gap:10px;
  color:rgba(255,255,255,.86);
  font-weight:700;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);
  border-radius:16px;
  padding:12px 14px;
}

.service-panel-list i{color:var(--sky)}

.ministries-section{background:#fff}

.ministry-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:24px;
}

.ministry-card{
  position:relative;
  display:block;
  background:rgba(255,255,255,.94);
  border:1px solid var(--card-border);
  border-radius:var(--radius-md);
  padding:34px 28px;
  box-shadow:var(--shadow-sm);
  transition:.2s ease;
  overflow:hidden;
}

.ministry-card::after{
  content:"";
  position:absolute;
  left:28px;
  right:28px;
  top:0;
  height:3px;
  background:var(--sky);
  opacity:0;
  transition:.2s ease;
}

.ministry-card:hover{
  transform:translateY(-6px);
  box-shadow:var(--shadow-md);
  border-color:rgba(25,170,219,.38);
}

.ministry-card:hover::after{opacity:1}

.ministry-card h3{
  font-size:1.32rem;
  line-height:1.18;
  margin-bottom:12px;
}

.ministry-card p{
  color:var(--text-soft);
  font-size:.95rem;
  margin-bottom:20px;
}

.ministry-card span,
.service-resource-card span,
.community-card span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:var(--sky);
  font-weight:800;
  font-size:.92rem;
}

.ministry-card span i,
.service-resource-card span i,
.community-card span i{transition:.2s ease}
.ministry-card:hover span i,
.service-resource-card:hover span i,
.community-card:hover span i{transform:translateX(3px)}

.service-feature-section{
  background:
    radial-gradient(circle at 18% 25%, rgba(25,170,219,.15), transparent 28%),
    linear-gradient(180deg,#f8fbff,#eaf4fb);
}

.service-feature{
  display:grid;
  grid-template-columns:.86fr 1.14fr;
  gap:42px;
  align-items:center;
}

.service-quote-card{
  min-height:330px;
  border-radius:var(--radius-lg);
  background:
    radial-gradient(circle at 82% 20%, rgba(25,170,219,.22), transparent 30%),
    linear-gradient(135deg,var(--navy),var(--blue));
  color:#fff;
  padding:34px;
  box-shadow:var(--shadow-md);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}

.service-quote-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(0,0,0,.18));
}

.service-quote-card > *{position:relative}
.quote-icon{font-size:3rem;opacity:.24;margin-bottom:auto;color:var(--sky)}
.service-quote-card p{font-family:"Playfair Display",Georgia,serif;font-size:1.35rem;line-height:1.28;margin-bottom:8px;color:#fff}
.service-quote-card strong{color:var(--gold)}

.service-feature-copy h2,
.liturgy-copy h2,
.community-copy h2{
  font-size:2.75rem;
  line-height:1.06;
  letter-spacing:-.04em;
  margin-bottom:18px;
}

.service-feature-copy p:not(.eyebrow),
.liturgy-copy p,
.community-copy p{
  color:var(--text-soft);
  margin-bottom:26px;
}

.liturgy-section{
  background:#fff;
}

.liturgy-layout{
  display:grid;
  grid-template-columns:.86fr 1.14fr;
  gap:42px;
  align-items:center;
}

.liturgy-list{
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(12px);
  border:1px solid rgba(219,229,240,.85);
  border-radius:var(--radius-md);
  padding:22px;
  box-shadow:var(--shadow-sm);
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:10px;
}

.liturgy-list a{
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px;
  border-radius:15px;
  color:var(--text);
  font-weight:700;
  transition:.2s ease;
}

.liturgy-list a:first-child{grid-column:span 2}
.liturgy-list a:hover{background:rgba(25,170,219,.08);color:var(--blue-2)}
.liturgy-list a:hover .mini-icon{background:var(--sky);color:#fff}
.liturgy-list em{font-style:normal;font-size:.72rem;color:var(--text-soft);margin-left:auto;font-weight:800;text-transform:uppercase;letter-spacing:.08em}

.resources-service-section{
  background:
    radial-gradient(circle at 85% 18%, rgba(25,170,219,.12), transparent 28%),
    linear-gradient(180deg,#f7fbff,#edf7fd);
}

.service-resource-grid{
  display:grid;
  grid-template-columns:1.1fr .95fr .95fr;
  gap:22px;
}

.service-resource-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:250px;
  background:#fff;
  border:1px solid var(--card-border);
  border-radius:var(--radius-md);
  padding:28px;
  box-shadow:var(--shadow-sm);
  transition:.2s ease;
  overflow:hidden;
}

.service-resource-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(25,170,219,.10),transparent 48%);
  opacity:0;
  transition:.2s ease;
}

.service-resource-card > *{position:relative}
.service-resource-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);border-color:rgba(25,170,219,.38)}
.service-resource-card:hover::before{opacity:1}

.service-resource-card.highlighted{
  background:
    radial-gradient(circle at 84% 16%, rgba(25,170,219,.16), transparent 28%),
    linear-gradient(135deg,#fff,#eef8fe);
}

.resource-icon{
  width:54px;
  height:54px;
  border-radius:18px;
  display:grid;
  place-items:center;
  color:#fff;
  font-size:1.25rem;
  background:linear-gradient(135deg,var(--blue-2),var(--sky));
  margin-bottom:18px;
}

.service-resource-card h3{font-size:1.28rem;margin-bottom:10px}
.service-resource-card p{color:var(--text-soft);font-size:.94rem;margin-bottom:20px}
.service-resource-card span{margin-top:auto}

.community-section{background:#fff}

.community-layout{
  display:grid;
  grid-template-columns:.78fr 1.22fr;
  gap:40px;
  align-items:center;
}

.community-cards{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:22px;
}

.community-card{
  min-height:280px;
  color:#fff;
  border-radius:var(--radius-md);
  padding:30px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  box-shadow:var(--shadow-md);
  position:relative;
  overflow:hidden;
  transition:.2s ease;
}

.community-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}
.community-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 18%,rgba(255,255,255,.18),transparent 24%),linear-gradient(180deg,rgba(255,255,255,.08),rgba(0,0,0,.28))}
.community-card > *{position:relative}
.community-card > i{font-size:2.8rem;opacity:.25;margin-bottom:auto}
.community-card h3{color:#fff;font-size:1.55rem;margin-bottom:8px}
.community-card p{color:rgba(255,255,255,.86);font-size:.94rem;margin-bottom:16px}
.community-card span{color:#fff}
.community-card.events{background:linear-gradient(135deg,var(--blue),var(--blue-2))}
.community-card.solidarity{background:linear-gradient(135deg,var(--green),#006f63)}

/* Dark mode */
html[data-theme="dark"] .page-servir .landing-hero{
  background:
    radial-gradient(circle at 74% 22%, rgba(25,170,219,.16), transparent 28%),
    radial-gradient(circle at 92% 78%, rgba(148,40,77,.12), transparent 30%),
    linear-gradient(90deg, rgba(0,8,28,.98) 0%, rgba(0,20,70,.88) 54%, rgba(0,20,70,.44) 100%);
}

html[data-theme="dark"] .service-panel{
  background:rgba(17,26,46,.70);
  border-color:rgba(255,255,255,.08);
}

html[data-theme="dark"] .ministries-section,
html[data-theme="dark"] .liturgy-section,
html[data-theme="dark"] .community-section{
  background:var(--bg-soft);
}

html[data-theme="dark"] .service-feature-section,
html[data-theme="dark"] .resources-service-section{
  background:
    radial-gradient(circle at 20% 20%, rgba(25,170,219,.10), transparent 28%),
    linear-gradient(180deg,#0f172a,#0b1224);
}

html[data-theme="dark"] .ministry-card,
html[data-theme="dark"] .liturgy-list,
html[data-theme="dark"] .service-resource-card{
  background:var(--card);
  border-color:var(--card-border);
}

html[data-theme="dark"] .service-resource-card.highlighted{
  background:
    radial-gradient(circle at 85% 15%, rgba(25,170,219,.12), transparent 30%),
    linear-gradient(135deg,#111a2e,#0f172a);
}

html[data-theme="dark"] .liturgy-list a{color:var(--text)}
html[data-theme="dark"] .liturgy-list a:hover{background:rgba(25,170,219,.12)}
html[data-theme="dark"] .service-quote-card{background:radial-gradient(circle at 82% 20%, rgba(25,170,219,.16), transparent 30%),linear-gradient(135deg,#000c2e,#001a55)}

/* Responsive */
@media (max-width:1024px){
  .landing-hero-grid,
  .service-feature,
  .liturgy-layout,
  .community-layout{
    grid-template-columns:1fr;
  }

  .service-panel{max-width:620px}
  .ministry-grid,.service-resource-grid,.community-cards{grid-template-columns:repeat(2,1fr)}
  .service-resource-card.highlighted{grid-column:span 2}
}

@media (max-width:720px){
  .page-servir .landing-hero{min-height:auto}
  .landing-hero-grid{padding:58px 0;gap:30px}
  .landing-hero-copy h1{font-size:clamp(2.5rem,12vw,3.4rem)}
  .service-panel{border-radius:24px;padding:24px}
  .ministry-grid,.service-resource-grid,.community-cards,.liturgy-list{grid-template-columns:1fr}
  .liturgy-list a:first-child,.service-resource-card.highlighted{grid-column:span 1}
  .service-feature-copy h2,.liturgy-copy h2,.community-copy h2{font-size:2.25rem}
  .service-quote-card{min-height:280px;border-radius:24px}
  .ministry-card,.service-resource-card,.liturgy-list{border-radius:22px}
}


/* DARK MODE SECTION DEPTH PATCH v2 - Servir */
html[data-theme="dark"] .page-servir .landing-hero{
  background:
    radial-gradient(circle at 78% 18%, rgba(25,170,219,.22), transparent 30%),
    radial-gradient(circle at 14% 80%, rgba(25,170,219,.12), transparent 28%),
    linear-gradient(135deg,#061126 0%,#09255b 54%,#0b4fa1 100%) !important;
}
html[data-theme="dark"] .ministries-section{
  background:
    radial-gradient(circle at 14% 12%, rgba(235,195,102,.07), transparent 28%),
    linear-gradient(180deg,#0f172a,#111c33) !important;
}
html[data-theme="dark"] .service-feature-section{
  background:
    radial-gradient(circle at 82% 14%, rgba(25,170,219,.12), transparent 30%),
    linear-gradient(180deg,#071126,#0b1224) !important;
}
html[data-theme="dark"] .liturgy-section{
  background:
    radial-gradient(circle at 15% 15%, rgba(148,40,77,.14), transparent 30%),
    linear-gradient(180deg,#0c162d,#0f172a) !important;
}
html[data-theme="dark"] .resources-service-section{
  background:
    radial-gradient(circle at 84% 16%, rgba(0,153,132,.09), transparent 30%),
    linear-gradient(180deg,#070d1c,#101c36) !important;
}
html[data-theme="dark"] .community-section{
  background:
    radial-gradient(circle at 18% 16%, rgba(25,170,219,.10), transparent 30%),
    linear-gradient(135deg,#0f172a,#0a1329) !important;
}
html[data-theme="dark"] .ministry-card,
html[data-theme="dark"] .liturgy-list,
html[data-theme="dark"] .service-resource-card,
html[data-theme="dark"] .community-card{
  background:linear-gradient(180deg,rgba(20,32,58,.97),rgba(15,23,42,.97)) !important;
  border-color:rgba(148,163,184,.18) !important;
}

/* =========================================================
   SERVIR - Fine spacing patch
   ========================================================= */
.ministries-section,
.service-feature-section,
.liturgy-section,
.resources-service-section,
.community-section{
  padding-top:clamp(78px, 7vw, 104px) !important;
  padding-bottom:clamp(78px, 7vw, 104px) !important;
}

.ministry-card,
.service-feature-card,
.liturgy-card,
.service-resource-card,
.community-card{
  padding-top:clamp(24px, 3vw, 36px);
}

@media (max-width:720px){
  .ministries-section,.service-feature-section,.liturgy-section,.resources-service-section,.community-section{padding-top:66px !important;padding-bottom:66px !important}
}


/* =========================================================
   herramientas.css - estilos especificos migrados a capa unica pages.css
   ========================================================= */
/* =========================
   Landing: Herramientas
========================= */
.page-herramientas .landing-hero{
  padding:78px 0;
}

.tools-hero{
  background:var(--hero-bg);
  color:#fff;
  overflow:hidden;
  position:relative;
}

.tools-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.04) 1px, transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(90deg, rgba(0,0,0,.15), rgba(0,0,0,.65));
  pointer-events:none;
}

.tools-hero-grid{
  display:grid;
  grid-template-columns:1.02fr .98fr;
  gap:48px;
  align-items:center;
  position:relative;
  z-index:1;
}

.landing-hero-copy h1{
  color:#fff;
  font-size:clamp(2.75rem,5.3vw,5rem);
  line-height:.98;
  letter-spacing:-.055em;
  margin-bottom:22px;
  text-wrap:balance;
}

.landing-hero-copy p:not(.eyebrow){
  color:rgba(255,255,255,.88);
  max-width:560px;
  font-size:1.08rem;
  margin-bottom:28px;
}

.dashboard-preview{
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.16);
  border-radius:32px;
  padding:24px;
  box-shadow:var(--shadow-lg);
  backdrop-filter:blur(18px);
}

.preview-topbar{
  display:flex;
  gap:7px;
  margin-bottom:18px;
}

.preview-topbar span{
  width:11px;
  height:11px;
  border-radius:50%;
  background:rgba(255,255,255,.35);
}

.preview-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
  padding:22px;
  border-radius:24px;
  background:rgba(0,32,102,.42);
  border:1px solid rgba(255,255,255,.10);
  margin-bottom:16px;
}

.preview-header p{
  margin:0 0 4px;
  color:var(--gold);
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.72rem;
}

.preview-header h2{
  color:#fff;
  margin:0;
  font-size:1.7rem;
  line-height:1.1;
}

.preview-header i{
  width:52px;
  height:52px;
  border-radius:18px;
  display:grid;
  place-items:center;
  background:var(--sky);
  color:#fff;
  font-size:1.3rem;
}

.preview-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin-bottom:16px;
}

.preview-stat{
  padding:16px;
  border-radius:18px;
  background:#fff;
  color:var(--text);
}

.preview-stat strong{
  display:block;
  color:var(--navy);
  font-size:1.35rem;
  line-height:1;
  margin-bottom:5px;
}

.preview-stat span{
  color:var(--text-soft);
  font-size:.82rem;
  font-weight:700;
}

.preview-list{
  display:grid;
  gap:10px;
}

.preview-list span{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(255,255,255,.10);
  color:rgba(255,255,255,.86);
  font-weight:700;
  font-size:.92rem;
}

.preview-list i{
  color:var(--sky);
}

.tools-path-section{
  background:#fff;
}

.tools-category-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:24px;
}

.tool-category-card,
.app-module,
.game-card,
.interactive-card{
  position:relative;
  overflow:hidden;
  background:var(--card);
  border:1px solid var(--card-border);
  border-radius:var(--radius-md);
  box-shadow:var(--shadow-sm);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.tool-category-card{
  padding:32px 26px;
}

.tool-category-card::after,
.app-module::after,
.interactive-card::after{
  content:"";
  position:absolute;
  left:24px;
  right:24px;
  top:0;
  height:3px;
  background:var(--sky);
  opacity:0;
  transition:.2s ease;
}

.tool-category-card:hover,
.app-module:hover,
.game-card:hover,
.interactive-card:hover{
  transform:translateY(-5px);
  box-shadow:var(--shadow-md);
  border-color:rgba(25,170,219,.38);
}

.tool-category-card:hover::after,
.app-module:hover::after,
.interactive-card:hover::after{
  opacity:1;
}

.tool-category-card h3,
.app-module h3,
.game-card h3,
.interactive-card h3{
  font-size:1.32rem;
  line-height:1.15;
  margin-bottom:10px;
}

.tool-category-card p,
.app-module p,
.game-card p,
.interactive-card p{
  color:var(--text-soft);
  font-size:.94rem;
  margin-bottom:18px;
}

.tool-category-card span,
.game-card span{
  color:var(--sky);
  display:inline-flex;
  align-items:center;
  gap:7px;
  font-weight:800;
  font-size:.9rem;
}

.tool-category-card span i,
.game-card span i{
  font-size:.8em;
  transition:.2s ease;
}

.tool-category-card:hover span i,
.game-card:hover span i{
  transform:translateX(3px);
}

.app-showcase-section{
  background:
    radial-gradient(circle at 18% 22%, rgba(25,170,219,.14), transparent 28%),
    linear-gradient(180deg,#f6faff,#e6f2fb);
}

.app-showcase{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:42px;
  align-items:center;
}

.app-copy h2,
.games-copy h2,
.programs-panel h2,
.apps-copy h2{
  font-size:clamp(2rem,4vw,3.1rem);
  line-height:1.06;
  letter-spacing:-.04em;
  margin-bottom:18px;
}

.app-copy p:not(.eyebrow),
.games-copy p,
.programs-panel p,
.apps-copy p{
  color:var(--text-soft);
  margin-bottom:26px;
}

.app-module-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
}

.app-module{
  padding:26px;
}

.app-module i{
  width:52px;
  height:52px;
  border-radius:17px;
  display:grid;
  place-items:center;
  background:#eaf4ff;
  color:var(--sky);
  font-size:1.25rem;
  margin-bottom:18px;
}

.games-section{
  background:var(--bg-soft);
}

.games-layout{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:38px;
  align-items:start;
}

.games-copy{
  position:sticky;
  top:calc(var(--header-height) + 28px);
}

.games-grid{
  display:grid;
  gap:18px;
}

.game-card{
  padding:28px;
  display:grid;
  grid-template-columns:auto 1fr;
  column-gap:18px;
  align-items:start;
}

.game-card > i{
  width:58px;
  height:58px;
  border-radius:19px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,var(--blue-2),var(--sky));
  color:#fff;
  font-size:1.35rem;
  grid-row:span 3;
}

.game-card.primary > i{
  background:linear-gradient(135deg,var(--orange),#d64215);
}

.game-card p{
  margin-bottom:12px;
}

.programs-section{
  background:#fff;
}

.programs-panel{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:28px;
  align-items:center;
  background:
    radial-gradient(circle at 86% 16%, rgba(25,170,219,.16), transparent 28%),
    linear-gradient(135deg,#00143f,var(--navy) 60%,var(--blue));
  color:#fff;
  border-radius:var(--radius-lg);
  padding:34px;
  box-shadow:var(--shadow-lg);
}

.programs-panel h2{
  color:#fff;
  margin-bottom:10px;
}

.programs-panel p{
  color:rgba(255,255,255,.82);
  margin-bottom:0;
}

.programs-icon{
  width:72px;
  height:72px;
  border-radius:24px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.12);
  color:var(--sky);
  font-size:1.6rem;
}

.interactive-section{
  background:var(--bg-soft);
}

.interactive-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}

.interactive-card{
  padding:28px;
}

.interactive-card .mini-icon{
  margin-bottom:18px;
}

.apps-section{
  background:
    radial-gradient(circle at 20% 25%, rgba(25,170,219,.16), transparent 60%),
    radial-gradient(circle at 85% 75%, rgba(25,170,219,.12), transparent 25%),
    linear-gradient(180deg,#e6f2fb,#f3f8fc);
}

.apps-layout{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:38px;
  align-items:center;
}

.apps-list{
  display:grid;
  gap:14px;
}

.apps-list a{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  background:var(--card);
  border:1px solid var(--card-border);
  border-radius:20px;
  padding:18px 20px;
  box-shadow:var(--shadow-xs);
  transition:.2s ease;
}

.apps-list a:hover{
  transform:translateY(-3px);
  box-shadow:var(--shadow-sm);
  border-color:rgba(25,170,219,.38);
}

.apps-list span{
  display:flex;
  align-items:center;
  gap:12px;
  font-weight:800;
  color:var(--navy);
}

.apps-list span i{
  color:var(--sky);
}

.apps-list strong{
  color:var(--text-soft);
  font-size:.9rem;
}

html[data-theme="dark"] .dashboard-preview{
  background:rgba(17,26,46,.72);
  border-color:rgba(255,255,255,.10);
}

html[data-theme="dark"] .preview-header{
  background:rgba(0,10,38,.62);
}

html[data-theme="dark"] .preview-stat,
html[data-theme="dark"] .tool-category-card,
html[data-theme="dark"] .app-module,
html[data-theme="dark"] .game-card,
html[data-theme="dark"] .interactive-card,
html[data-theme="dark"] .apps-list a{
  background:var(--card);
  border-color:var(--card-border);
}

html[data-theme="dark"] .preview-stat strong,
html[data-theme="dark"] .apps-list span{
  color:#fff;
}

html[data-theme="dark"] .preview-stat span,
html[data-theme="dark"] .tool-category-card p,
html[data-theme="dark"] .app-module p,
html[data-theme="dark"] .game-card p,
html[data-theme="dark"] .interactive-card p,
html[data-theme="dark"] .apps-list strong,
html[data-theme="dark"] .app-copy p:not(.eyebrow),
html[data-theme="dark"] .games-copy p,
html[data-theme="dark"] .programs-panel p,
html[data-theme="dark"] .apps-copy p{
  color:var(--text-soft);
}

html[data-theme="dark"] .tools-path-section,
html[data-theme="dark"] .programs-section{
  background:var(--bg-soft);
}

html[data-theme="dark"] .app-showcase-section,
html[data-theme="dark"] .apps-section{
  background:
    radial-gradient(circle at 20% 25%, rgba(25,170,219,.10), transparent 30%),
    linear-gradient(180deg,#0f172a,#0b1224);
}

html[data-theme="dark"] .games-section,
html[data-theme="dark"] .interactive-section{
  background:#0b1224;
}

html[data-theme="dark"] .app-module i{
  background:#16213d;
}

html[data-theme="dark"] .programs-panel{
  background:
    radial-gradient(circle at 86% 16%, rgba(25,170,219,.14), transparent 28%),
    linear-gradient(135deg,#000814,#00143f 62%,#002066);
}

@media (max-width:1024px){
  .tools-hero-grid,
  .app-showcase,
  .games-layout,
  .apps-layout{
    grid-template-columns:1fr;
  }

  .tools-category-grid,
  .interactive-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .games-copy{
    position:static;
  }

  .programs-panel{
    grid-template-columns:1fr;
  }
}

@media (max-width:720px){
  .page-herramientas .landing-hero{
    padding:58px 0;
  }

  .dashboard-preview{
    border-radius:24px;
    padding:18px;
  }

  .preview-grid,
  .tools-category-grid,
  .app-module-grid,
  .interactive-grid{
    grid-template-columns:1fr;
  }

  .game-card{
    grid-template-columns:1fr;
  }

  .game-card > i{
    grid-row:auto;
    margin-bottom:18px;
  }

  .programs-panel{
    border-radius:24px;
    padding:26px;
  }

  .apps-list a{
    align-items:flex-start;
    flex-direction:column;
  }
}


html[data-theme="dark"] .tools-path-section{
  background:
    radial-gradient(circle at 14% 12%, rgba(25,170,219,.075), transparent 28%),
    linear-gradient(180deg,#0f172a,#111c33) !important;
}
html[data-theme="dark"] .app-showcase-section{
  background:
    radial-gradient(circle at 82% 14%, rgba(235,195,102,.10), transparent 30%),
    linear-gradient(180deg,#071126,#0b1224) !important;
}
html[data-theme="dark"] .games-section{
  background:
    radial-gradient(circle at 14% 16%, rgba(25,170,219,.11), transparent 30%),
    linear-gradient(180deg,#0c162d,#0f172a) !important;
}
html[data-theme="dark"] .programs-section{
  background:
    radial-gradient(circle at 84% 16%, rgba(25,170,219,.09), transparent 30%),
    linear-gradient(180deg,#070d1c,#101c36) !important;
}
html[data-theme="dark"] .interactive-section{
  background:
    radial-gradient(circle at 16% 16%, rgba(0,153,132,.10), transparent 30%),
    linear-gradient(180deg,#0f172a,#0a1329) !important;
}
html[data-theme="dark"] .apps-section{
  background:
    radial-gradient(circle at 82% 18%, rgba(148,40,77,.13), transparent 30%),
    linear-gradient(135deg,#071126,#111a2e 58%,#0b1224) !important;
}
html[data-theme="dark"] .preview-stat,
html[data-theme="dark"] .tool-category-card,
html[data-theme="dark"] .app-module,
html[data-theme="dark"] .game-card,
html[data-theme="dark"] .interactive-card,
html[data-theme="dark"] .apps-list a,
html[data-theme="dark"] .programs-panel{
  background:linear-gradient(180deg,rgba(20,32,58,.97),rgba(15,23,42,.97)) !important;
  border-color:rgba(148,163,184,.18) !important;
}

/* =========================================================
   HERRAMIENTAS - Fine spacing patch
   ========================================================= */
.tools-path-section,
.app-showcase-section,
.games-section,
.programs-section,
.interactive-section,
.apps-section{
  padding-top:clamp(78px, 7vw, 104px) !important;
  padding-bottom:clamp(78px, 7vw, 104px) !important;
}

.tool-path-card,
.showcase-card,
.game-card,
.program-card,
.interactive-card,
.app-card{
  padding-top:clamp(24px, 3vw, 36px);
}

@media (max-width:720px){
  .tools-path-section,.app-showcase-section,.games-section,.programs-section,.interactive-section,.apps-section{padding-top:66px !important;padding-bottom:66px !important}
}


/* =========================================================
   blog.css - estilos especificos migrados a capa unica pages.css
   ========================================================= */
/* =========================
   BLOG | ID7D
   Archivo modular para blog.html
========================= */

.page-blog .landing-hero{
  position:relative;
  overflow:hidden;
  padding:88px 0;
  background:var(--hero-bg);
  color:#fff;
}

.page-blog .landing-hero::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:70px;
  background:linear-gradient(180deg, transparent, rgba(0,32,102,.14));
  pointer-events:none;
}

.page-blog .landing-hero-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:1.08fr .82fr;
  gap:42px;
  align-items:center;
}

.page-blog .landing-hero-copy h1{
  color:#fff;
  font-size:clamp(2.6rem,5vw,4.5rem);
  line-height:1;
  letter-spacing:-.05em;
  max-width:780px;
  margin-bottom:22px;
}

.page-blog .landing-hero-copy p:not(.eyebrow){
  color:rgba(255,255,255,.88);
  max-width:630px;
  font-size:1.05rem;
  margin-bottom:28px;
}

.page-blog .hero-panel{
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  border-radius:var(--radius-lg);
  padding:34px;
  color:#fff;
  box-shadow:var(--shadow-lg);
  backdrop-filter:blur(18px);
}

.page-blog .hero-panel-icon{
  width:62px;
  height:62px;
  border-radius:22px;
  display:grid;
  place-items:center;
  font-size:1.55rem;
  color:#fff;
  background:linear-gradient(135deg,var(--orange),#ff7a3d);
  margin-bottom:22px;
}

.page-blog .hero-panel h2{
  color:#fff;
  font-size:1.65rem;
  line-height:1.12;
  margin-bottom:12px;
}

.page-blog .hero-panel p,
.page-blog .hero-panel li{
  color:rgba(255,255,255,.84);
}

.page-blog .hero-panel ul{
  list-style:none;
  padding:0;
  margin:22px 0 0;
  display:grid;
  gap:12px;
}

.page-blog .hero-panel li{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:700;
  font-size:.94rem;
}

.page-blog .hero-panel li i{color:var(--gold)}

.blog-search{
  padding:0;
  margin-top:-34px;
  position:relative;
  z-index:2;
  background:transparent !important;
}

.search-shell{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:28px;
  align-items:center;
  background:var(--card);
  border:1px solid var(--card-border);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-md);
  padding:32px;
}

.search-shell h2{
  font-size:clamp(1.7rem,3vw,2.5rem);
  line-height:1.08;
  letter-spacing:-.04em;
  margin-bottom:10px;
}

.search-shell p{color:var(--text-soft);margin-bottom:0}

.search-form{
  display:flex;
  gap:12px;
  align-items:center;
}

.search-form input{
  width:100%;
  border:1px solid var(--card-border);
  border-radius:16px;
  padding:15px 16px;
  background:var(--bg-soft);
  color:var(--text);
  outline:none;
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.search-form input:focus{
  border-color:rgba(25,170,219,.62);
  box-shadow:0 0 0 4px rgba(25,170,219,.12);
  background:var(--card);
}

.sr-only{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

.blog-featured{padding-top:86px}

.featured-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:24px;
  align-items:stretch;
}

.featured-post{
  min-height:440px;
  border-radius:var(--radius-lg);
  padding:38px;
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  box-shadow:var(--shadow-md);
  background:
    radial-gradient(circle at 85% 18%, rgba(255,255,255,.20), transparent 24%),
    linear-gradient(135deg, rgba(0,32,102,.98), rgba(6,53,122,.94) 48%, rgba(148,40,77,.92));
  overflow:hidden;
  position:relative;
}

.featured-post::before{
  content:"\ead2";
  font-family:"IcoFont";
  font-weight:normal;
  position:absolute;
  right:30px;
  top:26px;
  font-size:5rem;
  opacity:.13;
}

.featured-post>*{position:relative}

.post-meta{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:18px;
}

.post-meta span{
  display:inline-flex;
  border-radius:999px;
  padding:8px 12px;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  background:rgba(255,255,255,.14);
  color:#fff;
}

.featured-post h3{
  color:#fff;
  max-width:620px;
  font-size:clamp(2rem,4vw,3rem);
  line-height:1.05;
  letter-spacing:-.04em;
  margin-bottom:14px;
}

.featured-post p{
  max-width:610px;
  color:rgba(255,255,255,.86);
  margin-bottom:22px;
}

.recent-list{
  display:grid;
  gap:16px;
}

.recent-item,
.taxonomy-card{
  background:var(--card);
  border:1px solid var(--card-border);
  border-radius:var(--radius-md);
  box-shadow:var(--shadow-sm);
  padding:26px;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.recent-item:hover,
.taxonomy-card:hover{
  transform:translateY(-4px);
  box-shadow:var(--shadow-md);
  border-color:rgba(25,170,219,.35);
}

.recent-item h3{
  font-size:1.22rem;
  line-height:1.18;
  margin:8px 0 9px;
}

.recent-item p,
.taxonomy-card p,
.category-card p{
  color:var(--text-soft);
  margin-bottom:0;
}

.blog-categories{
  background:
    radial-gradient(circle at 80% 20%, rgba(25,170,219,.10), transparent 30%),
    linear-gradient(180deg, #f6faff, #edf5fb);
}

.blog-categories .section-heading p{
  color:var(--text-soft);
  margin-bottom:0;
}

.category-card{
  display:block;
  min-height:100%;
}

.category-card .link{
  margin-top:18px;
}

.blog-taxonomies{
  background:var(--bg-soft);
}

.taxonomy-layout{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:38px;
  align-items:center;
}

.taxonomy-copy h2{
  font-size:clamp(2rem,4vw,3rem);
  line-height:1.06;
  letter-spacing:-.04em;
  margin-bottom:16px;
}

.taxonomy-copy p{color:var(--text-soft)}

.taxonomy-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
}

.taxonomy-card .mini-icon{
  margin-bottom:18px;
}

.taxonomy-card h3{
  font-size:1.2rem;
  margin-bottom:8px;
}

.editorial-cta{
  padding-top:0;
  background:var(--bg-soft);
}

html[data-theme="dark"] .search-shell,
html[data-theme="dark"] .recent-item,
html[data-theme="dark"] .taxonomy-card{
  background:var(--card);
  border-color:var(--card-border);
}

html[data-theme="dark"] .search-form input{
  background:#0f172a;
  border-color:var(--card-border);
  color:var(--text);
}

html[data-theme="dark"] .search-form input:focus{background:var(--card)}

html[data-theme="dark"] .blog-categories{
  background:
    radial-gradient(circle at 80% 20%, rgba(25,170,219,.08), transparent 30%),
    linear-gradient(180deg, #0f172a, #0b1224);
}

html[data-theme="dark"] .blog-taxonomies,
html[data-theme="dark"] .editorial-cta{
  background:var(--bg-soft);
}

html[data-theme="dark"] .recent-item p,
html[data-theme="dark"] .taxonomy-card p,
html[data-theme="dark"] .category-card p,
html[data-theme="dark"] .taxonomy-copy p,
html[data-theme="dark"] .search-shell p,
html[data-theme="dark"] .blog-categories .section-heading p{
  color:var(--text-soft);
}

@media (max-width:1024px){
  .page-blog .landing-hero-grid,
  .search-shell,
  .featured-grid,
  .taxonomy-layout{
    grid-template-columns:1fr;
  }

  .featured-post{min-height:360px}
}

@media (max-width:720px){
  .page-blog .landing-hero{padding:64px 0 82px}
  .page-blog .hero-panel{padding:26px;border-radius:24px}
  .search-shell{padding:24px;border-radius:24px}
  .search-form{flex-direction:column;align-items:stretch}
  .search-form .btn{width:100%}
  .featured-post{min-height:320px;padding:28px;border-radius:24px}
  .taxonomy-grid{grid-template-columns:1fr}
}


html[data-theme="dark"] .blog-recent,
html[data-theme="dark"] .blog-search{
  background:
    radial-gradient(circle at 12% 12%, rgba(25,170,219,.075), transparent 28%),
    linear-gradient(180deg,#0f172a,#111c33) !important;
}
html[data-theme="dark"] .blog-categories{
  background:
    radial-gradient(circle at 82% 14%, rgba(235,195,102,.10), transparent 30%),
    linear-gradient(180deg,#071126,#0b1224) !important;
}
html[data-theme="dark"] .blog-taxonomies{
  background:
    radial-gradient(circle at 14% 16%, rgba(0,153,132,.09), transparent 30%),
    linear-gradient(180deg,#0c162d,#0f172a) !important;
}
html[data-theme="dark"] .editorial-cta{
  background:
    radial-gradient(circle at 16% 16%, rgba(25,170,219,.10), transparent 30%),
    linear-gradient(135deg,#070d1c,#101c36 58%,#0b1224) !important;
}
html[data-theme="dark"] .search-shell,
html[data-theme="dark"] .recent-item,
html[data-theme="dark"] .taxonomy-card,
html[data-theme="dark"] .category-card{
  background:linear-gradient(180deg,rgba(20,32,58,.97),rgba(15,23,42,.97)) !important;
  border-color:rgba(148,163,184,.18) !important;
}

/* =========================================================
   BLOG - Fine spacing patch
   ========================================================= */
.blog-search{
  padding-top:34px !important;
  padding-bottom:72px !important;
  margin-top:-18px !important;
}

.search-shell{
  padding:clamp(26px, 4vw, 38px) !important;
}

.blog-featured,
.blog-categories,
.blog-taxonomies{
  padding-top:clamp(78px, 7vw, 104px) !important;
  padding-bottom:clamp(78px, 7vw, 104px) !important;
}

.featured-post,
.category-card,
.taxonomy-card{
  padding-top:clamp(26px, 3vw, 38px);
}

@media (max-width:720px){
  .blog-search{padding-top:28px !important;padding-bottom:62px !important;margin-top:-10px !important}
  .blog-featured,.blog-categories,.blog-taxonomies{padding-top:66px !important;padding-bottom:66px !important}
}


/* =========================================================
   organizacion.css - estilos especificos migrados a capa unica pages.css
   ========================================================= */
/* =====================================================
   Landing Organización - ID7D
   Extiende el sistema visual existente sin reemplazarlo.
===================================================== */

.page-organizacion .landing-hero{
  position:relative;
  overflow:hidden;
  color:#fff;
  min-height:440px;
  display:flex;
  align-items:center;
  background:
    radial-gradient(circle at 76% 22%, rgba(25,170,219,.30), transparent 28%),
    radial-gradient(circle at 90% 75%, rgba(235,195,102,.14), transparent 28%),
    linear-gradient(90deg, rgba(0,18,62,.98) 0%, rgba(0,32,102,.88) 50%, rgba(0,32,102,.34) 100%),
    linear-gradient(135deg, var(--navy), var(--blue));
}

.page-organizacion .landing-hero::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:64px;
  background:linear-gradient(180deg,transparent,rgba(0,32,102,.16));
  pointer-events:none;
}

.landing-hero-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:1.1fr .82fr;
  gap:48px;
  align-items:center;
  padding:70px 0;
}

.landing-hero-copy{max-width:700px}

.landing-hero-copy h1{
  color:#fff;
  font-size:clamp(3rem,6vw,5rem);
  line-height:.96;
  letter-spacing:-.055em;
  margin-bottom:22px;
  text-wrap:balance;
}

.landing-hero-copy p:not(.eyebrow){
  max-width:590px;
  color:rgba(255,255,255,.9);
  font-size:1.12rem;
  margin-bottom:28px;
}

.hero-panel{
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  border-radius:var(--radius-lg);
  padding:30px;
  backdrop-filter:blur(18px);
  box-shadow:var(--shadow-lg);
}

.hero-panel-icon{
  width:62px;
  height:62px;
  border-radius:20px;
  display:grid;
  place-items:center;
  color:#fff;
  font-size:1.5rem;
  background:linear-gradient(135deg,var(--blue-2),var(--sky));
  margin-bottom:18px;
}

.hero-panel h2{
  color:#fff;
  font-size:1.8rem;
  line-height:1.08;
  margin-bottom:12px;
}

.hero-panel p{
  color:rgba(255,255,255,.82);
  margin-bottom:18px;
}

.hero-panel ul{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:10px;
}

.hero-panel li{
  display:flex;
  align-items:center;
  gap:10px;
  color:rgba(255,255,255,.86);
  font-weight:700;
  font-size:.94rem;
}

.hero-panel li i{color:var(--sky)}

.org-map-section{background:#fff}

.org-map-grid .card p{min-height:76px}

.org-about-section{
  background:
    radial-gradient(circle at 18% 12%, rgba(25,170,219,.12), transparent 26%),
    linear-gradient(180deg,#f8fbff,#eef6fc);
}

.org-feature{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:42px;
  align-items:center;
}

.org-values-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
}

.org-value-card,
.timeline-card,
.directory-card{
  background:#fff;
  border:1px solid var(--card-border);
  border-radius:var(--radius-sm);
  padding:24px;
  box-shadow:var(--shadow-xs);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}

.org-value-card:hover,
.timeline-card:hover,
.directory-card:hover{
  transform:translateY(-4px);
  box-shadow:var(--shadow-sm);
  border-color:rgba(25,170,219,.36);
}

.org-value-card span{
  width:50px;
  height:50px;
  border-radius:17px;
  display:grid;
  place-items:center;
  color:#fff;
  background:linear-gradient(135deg,var(--blue-2),var(--sky));
  margin-bottom:16px;
}

.org-value-card h3,
.timeline-card h3,
.directory-card h3{
  font-size:1.18rem;
  line-height:1.16;
  margin-bottom:8px;
}

.org-value-card p,
.timeline-card p,
.directory-card p,
.temples-panel p{
  color:var(--text-soft);
  font-size:.92rem;
  margin-bottom:0;
}

.org-history-section{background:var(--bg-soft)}

.org-timeline{
  position:relative;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
  margin-bottom:28px;
}

.org-timeline::before{
  content:"";
  position:absolute;
  left:8%;
  right:8%;
  top:31px;
  height:2px;
  background:rgba(25,170,219,.22);
}

.timeline-card{position:relative;z-index:1}

.timeline-number{
  width:62px;
  height:62px;
  border-radius:20px;
  display:grid;
  place-items:center;
  color:#fff;
  font-weight:900;
  letter-spacing:.06em;
  background:linear-gradient(135deg,var(--blue-2),var(--sky));
  box-shadow:0 14px 30px rgba(7,26,76,.12);
  margin-bottom:18px;
}

.archive-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:32px;
  border-radius:var(--radius-lg);
  background:
    radial-gradient(circle at 88% 20%, rgba(235,195,102,.20), transparent 26%),
    linear-gradient(135deg,#fff,#edf7ff);
  border:1px solid rgba(25,170,219,.22);
  box-shadow:var(--shadow-sm);
}

.archive-card h3{font-size:1.65rem;margin-bottom:8px}
.archive-card p:not(.eyebrow){color:var(--text-soft);margin-bottom:0;max-width:740px}

.org-fiid7-section{
  background:
    radial-gradient(circle at 16% 18%, rgba(25,170,219,.18), transparent 28%),
    linear-gradient(135deg,var(--navy),var(--blue));
}

.fiid7-card{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:28px;
  align-items:start;
  color:#fff;
}

.fiid7-icon{
  width:80px;
  height:80px;
  border-radius:26px;
  display:grid;
  place-items:center;
  color:#fff;
  font-size:2rem;
  background:linear-gradient(135deg,var(--orange),#ff7a3d);
  box-shadow:var(--shadow-lg);
}

.fiid7-card h2{color:#fff;font-size:clamp(2rem,4vw,3.2rem);line-height:1.05;margin-bottom:16px}
.fiid7-card p:not(.eyebrow){color:rgba(255,255,255,.84);max-width:820px}

.fiid7-tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.fiid7-tags span{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  border-radius:999px;
  padding:8px 14px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  font-size:.82rem;
  font-weight:800;
}

.org-directory-section{background:#fff}

.directory-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px;
}

.directory-card i{
  width:54px;
  height:54px;
  border-radius:18px;
  display:grid;
  place-items:center;
  color:#fff;
  font-size:1.2rem;
  background:linear-gradient(135deg,var(--blue-2),var(--sky));
  margin-bottom:18px;
}

.org-temples-section{
  background:
    radial-gradient(circle at 82% 18%, rgba(25,170,219,.14), transparent 28%),
    linear-gradient(180deg,#f8fbff,#eef6fc);
}

.temples-layout{
  display:grid;
  grid-template-columns:.88fr 1.12fr;
  gap:42px;
  align-items:center;
}

.temples-copy h2{font-size:clamp(2rem,4vw,3.1rem);line-height:1.08;letter-spacing:-.04em;margin-bottom:14px}
.temples-copy p:not(.eyebrow){color:var(--text-soft);margin-bottom:24px;max-width:560px}

.temples-panel{
  display:grid;
  gap:16px;
}

.temples-panel article{
  display:flex;
  gap:18px;
  align-items:flex-start;
  background:#fff;
  border:1px solid var(--card-border);
  border-radius:var(--radius-sm);
  padding:22px;
  box-shadow:var(--shadow-xs);
}

.temples-panel span{
  width:50px;
  height:50px;
  border-radius:17px;
  display:grid;
  place-items:center;
  color:#fff;
  background:linear-gradient(135deg,var(--blue-2),var(--sky));
  flex:0 0 auto;
}

.temples-panel h3{font-size:1.14rem;margin-bottom:6px}

html[data-theme="dark"] .page-organizacion .landing-hero{
  background:
    radial-gradient(circle at 74% 20%, rgba(25,170,219,.24), transparent 28%),
    radial-gradient(circle at 90% 75%, rgba(235,195,102,.10), transparent 28%),
    linear-gradient(90deg, rgba(0,8,34,.98) 0%, rgba(0,20,76,.92) 54%, rgba(0,20,76,.46) 100%);
}

html[data-theme="dark"] .org-map-section,
html[data-theme="dark"] .org-directory-section{
  background:#07142d;
}

html[data-theme="dark"] .org-about-section,
html[data-theme="dark"] .org-history-section,
html[data-theme="dark"] .org-temples-section{
  background:linear-gradient(180deg,#061229,#081936);
}

html[data-theme="dark"] .org-value-card,
html[data-theme="dark"] .timeline-card,
html[data-theme="dark"] .directory-card,
html[data-theme="dark"] .temples-panel article,
html[data-theme="dark"] .archive-card{
  background:#0c1b38;
  border-color:rgba(113,176,218,.16);
}

html[data-theme="dark"] .archive-card{
  background:radial-gradient(circle at 88% 20%, rgba(235,195,102,.10), transparent 26%),linear-gradient(135deg,#0c1b38,#07142d);
}

html[data-theme="dark"] .org-value-card p,
html[data-theme="dark"] .timeline-card p,
html[data-theme="dark"] .directory-card p,
html[data-theme="dark"] .temples-panel p,
html[data-theme="dark"] .archive-card p:not(.eyebrow),
html[data-theme="dark"] .temples-copy p:not(.eyebrow){
  color:var(--text-soft);
}

@media (max-width:1020px){
  .landing-hero-grid,
  .org-feature,
  .temples-layout{grid-template-columns:1fr}
  .directory-grid{grid-template-columns:repeat(2,1fr)}
}

@media (max-width:760px){
  .page-organizacion .landing-hero{min-height:auto}
  .landing-hero-grid{padding:58px 0;gap:30px}
  .landing-hero-copy h1{font-size:clamp(2.5rem,12vw,3.4rem)}
  .hero-panel{padding:24px}
  .org-values-grid,
  .org-timeline,
  .directory-grid{grid-template-columns:1fr}
  .org-timeline::before{display:none}
  .archive-card{align-items:flex-start;flex-direction:column}
  .fiid7-card{grid-template-columns:1fr}
}


/* DARK MODE SECTION DEPTH PATCH v2 - Organizacion */
html[data-theme="dark"] .page-organizacion .landing-hero{
  background:
    radial-gradient(circle at 78% 18%, rgba(25,170,219,.22), transparent 30%),
    radial-gradient(circle at 16% 78%, rgba(235,195,102,.10), transparent 28%),
    linear-gradient(135deg,#061126 0%,#09255b 54%,#0b4fa1 100%) !important;
}
html[data-theme="dark"] .org-map-section,
html[data-theme="dark"] .org-directory-section{
  background:
    radial-gradient(circle at 14% 12%, rgba(25,170,219,.075), transparent 28%),
    linear-gradient(180deg,#0f172a,#111c33) !important;
}
html[data-theme="dark"] .org-about-section{
  background:
    radial-gradient(circle at 82% 14%, rgba(235,195,102,.10), transparent 30%),
    linear-gradient(180deg,#071126,#0b1224) !important;
}
html[data-theme="dark"] .org-history-section{
  background:
    radial-gradient(circle at 14% 16%, rgba(0,153,132,.09), transparent 30%),
    linear-gradient(180deg,#0c162d,#0f172a) !important;
}
html[data-theme="dark"] .org-fiid7-section{
  background:
    radial-gradient(circle at 16% 16%, rgba(25,170,219,.10), transparent 30%),
    linear-gradient(135deg,#070d1c,#101c36 58%,#0b1224) !important;
}
html[data-theme="dark"] .org-temples-section{
  background:
    radial-gradient(circle at 82% 18%, rgba(148,40,77,.13), transparent 30%),
    linear-gradient(135deg,#071126,#111a2e 58%,#0b1224) !important;
}
html[data-theme="dark"] .org-value-card,
html[data-theme="dark"] .timeline-card,
html[data-theme="dark"] .directory-card,
html[data-theme="dark"] .temples-panel article,
html[data-theme="dark"] .archive-card{
  background:linear-gradient(180deg,rgba(20,32,58,.97),rgba(15,23,42,.97)) !important;
  border-color:rgba(148,163,184,.18) !important;
}

/* =========================================================
   ORGANIZACION - Fine spacing patch
   ========================================================= */
.org-map-section,
.org-about-section,
.org-history-section,
.org-fiid7-section,
.org-directory-section,
.org-temples-section{
  padding-top:clamp(78px, 7vw, 104px) !important;
  padding-bottom:clamp(78px, 7vw, 104px) !important;
}

.org-map-card,
.org-about-card,
.history-card,
.fiid7-card,
.directory-card,
.temple-card{
  padding-top:clamp(24px, 3vw, 36px);
}

@media (max-width:720px){
  .org-map-section,.org-about-section,.org-history-section,.org-fiid7-section,.org-directory-section,.org-temples-section{padding-top:66px !important;padding-bottom:66px !important}
}


/* =========================================================
   contacto.css - estilos especificos migrados a capa unica pages.css
   ========================================================= */
/* =====================================================
   Landing Contacto / Conecta - ID7D
   Integrada al sistema visual base de style.css.
===================================================== */

.page-contacto .landing-hero{
  position:relative;
  overflow:hidden;
  color:#fff;
  min-height:440px;
  display:flex;
  align-items:center;
  background:var(--hero-bg);
}

.page-contacto .landing-hero::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:64px;
  background:linear-gradient(180deg,transparent,rgba(0,32,102,.16));
  pointer-events:none;
}

.landing-hero-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:1.1fr .82fr;
  gap:48px;
  align-items:center;
  padding:70px 0;
}

.landing-hero-copy{max-width:660px}

.landing-hero-copy h1{
  color:#fff;
  font-size:clamp(3rem,6vw,5rem);
  line-height:.96;
  letter-spacing:-.055em;
  margin-bottom:22px;
  text-wrap:balance;
}

.landing-hero-copy p:not(.eyebrow){
  max-width:580px;
  color:rgba(255,255,255,.9);
  font-size:1.12rem;
  margin-bottom:28px;
}

.hero-panel{
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  border-radius:var(--radius-lg);
  padding:30px;
  backdrop-filter:blur(18px);
  box-shadow:var(--shadow-lg);
}

.hero-panel-icon{
  width:62px;
  height:62px;
  border-radius:20px;
  display:grid;
  place-items:center;
  color:#fff;
  font-size:1.5rem;
  background:linear-gradient(135deg,var(--orange),#ff7a3d);
  margin-bottom:18px;
}

.hero-panel h2{
  color:#fff;
  font-size:1.8rem;
  line-height:1.08;
  margin-bottom:12px;
}

.hero-panel p{
  color:rgba(255,255,255,.82);
  margin-bottom:18px;
}

.hero-panel ul{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:10px;
}

.hero-panel li{
  display:flex;
  align-items:center;
  gap:10px;
  color:rgba(255,255,255,.86);
  font-weight:700;
  font-size:.94rem;
}

.hero-panel li i{color:var(--sky)}

.contact-options{background:#fff}

.contact-cards .contact-card{
  min-height:100%;
}

.contact-cards .contact-card .link{
  margin-top:auto;
}

.contact-form-section{
  background:
    radial-gradient(circle at 10% 0%, rgba(25,170,219,.10), transparent 28%),
    linear-gradient(180deg,#f7fbff,#fff);
}

.contact-form-layout{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:34px;
  align-items:start;
}

.contact-form-copy{
  position:sticky;
  top:calc(var(--header-height) + 24px);
}

.contact-help-list{
  margin-top:22px;
}

.contact-form{
  background:rgba(255,255,255,.96);
  border:1px solid var(--card-border);
  border-radius:var(--radius-lg);
  padding:30px;
  box-shadow:var(--shadow-md);
  display:grid;
  gap:18px;
}

.form-grid-2{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:16px;
}

.contact-form label{
  display:grid;
  gap:8px;
  color:var(--text);
  font-weight:800;
}

.contact-form input,
.contact-form select,
.contact-form textarea{
  width:100%;
  border:1px solid var(--card-border);
  border-radius:16px;
  background:#fff;
  color:var(--text);
  padding:13px 15px;
  outline:0;
  transition:border-color .2s ease,box-shadow .2s ease;
}

.contact-form textarea{resize:vertical}

.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus{
  border-color:rgba(25,170,219,.72);
  box-shadow:0 0 0 4px rgba(25,170,219,.14);
}

.form-note{
  margin:0;
  color:var(--text-soft);
  font-size:.92rem;
}

.id7d-hp-field{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
  white-space:nowrap;
}

.form-alert{
  display:flex;
  align-items:center;
  gap:12px;
  padding:16px 20px;
  border-radius:16px;
  font-weight:700;
  margin-bottom:18px;
  border:1px solid transparent;
}

.form-alert i{font-size:1.2rem}

.form-alert-ok{
  background:rgba(0,153,132,.1);
  border-color:rgba(0,153,132,.32);
  color:#00695c;
}

.form-alert-error{
  background:rgba(235,91,37,.1);
  border-color:rgba(235,91,37,.32);
  color:#b0330f;
}

html[data-theme="dark"] .form-alert-ok{
  background:rgba(0,153,132,.14);
  color:#4fd1c5;
}

html[data-theme="dark"] .form-alert-error{
  background:rgba(235,91,37,.14);
  color:#ffb088;
}

.social-section{background:#fff}

.social-intro{
  max-width:420px;
  color:var(--text-soft);
  margin:0;
  text-align:right;
}

.social-intro code{
  background:rgba(25,170,219,.10);
  color:var(--blue-2);
  border-radius:8px;
  padding:2px 6px;
}

.social-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:24px;
}

.social-card{
  position:relative;
  overflow:hidden;
  display:grid;
  gap:6px;
  min-height:188px;
  align-content:end;
  background:#fff;
  border:1px solid var(--card-border);
  border-radius:var(--radius-md);
  padding:24px;
  box-shadow:var(--shadow-xs);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}

.social-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(25,170,219,.10),transparent 58%);
  opacity:.9;
}

.social-card:hover{
  transform:translateY(-5px);
  box-shadow:var(--shadow-md);
  border-color:rgba(25,170,219,.55);
}

.social-card > *{
  position:relative;
  z-index:1;
}

.social-icon{
  width:56px;
  height:56px;
  display:grid;
  place-items:center;
  border-radius:18px;
  color:#fff;
  background:linear-gradient(135deg,var(--blue-2),var(--sky));
  font-size:1.35rem;
  margin-bottom:22px;
}

.social-card strong{
  font-size:1.2rem;
  color:var(--navy);
}

.social-card small{
  color:var(--text-soft);
  font-weight:700;
}

.page-contacto .cta-box h2{max-width:640px}

html[data-theme="dark"] .contact-form-section{
  background:
    radial-gradient(circle at 10% 0%, rgba(25,170,219,.10), transparent 28%),
    linear-gradient(180deg,#071225,#081426);
}

html[data-theme="dark"] .contact-form,
html[data-theme="dark"] .social-card{
  background:rgba(15,23,42,.88);
  border-color:rgba(219,229,240,.12);
}

html[data-theme="dark"] .contact-form input,
html[data-theme="dark"] .contact-form select,
html[data-theme="dark"] .contact-form textarea{
  background:rgba(2,8,23,.62);
  color:#e6edf7;
  border-color:rgba(219,229,240,.16);
}

html[data-theme="dark"] .contact-form label,
html[data-theme="dark"] .social-card strong{
  color:#f7fbff;
}

html[data-theme="dark"] .social-intro code{
  color:#c7f3ff;
  background:rgba(25,170,219,.16);
}

/* Responsive */
@media (max-width:1120px){
  .landing-hero-grid,
  .contact-form-layout{
    grid-template-columns:1fr;
  }

  .contact-form-copy{
    position:static;
  }

  .social-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media (max-width:1024px){
  .landing-hero-grid{
    padding:56px 0;
  }
}

@media (max-width:720px){
  .landing-hero-copy h1{
    font-size:clamp(2.4rem,14vw,3.35rem);
  }

  .hero-panel,
  .contact-form{
    border-radius:22px;
    padding:22px;
  }

  .form-grid-2,
  .social-grid{
    grid-template-columns:1fr;
  }

  .social-intro{
    text-align:left;
  }

  .social-card{
    min-height:160px;
  }
}


html[data-theme="dark"] .contact-options{
  background:
    radial-gradient(circle at 14% 12%, rgba(25,170,219,.075), transparent 28%),
    linear-gradient(180deg,#0f172a,#111c33) !important;
}
html[data-theme="dark"] .contact-form-section{
  background:
    radial-gradient(circle at 82% 14%, rgba(235,195,102,.10), transparent 30%),
    linear-gradient(180deg,#071126,#0b1224) !important;
}
html[data-theme="dark"] .social-section{
  background:
    radial-gradient(circle at 14% 16%, rgba(0,153,132,.09), transparent 30%),
    linear-gradient(180deg,#0c162d,#0f172a) !important;
}
html[data-theme="dark"] .contact-cta-section,
html[data-theme="dark"] .contact-cta{
  background:
    radial-gradient(circle at 16% 16%, rgba(25,170,219,.10), transparent 30%),
    linear-gradient(135deg,#070d1c,#101c36 58%,#0b1224) !important;
}
html[data-theme="dark"] .contact-card,
html[data-theme="dark"] .contact-option-card,
html[data-theme="dark"] .contact-form,
html[data-theme="dark"] .social-card,
html[data-theme="dark"] .social-intro{
  background:linear-gradient(180deg,rgba(20,32,58,.97),rgba(15,23,42,.97)) !important;
  border-color:rgba(148,163,184,.18) !important;
}

/* =========================================================
   CONTACTO - Fine spacing patch
   ========================================================= */
.contact-options,
.contact-form-section,
.social-section{
  padding-top:clamp(78px, 7vw, 104px) !important;
  padding-bottom:clamp(78px, 7vw, 104px) !important;
}

.contact-card,
.contact-form-card,
.social-card{
  padding-top:clamp(24px, 3vw, 36px);
}

@media (max-width:720px){
  .contact-options,.contact-form-section,.social-section{padding-top:66px !important;padding-bottom:66px !important}
}


/* WordPress theme integration helpers */
.nav .nav-menu-list { display: contents; list-style: none; margin: 0; padding: 0; }
.nav .nav-menu-list li { display: contents; }
.custom-logo { max-height: 54px; width: auto; }
.section-pad { padding-block: clamp(4rem, 8vw, 7rem); }
.page-header { background: var(--section-bg-soft, rgba(37, 99, 235, 0.06)); }
.container.narrow { max-width: 860px; }
.content-area { font-size: 1.05rem; line-height: 1.8; }
.content-area > * + * { margin-top: 1.15rem; }
.single-thumbnail img, .post-thumb img { width: 100%; height: auto; border-radius: 1.25rem; display: block; }
.archive-grid { align-items: stretch; }
.post-card { overflow: hidden; }
.pagination-wrap { margin-top: 2rem; }
.search-form { display: flex; gap: .75rem; flex-wrap: wrap; margin-top: 1.5rem; }
.search-field { min-width: min(100%, 320px); padding: .85rem 1rem; border: 1px solid var(--border, rgba(148,163,184,.3)); border-radius: .9rem; background: var(--surface, #fff); color: var(--text, #172033); }
html[data-theme="dark"] .page-header { background: var(--section-dark-2, #111827); }
html[data-theme="dark"] .search-field { background: var(--surface-dark-soft, #172033); color: var(--text-inverse, #f8fafc); border-color: rgba(148,163,184,.22); }

/* =====================================================
   Fundamento doctrinal
   ===================================================== */

.page-fundamento .fundamento-hero,
.fundamento-archive .fundamento-hero{
  position:relative;
  overflow:hidden;
  color:#fff;
  background:var(--hero-bg);
}

.fundamento-hero-grid{
  display:grid;
  grid-template-columns:1.1fr .82fr;
  gap:48px;
  align-items:center;
  min-height:430px;
  padding:70px 0;
}

.fundamento-hero-copy h1{
  color:inherit;
  font-size:clamp(3rem,6vw,5rem);
  line-height:.96;
  letter-spacing:-.055em;
  margin-bottom:22px;
  text-wrap:balance;
}

.fundamento-hero-copy p:not(.eyebrow){
  max-width:680px;
  color:rgba(255,255,255,.9);
  font-size:1.12rem;
  margin-bottom:28px;
}

.fundamento-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

.fundamento-hero-panel,
.fundamento-intro-card,
.fundamento-card{
  border:1px solid rgba(148,163,184,.22);
  border-radius:var(--radius-lg);
  background:rgba(255,255,255,.92);
  box-shadow:var(--shadow-md);
}

.fundamento-hero-panel{
  background:rgba(0,22,66,.42);
  border-color:rgba(255,255,255,.20);
  padding:30px;
  backdrop-filter:blur(18px);
  box-shadow:var(--shadow-lg);
}

.fundamento-panel-icon,
.fundamento-card-icon,
.fundamento-aside-icon{
  width:58px;
  height:58px;
  border-radius:20px;
  display:grid;
  place-items:center;
  color:#fff;
  background:linear-gradient(135deg,var(--blue-2),var(--blue));
  font-size:1.35rem;
}

.fundamento-hero-panel h2{
  color:#fff;
  margin:18px 0 12px;
  font-size:1.8rem;
  line-height:1.08;
}

.fundamento-hero-panel p{
  color:rgba(255,255,255,.84);
}

.fundamento-intro-grid{
  display:grid;
  grid-template-columns:minmax(0, .9fr) minmax(0, 1.1fr);
  gap:28px;
  align-items:start;
}

.fundamento-intro-card{
  padding:30px;
}

.fundamento-intro-card h2{
  font-size:clamp(2rem,4vw,3rem);
  line-height:1.04;
  letter-spacing:-.04em;
  margin-bottom:14px;
}

.fundamento-topic-list{
  display:grid;
  gap:16px;
}

.fundamento-topic-list article{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:14px 18px;
  padding:22px;
  border-radius:var(--radius-md);
  background:var(--surface-soft,#f8fafc);
  border:1px solid rgba(148,163,184,.18);
}

.fundamento-topic-list span,
.fundamento-count,
.fundamento-card-kicker{
  color:var(--orange);
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.78rem;
}

.fundamento-topic-list h3,
.fundamento-topic-list p{
  grid-column:2;
}

.fundamento-topic-list h3{ margin:0 0 4px; }
.fundamento-topic-list p{ margin:0; color:var(--text-muted); }

.fundamento-count{
  display:inline-flex;
  align-items:center;
  min-height:40px;
  padding:0 14px;
  border-radius:999px;
  border:1px solid rgba(235,91,37,.32);
  background:rgba(235,91,37,.08);
}

.fundamento-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}

.fundamento-card{
  overflow:hidden;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.fundamento-card:hover,
.fundamento-card:focus-within{
  transform:translateY(-4px);
  border-color:rgba(25,170,219,.35);
  box-shadow:var(--shadow-lg);
}

.fundamento-card-link{
  display:grid;
  gap:18px;
  height:100%;
  padding:24px;
  color:inherit;
  text-decoration:none;
}

.fundamento-card h3{
  font-size:1.35rem;
  line-height:1.15;
  margin:8px 0 10px;
}

.fundamento-card-excerpt{
  display:block;
  color:var(--text-muted);
  line-height:1.65;
}

.fundamento-card-cta{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:18px;
  font-weight:800;
  color:var(--sky);
}

.fundamento-card-cta i{transition:transform .2s ease}
.fundamento-card:hover .fundamento-card-cta i{transform:translateX(3px)}

.fundamento-empty{ padding:30px; }

html[data-theme="dark"] .fundamento-hero-panel,
html[data-theme="dark"] .fundamento-intro-card,
html[data-theme="dark"] .fundamento-card{
  background:rgba(15,23,42,.88);
  border-color:rgba(148,163,184,.16);
  color:#e5e7eb;
}

html[data-theme="dark"] .fundamento-topic-list article{
  background:rgba(30,41,59,.72);
  border-color:rgba(148,163,184,.14);
}

html[data-theme="dark"] .fundamento-card-excerpt,
html[data-theme="dark"] .fundamento-topic-list p{
  color:#cbd5e1;
}

@media (max-width: 960px){
  .fundamento-hero-grid,
  .fundamento-intro-grid{
    grid-template-columns:1fr;
  }

  .fundamento-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 640px){
  .fundamento-hero-grid{
    min-height:auto;
    padding:56px 0;
  }

  .fundamento-grid{
    grid-template-columns:1fr;
  }

  .fundamento-topic-list article{
    grid-template-columns:1fr;
  }

  .fundamento-topic-list h3,
  .fundamento-topic-list p{
    grid-column:auto;
  }
}
