/* =========================================================
   Conference Top Content (ACF Block)
   Updated to match mockups:
   - Desktop: gift box sits top-right
   - <=1340: badge stays top-right, gift box becomes full width under header
   - Gift logo overlaps top-left border ALWAYS (no breakpoint nudging)
   ========================================================= */

.conference-top-content{
  padding: 80px 0;
}

.conference-top-content__inner{
  max-width: 90%;
  margin: 0 auto;
  position: relative;
}

/* badge */
.conference-top-content__badge{
  display: none;
}

/* =========================
   Desktop Layout (2 columns)
   ========================= */
.conference-top-content__grid{
  display: flex;
  gap: 28px;
  align-items: flex-start;
  justify-content: space-between;
}

.conference-top-content__left{
  flex: 1 1 auto;
}

.conference-top-content__date{
  font-weight: 900;
  margin-bottom: 10px;
}

.conference-top-content__title{
  margin: 10px 0;
  font-weight: 900;
  color: #000;
}

.conference-top-content__location p{
  margin: 6px 0;
}

.conference-top-content__left h4{
  font-weight: 900;
  color: #000;
}

.conference-top-content__left a{
  color: #52287E;
  font-weight: 900;
  font-family: 'Lato', -apple-system, sans-serif !important;
}

.conference-top-content__left a:hover{
  color: #52c4c7;
}

/* RIGHT column width like your original */
.conference-top-content__right{
  flex: 0 0 1200px;
  max-width: 1200px;
  width: 100%;
}

/* =========================
   Gift Card Box
   ========================= */
.gift-card-box{
  --gcb-pad: 18px;
  --gcb-logo-w: 320px;
  --gcb-logo-lift: 18px;

  position: relative;
  border: 2px solid #5b2b82;
  border-radius: 22px;
  background: #fff;
  width: 100%;
  overflow: visible;
}

.gift-card-box__top{
  padding-top: calc(var(--gcb-logo-w) * 0.18);
  padding-right: 0;
  padding-bottom: 12px;
  padding-left: 20px;
  border-bottom: 2px solid rgba(91, 43, 130, 0.35);
}

.gift-card-box__logoWrap{
  position: absolute;
  left: var(--gcb-pad);
  top: -25px;
  transform: translateY(calc(-1 * var(--gcb-logo-lift)));
  background: #fff;
  padding: 0 14px;
  z-index: 2;
  border-radius: 10px;
}

.gift-card-box__logo{
  width: var(--gcb-logo-w);
  height: auto;
  display: block;
}

/* cleaned copy styles */
.gift-card-box__copy{
  max-width: 100%;
}

.gift-card-box__copy,
.gift-card-box__copy p,
.gift-card-box__copy span,
.gift-card-box__copy strong,
.gift-card-box__copy a{
  word-break: normal;
  overflow-wrap: normal;
  white-space: normal;
  text-wrap: normal;
}

.gift-card-box__copy p{
  margin: 6px 0;
  line-height: 1.45;
  padding-right: 0;
}

.gift-card-box__bottom{
  padding: 12px var(--gcb-pad) 14px;
}

.gift-card-box__brands{
  display: flex;
  align-items: center;
  gap: 22px;
  list-style: none;
  margin: 0;
  padding: 0;
  flex-wrap: wrap;
  justify-content: space-between;
}

.gift-card-box__brand img{
  height: 36px;
  width: auto;
  display: block;
}

.gift-card-box__more{
  font-weight: 700;
  white-space: nowrap;
}

/* =========================
   Copy Block
   ========================= */
.conference-top-content__copy{
  margin-top: 28px;
}

.conference-top-content__copy p{
  margin: 0 0 18px;
  line-height: 1.6;
}

@media (max-width: 1800px) {
  .conference-top-content__right{
    flex: 0 0 1000px;
    max-width: 1000px;
    width: 100%;
  }
}

@media (max-width: 1600px) {
  .conference-top-content__right{
    flex: 0 0 860px;
    max-width: 860px;
    width: 100%;
  }
}

/* =========================================================
   <= 1340px
   - header left + badge on one row
   - gift box full width underneath
   ========================================================= */
@media (max-width: 1340px){
  .conference-top-content__badge{
    display: block;
    position: relative;
    z-index: 5;
  }

  .conference-top-content__badge img{
    display: block;
    max-width: 238px;
    width: 100%;
    height: auto;
  }

  .conference-top-content__grid{
    flex-direction: column;
    gap: 26px;
    align-items: stretch;
  }

  .conference-top-content__left{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 30px;
  }

  .conference-top-content__right{
    max-width: none;
    flex: none;
    width: 100%;
  }
}

/* =========================================================
   <= 900px
   ========================================================= */
@media (max-width: 900px){
  .gift-card-box{
    --gcb-logo-w: 260px;
  }
}

/* =========================================================
   <= 768px
   - stack logo/copy naturally
   ========================================================= */
@media (max-width: 768px){
  .conference-top-content{
    padding: 40px 0;
  }

  .conference-top-content__inner{
    max-width: 92%;
  }

  .conference-top-content__badge{
    position: static;
    margin: 0 !important;
  }

  .conference-top-content__date{
    margin: 0;
  }

  .conference-top-content__left{
    flex-wrap: wrap;
  }

  .conference-top-content__badge img{
    max-width: 170px;
  }

  .conference-top-content__title{
    margin: 0;
  }

  .gift-card-box{
    --gcb-logo-w: 220px;
    --gcb-pad: 14px;
  }

  .gift-card-box__top{
    padding-left: var(--gcb-pad);
    padding-top: calc(var(--gcb-pad) + 12px);
  }
}

/* =========================================================
   <= 490px
   ========================================================= */
@media (max-width: 490px){
  .gift-card-box__brand img{
    height: 22px;
  }
}