/* Gestión Empresa .org -- software y gestión para despachos de abogados */
:root{
  --tinta:#111c2e;
  --tinta-2:#1b2b45;
  --azul:#1B5FA8;
  --azul-claro:#3E8AD8;
  --acento:#F0A500;
  --gris:#586474;
  --gris-claro:#f5f7fa;
  --borde:#e2e7ee;
  --blanco:#fff;
  --texto:#1d2733;
  --radio:8px;
  --fuente-titulo:'Bitter', Georgia, serif;
  --fuente-texto:'Inter', system-ui, Arial, sans-serif;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:var(--fuente-texto);color:var(--texto);background:var(--blanco);line-height:1.7;}
img{max-width:100%;height:auto;display:block;}
a{color:var(--azul);text-decoration:none;}
a:hover{color:var(--azul-claro);}
.contenedor{max-width:1180px;margin:0 auto;padding:0 20px;}
h1,h2,h3,h4{font-family:var(--fuente-titulo);color:var(--tinta);line-height:1.3;margin:0 0 .5em;}
h1{font-size:2.2rem;}
h2{font-size:1.6rem;}
h3{font-size:1.25rem;}
p{margin:0 0 1.1em;}

/* barra superior */
.barra-superior{background:var(--tinta);color:#c3cede;font-size:.82rem;padding:8px 0;}
.barra-superior .contenedor{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;}
.barra-superior a{color:#c3cede;margin-left:16px;}
.barra-superior a:hover{color:var(--acento);}

/* cabecera */
.cabecera{background:#fff;border-bottom:1px solid var(--borde);padding:22px 0;}
.cabecera .contenedor{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;}
.marca{font-family:var(--fuente-titulo);font-size:1.85rem;font-weight:700;color:var(--tinta);margin:0;line-height:1.1;}
.marca a{color:var(--tinta);}
.marca .punto{color:var(--azul);}
.lema{color:var(--gris);font-size:.9rem;margin:4px 0 0;}

/* nav */
.nav-principal{background:var(--azul);}
.nav-principal ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;}
.nav-principal a{display:block;padding:14px 18px;color:#fff;font-weight:600;font-size:.93rem;}
.nav-principal a:hover,.nav-principal a.activo{background:var(--tinta);color:#fff;}
.abrir-menu{display:none;background:transparent;border:1px solid rgba(255,255,255,.5);color:#fff;font-weight:700;padding:9px 16px;border-radius:var(--radio);cursor:pointer;margin:8px 0;}

/* migas */
.miga{font-size:.82rem;color:var(--gris);margin-bottom:10px;}
.miga a{color:var(--gris);}

/* hero */
.hero{background:linear-gradient(135deg,var(--tinta) 0%,#24406b 100%);color:#fff;padding:58px 0;}
.hero h1{color:#fff;font-size:2.5rem;max-width:900px;}
.hero p{color:#c9d6e8;max-width:760px;font-size:1.06rem;}
.hero .kicker{color:var(--acento);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;margin-bottom:12px;display:block;}
.hero .botones{display:flex;gap:14px;margin-top:22px;flex-wrap:wrap;}
.boton{display:inline-block;background:var(--acento);color:var(--tinta);padding:13px 28px;border-radius:var(--radio);font-weight:700;font-size:.94rem;}
.boton:hover{background:#ffc23d;color:var(--tinta);}
.boton-outline{display:inline-block;border:1px solid rgba(255,255,255,.55);color:#fff;padding:12px 27px;border-radius:var(--radio);font-weight:600;font-size:.94rem;}
.boton-outline:hover{border-color:var(--acento);color:var(--acento);}

/* cabecera de pagina */
.pagina-cabecera{background:linear-gradient(135deg,var(--tinta) 0%,#24406b 100%);color:#fff;padding:52px 0 42px;}
.pagina-cabecera h1{color:#fff;margin-bottom:.3em;}
.pagina-cabecera .kicker{display:inline-block;color:var(--acento);font-weight:700;letter-spacing:.07em;text-transform:uppercase;font-size:.76rem;margin-bottom:10px;}
.pagina-cabecera .entradilla{color:#c9d6e8;max-width:780px;font-size:1.04rem;}
.pagina-cabecera .miga,.pagina-cabecera .miga a{color:#9db0c9;}
.pagina-cabecera .meta{color:#9db0c9;font-size:.88rem;}

/* secciones */
.seccion{padding:54px 0;}
.seccion.gris{background:var(--gris-claro);}
.titulo-seccion{max-width:720px;margin:0 auto 34px;text-align:center;}
.titulo-seccion .kicker{color:var(--azul);font-weight:700;text-transform:uppercase;letter-spacing:.07em;font-size:.76rem;}

/* rejilla de articulos */
.grid-blog{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:26px;}
.post-tarjeta{background:#fff;border:1px solid var(--borde);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s;}
.post-tarjeta:hover{box-shadow:0 12px 28px rgba(17,28,46,.1);transform:translateY(-3px);}
.post-tarjeta .imagen{aspect-ratio:16/9;overflow:hidden;background:var(--gris-claro);}
.post-tarjeta .imagen img{width:100%;height:100%;object-fit:cover;}
.post-tarjeta .cuerpo{padding:20px 22px 24px;display:flex;flex-direction:column;flex:1;}
.post-tarjeta .categoria{color:var(--azul);font-weight:700;font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;}
.post-tarjeta h3{font-size:1.12rem;margin:6px 0 8px;}
.post-tarjeta p{color:var(--gris);font-size:.93rem;margin-bottom:14px;}
.post-tarjeta .fecha{color:var(--gris);font-size:.8rem;margin-top:auto;}
.post-tarjeta .mas{font-weight:600;font-size:.88rem;}

/* destacado */
.destacado{display:grid;grid-template-columns:1.25fr 1fr;gap:32px;align-items:center;}
.destacado .imagen{border-radius:12px;overflow:hidden;aspect-ratio:16/9;}
.destacado .imagen img{width:100%;height:100%;object-fit:cover;}
.destacado h2{font-size:1.85rem;}

/* categorias */
.rejilla-cat{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px;}
.cat-tarjeta{background:#fff;border:1px solid var(--borde);border-radius:12px;padding:24px;}
.cat-tarjeta:hover{border-color:var(--azul);box-shadow:0 10px 24px rgba(27,95,168,.1);}
.cat-tarjeta h3{font-size:1.08rem;margin-bottom:.35em;}
.cat-tarjeta p{color:var(--gris);font-size:.9rem;margin-bottom:10px;}
.cat-tarjeta .num{color:var(--acento);font-weight:700;font-size:.76rem;letter-spacing:.06em;text-transform:uppercase;}

/* prosa */
.cuerpo-articulo{padding:46px 0 60px;}
.prosa{max-width:790px;margin:0 auto;font-size:1.03rem;}
.prosa h2{margin-top:1.7em;}
.prosa h3{margin-top:1.4em;}
.prosa img{border-radius:10px;margin:1.4em 0;}
.prosa .foto-marco{margin:0 0 28px;border-radius:12px;overflow:hidden;}
.caja-clave{background:var(--gris-claro);border-left:4px solid var(--azul);padding:20px 24px;border-radius:0 var(--radio) var(--radio) 0;margin:1.7em 0;}
.caja-clave h3{margin-top:0;font-size:1.05rem;}
blockquote,blockquote.destacada{border-left:4px solid var(--acento);margin:1.7em 0;padding:6px 0 6px 22px;font-style:italic;color:var(--tinta-2);font-size:1.1rem;}
.meta{color:var(--gris);font-size:.86rem;}
.enlaces-relacionados{margin-top:2.2em;padding-top:1.6em;border-top:1px solid var(--borde);}
.lista-enlaces{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px;}
.lista-enlaces li a{display:block;background:#fff;border:1px solid var(--borde);border-radius:var(--radio);padding:12px 16px;font-weight:600;font-size:.92rem;color:var(--tinta);}
.lista-enlaces li a:hover{border-color:var(--azul);color:var(--azul);}

/* caja de recurso (backlinks) */
.recurso{background:linear-gradient(135deg,#eef4fb 0%,#f7fafd 100%);border:1px solid #d4e3f3;border-radius:12px;padding:22px 26px;margin:1.8em 0;}
.recurso h3{margin-top:0;font-size:1.05rem;color:var(--tinta);}
.recurso p{margin-bottom:0;font-size:.96rem;}

/* paginacion */
.paginacion{display:flex;gap:8px;justify-content:center;margin-top:36px;flex-wrap:wrap;}
.paginacion a,.paginacion span{padding:9px 15px;border:1px solid var(--borde);border-radius:var(--radio);font-weight:600;font-size:.9rem;color:var(--tinta);}
.paginacion .actual{background:var(--azul);border-color:var(--azul);color:#fff;}

/* footer */
footer.pie{background:var(--tinta);color:#b8c4d6;padding:52px 0 0;}
footer.pie .contenedor{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:36px;padding-bottom:34px;}
footer.pie h4{color:#fff;font-family:var(--fuente-texto);font-size:.94rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:14px;}
footer.pie a{color:#b8c4d6;}
footer.pie a:hover{color:var(--acento);}
footer.pie ul{list-style:none;padding:0;margin:0;}
footer.pie li{margin-bottom:9px;font-size:.9rem;}
footer.pie p{font-size:.9rem;color:#9aa8bd;}
.aviso-rgpd{border-top:1px solid #2a3d5c;padding-top:24px;}
.aviso-rgpd h4{margin-bottom:8px;}
.aviso-rgpd p{font-size:.78rem;line-height:1.65;color:#93a3ba;margin:0;}
.aviso-rgpd a{color:#c2cfe0;text-decoration:underline;}
.pie-legal{border-top:1px solid #2a3d5c;padding:16px 0;font-size:.8rem;color:#8d9cb2;}
.pie-legal .contenedor{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding-bottom:0;grid-template-columns:1fr;}
.pie-legal a{color:#8d9cb2;margin-right:14px;}

/* cookies */
#banner-cookies{position:fixed;left:0;right:0;bottom:0;background:var(--tinta);color:#e6ecf5;padding:16px 20px;z-index:999;display:none;box-shadow:0 -6px 20px rgba(0,0,0,.22);}
#banner-cookies.visible{display:flex;}
#banner-cookies .contenedor{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;width:100%;}
#banner-cookies p{margin:0;font-size:.86rem;max-width:770px;}
#banner-cookies a{color:var(--acento);text-decoration:underline;}
#banner-cookies .botones-cookies{display:flex;gap:10px;flex-shrink:0;}
#banner-cookies button{border:0;border-radius:var(--radio);padding:10px 20px;font-weight:700;font-size:.85rem;cursor:pointer;}
#banner-cookies .aceptar{background:var(--acento);color:var(--tinta);}
#banner-cookies .rechazar{background:transparent;border:1px solid #46587a;color:#e6ecf5;}

@media (max-width:820px){
  .nav-principal .abrir-menu{display:block;}
  .nav-principal ul{display:none;flex-direction:column;}
  .nav-principal ul.abierto{display:flex;}
  .destacado{grid-template-columns:1fr;}
  footer.pie .contenedor{grid-template-columns:1fr;}
  .hero h1{font-size:1.85rem;}
}
