/* ============================================
   Adera Footer — Figma Matched
   ============================================ */

/* ---- 1. Pre-Footer Bar ---- */
.adera-footer-pre-bar {
  padding: 16px 0;
  width: 100%;
}

.adera-pre-bar-container {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 0 24px;
}

.adera-pre-bar-item {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: var(--font-inter);
  font-size: 15px;
  font-weight: 600;
  color: #470073;
}

.adera-pre-bar-item:last-child {
  justify-content: flex-end;
}

.adera-pre-bar-icon {
  flex-shrink: 0;
}

.adera-pre-bar-text {
  line-height: 1.5;
}

.adera-text-red {
  color: #670EAA;
}

.adera-pre-bar-order-label {
  font-family: var(--font-inter);
  font-size: 13px;
  font-weight: 300;
  color: #470073;
  line-height: 1;
}

.adera-countdown-time {
  font-family: var(--font-inter);
  font-size: 15px;
  font-weight: 600;
  color: #670EAA;
  display: inline-block;
  min-width: 75px;
}

.adera-pre-bar-separator {
  width: 1px;
  height: 36px;
  background-color: #B7C0CC;
  justify-self: center;
}

.adera-pre-bar-separator-inline {
  width: 1px;
  height: 19px;
  background-color: #B7C0CC;
  display: inline-block;
  vertical-align: middle;
  margin: 0 4px;
}

@media (max-width: 768px) {
  .adera-pre-bar-container {
    grid-template-columns: 1fr;
    gap: 10px;
    text-align: left;
  }
  .adera-pre-bar-item {
    background: #F5F5F5;
    border-radius: 10px;
    padding: 14px 16px;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: nowrap;
    gap: 10px;
  }
  .adera-pre-bar-item:last-child {
    display: grid;
    grid-template-columns: 36px 1fr;
    align-items: center;
    gap: 2px 10px;
    flex-wrap: unset;
    justify-content: unset;
  }
  .adera-pre-bar-item:last-child .adera-pre-bar-icon {
    grid-column: 1;
    grid-row: 1 / 3;
    align-self: center;
  }
  .adera-pre-bar-item:last-child .adera-pre-bar-text {
    grid-column: 2;
    grid-row: 1;
    flex: unset;
  }
  .adera-pre-bar-item:last-child .adera-pre-bar-order-label {
    grid-column: 2;
    grid-row: 2;
    display: block;
    padding-left: 0;
    margin-top: 0;
  }
  .adera-pre-bar-separator {
    display: none;
  }
  .adera-pre-bar-separator-inline {
    display: none;
  }
}

/* ---- 2. Dark Footer ---- */
footer.adera-footer {
  background-color: #120c1a; /* dark fallback / fills any area the image doesn't cover */
  background-image:
    linear-gradient(180deg, rgba(71, 0, 115, 0.45) 10%, rgba(71, 0, 115, 0.52) 51%, rgba(71, 0, 115, 0) 146%),
    url('../images/footer.webp');
  background-repeat: no-repeat, no-repeat;
  background-position: center top, center bottom;
  background-size: cover, cover;
  color: var(--white);
  font-family: var(--font-manrope);
  padding: 60px 0 0;
}

/* ---- Grid ---- */
footer.adera-footer .adera-footer-grid {
  display: grid;
  grid-template-columns: 1.9fr 1fr 1fr 1.2fr;
  gap: 24px;
  align-items: start;
  margin-bottom: 33px !important;
}

/* Desktop column separators */
@media (min-width: 901px) {
  footer.adera-footer .adera-footer-col {
    padding-left: 24px;
    min-height: 200px;
    border-left: 1.5px solid rgba(255, 255, 255, 0.15);
  }
  footer.adera-footer .adera-footer-col:nth-child(2) {
    border-left: none;
  }
}

/* ---- Brand column ---- */
footer.adera-footer .adera-footer-logo {
  max-width: 230px;
  width: 100%;
  display: block;
  margin-bottom: 26px;
}

footer.adera-footer .adera-footer-tagline {
  font-family: var(--font-inter);
  font-size: 15px;
  font-weight: 300;
  color: #EEF5FF;
  line-height: 21.8px;
  margin: 0 0 26px;
  max-width: 234px;
}

footer.adera-footer .adera-footer-about {
  font-family: var(--font-inter);
  font-size: 14px;
  font-weight: 300;
  color: #D9E2EE;
  line-height: 1.65;
  margin: 18px 0 16px;
  max-width: 340px;
}

footer.adera-footer .adera-footer-trust {
  display: grid;
  grid-template-columns: 1fr 1fr;   /* 2 columns → 3 items flow into 2 rows */
  gap: 17px 22px;
}

/* Trust badges as a full-width row above the disclaimer */
footer.adera-footer .adera-footer-trust-row {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding-top: 26px;
  margin-bottom: 26px;
}

footer.adera-footer .adera-footer-trust-row .adera-footer-trust {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;   /* one left · one center · one right */
  gap: 22px 24px;
  width: 100%;
}

footer.adera-footer .adera-footer-trust-item {
  display: flex;
  align-items: center;
  gap: 10px;
}

footer.adera-footer .adera-footer-trust-item svg {
  flex-shrink: 0;
}

footer.adera-footer .adera-footer-trust-title {
  display: block;
  font-family: var(--font-inter);
  font-size: 15px;
  font-weight: 500;
  color: #FFFFFF;
  line-height: 1.3;
}

footer.adera-footer .adera-footer-trust-sub {
  display: block;
  font-family: var(--font-inter);
  font-size: 12px;
  font-weight: 300;
  color: rgba(255, 255, 255, 0.6);
  line-height: 17.4px;
  margin-top: 2px;
}

/* ---- Nav columns ---- */
footer.adera-footer .adera-footer-col-title {
  font-size: 14.45px;
  font-weight: 600;
  color: #FFFFFF;
  margin: 0 0 16px;
}

footer.adera-footer .adera-footer-links {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

footer.adera-footer .adera-footer-links a {
  color: rgba(255, 255, 255, 0.6) !important;
  text-decoration: none !important;
  font-size: 13.25px;
  font-weight: 400;
  display: flex;
  align-items: center;
  gap: 8px;
  padding-left: 0;
  transition: color 0.2s ease, padding-left 0.2s ease;
}

footer.adera-footer .adera-footer-links a:hover {
  padding-left: 4px;
  color: #fff !important;
}

footer.adera-footer .adera-footer-links a::before {
  content: '';
  display: inline-block;
  width: 15px;
  height: 15px;
  flex-shrink: 0;
  background-color: rgba(255, 255, 255, 0.6);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='15' viewBox='0 0 15 15' fill='none'%3E%3Cpath d='M9.63367 7.22484C9.63413 7.30408 9.61894 7.38263 9.58898 7.45599C9.55901 7.52934 9.51487 7.59607 9.45906 7.65233L5.8465 11.2649C5.73312 11.3783 5.57935 11.442 5.41901 11.442C5.25867 11.442 5.1049 11.3783 4.99152 11.2649C4.87815 11.1515 4.81445 10.9977 4.81445 10.8374C4.81445 10.6771 4.87815 10.5233 4.99152 10.4099L8.18262 7.22484L4.99754 4.03976C4.89891 3.92458 4.84736 3.77642 4.85322 3.62489C4.85907 3.47335 4.92189 3.32961 5.02912 3.22238C5.13635 3.11515 5.28009 3.05233 5.43162 3.04648C5.58316 3.04063 5.73132 3.09217 5.8465 3.19081L9.45906 6.80337C9.5703 6.91552 9.633 7.06688 9.63367 7.22484Z' fill='black'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='15' viewBox='0 0 15 15' fill='none'%3E%3Cpath d='M9.63367 7.22484C9.63413 7.30408 9.61894 7.38263 9.58898 7.45599C9.55901 7.52934 9.51487 7.59607 9.45906 7.65233L5.8465 11.2649C5.73312 11.3783 5.57935 11.442 5.41901 11.442C5.25867 11.442 5.1049 11.3783 4.99152 11.2649C4.87815 11.1515 4.81445 10.9977 4.81445 10.8374C4.81445 10.6771 4.87815 10.5233 4.99152 10.4099L8.18262 7.22484L4.99754 4.03976C4.89891 3.92458 4.84736 3.77642 4.85322 3.62489C4.85907 3.47335 4.92189 3.32961 5.02912 3.22238C5.13635 3.11515 5.28009 3.05233 5.43162 3.04648C5.58316 3.04063 5.73132 3.09217 5.8465 3.19081L9.45906 6.80337C9.5703 6.91552 9.633 7.06688 9.63367 7.22484Z' fill='black'/%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  transition: background-color 0.2s ease;
}

footer.adera-footer .adera-footer-links a:hover::before {
  background-color: #670EAA;
}

/* ---- Hours column ---- */
footer.adera-footer .adera-footer-hours-col {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

footer.adera-footer .adera-footer-hours-card {
  background: #FFFFFF;
  border-radius: 16px;
  padding: 14px 18px 16px;
}

footer.adera-footer .adera-footer-hours-header {
  display: flex;
  align-items: center;
  gap: 13px;
  padding-bottom: 12px;
  margin-bottom: 12px;
  border-bottom: 0.53px solid rgba(7, 17, 38, 0.13);
}

footer.adera-footer .adera-footer-hours-icon-box {
  width: 33px;
  height: 33px;
  border-radius: 50%;
  background: rgba(255, 29, 23, 0.09);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

footer.adera-footer .adera-footer-hours-icon-box svg {
  color: #670EAA;
  width: 20px;
  height: 20px;
  display: block;
}

footer.adera-footer .adera-footer-hours-title {
  font-family: var(--font-inter);
  font-size: 11.26px;
  font-weight: 600;
  color: #470073 !important;
}

footer.adera-footer .adera-footer-hours-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
}

footer.adera-footer .adera-footer-hours-row:last-child {
  margin-bottom: 0;
}

footer.adera-footer .adera-footer-hours-day,
footer.adera-footer .adera-footer-hours-time {
  font-family: var(--font-inter);
  font-size: 12px;
  font-weight: 300;
  color: #470073;
  line-height: 12.5px;
}

footer.adera-footer .adera-footer-hours-day {
  flex: 1;
}

/* ---- Disclaimer ---- */
footer.adera-footer .adera-footer-disclaimer-bar {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding: 24px 0 16px;
}

footer.adera-footer .adera-footer-disclaimer-heading {
  font-family: var(--font-poppins);
  font-size: 12.5px;
  font-weight: 700;
  color: #670EAA;
  display: inline;
}

footer.adera-footer .adera-footer-disclaimer-text {
  font-family: var(--font-inter);
  font-size: 12.5px;
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.5);
  margin: 0;
  text-align: center;
}

/* ---- Credit Cards (in brand column) ---- */
footer.adera-footer .adera-footer-cards-img {
  width: auto;
  max-width: 252px;
  opacity: 0.85;
  margin-top: 16px;
  display: block;
}

/* ---- Social links ---- */
footer.adera-footer .adera-footer-social {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 4px 0 4px;
}

footer.adera-footer .adera-footer-social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  color: #ffffff;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.18);
  transition: var(--transition-smooth, all 0.3s ease);
}

footer.adera-footer .adera-footer-social-link:hover {
  color: #ffffff;
  background-image: var(--brand-gradient);
  border-color: transparent;
  transform: translateY(-3px);
  box-shadow: 0 8px 18px rgba(103, 14, 170, 0.35);
}

/* ---- Bottom bar ---- */
footer.adera-footer .adera-footer-bottom {
  padding: 14px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  flex-wrap: wrap;
}

footer.adera-footer .adera-copyright,
footer.adera-footer .adera-consumption-badge {
  font-family: var(--font-inter);
  font-size: 12px;
  font-weight: 300;
  color: #EEF5FF;
  line-height: 17.4px;
}

footer.adera-footer .adera-copyright {
  flex: none;
}

footer.adera-footer .adera-warning-badge {
  font-family: var(--font-inter);
  font-size: 12px;
  font-weight: 600;
  background: var(--brand-gradient);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  line-height: 17.4px;
  text-transform: none;
}

/* ---- Responsive ---- */
@media (max-width: 1024px) {
  footer.adera-footer .adera-footer-grid {
    grid-template-columns: 1fr;
    gap: 0;
    margin-bottom: 20px;
  }

  footer.adera-footer .adera-footer-brand {
    grid-column: auto;
  }

  footer.adera-footer .adera-footer-trust {
    grid-template-columns: 1fr;
    padding-bottom: 16px;
  }

  footer.adera-footer .adera-footer-cards-img {
    margin-top: 8px;
    margin-bottom: 30px;
  }

  footer.adera-footer .adera-footer-hours-col {
    grid-column: auto;
    flex-direction: row;
    gap: 16px;
    margin-top: 8px;
  }

  footer.adera-footer .adera-footer-hours-card {
    flex: 1;
  }

  /* Nav accordion */
  footer.adera-footer .adera-footer-col {
    border-left: none !important;
    padding: 0 !important;
    min-height: auto !important;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
  }

  footer.adera-footer .adera-footer-grid > .adera-footer-col:nth-last-child(2) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    margin-bottom: 30px;
  }

  footer.adera-footer .adera-footer-col-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 0;
    margin: 0;
    cursor: pointer;
    user-select: none;
    color: rgba(255, 255, 255, 0.6);
    font-size: 15px;
    font-weight: 600;
    text-transform: none;
    letter-spacing: 0;
  }

  footer.adera-footer .adera-footer-col-title::after {
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    border-right: 2px solid #670EAA;
    border-top: 2px solid #670EAA;
    transform: rotate(45deg);
    margin-right: 4px;
    flex-shrink: 0;
    transition: transform 0.25s ease;
  }

  footer.adera-footer .adera-footer-col.open .adera-footer-col-title::after {
    transform: rotate(135deg);
  }

  footer.adera-footer .adera-footer-links {
    display: none !important;
    padding-bottom: 14px;
  }

  footer.adera-footer .adera-footer-col.open .adera-footer-links {
    display: flex !important;
  }
}

@media (max-width: 560px) {
  footer.adera-footer {
    padding: 40px 0 0;
  }

  footer.adera-footer .adera-footer-grid {
    grid-template-columns: 1fr;
    gap: 0;
  }

  footer.adera-footer .adera-footer-brand,
  footer.adera-footer .adera-footer-hours-col {
    grid-column: auto;
  }

  footer.adera-footer .adera-footer-hours-col {
    flex-direction: column;
  }

  footer.adera-footer .adera-footer-bottom {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 4px 12px;
    padding: 12px 0;
    border-top: none !important;
    text-align: center;
  }

  footer.adera-footer .adera-copyright {
    flex: 0 0 100%;
  }
}
