.elementor-12577 .elementor-element.elementor-element-38562a49{--display:flex;}.elementor-12577 .elementor-element.elementor-element-74b5ce8{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-12577 .elementor-element.elementor-element-28995e4 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-12577 .elementor-element.elementor-element-e677fa8 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-12577 .elementor-element.elementor-element-8c8fe36 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-12577 .elementor-element.elementor-element-e550289 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-12577 .elementor-element.elementor-element-bd72091 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-12577 .elementor-element.elementor-element-14be9c3 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-12577 .elementor-element.elementor-element-56fd952 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-12577 .elementor-element.elementor-element-95ce192 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-12577 .elementor-element.elementor-element-a50da1f > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-12577 .elementor-element.elementor-element-34165cf > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-12577 .elementor-element.elementor-element-706a1d8{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-12577 .elementor-element.elementor-element-516e7b4 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-12577 .elementor-element.elementor-element-0961349{--display:flex;}.elementor-12577 .elementor-element.elementor-element-0e2a353 .elementor-button{background-color:#000000;fill:#FFFFFF;color:#FFFFFF;}.elementor-12577 .elementor-element.elementor-element-0e2a353 .elementor-button:hover, .elementor-12577 .elementor-element.elementor-element-0e2a353 .elementor-button:focus{background-color:#000000CF;}.elementor-12577 .elementor-element.elementor-element-0e2a353 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 100px 0px;}.elementor-12577 .elementor-element.elementor-element-be03837{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(max-width:767px){.elementor-12577 .elementor-element.elementor-element-74b5ce8{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-12577 .elementor-element.elementor-element-706a1d8{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-12577 .elementor-element.elementor-element-be03837{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-12577 .elementor-element.elementor-element-7957fdf > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}}/* Start custom CSS for html, class: .elementor-element-28995e4 *//* Ensure Inter font is loaded globally */

.elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-showcase-section {
  font-family: 'Inter', sans-serif;
  color: #2d2d2d;
  /* background-color: #fcfcfc; /* Applied via inline style in HTML */
  /* padding: 40px 0; /* Applied via inline style in HTML */
}

.elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-showcase-container {
  max-width: 750px; /* Adjust as needed for blog post width */
  margin: 0 auto;
  padding: 0 15px; /* Padding for the container */
  box-sizing: border-box;
}

.elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-showcase-card {
  background-color: #ffffff; /* White card */
  border: 1px solid #dddddd; /* NEW: 1px Grey border */
  border-radius: 10px;
  margin-bottom: 35px; /* Space between cards */
  box-shadow: 0 6px 25px rgba(0,0,0,0.05);
  display: flex;
  flex-direction: column;
  overflow: hidden; /* Crucial for clipping image radius */
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out,
              box-shadow 0.3s ease, border-color 0.3s ease; /* Added border-color to transition */
}
.elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-showcase-card.is-visible-animated,
.elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-showcase-card.is-visible { /* Fallback for no JS anim */
  opacity: 1;
  transform: translateY(0);
}

@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-showcase-card:hover {
    box-shadow: 0 10px 35px rgba(0,0,0,0.08);
    transform: translateY(-4px);
    border-color: #cccccc; /* Optional: Darken border slightly on hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-card-image {
  height: 220px; /* Adjust image height as desired */
  background-size: cover;
  background-position: center center; /* Ensure image is centered */
  transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}
@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-showcase-card:hover .ab-event-card-image {
    transform: scale(1.03); /* Subtle zoom on card hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-card-content {
  padding: 25px 30px 30px 30px; /* Generous padding for content */
}

.elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-title {
  font-size: 1.5em; /* Prominent event title */
  font-weight: 700;
  color: #111111;
  margin: 0 0 12px 0;
  line-height: 1.3;
}
.elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-date {
  font-weight: 400;
  font-size: 0.9em;
  color: #555555;
  margin-left: 0.3em;
}

.elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-meta {
  margin-bottom: 18px; /* More space before description */
  font-size: 0.88em;
  color: #666666;
  line-height: 1.6;
  border-bottom: 1px dashed #e8e8e8; /* Separator line */
  padding-bottom: 15px; /* Space below meta before separator */
}
.elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-meta p {
  margin: 0 0 6px 0;
}
.elementor-12577 .elementor-element.elementor-element-28995e4 .ab-meta-label {
  font-weight: 600;
  color: #333333; /* Darker label for more contrast */
  margin-right: 6px;
}

.elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-description p {
  font-size: 0.92em; /* Readable description */
  line-height: 1.75; /* Good line height */
  color: #383838; /* Main description text color */
  margin: 0;
}
.elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-description p:not(:last-child) {
  margin-bottom: 1em;
}

/* Optional CTA Link styling (if you add it back to HTML) */
.elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-cta-wrapper {
  margin-top: 25px;
}
.elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-cta-link {
  display: inline-block;
  font-size: 0.85em;
  font-weight: 600;
  color: #eac892; /* Accent color */
  text-decoration: none;
  padding-bottom: 2px; /* For underline effect */
  border-bottom: 1.5px solid #eac892;
  transition: color 0.3s ease, border-bottom-color 0.3s ease;
}
.elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-cta-link:hover {
  color: #d3b076; /* Darker accent */
  border-bottom-color: #d3b076;
}
.elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-cta-link span { /* Arrow */
  margin-left: 4px;
  transition: transform 0.2s ease;
}
.elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-cta-link:hover span {
  transform: translateX(3px);
}


/* --- Responsive Adjustments --- */
@media (max-width: 767px) {
  .elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-showcase-section {
    padding: 30px 0;
  }
  .elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-showcase-container {
    padding: 0 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-showcase-card {
    padding: 0; /* Remove card padding, content div will handle */
    margin-bottom: 25px;
    border-color: #e0e0e0; /* Slightly softer border for mobile if desired */
  }
  .elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-card-image {
    height: 180px; /* Shorter image on mobile */
    /* The image itself won't have rounded corners if card padding is 0,
       but overflow:hidden on the card will clip it to the card's radius */
  }
  .elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-card-content {
    padding: 20px 25px 25px 25px; /* Content padding on mobile */
  }

  .elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-title {
    font-size: 1.3em;
    margin-bottom: 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-date {
    font-size: 0.85em;
  }
  .elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-meta {
    font-size: 0.82em;
    margin-bottom: 15px;
    padding-bottom: 12px;
  }
  .elementor-12577 .elementor-element.elementor-element-28995e4 .ab-event-description p {
    font-size: 0.9em;
    line-height: 1.7;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e677fa8 *//* Ensure Inter font is loaded globally */

.elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-showcase-section {
  font-family: 'Inter', sans-serif;
  color: #2d2d2d;
  /* background-color: #fcfcfc; /* Applied via inline style in HTML */
  /* padding: 40px 0; /* Applied via inline style in HTML */
}

.elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-showcase-container {
  max-width: 750px; /* Adjust as needed for blog post width */
  margin: 0 auto;
  padding: 0 15px; /* Padding for the container */
  box-sizing: border-box;
}

.elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-showcase-card {
  background-color: #ffffff; /* White card */
  border: 1px solid #dddddd; /* NEW: 1px Grey border */
  border-radius: 10px;
  margin-bottom: 35px; /* Space between cards */
  box-shadow: 0 6px 25px rgba(0,0,0,0.05);
  display: flex;
  flex-direction: column;
  overflow: hidden; /* Crucial for clipping image radius */
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out,
              box-shadow 0.3s ease, border-color 0.3s ease; /* Added border-color to transition */
}
.elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-showcase-card.is-visible-animated,
.elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-showcase-card.is-visible { /* Fallback for no JS anim */
  opacity: 1;
  transform: translateY(0);
}

@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-showcase-card:hover {
    box-shadow: 0 10px 35px rgba(0,0,0,0.08);
    transform: translateY(-4px);
    border-color: #cccccc; /* Optional: Darken border slightly on hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-card-image {
  height: 220px; /* Adjust image height as desired */
  background-size: cover;
  background-position: center center; /* Ensure image is centered */
  transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}
@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-showcase-card:hover .ab-event-card-image {
    transform: scale(1.03); /* Subtle zoom on card hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-card-content {
  padding: 25px 30px 30px 30px; /* Generous padding for content */
}

.elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-title {
  font-size: 1.5em; /* Prominent event title */
  font-weight: 700;
  color: #111111;
  margin: 0 0 12px 0;
  line-height: 1.3;
}
.elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-date {
  font-weight: 400;
  font-size: 0.9em;
  color: #555555;
  margin-left: 0.3em;
}

.elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-meta {
  margin-bottom: 18px; /* More space before description */
  font-size: 0.88em;
  color: #666666;
  line-height: 1.6;
  border-bottom: 1px dashed #e8e8e8; /* Separator line */
  padding-bottom: 15px; /* Space below meta before separator */
}
.elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-meta p {
  margin: 0 0 6px 0;
}
.elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-meta-label {
  font-weight: 600;
  color: #333333; /* Darker label for more contrast */
  margin-right: 6px;
}

.elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-description p {
  font-size: 0.92em; /* Readable description */
  line-height: 1.75; /* Good line height */
  color: #383838; /* Main description text color */
  margin: 0;
}
.elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-description p:not(:last-child) {
  margin-bottom: 1em;
}

/* Optional CTA Link styling (if you add it back to HTML) */
.elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-cta-wrapper {
  margin-top: 25px;
}
.elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-cta-link {
  display: inline-block;
  font-size: 0.85em;
  font-weight: 600;
  color: #eac892; /* Accent color */
  text-decoration: none;
  padding-bottom: 2px; /* For underline effect */
  border-bottom: 1.5px solid #eac892;
  transition: color 0.3s ease, border-bottom-color 0.3s ease;
}
.elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-cta-link:hover {
  color: #d3b076; /* Darker accent */
  border-bottom-color: #d3b076;
}
.elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-cta-link span { /* Arrow */
  margin-left: 4px;
  transition: transform 0.2s ease;
}
.elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-cta-link:hover span {
  transform: translateX(3px);
}


/* --- Responsive Adjustments --- */
@media (max-width: 767px) {
  .elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-showcase-section {
    padding: 30px 0;
  }
  .elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-showcase-container {
    padding: 0 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-showcase-card {
    padding: 0; /* Remove card padding, content div will handle */
    margin-bottom: 25px;
    border-color: #e0e0e0; /* Slightly softer border for mobile if desired */
  }
  .elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-card-image {
    height: 180px; /* Shorter image on mobile */
    /* The image itself won't have rounded corners if card padding is 0,
       but overflow:hidden on the card will clip it to the card's radius */
  }
  .elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-card-content {
    padding: 20px 25px 25px 25px; /* Content padding on mobile */
  }

  .elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-title {
    font-size: 1.3em;
    margin-bottom: 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-date {
    font-size: 0.85em;
  }
  .elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-meta {
    font-size: 0.82em;
    margin-bottom: 15px;
    padding-bottom: 12px;
  }
  .elementor-12577 .elementor-element.elementor-element-e677fa8 .ab-event-description p {
    font-size: 0.9em;
    line-height: 1.7;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8c8fe36 *//* Ensure Inter font is loaded globally */

.elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-showcase-section {
  font-family: 'Inter', sans-serif;
  color: #2d2d2d;
  /* background-color: #fcfcfc; /* Applied via inline style in HTML */
  /* padding: 40px 0; /* Applied via inline style in HTML */
}

.elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-showcase-container {
  max-width: 750px; /* Adjust as needed for blog post width */
  margin: 0 auto;
  padding: 0 15px; /* Padding for the container */
  box-sizing: border-box;
}

.elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-showcase-card {
  background-color: #ffffff; /* White card */
  border: 1px solid #dddddd; /* NEW: 1px Grey border */
  border-radius: 10px;
  margin-bottom: 35px; /* Space between cards */
  box-shadow: 0 6px 25px rgba(0,0,0,0.05);
  display: flex;
  flex-direction: column;
  overflow: hidden; /* Crucial for clipping image radius */
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out,
              box-shadow 0.3s ease, border-color 0.3s ease; /* Added border-color to transition */
}
.elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-showcase-card.is-visible-animated,
.elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-showcase-card.is-visible { /* Fallback for no JS anim */
  opacity: 1;
  transform: translateY(0);
}

@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-showcase-card:hover {
    box-shadow: 0 10px 35px rgba(0,0,0,0.08);
    transform: translateY(-4px);
    border-color: #cccccc; /* Optional: Darken border slightly on hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-card-image {
  height: 220px; /* Adjust image height as desired */
  background-size: cover;
  background-position: center center; /* Ensure image is centered */
  transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}
@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-showcase-card:hover .ab-event-card-image {
    transform: scale(1.03); /* Subtle zoom on card hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-card-content {
  padding: 25px 30px 30px 30px; /* Generous padding for content */
}

.elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-title {
  font-size: 1.5em; /* Prominent event title */
  font-weight: 700;
  color: #111111;
  margin: 0 0 12px 0;
  line-height: 1.3;
}
.elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-date {
  font-weight: 400;
  font-size: 0.9em;
  color: #555555;
  margin-left: 0.3em;
}

.elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-meta {
  margin-bottom: 18px; /* More space before description */
  font-size: 0.88em;
  color: #666666;
  line-height: 1.6;
  border-bottom: 1px dashed #e8e8e8; /* Separator line */
  padding-bottom: 15px; /* Space below meta before separator */
}
.elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-meta p {
  margin: 0 0 6px 0;
}
.elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-meta-label {
  font-weight: 600;
  color: #333333; /* Darker label for more contrast */
  margin-right: 6px;
}

.elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-description p {
  font-size: 0.92em; /* Readable description */
  line-height: 1.75; /* Good line height */
  color: #383838; /* Main description text color */
  margin: 0;
}
.elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-description p:not(:last-child) {
  margin-bottom: 1em;
}

/* Optional CTA Link styling (if you add it back to HTML) */
.elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-cta-wrapper {
  margin-top: 25px;
}
.elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-cta-link {
  display: inline-block;
  font-size: 0.85em;
  font-weight: 600;
  color: #eac892; /* Accent color */
  text-decoration: none;
  padding-bottom: 2px; /* For underline effect */
  border-bottom: 1.5px solid #eac892;
  transition: color 0.3s ease, border-bottom-color 0.3s ease;
}
.elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-cta-link:hover {
  color: #d3b076; /* Darker accent */
  border-bottom-color: #d3b076;
}
.elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-cta-link span { /* Arrow */
  margin-left: 4px;
  transition: transform 0.2s ease;
}
.elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-cta-link:hover span {
  transform: translateX(3px);
}


/* --- Responsive Adjustments --- */
@media (max-width: 767px) {
  .elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-showcase-section {
    padding: 30px 0;
  }
  .elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-showcase-container {
    padding: 0 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-showcase-card {
    padding: 0; /* Remove card padding, content div will handle */
    margin-bottom: 25px;
    border-color: #e0e0e0; /* Slightly softer border for mobile if desired */
  }
  .elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-card-image {
    height: 180px; /* Shorter image on mobile */
    /* The image itself won't have rounded corners if card padding is 0,
       but overflow:hidden on the card will clip it to the card's radius */
  }
  .elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-card-content {
    padding: 20px 25px 25px 25px; /* Content padding on mobile */
  }

  .elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-title {
    font-size: 1.3em;
    margin-bottom: 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-date {
    font-size: 0.85em;
  }
  .elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-meta {
    font-size: 0.82em;
    margin-bottom: 15px;
    padding-bottom: 12px;
  }
  .elementor-12577 .elementor-element.elementor-element-8c8fe36 .ab-event-description p {
    font-size: 0.9em;
    line-height: 1.7;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e550289 *//* Ensure Inter font is loaded globally */

.elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-showcase-section {
  font-family: 'Inter', sans-serif;
  color: #2d2d2d;
  /* background-color: #fcfcfc; /* Applied via inline style in HTML */
  /* padding: 40px 0; /* Applied via inline style in HTML */
}

.elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-showcase-container {
  max-width: 750px; /* Adjust as needed for blog post width */
  margin: 0 auto;
  padding: 0 15px; /* Padding for the container */
  box-sizing: border-box;
}

.elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-showcase-card {
  background-color: #ffffff; /* White card */
  border: 1px solid #dddddd; /* NEW: 1px Grey border */
  border-radius: 10px;
  margin-bottom: 35px; /* Space between cards */
  box-shadow: 0 6px 25px rgba(0,0,0,0.05);
  display: flex;
  flex-direction: column;
  overflow: hidden; /* Crucial for clipping image radius */
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out,
              box-shadow 0.3s ease, border-color 0.3s ease; /* Added border-color to transition */
}
.elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-showcase-card.is-visible-animated,
.elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-showcase-card.is-visible { /* Fallback for no JS anim */
  opacity: 1;
  transform: translateY(0);
}

@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-showcase-card:hover {
    box-shadow: 0 10px 35px rgba(0,0,0,0.08);
    transform: translateY(-4px);
    border-color: #cccccc; /* Optional: Darken border slightly on hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-card-image {
  height: 220px; /* Adjust image height as desired */
  background-size: cover;
  background-position: center center; /* Ensure image is centered */
  transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}
@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-showcase-card:hover .ab-event-card-image {
    transform: scale(1.03); /* Subtle zoom on card hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-card-content {
  padding: 25px 30px 30px 30px; /* Generous padding for content */
}

.elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-title {
  font-size: 1.5em; /* Prominent event title */
  font-weight: 700;
  color: #111111;
  margin: 0 0 12px 0;
  line-height: 1.3;
}
.elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-date {
  font-weight: 400;
  font-size: 0.9em;
  color: #555555;
  margin-left: 0.3em;
}

.elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-meta {
  margin-bottom: 18px; /* More space before description */
  font-size: 0.88em;
  color: #666666;
  line-height: 1.6;
  border-bottom: 1px dashed #e8e8e8; /* Separator line */
  padding-bottom: 15px; /* Space below meta before separator */
}
.elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-meta p {
  margin: 0 0 6px 0;
}
.elementor-12577 .elementor-element.elementor-element-e550289 .ab-meta-label {
  font-weight: 600;
  color: #333333; /* Darker label for more contrast */
  margin-right: 6px;
}

.elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-description p {
  font-size: 0.92em; /* Readable description */
  line-height: 1.75; /* Good line height */
  color: #383838; /* Main description text color */
  margin: 0;
}
.elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-description p:not(:last-child) {
  margin-bottom: 1em;
}

/* Optional CTA Link styling (if you add it back to HTML) */
.elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-cta-wrapper {
  margin-top: 25px;
}
.elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-cta-link {
  display: inline-block;
  font-size: 0.85em;
  font-weight: 600;
  color: #eac892; /* Accent color */
  text-decoration: none;
  padding-bottom: 2px; /* For underline effect */
  border-bottom: 1.5px solid #eac892;
  transition: color 0.3s ease, border-bottom-color 0.3s ease;
}
.elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-cta-link:hover {
  color: #d3b076; /* Darker accent */
  border-bottom-color: #d3b076;
}
.elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-cta-link span { /* Arrow */
  margin-left: 4px;
  transition: transform 0.2s ease;
}
.elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-cta-link:hover span {
  transform: translateX(3px);
}


/* --- Responsive Adjustments --- */
@media (max-width: 767px) {
  .elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-showcase-section {
    padding: 30px 0;
  }
  .elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-showcase-container {
    padding: 0 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-showcase-card {
    padding: 0; /* Remove card padding, content div will handle */
    margin-bottom: 25px;
    border-color: #e0e0e0; /* Slightly softer border for mobile if desired */
  }
  .elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-card-image {
    height: 180px; /* Shorter image on mobile */
    /* The image itself won't have rounded corners if card padding is 0,
       but overflow:hidden on the card will clip it to the card's radius */
  }
  .elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-card-content {
    padding: 20px 25px 25px 25px; /* Content padding on mobile */
  }

  .elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-title {
    font-size: 1.3em;
    margin-bottom: 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-date {
    font-size: 0.85em;
  }
  .elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-meta {
    font-size: 0.82em;
    margin-bottom: 15px;
    padding-bottom: 12px;
  }
  .elementor-12577 .elementor-element.elementor-element-e550289 .ab-event-description p {
    font-size: 0.9em;
    line-height: 1.7;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-bd72091 *//* Ensure Inter font is loaded globally */

.elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-showcase-section {
  font-family: 'Inter', sans-serif;
  color: #2d2d2d;
  /* background-color: #fcfcfc; /* Applied via inline style in HTML */
  /* padding: 40px 0; /* Applied via inline style in HTML */
}

.elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-showcase-container {
  max-width: 750px; /* Adjust as needed for blog post width */
  margin: 0 auto;
  padding: 0 15px; /* Padding for the container */
  box-sizing: border-box;
}

.elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-showcase-card {
  background-color: #ffffff; /* White card */
  border: 1px solid #dddddd; /* NEW: 1px Grey border */
  border-radius: 10px;
  margin-bottom: 35px; /* Space between cards */
  box-shadow: 0 6px 25px rgba(0,0,0,0.05);
  display: flex;
  flex-direction: column;
  overflow: hidden; /* Crucial for clipping image radius */
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out,
              box-shadow 0.3s ease, border-color 0.3s ease; /* Added border-color to transition */
}
.elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-showcase-card.is-visible-animated,
.elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-showcase-card.is-visible { /* Fallback for no JS anim */
  opacity: 1;
  transform: translateY(0);
}

@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-showcase-card:hover {
    box-shadow: 0 10px 35px rgba(0,0,0,0.08);
    transform: translateY(-4px);
    border-color: #cccccc; /* Optional: Darken border slightly on hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-card-image {
  height: 220px; /* Adjust image height as desired */
  background-size: cover;
  background-position: center center; /* Ensure image is centered */
  transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}
@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-showcase-card:hover .ab-event-card-image {
    transform: scale(1.03); /* Subtle zoom on card hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-card-content {
  padding: 25px 30px 30px 30px; /* Generous padding for content */
}

.elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-title {
  font-size: 1.5em; /* Prominent event title */
  font-weight: 700;
  color: #111111;
  margin: 0 0 12px 0;
  line-height: 1.3;
}
.elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-date {
  font-weight: 400;
  font-size: 0.9em;
  color: #555555;
  margin-left: 0.3em;
}

.elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-meta {
  margin-bottom: 18px; /* More space before description */
  font-size: 0.88em;
  color: #666666;
  line-height: 1.6;
  border-bottom: 1px dashed #e8e8e8; /* Separator line */
  padding-bottom: 15px; /* Space below meta before separator */
}
.elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-meta p {
  margin: 0 0 6px 0;
}
.elementor-12577 .elementor-element.elementor-element-bd72091 .ab-meta-label {
  font-weight: 600;
  color: #333333; /* Darker label for more contrast */
  margin-right: 6px;
}

.elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-description p {
  font-size: 0.92em; /* Readable description */
  line-height: 1.75; /* Good line height */
  color: #383838; /* Main description text color */
  margin: 0;
}
.elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-description p:not(:last-child) {
  margin-bottom: 1em;
}

/* Optional CTA Link styling (if you add it back to HTML) */
.elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-cta-wrapper {
  margin-top: 25px;
}
.elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-cta-link {
  display: inline-block;
  font-size: 0.85em;
  font-weight: 600;
  color: #eac892; /* Accent color */
  text-decoration: none;
  padding-bottom: 2px; /* For underline effect */
  border-bottom: 1.5px solid #eac892;
  transition: color 0.3s ease, border-bottom-color 0.3s ease;
}
.elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-cta-link:hover {
  color: #d3b076; /* Darker accent */
  border-bottom-color: #d3b076;
}
.elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-cta-link span { /* Arrow */
  margin-left: 4px;
  transition: transform 0.2s ease;
}
.elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-cta-link:hover span {
  transform: translateX(3px);
}


/* --- Responsive Adjustments --- */
@media (max-width: 767px) {
  .elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-showcase-section {
    padding: 30px 0;
  }
  .elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-showcase-container {
    padding: 0 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-showcase-card {
    padding: 0; /* Remove card padding, content div will handle */
    margin-bottom: 25px;
    border-color: #e0e0e0; /* Slightly softer border for mobile if desired */
  }
  .elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-card-image {
    height: 180px; /* Shorter image on mobile */
    /* The image itself won't have rounded corners if card padding is 0,
       but overflow:hidden on the card will clip it to the card's radius */
  }
  .elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-card-content {
    padding: 20px 25px 25px 25px; /* Content padding on mobile */
  }

  .elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-title {
    font-size: 1.3em;
    margin-bottom: 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-date {
    font-size: 0.85em;
  }
  .elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-meta {
    font-size: 0.82em;
    margin-bottom: 15px;
    padding-bottom: 12px;
  }
  .elementor-12577 .elementor-element.elementor-element-bd72091 .ab-event-description p {
    font-size: 0.9em;
    line-height: 1.7;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-14be9c3 *//* Ensure Inter font is loaded globally */

.elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-showcase-section {
  font-family: 'Inter', sans-serif;
  color: #2d2d2d;
  /* background-color: #fcfcfc; /* Applied via inline style in HTML */
  /* padding: 40px 0; /* Applied via inline style in HTML */
}

.elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-showcase-container {
  max-width: 750px; /* Adjust as needed for blog post width */
  margin: 0 auto;
  padding: 0 15px; /* Padding for the container */
  box-sizing: border-box;
}

.elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-showcase-card {
  background-color: #ffffff; /* White card */
  border: 1px solid #dddddd; /* NEW: 1px Grey border */
  border-radius: 10px;
  margin-bottom: 35px; /* Space between cards */
  box-shadow: 0 6px 25px rgba(0,0,0,0.05);
  display: flex;
  flex-direction: column;
  overflow: hidden; /* Crucial for clipping image radius */
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out,
              box-shadow 0.3s ease, border-color 0.3s ease; /* Added border-color to transition */
}
.elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-showcase-card.is-visible-animated,
.elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-showcase-card.is-visible { /* Fallback for no JS anim */
  opacity: 1;
  transform: translateY(0);
}

@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-showcase-card:hover {
    box-shadow: 0 10px 35px rgba(0,0,0,0.08);
    transform: translateY(-4px);
    border-color: #cccccc; /* Optional: Darken border slightly on hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-card-image {
  height: 220px; /* Adjust image height as desired */
  background-size: cover;
  background-position: center center; /* Ensure image is centered */
  transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}
@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-showcase-card:hover .ab-event-card-image {
    transform: scale(1.03); /* Subtle zoom on card hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-card-content {
  padding: 25px 30px 30px 30px; /* Generous padding for content */
}

.elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-title {
  font-size: 1.5em; /* Prominent event title */
  font-weight: 700;
  color: #111111;
  margin: 0 0 12px 0;
  line-height: 1.3;
}
.elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-date {
  font-weight: 400;
  font-size: 0.9em;
  color: #555555;
  margin-left: 0.3em;
}

.elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-meta {
  margin-bottom: 18px; /* More space before description */
  font-size: 0.88em;
  color: #666666;
  line-height: 1.6;
  border-bottom: 1px dashed #e8e8e8; /* Separator line */
  padding-bottom: 15px; /* Space below meta before separator */
}
.elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-meta p {
  margin: 0 0 6px 0;
}
.elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-meta-label {
  font-weight: 600;
  color: #333333; /* Darker label for more contrast */
  margin-right: 6px;
}

.elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-description p {
  font-size: 0.92em; /* Readable description */
  line-height: 1.75; /* Good line height */
  color: #383838; /* Main description text color */
  margin: 0;
}
.elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-description p:not(:last-child) {
  margin-bottom: 1em;
}

/* Optional CTA Link styling (if you add it back to HTML) */
.elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-cta-wrapper {
  margin-top: 25px;
}
.elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-cta-link {
  display: inline-block;
  font-size: 0.85em;
  font-weight: 600;
  color: #eac892; /* Accent color */
  text-decoration: none;
  padding-bottom: 2px; /* For underline effect */
  border-bottom: 1.5px solid #eac892;
  transition: color 0.3s ease, border-bottom-color 0.3s ease;
}
.elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-cta-link:hover {
  color: #d3b076; /* Darker accent */
  border-bottom-color: #d3b076;
}
.elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-cta-link span { /* Arrow */
  margin-left: 4px;
  transition: transform 0.2s ease;
}
.elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-cta-link:hover span {
  transform: translateX(3px);
}


/* --- Responsive Adjustments --- */
@media (max-width: 767px) {
  .elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-showcase-section {
    padding: 30px 0;
  }
  .elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-showcase-container {
    padding: 0 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-showcase-card {
    padding: 0; /* Remove card padding, content div will handle */
    margin-bottom: 25px;
    border-color: #e0e0e0; /* Slightly softer border for mobile if desired */
  }
  .elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-card-image {
    height: 180px; /* Shorter image on mobile */
    /* The image itself won't have rounded corners if card padding is 0,
       but overflow:hidden on the card will clip it to the card's radius */
  }
  .elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-card-content {
    padding: 20px 25px 25px 25px; /* Content padding on mobile */
  }

  .elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-title {
    font-size: 1.3em;
    margin-bottom: 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-date {
    font-size: 0.85em;
  }
  .elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-meta {
    font-size: 0.82em;
    margin-bottom: 15px;
    padding-bottom: 12px;
  }
  .elementor-12577 .elementor-element.elementor-element-14be9c3 .ab-event-description p {
    font-size: 0.9em;
    line-height: 1.7;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-56fd952 *//* Ensure Inter font is loaded globally */

.elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-showcase-section {
  font-family: 'Inter', sans-serif;
  color: #2d2d2d;
  /* background-color: #fcfcfc; /* Applied via inline style in HTML */
  /* padding: 40px 0; /* Applied via inline style in HTML */
}

.elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-showcase-container {
  max-width: 750px; /* Adjust as needed for blog post width */
  margin: 0 auto;
  padding: 0 15px; /* Padding for the container */
  box-sizing: border-box;
}

.elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-showcase-card {
  background-color: #ffffff; /* White card */
  border: 1px solid #dddddd; /* NEW: 1px Grey border */
  border-radius: 10px;
  margin-bottom: 35px; /* Space between cards */
  box-shadow: 0 6px 25px rgba(0,0,0,0.05);
  display: flex;
  flex-direction: column;
  overflow: hidden; /* Crucial for clipping image radius */
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out,
              box-shadow 0.3s ease, border-color 0.3s ease; /* Added border-color to transition */
}
.elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-showcase-card.is-visible-animated,
.elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-showcase-card.is-visible { /* Fallback for no JS anim */
  opacity: 1;
  transform: translateY(0);
}

@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-showcase-card:hover {
    box-shadow: 0 10px 35px rgba(0,0,0,0.08);
    transform: translateY(-4px);
    border-color: #cccccc; /* Optional: Darken border slightly on hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-card-image {
  height: 220px; /* Adjust image height as desired */
  background-size: cover;
  background-position: center center; /* Ensure image is centered */
  transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}
@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-showcase-card:hover .ab-event-card-image {
    transform: scale(1.03); /* Subtle zoom on card hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-card-content {
  padding: 25px 30px 30px 30px; /* Generous padding for content */
}

.elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-title {
  font-size: 1.5em; /* Prominent event title */
  font-weight: 700;
  color: #111111;
  margin: 0 0 12px 0;
  line-height: 1.3;
}
.elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-date {
  font-weight: 400;
  font-size: 0.9em;
  color: #555555;
  margin-left: 0.3em;
}

.elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-meta {
  margin-bottom: 18px; /* More space before description */
  font-size: 0.88em;
  color: #666666;
  line-height: 1.6;
  border-bottom: 1px dashed #e8e8e8; /* Separator line */
  padding-bottom: 15px; /* Space below meta before separator */
}
.elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-meta p {
  margin: 0 0 6px 0;
}
.elementor-12577 .elementor-element.elementor-element-56fd952 .ab-meta-label {
  font-weight: 600;
  color: #333333; /* Darker label for more contrast */
  margin-right: 6px;
}

.elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-description p {
  font-size: 0.92em; /* Readable description */
  line-height: 1.75; /* Good line height */
  color: #383838; /* Main description text color */
  margin: 0;
}
.elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-description p:not(:last-child) {
  margin-bottom: 1em;
}

/* Optional CTA Link styling (if you add it back to HTML) */
.elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-cta-wrapper {
  margin-top: 25px;
}
.elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-cta-link {
  display: inline-block;
  font-size: 0.85em;
  font-weight: 600;
  color: #eac892; /* Accent color */
  text-decoration: none;
  padding-bottom: 2px; /* For underline effect */
  border-bottom: 1.5px solid #eac892;
  transition: color 0.3s ease, border-bottom-color 0.3s ease;
}
.elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-cta-link:hover {
  color: #d3b076; /* Darker accent */
  border-bottom-color: #d3b076;
}
.elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-cta-link span { /* Arrow */
  margin-left: 4px;
  transition: transform 0.2s ease;
}
.elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-cta-link:hover span {
  transform: translateX(3px);
}


/* --- Responsive Adjustments --- */
@media (max-width: 767px) {
  .elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-showcase-section {
    padding: 30px 0;
  }
  .elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-showcase-container {
    padding: 0 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-showcase-card {
    padding: 0; /* Remove card padding, content div will handle */
    margin-bottom: 25px;
    border-color: #e0e0e0; /* Slightly softer border for mobile if desired */
  }
  .elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-card-image {
    height: 180px; /* Shorter image on mobile */
    /* The image itself won't have rounded corners if card padding is 0,
       but overflow:hidden on the card will clip it to the card's radius */
  }
  .elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-card-content {
    padding: 20px 25px 25px 25px; /* Content padding on mobile */
  }

  .elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-title {
    font-size: 1.3em;
    margin-bottom: 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-date {
    font-size: 0.85em;
  }
  .elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-meta {
    font-size: 0.82em;
    margin-bottom: 15px;
    padding-bottom: 12px;
  }
  .elementor-12577 .elementor-element.elementor-element-56fd952 .ab-event-description p {
    font-size: 0.9em;
    line-height: 1.7;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-95ce192 *//* Ensure Inter font is loaded globally */

.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-showcase-section {
  font-family: 'Inter', sans-serif;
  color: #2d2d2d;
  /* background-color: #fcfcfc; /* Applied via inline style in HTML */
  /* padding: 40px 0; /* Applied via inline style in HTML */
}

.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-showcase-container {
  max-width: 750px; /* Adjust as needed for blog post width */
  margin: 0 auto;
  padding: 0 15px; /* Padding for the container */
  box-sizing: border-box;
}

.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-showcase-card {
  background-color: #ffffff; /* White card */
  border: 1px solid #dddddd; /* NEW: 1px Grey border */
  border-radius: 10px;
  margin-bottom: 35px; /* Space between cards */
  box-shadow: 0 6px 25px rgba(0,0,0,0.05);
  display: flex;
  flex-direction: column;
  overflow: hidden; /* Crucial for clipping image radius */
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out,
              box-shadow 0.3s ease, border-color 0.3s ease; /* Added border-color to transition */
}
.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-showcase-card.is-visible-animated,
.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-showcase-card.is-visible { /* Fallback for no JS anim */
  opacity: 1;
  transform: translateY(0);
}

@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-showcase-card:hover {
    box-shadow: 0 10px 35px rgba(0,0,0,0.08);
    transform: translateY(-4px);
    border-color: #cccccc; /* Optional: Darken border slightly on hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-card-image {
  height: 220px; /* Adjust image height as desired */
  background-size: cover;
  background-position: center center; /* Ensure image is centered */
  transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}
@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-showcase-card:hover .ab-event-card-image {
    transform: scale(1.03); /* Subtle zoom on card hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-card-content {
  padding: 25px 30px 30px 30px; /* Generous padding for content */
}

.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-title {
  font-size: 1.5em; /* Prominent event title */
  font-weight: 700;
  color: #111111;
  margin: 0 0 12px 0;
  line-height: 1.3;
}
.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-date {
  font-weight: 400;
  font-size: 0.9em;
  color: #555555;
  margin-left: 0.3em;
}

.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-meta {
  margin-bottom: 18px; /* More space before description */
  font-size: 0.88em;
  color: #666666;
  line-height: 1.6;
  border-bottom: 1px dashed #e8e8e8; /* Separator line */
  padding-bottom: 15px; /* Space below meta before separator */
}
.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-meta p {
  margin: 0 0 6px 0;
}
.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-meta-label {
  font-weight: 600;
  color: #333333; /* Darker label for more contrast */
  margin-right: 6px;
}

.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-description p {
  font-size: 0.92em; /* Readable description */
  line-height: 1.75; /* Good line height */
  color: #383838; /* Main description text color */
  margin: 0;
}
.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-description p:not(:last-child) {
  margin-bottom: 1em;
}

/* Optional CTA Link styling (if you add it back to HTML) */
.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-cta-wrapper {
  margin-top: 25px;
}
.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-cta-link {
  display: inline-block;
  font-size: 0.85em;
  font-weight: 600;
  color: #eac892; /* Accent color */
  text-decoration: none;
  padding-bottom: 2px; /* For underline effect */
  border-bottom: 1.5px solid #eac892;
  transition: color 0.3s ease, border-bottom-color 0.3s ease;
}
.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-cta-link:hover {
  color: #d3b076; /* Darker accent */
  border-bottom-color: #d3b076;
}
.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-cta-link span { /* Arrow */
  margin-left: 4px;
  transition: transform 0.2s ease;
}
.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-cta-link:hover span {
  transform: translateX(3px);
}


/* --- Responsive Adjustments --- */
@media (max-width: 767px) {
  .elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-showcase-section {
    padding: 30px 0;
  }
  .elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-showcase-container {
    padding: 0 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-showcase-card {
    padding: 0; /* Remove card padding, content div will handle */
    margin-bottom: 25px;
    border-color: #e0e0e0; /* Slightly softer border for mobile if desired */
  }
  .elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-card-image {
    height: 180px; /* Shorter image on mobile */
    /* The image itself won't have rounded corners if card padding is 0,
       but overflow:hidden on the card will clip it to the card's radius */
  }
  .elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-card-content {
    padding: 20px 25px 25px 25px; /* Content padding on mobile */
  }

  .elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-title {
    font-size: 1.3em;
    margin-bottom: 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-date {
    font-size: 0.85em;
  }
  .elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-meta {
    font-size: 0.82em;
    margin-bottom: 15px;
    padding-bottom: 12px;
  }
  .elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-description p {
    font-size: 0.9em;
    line-height: 1.7;
  }
}

/* Add these to your existing CSS if you want to style the custom experience tag */
.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-custom-experience-tag {
  margin-top: 8px !important; /* Ensure it has space */
  /* border-top: 1px dotted #eac892; */ /* Optional separator */
  /* padding-top: 8px; */
}
.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-custom-experience-tag .ab-meta-label {
  color: #c79a54; /* Slightly different gold for this label */
  font-weight: 600;
}
.elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-showcase-card.ab-custom-experience-card {
  border-left-color: #c79a54; /* Make the main accent border a different gold */
  /* You could add other distinguishing features */
}
@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-95ce192 .ab-event-showcase-card.ab-custom-experience-card:hover {
    border-left-color: #b28947;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a50da1f *//* Ensure Inter font is loaded globally */

.elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-showcase-section {
  font-family: 'Inter', sans-serif;
  color: #2d2d2d;
  /* background-color: #fcfcfc; /* Applied via inline style in HTML */
  /* padding: 40px 0; /* Applied via inline style in HTML */
}

.elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-showcase-container {
  max-width: 750px; /* Adjust as needed for blog post width */
  margin: 0 auto;
  padding: 0 15px; /* Padding for the container */
  box-sizing: border-box;
}

.elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-showcase-card {
  background-color: #ffffff; /* White card */
  border: 1px solid #dddddd; /* NEW: 1px Grey border */
  border-radius: 10px;
  margin-bottom: 35px; /* Space between cards */
  box-shadow: 0 6px 25px rgba(0,0,0,0.05);
  display: flex;
  flex-direction: column;
  overflow: hidden; /* Crucial for clipping image radius */
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out,
              box-shadow 0.3s ease, border-color 0.3s ease; /* Added border-color to transition */
}
.elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-showcase-card.is-visible-animated,
.elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-showcase-card.is-visible { /* Fallback for no JS anim */
  opacity: 1;
  transform: translateY(0);
}

@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-showcase-card:hover {
    box-shadow: 0 10px 35px rgba(0,0,0,0.08);
    transform: translateY(-4px);
    border-color: #cccccc; /* Optional: Darken border slightly on hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-card-image {
  height: 220px; /* Adjust image height as desired */
  background-size: cover;
  background-position: center center; /* Ensure image is centered */
  transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}
@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-showcase-card:hover .ab-event-card-image {
    transform: scale(1.03); /* Subtle zoom on card hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-card-content {
  padding: 25px 30px 30px 30px; /* Generous padding for content */
}

.elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-title {
  font-size: 1.5em; /* Prominent event title */
  font-weight: 700;
  color: #111111;
  margin: 0 0 12px 0;
  line-height: 1.3;
}
.elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-date {
  font-weight: 400;
  font-size: 0.9em;
  color: #555555;
  margin-left: 0.3em;
}

.elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-meta {
  margin-bottom: 18px; /* More space before description */
  font-size: 0.88em;
  color: #666666;
  line-height: 1.6;
  border-bottom: 1px dashed #e8e8e8; /* Separator line */
  padding-bottom: 15px; /* Space below meta before separator */
}
.elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-meta p {
  margin: 0 0 6px 0;
}
.elementor-12577 .elementor-element.elementor-element-a50da1f .ab-meta-label {
  font-weight: 600;
  color: #333333; /* Darker label for more contrast */
  margin-right: 6px;
}

.elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-description p {
  font-size: 0.92em; /* Readable description */
  line-height: 1.75; /* Good line height */
  color: #383838; /* Main description text color */
  margin: 0;
}
.elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-description p:not(:last-child) {
  margin-bottom: 1em;
}

/* Optional CTA Link styling (if you add it back to HTML) */
.elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-cta-wrapper {
  margin-top: 25px;
}
.elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-cta-link {
  display: inline-block;
  font-size: 0.85em;
  font-weight: 600;
  color: #eac892; /* Accent color */
  text-decoration: none;
  padding-bottom: 2px; /* For underline effect */
  border-bottom: 1.5px solid #eac892;
  transition: color 0.3s ease, border-bottom-color 0.3s ease;
}
.elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-cta-link:hover {
  color: #d3b076; /* Darker accent */
  border-bottom-color: #d3b076;
}
.elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-cta-link span { /* Arrow */
  margin-left: 4px;
  transition: transform 0.2s ease;
}
.elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-cta-link:hover span {
  transform: translateX(3px);
}


/* --- Responsive Adjustments --- */
@media (max-width: 767px) {
  .elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-showcase-section {
    padding: 30px 0;
  }
  .elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-showcase-container {
    padding: 0 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-showcase-card {
    padding: 0; /* Remove card padding, content div will handle */
    margin-bottom: 25px;
    border-color: #e0e0e0; /* Slightly softer border for mobile if desired */
  }
  .elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-card-image {
    height: 180px; /* Shorter image on mobile */
    /* The image itself won't have rounded corners if card padding is 0,
       but overflow:hidden on the card will clip it to the card's radius */
  }
  .elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-card-content {
    padding: 20px 25px 25px 25px; /* Content padding on mobile */
  }

  .elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-title {
    font-size: 1.3em;
    margin-bottom: 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-date {
    font-size: 0.85em;
  }
  .elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-meta {
    font-size: 0.82em;
    margin-bottom: 15px;
    padding-bottom: 12px;
  }
  .elementor-12577 .elementor-element.elementor-element-a50da1f .ab-event-description p {
    font-size: 0.9em;
    line-height: 1.7;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-34165cf *//* Ensure Inter font is loaded globally */

.elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-showcase-section {
  font-family: 'Inter', sans-serif;
  color: #2d2d2d;
  /* background-color: #fcfcfc; /* Applied via inline style in HTML */
  /* padding: 40px 0; /* Applied via inline style in HTML */
}

.elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-showcase-container {
  max-width: 750px; /* Adjust as needed for blog post width */
  margin: 0 auto;
  padding: 0 15px; /* Padding for the container */
  box-sizing: border-box;
}

.elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-showcase-card {
  background-color: #ffffff; /* White card */
  border: 1px solid #dddddd; /* NEW: 1px Grey border */
  border-radius: 10px;
  margin-bottom: 35px; /* Space between cards */
  box-shadow: 0 6px 25px rgba(0,0,0,0.05);
  display: flex;
  flex-direction: column;
  overflow: hidden; /* Crucial for clipping image radius */
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out,
              box-shadow 0.3s ease, border-color 0.3s ease; /* Added border-color to transition */
}
.elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-showcase-card.is-visible-animated,
.elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-showcase-card.is-visible { /* Fallback for no JS anim */
  opacity: 1;
  transform: translateY(0);
}

@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-showcase-card:hover {
    box-shadow: 0 10px 35px rgba(0,0,0,0.08);
    transform: translateY(-4px);
    border-color: #cccccc; /* Optional: Darken border slightly on hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-card-image {
  height: 220px; /* Adjust image height as desired */
  background-size: cover;
  background-position: center center; /* Ensure image is centered */
  transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}
@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-showcase-card:hover .ab-event-card-image {
    transform: scale(1.03); /* Subtle zoom on card hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-card-content {
  padding: 25px 30px 30px 30px; /* Generous padding for content */
}

.elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-title {
  font-size: 1.5em; /* Prominent event title */
  font-weight: 700;
  color: #111111;
  margin: 0 0 12px 0;
  line-height: 1.3;
}
.elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-date {
  font-weight: 400;
  font-size: 0.9em;
  color: #555555;
  margin-left: 0.3em;
}

.elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-meta {
  margin-bottom: 18px; /* More space before description */
  font-size: 0.88em;
  color: #666666;
  line-height: 1.6;
  border-bottom: 1px dashed #e8e8e8; /* Separator line */
  padding-bottom: 15px; /* Space below meta before separator */
}
.elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-meta p {
  margin: 0 0 6px 0;
}
.elementor-12577 .elementor-element.elementor-element-34165cf .ab-meta-label {
  font-weight: 600;
  color: #333333; /* Darker label for more contrast */
  margin-right: 6px;
}

.elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-description p {
  font-size: 0.92em; /* Readable description */
  line-height: 1.75; /* Good line height */
  color: #383838; /* Main description text color */
  margin: 0;
}
.elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-description p:not(:last-child) {
  margin-bottom: 1em;
}

/* Optional CTA Link styling (if you add it back to HTML) */
.elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-cta-wrapper {
  margin-top: 25px;
}
.elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-cta-link {
  display: inline-block;
  font-size: 0.85em;
  font-weight: 600;
  color: #eac892; /* Accent color */
  text-decoration: none;
  padding-bottom: 2px; /* For underline effect */
  border-bottom: 1.5px solid #eac892;
  transition: color 0.3s ease, border-bottom-color 0.3s ease;
}
.elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-cta-link:hover {
  color: #d3b076; /* Darker accent */
  border-bottom-color: #d3b076;
}
.elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-cta-link span { /* Arrow */
  margin-left: 4px;
  transition: transform 0.2s ease;
}
.elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-cta-link:hover span {
  transform: translateX(3px);
}


/* --- Responsive Adjustments --- */
@media (max-width: 767px) {
  .elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-showcase-section {
    padding: 30px 0;
  }
  .elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-showcase-container {
    padding: 0 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-showcase-card {
    padding: 0; /* Remove card padding, content div will handle */
    margin-bottom: 25px;
    border-color: #e0e0e0; /* Slightly softer border for mobile if desired */
  }
  .elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-card-image {
    height: 180px; /* Shorter image on mobile */
    /* The image itself won't have rounded corners if card padding is 0,
       but overflow:hidden on the card will clip it to the card's radius */
  }
  .elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-card-content {
    padding: 20px 25px 25px 25px; /* Content padding on mobile */
  }

  .elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-title {
    font-size: 1.3em;
    margin-bottom: 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-date {
    font-size: 0.85em;
  }
  .elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-meta {
    font-size: 0.82em;
    margin-bottom: 15px;
    padding-bottom: 12px;
  }
  .elementor-12577 .elementor-element.elementor-element-34165cf .ab-event-description p {
    font-size: 0.9em;
    line-height: 1.7;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-516e7b4 *//* Ensure Inter font is loaded globally */

.elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-showcase-section {
  font-family: 'Inter', sans-serif;
  color: #2d2d2d;
  /* background-color: #fcfcfc; /* Applied via inline style in HTML */
  /* padding: 40px 0; /* Applied via inline style in HTML */
}

.elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-showcase-container {
  max-width: 750px; /* Adjust as needed for blog post width */
  margin: 0 auto;
  padding: 0 15px; /* Padding for the container */
  box-sizing: border-box;
}

.elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-showcase-card {
  background-color: #ffffff; /* White card */
  border: 1px solid #dddddd; /* NEW: 1px Grey border */
  border-radius: 10px;
  margin-bottom: 35px; /* Space between cards */
  box-shadow: 0 6px 25px rgba(0,0,0,0.05);
  display: flex;
  flex-direction: column;
  overflow: hidden; /* Crucial for clipping image radius */
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out,
              box-shadow 0.3s ease, border-color 0.3s ease; /* Added border-color to transition */
}
.elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-showcase-card.is-visible-animated,
.elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-showcase-card.is-visible { /* Fallback for no JS anim */
  opacity: 1;
  transform: translateY(0);
}

@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-showcase-card:hover {
    box-shadow: 0 10px 35px rgba(0,0,0,0.08);
    transform: translateY(-4px);
    border-color: #cccccc; /* Optional: Darken border slightly on hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-card-image {
  height: 220px; /* Adjust image height as desired */
  background-size: cover;
  background-position: center center; /* Ensure image is centered */
  transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}
@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-showcase-card:hover .ab-event-card-image {
    transform: scale(1.03); /* Subtle zoom on card hover */
  }
}

.elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-card-content {
  padding: 25px 30px 30px 30px; /* Generous padding for content */
}

.elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-title {
  font-size: 1.5em; /* Prominent event title */
  font-weight: 700;
  color: #111111;
  margin: 0 0 12px 0;
  line-height: 1.3;
}
.elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-date {
  font-weight: 400;
  font-size: 0.9em;
  color: #555555;
  margin-left: 0.3em;
}

.elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-meta {
  margin-bottom: 18px; /* More space before description */
  font-size: 0.88em;
  color: #666666;
  line-height: 1.6;
  border-bottom: 1px dashed #e8e8e8; /* Separator line */
  padding-bottom: 15px; /* Space below meta before separator */
}
.elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-meta p {
  margin: 0 0 6px 0;
}
.elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-meta-label {
  font-weight: 600;
  color: #333333; /* Darker label for more contrast */
  margin-right: 6px;
}

.elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-description p {
  font-size: 0.92em; /* Readable description */
  line-height: 1.75; /* Good line height */
  color: #383838; /* Main description text color */
  margin: 0;
}
.elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-description p:not(:last-child) {
  margin-bottom: 1em;
}

/* Optional CTA Link styling (if you add it back to HTML) */
.elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-cta-wrapper {
  margin-top: 25px;
}
.elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-cta-link {
  display: inline-block;
  font-size: 0.85em;
  font-weight: 600;
  color: #eac892; /* Accent color */
  text-decoration: none;
  padding-bottom: 2px; /* For underline effect */
  border-bottom: 1.5px solid #eac892;
  transition: color 0.3s ease, border-bottom-color 0.3s ease;
}
.elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-cta-link:hover {
  color: #d3b076; /* Darker accent */
  border-bottom-color: #d3b076;
}
.elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-cta-link span { /* Arrow */
  margin-left: 4px;
  transition: transform 0.2s ease;
}
.elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-cta-link:hover span {
  transform: translateX(3px);
}


/* --- Responsive Adjustments --- */
@media (max-width: 767px) {
  .elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-showcase-section {
    padding: 30px 0;
  }
  .elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-showcase-container {
    padding: 0 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-showcase-card {
    padding: 0; /* Remove card padding, content div will handle */
    margin-bottom: 25px;
    border-color: #e0e0e0; /* Slightly softer border for mobile if desired */
  }
  .elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-card-image {
    height: 180px; /* Shorter image on mobile */
    /* The image itself won't have rounded corners if card padding is 0,
       but overflow:hidden on the card will clip it to the card's radius */
  }
  .elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-card-content {
    padding: 20px 25px 25px 25px; /* Content padding on mobile */
  }

  .elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-title {
    font-size: 1.3em;
    margin-bottom: 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-date {
    font-size: 0.85em;
  }
  .elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-meta {
    font-size: 0.82em;
    margin-bottom: 15px;
    padding-bottom: 12px;
  }
  .elementor-12577 .elementor-element.elementor-element-516e7b4 .ab-event-description p {
    font-size: 0.9em;
    line-height: 1.7;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-1a5099a *//* --- Complete CSS for June Events Summary Table --- */
/* Ensure Inter font is loaded globally */

.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-summary-table-section {
  font-family: 'Inter', sans-serif;
  padding: 80px 0;
  color: #1f1f1f;
  /* background-color: #fcfcfc; /* Applied via inline HTML */
}

.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-summary-table-container {
  max-width: 1000px; /* Adjust for optimal table width */
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}

.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-summary-main-title {
  font-size: clamp(2em, 4.5vw, 3em);
  font-weight: 700;
  text-align: center;
  margin-bottom: 40px;
  color: #000000;
  letter-spacing: -0.5px;
  line-height: 1.2;
}
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-summary-main-title .thin-title-part {
  font-weight: 300;
  color: #333333;
  display: block;
  font-size: 0.75em;
  margin-top: 5px;
}

/* --- Base Vantage Table Styles (Ensure these are present from previous examples or include them) --- */
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table {
  width: 100%;
  display: flex;
  flex-direction: column;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 15px rgba(0,0,0,0.04);
  background-color: #ffffff;
}
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table-header {
  display: flex;
  background-color: #f8f9fa;
  border-bottom: 2px solid #d8d8d8;
}
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-th {
  font-size: 0.65em; /* Smaller header text for summary table */
  font-weight: 600;
  color: #222;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  padding: 10px 12px; /* Tighter padding for summary headers */
  text-align: left;
  flex-grow: 1; flex-shrink: 1;
  border-right: 1px solid #f0f0f0;
}
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-th:last-child { border-right: none; }

.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table-row {
  display: flex;
  border-bottom: 1px solid #f0f0f0;
  transition: background-color 0.2s ease;
  opacity: 0; transform: translateY(10px);
}
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table-row.is-visible { opacity: 1; transform: translateY(0); }
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table-row:last-child { border-bottom: none; }

@media (hover: hover) and (min-width: 768px) {
  .elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table-row:hover { background-color: #f5f8fc; }
}

.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-td {
  padding: 12px 12px; /* Tighter padding for summary data */
  font-size: 0.85em; /* Smaller base font for summary data */
  line-height: 1.5;
  color: #333;
  text-align: left;
  flex-grow: 1; flex-shrink: 1;
  overflow-wrap: break-word; word-wrap: break-word;
  border-right: 1px solid #f0f0f0;
  vertical-align: top;
}
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-td:last-child { border-right: none; }
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-td strong { font-weight: 600; color: #000000; }
/* --- End Base Vantage Table Styles --- */


/* --- Column Widths Specific to summary-event-table --- */
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table.summary-event-table .ab-vantage-th.event-name,
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table.summary-event-table .ab-vantage-td.event-name {
  flex-grow: 1; flex-shrink: 0; flex-basis: 30%;
  min-width: 180px; /* Allow more space for event names */
}
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table.summary-event-table .ab-vantage-th.event-dates,
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table.summary-event-table .ab-vantage-td.event-dates {
  flex-grow: 0; flex-shrink: 0; flex-basis: 20%;
  min-width: 120px;
}
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table.summary-event-table .ab-vantage-th.event-location,
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table.summary-event-table .ab-vantage-td.event-location {
  flex-grow: 1; flex-shrink: 0; flex-basis: 20%;
  min-width: 140px;
}
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table.summary-event-table .ab-vantage-th.event-details-col,
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table.summary-event-table .ab-vantage-td.event-details-col {
  flex-grow: 1; flex-shrink: 0; flex-basis: 30%;
  min-width: 180px;
}

/* --- CTA Below Table --- */
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-summary-table-cta-wrapper {
  text-align: center;
  margin-top: 40px;
  padding-top: 20px;
  border-top: 1px solid #e8e8e8; /* Separator above CTA */
}
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-summary-table-cta-wrapper p {
  font-size: 0.95em;
  color: #444;
  margin-bottom: 20px;
  line-height: 1.6;
}
/* Reusing .ab-gold-cta-button styles (ensure these are defined globally or copy here) */
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-gold-cta-button {
  display: inline-block;
  background-color: #eac892;
  color: #ffffff;
  font-family: 'Inter', sans-serif;
  font-size: 1em;
  font-weight: 600;
  padding: 14px 30px;
  text-decoration: none;
  border-radius: 6px;
  border: 1px solid transparent;
  transition: background-color 0.3s ease, transform 0.2s ease, box-shadow 0.3s ease;
  box-shadow: 0 4px 10px rgba(234, 200, 146, 0.3);
  outline: none;
}
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-gold-cta-button:focus-visible {
  outline: 3px solid #ad8a59; outline-offset: 2px;
}
.elementor-12577 .elementor-element.elementor-element-1a5099a .ab-gold-cta-button:focus { /* Fallback */
  outline: 3px solid #ad8a59; outline-offset: 2px;
}
@media (hover: hover) {
  .elementor-12577 .elementor-element.elementor-element-1a5099a .ab-gold-cta-button:hover {
    background-color: #d3b076;
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(234, 200, 146, 0.4);
  }
}

/* --- Mobile Responsive Adjustments --- */
@media (max-width: 767px) {
  .elementor-12577 .elementor-element.elementor-element-1a5099a .ab-summary-main-title {
    font-size: clamp(1.6em, 5vw, 2em);
    margin-bottom: 30px;
  }

  /* Hide traditional header on mobile for stacked view */
  .elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table .ab-vantage-table-header {
    display: none;
  }

  /* Each row becomes a card */
  .elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table .ab-vantage-table-row {
    flex-direction: column;
    margin-bottom: 15px;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.03);
    background-color: #ffffff;
    padding: 0;
  }
  .elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table .ab-vantage-table-row:last-of-type { margin-bottom: 0; }
  .elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table.summary-event-table { /* Table itself becomes transparent if rows are cards */
      border: none; box-shadow: none; background-color: transparent; border-radius: 0;
      min-width: 0; /* Allow table to shrink fully */
  }

  .elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table .ab-vantage-td {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 10px 15px;
    border-right: none;
    border-bottom: 1px dotted #eeeeee;
    width: 100% !important;
    box-sizing: border-box;
    flex-basis: auto !important;
    min-width: 0 !important;
    font-size: 0.82em; /* Smaller text for stacked items */
  }
  .elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table .ab-vantage-table-row .ab-vantage-td:last-child {
    border-bottom: none;
  }

  .elementor-12577 .elementor-element.elementor-element-1a5099a .ab-vantage-table .ab-vantage-td::before {
    content: attr(data-label);
    font-weight: 600;
    color: #111;
    font-size: 0.75em; /* Smaller labels */
    text-transform: uppercase;
    letter-spacing: 0.3px;
    margin-right: 10px;
    flex-shrink: 0;
    width: 35%; /* Adjust label width */
    padding-top: 1px;
    white-space: normal; /* Allow labels to wrap */
  }

  .elementor-12577 .elementor-element.elementor-element-1a5099a .ab-summary-table-cta-wrapper {
    margin-top: 30px;
    padding-top: 15px;
  }
  .elementor-12577 .elementor-element.elementor-element-1a5099a .ab-summary-table-cta-wrapper p {
    font-size: 0.9em;
    margin-bottom: 15px;
  }
  .elementor-12577 .elementor-element.elementor-element-1a5099a .ab-gold-cta-button {
    font-size: 0.95em;
    padding: 12px 25px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7957fdf *//* Ensure Inter font is loaded globally */

/* --- Styles for Grouped FAQ Section --- */

.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-grouped-faq-section {
  font-family: 'Inter', sans-serif;
  padding: 80px 0;
  color: #222222;
  /* background-color: #fcfcfc; /* Applied via inline style */
}

.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-grouped-faq-container {
  max-width: 850px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}

/* Main Title for the entire FAQ block (reusing .ab-faq-main-title from previous FAQ if desired) */
.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-grouped-faq-main-title { /* Or just use .ab-faq-main-title if styles are identical */
  font-size: clamp(2em, 4.5vw, 3em);
  font-weight: 700;
  text-align: center;
  margin-bottom: 15px;
  color: #000000;
  letter-spacing: -0.5px;
  line-height: 1.2;
}
.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-grouped-faq-main-title .thin-title-part { /* Reusable */
  font-weight: 300;
  color: #444444;
  display: block;
  font-size: 0.8em;
  margin-top: 5px;
}
.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-grouped-faq-intro { /* Reusable */
  text-align: center;
  font-size: 1.05em;
  color: #555555;
  max-width: 700px; /* Wider for grouped intro */
  margin: 0 auto 50px auto;
  line-height: 1.6;
}

/* Styling for each event group */
.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-event-group {
  margin-bottom: 50px; /* Space between event FAQ sections */
}
.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-event-group:last-of-type {
  margin-bottom: 0; /* No bottom margin on the last group before footer note */
}

.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-event-title {
  font-size: 1.6em; /* Title for each event (Epsom Derby, etc.) */
  font-weight: 600; /* Semibold */
  color: #111111;
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 2px solid #eac892; /* Accent color border */
  display: inline-block; /* Border only spans text width */
}


/* --- CORE ACCORDION STYLES --- */
/* (These are from the previous FAQ. Ensure they are present.
   If you used different top-level classes like .ab-faq-insights-section,
   ensure these rules target .ab-faq-accordion and its children correctly.)
*/
.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-accordion {
  /* No outer border for accordion itself, items define borders */
}

.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-item {
  border-bottom: 1px solid #e8e8e8;
  opacity: 1;
  transform: none;
}
.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-accordion .ab-faq-item:first-child { /* Specific to items within an accordion */
    border-top: 1px solid #e8e8e8;
}
.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-item.is-statically-visible {
    opacity: 1;
    transform: translateY(0);
}

.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-trigger {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 20px 0; /* Slightly less padding for grouped items */
  background-color: transparent;
  border: none;
  cursor: pointer;
  text-align: left;
  font-family: inherit;
  transition: color 0.3s ease;
  outline: none;
}
.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-trigger:focus-visible {
  outline: 2px solid #eac892;
  outline-offset: 2px;
}
.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-trigger:focus {
  outline: 2px solid #eac892;
  outline-offset: 2px;
}

@media (hover: hover) {
  .elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-trigger:hover .ab-faq-question {
    color: #eac892;
  }
}

.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-question {
  font-size: 1.05em; /* Adjusted for grouped context */
  font-weight: 500;
  color: #181818;
  line-height: 1.45;
  padding-right: 20px;
  transition: color 0.3s ease;
}

.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-item.is-open .ab-faq-question {
  color: #eac892;
  font-weight: 600;
}

.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-icon {
  width: 9px; /* Slightly smaller icon */
  height: 9px;
  border-right: 2px solid #888888;
  border-bottom: 2px solid #888888;
  transform: rotate(45deg);
  transition: transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1), border-color 0.3s ease;
  flex-shrink: 0;
  margin-left: 15px;
}

.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-item.is-open .ab-faq-icon {
  transform: translateY(2px) rotate(-135deg);
  border-color: #eac892;
}

.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-answer-panel {
  padding: 0;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.45s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-answer-content {
  padding: 5px 0 20px 0; /* Reduced bottom padding */
}

.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-answer-content p {
  margin: 0;
  font-size: 0.92em;
  line-height: 1.7;
  color: #444444;
}
.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-answer-content p:not(:last-child) {
  margin-bottom: 0.8em;
}

.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-answer-content ul {
  list-style: disc;
  padding-left: 25px;
  margin-top: 0.8em;
  margin-bottom: 0.5em;
}
.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-answer-content li {
  margin-bottom: 0.4em;
  font-size: 0.98em; /* Relative to p */
  color: #444444;
  line-height: 1.6;
}

/* Footer Note Styling */
.elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-footer-note {
  text-align: center;
  font-size: 0.85em;
  color: #777777;
  margin-top: 60px; /* More space above footer note */
  padding: 0 15px;
  font-style: italic;
  line-height: 1.6;
}


/* --- Responsive Adjustments for Grouped FAQ --- */
@media (max-width: 767px) {
  .elementor-12577 .elementor-element.elementor-element-7957fdf .ab-grouped-faq-section {
    padding: 50px 0;
  }
  .elementor-12577 .elementor-element.elementor-element-7957fdf .ab-grouped-faq-main-title {
    font-size: clamp(1.6em, 5vw, 2em);
    margin-bottom: 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-7957fdf .ab-grouped-faq-intro {
    font-size: 0.95em;
    margin-bottom: 30px;
  }

  .elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-event-group {
    margin-bottom: 40px;
  }
  .elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-event-title {
    font-size: 1.35em; /* Smaller event group title */
    margin-bottom: 15px;
    padding-bottom: 8px;
  }

  .elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-trigger {
    padding: 16px 0;
  }
  .elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-question {
    font-size: 0.95em;
    padding-right: 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-icon {
    width: 8px;
    height: 8px;
    margin-left: 10px;
  }
  .elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-answer-content {
    padding: 5px 0 18px 0;
  }
  .elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-answer-content p,
  .elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-answer-content li {
    font-size: 0.88em;
    line-height: 1.65;
  }
  .elementor-12577 .elementor-element.elementor-element-7957fdf .ab-faq-footer-note {
    font-size: 0.8em;
    margin-top: 40px;
  }
}/* End custom CSS */