	

	/* Filters bar */
	.ess-filters {
		max-width: 810px;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
		justify-content: center;
	}
	  .ess-filters-title {
			color: #ffffffc7;
			text-transform: uppercase;
			font-size: 10px;
			padding-bottom: 10px;
		}	
      .ess-filters button {
		  position:relative;
		  background-color:transparent;
		  border: solid 1.5px;
		border-color: var(--gcid-primary-color);
		color: var(--gcid-primary-color);
		padding: 2px 10px;
		border-radius: 8px;
		transition: all 600ms ease;
		  margin-right: .5em; 
		  cursor: pointer;
		  text-transform:uppercase;
}
	.ess-filters button:hover,
	.ess-filters button.active{
	background: var(--gcid-primary-color);
		color: #000;
	}
      .ess-filters button.active { font-weight: bold; }
	

.ess-filters button:not([data-filter="all"]).active:after{
	content:'';
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' style='fill: rgba(255, 255, 255, 1);transform: ;msFilter:;'%3E%3Cpath d='M12 2C6.486 2 2 6.486 2 12s4.486 10 10 10 10-4.486 10-10S17.514 2 12 2zm4.207 12.793-1.414 1.414L12 13.414l-2.793 2.793-1.414-1.414L10.586 12 7.793 9.207l1.414-1.414L12 10.586l2.793-2.793 1.414 1.414L13.414 12l2.793 2.793z'%3E%3C/path%3E%3C/svg%3E");
	background-position: center;
    background-size: contain;
    position: absolute;
    height: 16px;
    width: 16px;
    z-index: 9999;
    top: -12px;
}

	/* Dim non-matching events */
	.event-cell.filtered-out {
	  opacity: 0.3;
	  pointer-events: none; 
	  transition: opacity 0.3s ease;
	}

	/* Scroll wrapper */
	.ess-schedule-wrap {
	  position: relative;
	  overflow-x: auto;
	  -webkit-overflow-scrolling: touch;
	  scroll-snap-type: x mandatory;
	}

	/* Make sure the grid can overflow */
	.ess-schedule-grid {
	  min-width: 800px;
	  text-transform:uppercase;	
	  font-family: 'Militech', Helvetica, Arial, Lucida, sans-serif;
     	margin-bottom:20px;
	}

	/* Optional: snap scrolling to each column */
	
	.ess-schedule-grid .cell {
	  scroll-snap-align: start;
	}
	.cell.header.time-header:first-of-type{border:none;}

      /* Grid layout */
      .ess-schedule-grid {
        display: grid;
        grid-template-columns: 100px repeat(4,1fr);
        grid-auto-rows: minmax(80px, auto);
        gap: 12px;
        background: #000;
        padding: 12px;
      }
      .ess-schedule-grid .cell:not(.event-cell) {
        border: 1.5px solid #fff;
        border-radius: 8px;
        padding: 8px;
        box-sizing: border-box;
        color: #fff;
        text-align: center;
      }
	  .ess-schedule-grid .cell.divider {
		  position: relative;
		  will-change: transform;
		  z-index: 10;
		  border: none;
		  display: flex;
		  justify-content: center;
		  align-items: center;
		  font-size: 30px;
		  padding: 40px 0;
		  background: #000;
		}
      .header { font-weight: bold; text-transform: uppercase; }
      .time-header { border: none; background: none; }
      .day-header, .time-label {
        display: flex; align-items: center; justify-content: center;
        font-weight: bold;
     	font-size: 20px;
      }
      .event-cell { display: flex; flex-direction: column; justify-content: space-between;gap:5px;color: #fff;}
      .theme-badge,.evt-content {
        font-size: 18px; text-transform: uppercase;
        border: 1.5px solid #fff; border-radius: 8px;
        padding: 6px;
      }
		.evt-content {
			height: 100%;
			display: flex;
			flex-direction: column;
			justify-content: center;
		}
          .evt-speakers,
      .evt-company,.evt-title  { font-size: 14px; }
	  .evt-speakers,.evt-title { line-height:1; }	

		.ess-venue-main{
		    font-size: 42px;
    font-weight: bold;
    color: #fff;
    padding-bottom: 0;
			padding-top:60px;
			text-shadow: 4px 4px 10px rgba(255, 255, 255, 0.40),
             12px -5px 13px rgba(226, 174, 70, 0.10);
		}
.ess-venue-sub{
	color:#fff;
	margin-bottom:60px;
}

@media (max-width: 767px) {
  .ess-schedule-grid {
    width: max-content;          
    min-width: unset;           
  }

  
  .ess-schedule-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;overscroll-behavior-x: contain;
  }
	.ess-schedule-grid .cell.divider {justify-content: flex-start;max-width: 85vw;}
  .ess-schedule-grid .cell.divider span{width:100%;}
}

