.gbn-cc-events-container {
margin: 1.5em 0;
font-family: inherit;
}
.gbn-cc-events-list {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 25px;
max-width: 100%;
margin: 0;
padding: 0;
list-style: none;
align-items: stretch;
} .gbn-cc-event {
display: flex;
flex-direction: column;
width: 100%;
box-sizing: border-box;
word-break: break-word;
margin: 0;
height: 100%;
border-radius: 20px;
overflow: hidden;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
transition: all 0.3s ease;
background: #fff;
}
.gbn-cc-event:hover {
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
transform: translateY(-2px);
} .gbn-cc-event-img-wrapper {
position: relative;
min-height: 180px;
background-size: cover;
background-position: center center;
} .gbn-cc-event-day {
font-size: 30px;
font-weight: bold;
line-height: 1;
}
.gbn-cc-event-month,
.gbn-cc-event-year {
font-size: 18px;
line-height: 1.2;
}  .gbn-cc-event-details {
display: flex;
flex-direction: column;
flex-grow: 1;
}
.gbn-cc-event-title {
margin-top: 0;
margin-bottom: 0.5em;
font-size: 1.4em;
font-weight: 600;
line-height: 1.2;
color: #333;
letter-spacing: -0.4px;
}
.gbn-cc-event-title a {
color: #4F2970;
text-decoration: none;
transition: color 0.3s ease;
}
.gbn-cc-event-title a:hover {
color: #3a1f53;
text-decoration: underline;
} .gbn-cc-event-description {
flex-grow: 1;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
margin-bottom: 1em;
line-height: 1.5;
}     .gbn-cc-no-events {
padding: 1em;
background-color: #f8f9fa;
border-radius: 6px;
text-align: center;
color: #666;
grid-column: 1 / -1;
} @media (max-width: 1024px) {
.gbn-cc-events-list {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 767px) {
.gbn-cc-events-list {
grid-template-columns: 1fr;
} }  .gbn-cc-events-list {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 30px; max-width: 100%;
margin: 0;
padding: 0;
list-style: none;
align-items: stretch;
} .gbn-cc-event-content-wrapper {
display: flex;
flex-direction: column;
flex-grow: 1;
background: #f8f8f8; padding: 1.75em; min-height: 180px; }     .gbn-cc-event:hover {
box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
transform: translateY(-4px);
transition: all 0.3s ease;
} .gbn-cc-event-title a {
color: #4F2970; font-weight: 600;
text-decoration: none;
transition: color 0.3s ease;
} .gbn-cc-event-description {
flex-grow: 1;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 3; -webkit-box-orient: vertical;
margin-bottom: 1.25em;
line-height: 1.6;
color: #333;
} .gbn-cc-event-date {
color: #555;
margin-bottom: 0.75em;
font-size: 0.8em;
display: flex;
align-items: center;
}
.gbn-cc-event-date .dashicons {
color: #4F2970;
font-size: 16px;
width: 16px;
height: 16px;
margin-right: 5px;
} .gbn-cc-event-time {
color: #555;
margin-bottom: 1em;
font-size: 0.9em;
display: flex;
align-items: center;
}
.gbn-cc-event-time .dashicons {
color: #4F2970;
font-size: 16px;
width: 16px;
height: 16px;
margin-right: 5px;
} .gbn-cc-event-img-wrapper {
position: relative;
min-height: 180px;
background-size: cover;
background-position: center center;
} .gbn-cc-event-img-wrapper:hover {
opacity: 0.95;
}  .gbn-cc-event-date,
.gbn-cc-event-time {
color: #555;
font-size: 0.9em;
display: flex;
align-items: center;
margin-bottom: 0.5em;
}
.gbn-cc-event-date .dashicons,
.gbn-cc-event-time .dashicons {
color: #4F2970;
font-size: 16px;
width: 16px;
height: 16px;
margin-right: 5px;
} .gbn-cc-event-description {
flex-grow: 1;
font-size: 16px;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
margin-bottom: 1em;
line-height: 1.5;
color: #333;
} .gbn-cc-event-read-more {
margin-top: auto;
color: #4F2970;
text-decoration: none;
font-size: 0.9em;
font-weight: 500;
transition: color 0.3s ease;
display: inline-block;
margin-bottom: 0.8em;
}
.gbn-cc-event-read-more:hover {
color: #3a1f53;
text-decoration: underline;
} .gbn-cc-event-location {
background-color: #4F2970;
color: #fff;
padding: 0.75em 1em;
font-size: 0.9em;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
border-radius: 20px;
}
.gbn-cc-event-location-icon {
margin-bottom: 0.3em;
color: #fff;
}
.gbn-cc-event-location-details {
text-align: center;
width: 100%;
}
.gbn-cc-event-location-name {
font-weight: 600;
display: block;
margin-bottom: 0.2em;
}
.gbn-cc-event-location address {
font-style: normal;
margin: 0; font-size: 0.85em;
opacity: 0.95;
line-height: 1.4;
margin: 0 0 1rem 0;
} .gbn-cc-no-events {
padding: 1em;
background-color: #f8f9fa;
border-radius: 6px;
text-align: center;
color: #666;
grid-column: 1 / -1;
} @media (max-width: 1024px) {
.gbn-cc-events-list {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 767px) {
.gbn-cc-events-list {
grid-template-columns: 1fr;
}
}