/* Altares Core Events - Front cards V1.1.0 */
/* Goal: match the reference webinar cards as closely as possible. */

.ac-events-page,
.ac-events-page *{
  box-sizing:border-box !important;
}

.ac-events-page{
  width:100% !important;
  max-width:1290px !important;
  margin:0 auto !important;
  padding:70px 20px 80px !important;
  font-family:inherit !important;
  background:transparent !important;
}

/* Optional filters: minimal, clean, not visually heavy */
.ac-events-filterbar{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  justify-content:center !important;
  gap:12px !important;
  margin:0 auto 54px !important;
}
.ac-events-filterbar a{
  appearance:none !important;
  -webkit-appearance:none !important;
  border:1px solid #202029 !important;
  background:#ffffff !important;
  color:#202029 !important;
  border-radius:999px !important;
  padding:13px 26px !important;
  min-height:44px !important;
  font-size:15px !important;
  line-height:1 !important;
  font-weight:500 !important;
  letter-spacing:.02em !important;
  cursor:pointer !important;
  text-decoration:none !important;
  box-shadow:none !important;
  transition:all .18s ease !important;
}
.ac-events-filterbar a:hover,
.ac-events-filterbar a.is-active{
  background:#45c7c9 !important;
  border-color:#45c7c9 !important;
  color:#ffffff !important;
}

.ac-events-section{
  margin:0 0 78px !important;
}

.ac-events-heading{
  max-width:1250px !important;
  margin:0 auto 28px !important;
}
.ac-events-heading p{
  margin:0 0 8px !important;
  color:#ff3d15 !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  letter-spacing:.11em !important;
  font-size:12px !important;
  line-height:1.2 !important;
}
.ac-events-heading h2{
  margin:0 !important;
  color:#202029 !important;
  font-size:34px !important;
  line-height:1.08 !important;
  font-weight:500 !important;
  letter-spacing:-.035em !important;
}

.ac-events-grid{
  width:100% !important;
  max-width:1250px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:repeat(3, 1fr) !important;
  gap:36px !important;
  align-items:stretch !important;
}

.ac-event-card{
  width:100% !important;
  min-width:0 !important;
  min-height:625px !important;
  background:#ffffff !important;
  border:0 !important;
  border-radius:0 !important;
  overflow:hidden !important;
  box-shadow:0 18px 45px rgba(0,0,0,.10) !important;
  display:flex !important;
  flex-direction:column !important;
  transition:transform .22s ease, box-shadow .22s ease !important;
}
.ac-event-card:hover{
  transform:translateY(-8px) !important;
  box-shadow:0 30px 70px rgba(0,0,0,.16) !important;
}

.ac-event-image{
  display:block !important;
  position:relative !important;
  width:100% !important;
  height:240px !important;
  min-height:240px !important;
  background:#eef3f5 !important;
  overflow:hidden !important;
  text-decoration:none !important;
}
.ac-event-image img{
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center !important;
  transform:scale(1) !important;
  transition:transform .45s ease !important;
}
.ac-event-card:hover .ac-event-image img{
  transform:scale(1.045) !important;
}
.ac-event-placeholder{
  width:100% !important;
  height:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:#ffffff !important;
  background:linear-gradient(135deg,#075e6f,#45c7c9) !important;
  font-weight:700 !important;
  font-size:24px !important;
}

/* Badge EXACT reference style */
.ac-events-page .ac-event-card .ac-event-image .ac-event-badge,
.ac-events-page .ac-event-badge{
  position:absolute !important;
  top:18px !important;
  right:20px !important;
  z-index:5 !important;
  width:110px !important;
  min-width:110px !important;
  height:40px !important;
  min-height:40px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#45c7c9 !important;
  background-color:#45c7c9 !important;
  color:#ffffff !important;
  border:0 !important;
  border-radius:4px !important;
  padding:0 12px !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  letter-spacing:.18em !important;
  box-shadow:none !important;
  text-align:center !important;
}

.ac-event-content{
  height:calc(100% - 240px) !important;
  padding:30px 24px 32px !important;
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  gap:0 !important;
  background:#ffffff !important;
}
.ac-event-date{
  display:block !important;
  margin:0 0 24px !important;
  color:#ff3d15 !important;
  font-size:15px !important;
  line-height:1.35 !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}
.ac-event-content h3{
  margin:0 0 24px !important;
  padding:0 !important;
  color:#202029 !important;
  font-size:25px !important;
  line-height:1.12 !important;
  font-weight:500 !important;
  letter-spacing:-.035em !important;
  text-transform:none !important;
}
.ac-event-content h3 a{
  color:#202029 !important;
  text-decoration:none !important;
}
.ac-event-content h3 a:hover{
  color:#202029 !important;
  text-decoration:none !important;
}
.ac-event-meta{
  display:none !important;
}
.ac-event-content p{
  margin:0 0 28px !important;
  padding:0 !important;
  color:#555760 !important;
  font-size:15px !important;
  line-height:1.45 !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
}

/* Button EXACT reference: white, black outline, pill, full width */
.ac-events-page .ac-event-card .ac-event-button,
.ac-event-button{
  margin-top:auto !important;
  width:100% !important;
  min-height:46px !important;
  height:46px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#202029 !important;
  border:1.4px solid #202029 !important;
  border-radius:999px !important;
  padding:0 22px !important;
  text-decoration:none !important;
  font-size:15px !important;
  line-height:1 !important;
  font-weight:500 !important;
  letter-spacing:.08em !important;
  box-shadow:none !important;
  text-transform:none !important;
  transition:background-color .2s ease, color .2s ease, transform .2s ease !important;
}
.ac-events-page .ac-event-card .ac-event-button:hover,
.ac-event-button:hover{
  background:#202029 !important;
  background-color:#202029 !important;
  color:#ffffff !important;
  border-color:#202029 !important;
  text-decoration:none !important;
}

.ac-events-empty{
  width:100% !important;
  max-width:1250px !important;
  margin:0 auto !important;
  background:#ffffff !important;
  border:0 !important;
  border-radius:8px !important;
  padding:18px 20px !important;
  color:#526170 !important;
  box-shadow:0 10px 25px rgba(17,31,48,.05) !important;
}

@media(max-width:1100px){
  .ac-events-page{max-width:920px !important;}
  .ac-events-grid{grid-template-columns:repeat(2,1fr) !important;}
}
@media(max-width:720px){
  .ac-events-page{padding:40px 18px 56px !important;}
  .ac-events-filterbar{justify-content:flex-start !important;margin-bottom:34px !important;}
  .ac-events-grid{grid-template-columns:1fr !important;gap:28px !important;}
  .ac-events-heading h2{font-size:30px !important;}
  .ac-event-card{min-height:0 !important;}
  .ac-event-image{height:217px !important;min-height:217px !important;}
  .ac-event-content{height:auto !important;padding:28px 20px 30px !important;}
  .ac-event-content h3{font-size:24px !important;}
}


.ac-events-pagination{
  width:100% !important;
  max-width:1250px !important;
  margin:36px auto 0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:12px !important;
}
.ac-events-pagination a{
  width:46px !important;
  height:46px !important;
  border:0 !important;
  border-radius:8px !important;
  background:#ffffff !important;
  color:#202029 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:15px !important;
  line-height:1 !important;
  font-weight:700 !important;
  text-decoration:none !important;
  box-shadow:0 10px 24px rgba(17,31,48,.09) !important;
  transition:all .18s ease !important;
}
.ac-events-pagination a:hover{
  transform:translateY(-2px) !important;
  background:#f7fbfb !important;
  color:#202029 !important;
}
.ac-events-pagination a.is-active{
  background:#45c7c9 !important;
  border-color:#45c7c9 !important;
  color:#ffffff !important;
  box-shadow:0 14px 28px rgba(69,199,201,.26) !important;
}
.ac-events-pagination a.ac-page-arrow{
  font-size:20px !important;
  font-weight:700 !important;
}
.ac-events-pagination a.is-disabled{
  opacity:.35 !important;
  pointer-events:none !important;
  transform:none !important;
}


/* Altares Events - Soft hover adjustment */
.altares-events-grid .altares-event-card,
.altares-event-card,
.altares-event-item,
.ae-card,
.ae-event-card {
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .055) !important;
}

.altares-events-grid .altares-event-card:hover,
.altares-event-card:hover,
.altares-event-item:hover,
.ae-card:hover,
.ae-event-card:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .075) !important;
}

.altares-events-grid .altares-event-card img,
.altares-event-card img,
.altares-event-item img,
.ae-card img,
.ae-event-card img {
    transition: transform .18s ease, opacity .18s ease !important;
}

.altares-events-grid .altares-event-card:hover img,
.altares-event-card:hover img,
.altares-event-item:hover img,
.ae-card:hover img,
.ae-event-card:hover img {
    transform: scale(1.01) !important;
}



/* Altares Events V1.2.0 - production filter cleanup */
.ac-events-filterbar a[data-ac-filter="conference"],
.ac-events-filterbar a[data-ac-filter="dejeuner"],
.ac-events-filterbar a[data-ac-filter="petit-dejeuner"]{
  display:none !important;
}


/* Altares Events - AJAX no reload filters */
.ac-events-results{
  position:relative !important;
  transition:opacity .18s ease !important;
}
.ac-events-results.is-loading{
  opacity:.45 !important;
  pointer-events:none !important;
}
.ac-events-results.is-loading:after{
  content:"" !important;
  position:absolute !important;
  top:18px !important;
  right:18px !important;
  width:24px !important;
  height:24px !important;
  border-radius:999px !important;
  border:2px solid rgba(69,199,201,.25) !important;
  border-top-color:#45c7c9 !important;
  animation:acEventsSpin .75s linear infinite !important;
}
@keyframes acEventsSpin{
  to{transform:rotate(360deg);}
}
