/*
 Theme Name: Astra Child
 Theme URI: https://globalmkd.com/
 Description: Tema hijo de Astra para GMKD
 Author: GMKD
 Template: astra
 Version: 1.0.0
 Text Domain: astra-child
*/

/* 1) Enlaces globales sin subrayado */
a, a:link, a:visited,
a:hover, a:focus, a:active {
  text-decoration: none !important;
}

/* 2) Menú principal (Astra) */
.main-header-menu .menu-link,
.ast-desktop .main-header-menu > .menu-item > .menu-link,
.ast-builder-menu-1 .menu-link {
  text-decoration: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;           /* por si la “línea” era un box-shadow */
  background-image: none !important;     /* por si usaba un subrayado con gradient */
}

/* 3) Footer y widgets */
.site-footer a,
.footer-adv .widget a,
.ast-footer-wrapper a {
  text-decoration: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  background-image: none !important;
}

/* 4) Tarjetas/recuadros que son enlaces */
.card a, .gmkd-card a,
.entry-title a, .ast-loop-post .entry-title a,
.wp-block-latest-posts a {
  text-decoration: none !important;
}

/* 5) Botones que son <a> (Gutenberg/Astra) */
a.button, .wp-block-button__link, .ast-button, .ast-custom-button-link {
  text-decoration: none !important;
}

/* 6) Accesibilidad: mantener anillo de foco visible (sin subrayado) */
a:focus-visible,
.button:focus-visible,
.wp-block-button__link:focus-visible,
.menu-link:focus-visible {
  outline: 2px solid var(--primary-400, #8B5CF6);
  outline-offset: 2px;
}
/* ===========================================================
   1) VARIABLES / PALETA
=========================================================== */
:root{
  /* Paleta GMKD */
  --primary-900:#1A0C2E; --primary-800:#25103F; --primary-700:#3B1670;
  --primary-600:#4C1D95; --primary-400:#8B5CF6; --primary-300:#A78BFA;

  --ink-050:#F9F8FF; --ink-100:#F5F4F8; --ink-300:#E9E7EE; --ink-500:#C6C2CF;

  --title-light:#ECF3FF; --heading-glow:rgba(139,92,246,.10);

  /* “Glass” */
  --glass-bg:rgba(255,255,255,.06);
  --glass-brd:rgba(255,255,255,.12);

  /* Header custom */
  --hdr-glass:rgba(10,6,18,.55);
  --container:1200px;
}

/* ===========================================================
   2) BASE OSCURO + RESET ASTRA
=========================================================== */
html, body{
  color-scheme:dark;
  color:#E9E7EE;
  background:
    radial-gradient(1200px 600px at 12% 8%, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0) 60%),
    radial-gradient(1000px 500px at 88% 92%, rgba(255,255,255,0.05) 0%, rgba(255,255,255,0) 60%),
    linear-gradient(135deg,#120A24 0%,#25103F 38%,#3B1670 70%,#4C1D95 100%);
  background-attachment:fixed;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}

img{max-width:100%;height:auto;display:block}

a{ color:var(--primary-300); text-decoration:none; }
a:hover{
  color:#0B1B3A;
  background:linear-gradient(145deg,var(--primary-400),var(--primary-300));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
}

:focus-visible{ outline:2px solid var(--primary-400); outline-offset:2px; }

/* Astra wrappers → transparentes para evitar “fondos blancos” */
.site, .ast-container, .site-content, .site-main,
.ast-separate-container .ast-article-post,
.ast-separate-container .ast-article-single,
.ast-separate-container .comment-respond,
.ast-separate-container .ast-archive-description,
.ast-archive-description, .ast-related-posts-wrap{
  background:transparent !important;
}

/* ===========================================================
   3) HEADER PERSONALIZADO (IGUAL QUE HOME)
=========================================================== */
.gmkd-container{max-width:var(--container);margin:0 auto;padding:0 20px}

.gmkd-header{
  position:fixed; inset:0 0 auto 0; z-index:1000;
  background:var(--hdr-glass); backdrop-filter:blur(10px);
  border-bottom:1px solid var(--glass-brd);
}
.gmkd-nav{display:flex; align-items:center; gap:1rem; padding:.85rem 0; overflow:visible}
.gmkd-logo{display:flex; align-items:center; gap:.6rem; font-weight:800; color:var(--ink-100)}
.gmkd-logo-img{height:40px; width:auto}
.gmkd-logo small{display:block; font-size:.72rem; color:var(--ink-500); font-weight:600}
@media (max-width:860px){ .gmkd-logo-img{height:34px} }

.gmkd-nav-right{margin-left:auto; display:flex; align-items:center; gap:1.2rem}
.gmkd-nav-links{display:flex; list-style:none; gap:1.2rem; margin:0; padding:0}
.gmkd-nav-links a{color:var(--ink-300); opacity:.95; font-weight:600}
.gmkd-nav-links a:hover{opacity:1}

/* Botón morado */
.gmkd-btn-primary{
  display:inline-block; font-weight:800; border-radius:999px;
  padding:.6rem .9rem; border:1px solid rgba(255,255,255,.18);
  background:linear-gradient(145deg,var(--primary-600),var(--primary-400));
  color:#fff; box-shadow:0 8px 18px rgba(76,29,149,.35);
  transition:transform .2s, background .2s, color .2s, box-shadow .2s;
}
.gmkd-btn-primary:hover{
  transform:translateY(-1px);
  color:#0B1B3A;
  background:linear-gradient(145deg,var(--primary-400),var(--primary-300));
}

/* Submenús */
.gmkd-nav-links li{position:relative}
.gmkd-nav-links .has-submenu > a{display:inline-flex; align-items:center; gap:.35rem}
.gmkd-nav-links .has-submenu > a::after{content:"▾"; font-size:.8rem; opacity:.8; transform:translateY(-1px)}

.gmkd-submenu{
  position:absolute; top:100%; right:0; z-index:1001;
  display:grid; gap:.25rem; min-width:280px;
  padding:.55rem; margin-top:.35rem;
  background:var(--glass-bg); border:1px solid var(--glass-brd);
  border-radius:12px; box-shadow:0 10px 30px rgba(0,0,0,.35);
  list-style:none;
  opacity:0; transform:translateY(6px); pointer-events:none;
  transition:opacity .18s ease, transform .18s ease;
}
.gmkd-submenu a{
  display:block; width:100%; padding:.45rem .6rem; border-radius:10px;
  color:#fff; font-weight:700; opacity:.95; white-space:nowrap;
  font-size:.9rem; line-height:1.25;
}
.gmkd-submenu a:hover, .gmkd-submenu a:focus{
  background:linear-gradient(145deg,var(--primary-600),var(--primary-400));
  color:#0B1B3A;
}
.has-submenu:hover > .gmkd-submenu,
.has-submenu:focus-within > .gmkd-submenu{
  opacity:1; transform:translateY(0); pointer-events:auto;
}

/* Si Astra sigue mostrando su header, escóndelo */
.site-header, .ast-desktop-header, .ast-mobile-header-wrap, .main-header-bar,
.ast-mobile-popup-drawer{ display:none !important; }

/* ===========================================================
   4) HERO BLOG + FILA INTRO
=========================================================== */
.gmkd-hero{ padding:7.5rem 0 1.2rem; }
.gmkd-hero h1,
.hero h1{
  font-size:clamp(2rem,4.5vw,3.2rem);
  font-weight:900; color:#fff;
  text-shadow:0 2px 18px var(--heading-glow); margin:0 0 .35rem;
}
.gmkd-hero-sub, .hero .subtitle{ color:#EDEAF7; max-width:1000px; }
@media (max-width:980px){ .gmkd-hero{ padding:6.5rem 0 1.2rem } }

.intro-grid{display:grid; grid-template-columns:1fr minmax(320px,420px); gap:16px; align-items:start; margin-top:.5rem}
.intro-grid .subtitle{ color:var(--ink-300); opacity:.95 }
.intro-grid .actions{ display:flex; gap:10px; justify-content:flex-end; align-items:center }

/* Toolbar chips + buscador (opcional) */
.gmkd-toolbar{ display:flex; flex-wrap:wrap; gap:8px; margin:14px 0; align-items:center }
.gmkd-chip{
  padding:8px 12px; border-radius:999px;
  border:1px solid var(--glass-brd); background:var(--glass-bg);
  font-weight:700; color:#fff;
}
.gmkd-search{
  margin-left:auto; display:flex; align-items:center; gap:8px;
  border:1px solid var(--glass-brd); background:var(--glass-bg);
  border-radius:999px; padding:8px 12px;
}
.gmkd-search input{ border:none; background:transparent; color:#fff; outline:none; min-width:220px }
.gmkd-search input::placeholder{ color:#D5D1E0; opacity:.85 }

/* ===========================================================
   5) GRID / TARJETAS (¡arregla “blancos”! )
=========================================================== */
.gmkd-grid, .blog-grid{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:14px; margin-top:12px;
}

/* Cards */
.gmkd-card, .postcard{
  border:1px solid var(--glass-brd) !important;
  background:var(--glass-bg) !important;
  border-radius:18px; overflow:hidden; display:flex; flex-direction:column;
}
.gmkd-card .thumb, .postcard .thumb{
  aspect-ratio:16/9; background:rgba(255,255,255,.04);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.gmkd-card .thumb img, .postcard .thumb img{ width:100%; height:100%; object-fit:cover }
.gmkd-card .body, .postcard .body{ padding:14px }
.gmkd-card .eyebrow, .postcard .eyebrow{ font-size:12px; color:#D8D4E6; opacity:.9 }
.gmkd-card h3, .postcard h3{ font-size:18px; margin:.25rem 0 .35rem }
.gmkd-card h3, .gmkd-card h3 a, .postcard h3 a{ color:var(--title-light) }
.gmkd-card p, .postcard p{ color:#EDEAF7; opacity:.92 }
.gmkd-card .meta, .postcard .meta{
  display:flex; gap:10px; align-items:center; font-size:12px; color:#C8C4D6; opacity:.9; margin-top:6px;
}
.gmkd-card .cta, .postcard .cta{
  margin-top:10px; display:inline-block; font-weight:800; border-radius:999px;
  padding:.5rem .8rem; border:1px solid var(--glass-brd); background:var(--glass-bg); color:#fff;
  transition:transform .2s ease, background .2s ease, color .2s ease;
}
.gmkd-card .cta:hover, .postcard .cta:hover{
  background:linear-gradient(145deg,var(--primary-600),var(--primary-400)); color:#0B1B3A; transform:translateY(-1px);
}

/* ===========================================================
   6) PAGINACIÓN
=========================================================== */
.pagination{ display:flex; justify-content:center; gap:8px; margin:18px 0 }
.pagination a{
  padding:.5rem 1rem; border-radius:999px; border:1px solid var(--glass-brd); color:#fff;
}
.pagination a[aria-current="page"]{
  background:linear-gradient(145deg,var(--primary-600),var(--primary-400));
  color:#0B1B3A; font-weight:800;
}
/* paginate_links type=list */
.gmkd-pagination ul{ list-style:none; display:flex; gap:8px; justify-content:center; padding:0; margin:18px 0 }
.gmkd-pagination a, .gmkd-pagination span{
  display:inline-block; padding:.5rem 1rem; border-radius:999px; border:1px solid var(--glass-brd); color:#fff;
}
.gmkd-pagination span.current{
  background:linear-gradient(145deg,var(--primary-600),var(--primary-400)); color:#0B1B3A; font-weight:800;
}

/* ===========================================================
   7) PIE LEGAL CORTO
=========================================================== */
.gmkd-footnote{ padding:1.2rem 0 2rem; color:#EDEAF7 }
.gmkd-footnote .footer-bottom{
  border-top:1px solid rgba(255,255,255,.1);
  padding-top:1rem; text-align:center; color:var(--ink-500);
}

/* ===========================================================
   8) FOOTER ASTRA EN OSCURO (si lo usas)
=========================================================== */
.site-footer{
  background:rgba(0,0,0,.25);
  border-top:1px solid rgba(255,255,255,.08);
  color:#EDEAF7;
}
.site-footer a{ color:#fff; opacity:.9 }
.site-footer a:hover{ opacity:1; text-decoration:underline; text-underline-offset:4px }