/*
    Theme Name: custom_theme
    Theme URI:
    Description: Tema custom para web en WordPress
    Author: Edward Alarco
    Version: 1.0
    License: GNU General Public License v2 or Later
    Tags: Wordpress
*/

*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
.header_navigation-close svg{width:100%;height:100%;object-fit:contain;object-position:center;}
.section_testimonials-author img{aspect-ratio:1/1;height:auto;object-fit:cover;object-position:center;border-radius:50%;}
.page-template-front-page .section_services.py-section,
.page-template-about .section_services.py-section {
	padding-bottom: 0 !important;
}

/* JC - BLOGS */
:root {
  --vw-base: 1920;
}
#page-blog {
	padding-block: calc((70 / var(--vw-base)) * 100vw) calc((100 / var(--vw-base)) * 100vw);
}
#page-blog .container{
	max-width: calc((1396 / var(--vw-base)) * 100vw);
}

body:has(#page-blog) > .header{
	position: sticky;
	background-color: #fff !important;
}
body:has(#page-blog) > .header .header_logo path{ 
	fill: #365553 !important;
}
body:has(#page-blog) > .header .header_navigation ul li:not(:last-child) a{
	color: #365553 !important;
}
#page-blog .blog-figure{
	text-align: center;	
}
#page-blog .blog-figure img{
	max-width: 100%;
	border-radius: calc((12 / var(--vw-base)) * 100vw);	
}

#page-blog p{
	margin-top: calc((20 / var(--vw-base)) * 100vw);
}

#page-blog .wp-block-image{
	margin-block: calc((40 / var(--vw-base)) * 100vw);
	text-align: center;
}
#page-blog .blog-title{
  max-width: 57.569vw;
  font-size: 4.236vw;
  margin-bottom: 2.778vw;
  font-family: NeuzeitRegular, "Courier New", Courier, monospace;
  font-weight: 400;
  text-align: center;
  margin-inline: auto;
  color: #365553 !important;
}
#page-blog .blog-title *{
  font-size: inherit !important;
}
#page-blog .blog-content h2{
  font-size: 2.708vw;	
}
#page-blog .blog-content h2 strong{
  font-weight: 400 !important;
}
#page-blog .blog-content{
  margin-top: calc((50 / var(--vw-base)) * 100vw);
  color: #365553 !important;
}
#page-blog .blog-content{    
}

#page-blog .blog-date__text{
  font-size: 0.833vw;
  line-height: 1.25vw;
  color: rgba(5, 5, 5, .5);
  display: flex;
  align-items: center;
  gap: calc((6 / var(--vw-base)) * 100vw);
}
#page-blog .blog-date__icon{
  width: calc((16 / var(--vw-base)) * 100vw);
  height: calc((16 / var(--vw-base)) * 100vw);
}

@media (max-width: 1420px) {
  #page-blog .blog-date__text {
    font-size: 15.9936px;
    line-height: 24px;
	gap: 6px;
  }
  #page-blog .blog-date__icon{
    width: 16px;
    height: 16px;
  }
}

@media (max-width: 1200px){	
	#page-blog .container{
		max-width: 100%;
	}
	#page-blog .blog-title{
		font-size: 61px;
	}
	#page-blog .blog-content h2{
  		font-size: 30px;	
	}
	#page-blog .blog-figure img{
	  border-radius: 12px;	
	}	
	#page-blog .blog-content{
      margin-top: 50px;
    }
	
	#page-blog p{
		margin-top: 20px;
	}	
	#page-blog .blog-content{
  		margin-top: 50px;
	}
	
	body:has(#page-blog) > .header .header_burger svg{
      color: #365553 !important;
	}
		
}



@media (max-width: 767px){
	#page-blog .blog-title{
	  font-size: 40px;
	  max-width: 100%;
	}		
}


/* :root{
  --vw-base: 1920;
} */
/*----------------------------------------------- INSIGHTS -----------------------------------------------*/
/* ==========================
   BGI Insights Hero (scoped)
   ========================== */
.bgi-insights-hero.bgi-insights-hero {
  --bgi-hero-text: #ffffff;
  --bgi-hero-title: #ffffff;

  position: relative;
  color: var(--bgi-hero-text);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding-top: calc((85 / var(--vw-base)) * 100vw);
  padding-bottom: 0;
  min-height: calc((648 / var(--vw-base)) * 100vw);

  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
}

.bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__bg {
  position: absolute;
  inset: 0;
  background: #365553;
  overflow: hidden;
  z-index: 0;
}

.bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__container {
  position: relative;
  z-index: 1;
  /*   width: 100%; */
  padding-top: clamp(calc((15 / var(--vw-base)) * 100vw), 10vh, calc((124 / var(--vw-base)) * 100vw));
  padding-bottom: clamp(calc((15 / var(--vw-base)) * 100vw), 10vh, calc((100 / var(--vw-base)) * 100vw));
  margin-left: auto;
  margin-right: auto;
  padding-left: calc((20 / var(--vw-base)) * 100vw);
  padding-right: calc((20 / var(--vw-base)) * 100vw);

  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: calc((56 / var(--vw-base)) * 100vw);
}

@media (min-width: 1424px) {
  .bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__container {
  }
}

.bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__content {
  width: 100%;
  font-size: calc((31 / var(--vw-base)) * 100vw);
  font-weight: 400;
  line-height: 1.2;
}

.bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__title {
  margin: 0 0 calc((32 / var(--vw-base)) * 100vw) 0;
  font-weight: 400;
  font-size: calc((91 / var(--vw-base)) * 100vw);
  letter-spacing: calc((-2.5 / var(--vw-base)) * 100vw);
  color: var(--bgi-hero-title);
}

.bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__desc {
  max-width: calc((797 / var(--vw-base)) * 100vw);
}

.bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__desc p:last-of-type {
  margin-bottom: 0;
}

.bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__actions {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: calc((16 / var(--vw-base)) * 100vw);
  z-index: 1;
}

/* Button (estilo similar) */
.bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__btn {
  --bgi-btn-color: #0a2b36;
  --bgi-btn-icon-color: #0a2b36;
  --bgi-btn-bg: #ffffff;
  --bgi-btn-border: #ffffff;

  text-decoration: none;
  color: var(--bgi-btn-color);
  background: var(--bgi-btn-bg);
  border: calc((2 / var(--vw-base)) * 100vw) solid var(--bgi-btn-border);

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: calc((12 / var(--vw-base)) * 100vw);

  padding: calc((19 / var(--vw-base)) * 100vw) calc((22 / var(--vw-base)) * 100vw);
  min-height: calc((58 / var(--vw-base)) * 100vw);
  border-radius: calc((8 / var(--vw-base)) * 100vw);

  font-size: calc((18 / var(--vw-base)) * 100vw);
  line-height: 1;
  letter-spacing: calc((0.36 / var(--vw-base)) * 100vw);
  text-transform: capitalize;

  transition: transform 0.15s ease-out, opacity 0.15s ease-out;
  font-family: Inter;
  color: #1d2e33;
  font-weight: 600;
}

.bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__btn:hover {
  opacity: 0.95;
  transform: translateY(calc((-1 / var(--vw-base)) * 100vw));
}

.bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__btn svg {
  width: calc((18 / var(--vw-base)) * 100vw);
  height: calc((18 / var(--vw-base)) * 100vw);
  display: block;
}

.bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__btn svg path {
  stroke: var(--bgi-btn-icon-color);
}


/* ==========================
   BGI Insights Categories (scoped)
   ========================== */
.bgi-insights-cats.bgi-insights-cats{
  display:flex;
  flex-direction:column;
  gap: calc((24 / var(--vw-base)) * 100vw);
  margin-bottom: calc((64 / var(--vw-base)) * 100vw);
}

.bgi-insights-cats.bgi-insights-cats .bgi-insights-cats__label{
  font-size: calc((16 / var(--vw-base)) * 100vw);
  font-weight:600;
  line-height:1.2;
  color: #0A2B36;
  font-family: "Inter";
}

.bgi-insights-cats.bgi-insights-cats .bgi-insights-cats__items{
  display:flex;
  flex-wrap:wrap;
  gap: calc((8 / var(--vw-base)) * 100vw);
}

.bgi-insights-cats.bgi-insights-cats .bgi-insights-cats__link{
  color:#0A2B36;
  padding: calc((6 / var(--vw-base)) * 100vw) calc((16 / var(--vw-base)) * 100vw);
  border-radius: calc((18 / var(--vw-base)) * 100vw);
  background:#E6EDD6;
  text-decoration:none;
  transition: color .25s ease-out, background-color .25s ease-out;
  font-family: "Inter";
}

.bgi-insights-cats.bgi-insights-cats .bgi-insights-cats__link.is-active{
  color:#ffffff;
  background:#454F2F;
}


/* ==========================
   Insights - Posts + Pagination
   (scoped by .posts-with-pagination)
   ========================== */

.posts-with-pagination .posts-with-pagination-items{
  display:flex;
  flex-wrap:wrap;
  gap: calc((88 / var(--vw-base)) * 100vw) calc((24 / var(--vw-base)) * 100vw);
}

.posts-with-pagination .posts-with-pagination-items .post-item{
  width: calc(33.33% - 16px);
  display:flex;
  flex-direction:column;
  text-decoration:none;
}

@media (max-width: 1024px){
  .posts-with-pagination .posts-with-pagination-items .post-item{
    width: calc(50% - 12px);
  }
}
@media (max-width: 640px){
  .posts-with-pagination .posts-with-pagination-items .post-item{
    width: 100%;
  }
}

/* Thumbnail */
.posts-with-pagination .post-item .thumbnail{
  background-color: rgba(10,43,54,0.05);
  width: 100%;
  height: calc((300 / var(--vw-base)) * 100vw);
  border-radius: calc((8 / var(--vw-base)) * 100vw);
  overflow: hidden;
  position: relative;
}

.posts-with-pagination .post-item .thumbnail img{
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: transform ease-out 0.25s;
}

.posts-with-pagination .post-item:hover .thumbnail img,
.posts-with-pagination .post-item:focus .thumbnail img{
  transform: scale(1.02);
}

/* Category badge */
.posts-with-pagination .post-item .thumbnail__categories{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  padding: calc((24 / var(--vw-base)) * 100vw);
  z-index:1;
  display:flex;
  flex-wrap:wrap;
  gap: calc((4 / var(--vw-base)) * 100vw);
  font-size: calc((14 / var(--vw-base)) * 100vw);
}

.posts-with-pagination .post-item .thumbnail__categories .cat{
  color:#ffffff;
  padding: calc((4 / var(--vw-base)) * 100vw) calc((12 / var(--vw-base)) * 100vw);
  text-transform: capitalize;
  border-radius: calc((50 / var(--vw-base)) * 100vw);
  background:#454F2F;
  font-weight:400;
  line-height:1.5;
}

/* Date */
.posts-with-pagination .post-item .date{
  color: rgba(10,43,54,0.7);
  font-size: calc((14 / var(--vw-base)) * 100vw);
  font-weight: 600;
  line-height: 1.5;
  padding-top: calc((24 / var(--vw-base)) * 100vw);
  padding-bottom: calc((16 / var(--vw-base)) * 100vw);
  font-family: "Inter";
}

/* Info */
.posts-with-pagination .post-item .info{
  display:flex;
  width:100%;
  flex-direction:column;
  gap: calc((16 / var(--vw-base)) * 100vw);
  position:relative;
  flex: 1 1 auto;
  max-width: calc((650 / var(--vw-base)) * 100vw);
}

.posts-with-pagination .post-item .info-title{
  color:#0A2B36;
  font-size: clamp(20px, 3vw, 24px);
  font-weight:400;
  line-height:1.2;
  text-decoration:none;
  flex: 1 1 auto;
}

.posts-with-pagination .post-item .info-read{
  color: rgba(10,43,54,0.7);
  font-weight:400;
  line-height:1.5;
  font-family: "Inter";
}

/* Hover overlay button */
.posts-with-pagination .post-item .info-button{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  font-size: calc((18 / var(--vw-base)) * 100vw);
  z-index:1;
  opacity:0;
  pointer-events:none;
  visibility:hidden;
  transition: opacity ease-out 0.25s;
}

.posts-with-pagination .post-item:hover .info-button,
.posts-with-pagination .post-item:focus .info-button{
  opacity:1;
  pointer-events:auto;
  visibility:visible;
}

.posts-with-pagination .post-item .info-button .bgi-insights-read-btn{
  width:100%;
  height:100%;
  min-height: calc((98 / var(--vw-base)) * 100vw);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap: calc((12 / var(--vw-base)) * 100vw);
  border-radius: calc((8 / var(--vw-base)) * 100vw);
  background:#365553;
  color:#ffffff;
  text-decoration:none;
}

/* ==========================
   Pagination
   ========================== */

.posts-with-pagination .pagination{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  gap: calc((5 / var(--vw-base)) * 100vw);
  margin-top: calc((56 / var(--vw-base)) * 100vw);
}

.posts-with-pagination .pagination a,
.posts-with-pagination .pagination span{
  height: calc((32 / var(--vw-base)) * 100vw);
  width: calc((32 / var(--vw-base)) * 100vw);
  border: calc((1 / var(--vw-base)) * 100vw) solid rgba(10,43,54,0.2);
  border-radius: calc((8 / var(--vw-base)) * 100vw);
  display:flex;
  align-items:center;
  justify-content:center;
  color:#0A2B36;
  font-size: calc((13 / var(--vw-base)) * 100vw);
  font-weight:600;
  text-decoration:none;
  transition: background-color ease-out 0.25s;
  font-family: "Inter";
}

.posts-with-pagination .pagination span.current{
  color:#ffffff;
  background-color:#396C7D;
  border-color:#396C7D;
}

.posts-with-pagination .pagination a.disabled,
.posts-with-pagination .pagination span.disabled{
  pointer-events:none;
  opacity:0.6;
}

/* SVG colors */
.posts-with-pagination .pagination svg path{
  fill:#0A2B36;
}

.posts-with-pagination .pagination a.disabled svg path,
.posts-with-pagination .pagination span.disabled svg path{
  fill: rgba(10,43,54,0.2);
}

.posts-with-pagination{
  padding: calc((64 / var(--vw-base)) * 100vw) 0;
}

/* Desktop */
@media (max-width: 1420px) {

  /* ==========================
     BGI Insights Hero (scoped)
     ========================== */
  .bgi-insights-hero.bgi-insights-hero {
    padding-top: 85px;
    min-height: 648px;
  }

  .bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__container {
    padding-left: 20px;
    padding-right: 20px;
    gap: 56px;
  }

  .bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__content {
    font-size: 31px;
  }

  .bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__title {
    margin: 0 0 32px 0;
    font-size: 91px;
    letter-spacing: -2.5px;
  }

  .bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__desc {
    max-width: 797px;
  }

  .bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__actions {
    gap: 16px;
  }

  /* Button (estilo similar) */
  .bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__btn {
    border-width: 2px;
    gap: 12px;
    padding: 19px 22px;
    min-height: 58px;
    border-radius: 8px;
    font-size: 18px;
    letter-spacing: 0.36px;
  }

  .bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__btn:hover {
    transform: translateY(-1px);
  }

  .bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__btn svg {
    width: 18px;
    height: 18px;
  }

  /* ==========================
     BGI Insights Categories (scoped)
     ========================== */
  .bgi-insights-cats.bgi-insights-cats{
    gap: 24px;
    margin-bottom: 64px;
  }

  .bgi-insights-cats.bgi-insights-cats .bgi-insights-cats__label{
    font-size: 16px;
  }

  .bgi-insights-cats.bgi-insights-cats .bgi-insights-cats__items{
    gap: 8px;
  }

  .bgi-insights-cats.bgi-insights-cats .bgi-insights-cats__link{
    padding: 6px 16px;
    border-radius: 18px;
  }

  /* ==========================
     Insights - Posts + Pagination
     (scoped by .posts-with-pagination)
     ========================== */
  .posts-with-pagination .posts-with-pagination-items{
    gap: 88px 24px;
  }

  /* Thumbnail */
  .posts-with-pagination .post-item .thumbnail{
    height: 300px;
    border-radius: 8px;
  }

  /* Category badge */
  .posts-with-pagination .post-item .thumbnail__categories{
    padding: 24px;
    gap: 4px;
    font-size: 14px;
  }

  .posts-with-pagination .post-item .thumbnail__categories .cat{
    padding: 4px 12px;
    border-radius: 50px;
  }

  /* Date */
  .posts-with-pagination .post-item .date{
    font-size: 14px;
    padding-top: 24px;
    padding-bottom: 16px;
  }

  /* Info */
  .posts-with-pagination .post-item .info{
    gap: 16px;
    max-width: 650px;
  }

  /* Hover overlay button */
  .posts-with-pagination .post-item .info-button{
    font-size: 18px;
  }

  .posts-with-pagination .post-item .info-button .bgi-insights-read-btn{
    min-height: 98px;
    gap: 12px;
    border-radius: 8px;
  }

  /* ==========================
     Pagination
     ========================== */
  .posts-with-pagination .pagination{
    gap: 5px;
    margin-top: 56px;
  }

  .posts-with-pagination .pagination a,
  .posts-with-pagination .pagination span{
    height: 32px;
    width: 32px;
    border-width: 1px;
    border-radius: 8px;
    font-size: 13px;
  }

  .posts-with-pagination{
    padding: 64px 0;
  }
}

@media(max-width: 767px){
  .bgi-insights-hero.bgi-insights-hero .bgi-insights-hero__desc p:last-of-type {
    line-height: 1.2;
  }
}