/* Header de imagem para eventos (CPT 'event') */
.co-event-featured-header {
  width: 100%;
  margin: 0 0 24px 0;
}
.co-event-featured-header .co-event-featured-image {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

/* Event Organiser archive card tweaks */
.eo-event-date {
  font-style: normal !important; /* override EO default italic */
  font-weight: 400;
  margin: 6px 0 12px;
}

.type-event {
  border: 1px solid #e3e3e3;
  padding: 0;
  border-radius: 6px;
  background: #fff;
}

.eo-event-details .eo-event-meta,
.eo-event-details .eo-event-meta li {
  font-style: normal;
}
.eo-event-details .eo-event-meta{
  margin:0;
}

.eo-event-details .eo-event-thumbnail {
  margin: 0;
  display: block;
  float: none;
}


.eo-tc-event .eo-event-content p{
  margin: 0;
}

.eo-tc-event .eo-event-content{
  display: block;
  margin: 0!important;
  font-weight: 400!important;
}

.eo-tc-event .eo-event-content .eo-event-thumbnail{
  width:100px;
}

.wrap-evento {
  display: flex; 
  align-items: start;
  flex-wrap: nowrap;
}

.event-list-content{
  padding: 10px 20px;
}
  .eo-event-thumbnail{
    width:250px;
    height: 250px;
  }

.event-list-thumbnail {

}

.list-events-header{
  display: flex;
  justify-content: space-between;
  align-items: start;
  margin-bottom: 20px;
}
.wrapper-calendar{
  width:20%;
}
.eo-future-date.event a{
  position: relative;
  color: #fff;
  text-decoration: none;
  font-weight: 400;
}
.eo-future-date.event a::before{
  content: '';
  background: #000;
  border-radius: 50%;
  width: 30px;
  height: 29.5px;
  position: absolute;
  top:50%;
  left:50%;
  transform: translate(calc(-50%), -50%);
  z-index: -1;
}

@media screen and (max-width: 600px) {
  .wrap-evento {
    flex-direction: column;
    flex-wrap: wrap; 
  } 
  .event-list-thumbnail{
    width: 100%;
  }
  
  .eo-event-thumbnail{
    width:100%;
    height: 200px;
  }

  .event-list-thumbnail img{
    object-fit: cover;
    width: 100%;
    max-height: 200px;
  }
}

/* Layout: Desktop two-column grid; Mobile reorders to title, calendar, list */
		.eo-events-archive-grid { display: grid; gap: 1.5rem; }
		@media (min-width: 768px) {
			.eo-events-archive-grid {
				grid-template-columns: minmax(0,1fr) 320px;
				grid-template-areas:
					"header calendar"
					"list   calendar";
				align-items: start;
			}
		}
		@media (max-width: 767.98px) {
			.eo-events-archive-grid {
				grid-template-columns: 1fr;
				grid-template-areas:
					"header"
					"calendar"
					"list";
			}
		}
		.eo-events-header { grid-area: header; }
		.eo-events-calendar { grid-area: calendar; }
		.eo-events-list { grid-area: list; }

/* Sticky calendar (desktop) ----------------------------------------------- */
@media (min-width: 768px) {
  .eo-events-calendar {
    position: sticky;
    top: 110px; /* base offset; JS will refine if header/admin bar differs */
    align-self: start; /* ensure it doesn't stretch in grid */
    z-index: 10; /* keep above potential overlapping backgrounds */
  }
  body.admin-bar .eo-events-calendar {
    top: 142px; /* add admin bar height (~32px) */
  }
}

/* Optional visual hint (can be removed) */
.eo-events-calendar.stuck-shadow {
  box-shadow: 0 4px 12px rgba(0,0,0,.08);
  transition: box-shadow .25s ease; 
}