:root{
  --flb-gold: #F3AB01;   /* header bg */
  --flb-cream:#f4eee6;   /* body bg if needed */
  --flb-green:#153a42;   /* dark green buttons/text */
  --flb-accent:#E87330;  /* accent (Ver Menú) */
  --flb-radius:84px;
}

/* Grid wrapper (desktop columns via --flb-cols) */
.flb-locations-grid{
  --flb-cols:1;
  display:grid;
  gap:28px;
  grid-template-columns:repeat(var(--flb-cols), minmax(0,1fr));
}
/* @media (max-width:1024px){ .flb-locations-grid{ --flb-cols:1; } } */
@media (min-width:768px){  .flb-locations-grid{ --flb-cols:2; } }

/* Card */
.flb-loc-card{
  border-radius: var(--flb-radius);
  overflow:hidden;
  background: #ece3d7;
  box-shadow: 0 8px 30px rgba(0,0,0,.06);
  position: relative;
  font-family: var( --e-global-typography-primary-font-family ), Sans-serif;
  margin-bottom: 2rem;
}

/* Coming soon badge */
.flb-loc-badge{
  /* position:absolute; top:12px; right:12px; */
  background:var(--flb-green); color:#fff; font-size:.75rem; letter-spacing:.02em;
  padding:6px 10px; border-radius:999px; z-index:2;
}

/* Header */
.flb-loc-card__head{
  background: var(--flb-gold);
  color:var(--flb-green);
  padding:50px 50px 18px;
  
  position: relative;
  min-height:280px;
}
.flb-loc-card__head-head {
    display:flex; align-items:flex-start; justify-content:space-between; gap:16px;
    flex-direction:column;
}
@media (min-width:540px){
    .flb-loc-card__head-head { flex-direction:row; }
}
.flb-loc-card__title{ margin:0; }
.flb-loc-name{
  color: var(--flb-green); margin:0; font-size:1.5rem; line-height:1.2; font-weight:700;text-transform: uppercase;
}
.flb-loc-sub{
  margin:.25rem 0 0; font-weight:400; opacity:.9; letter-spacing:.02em;
}

/* service badges (right) */
.flb-loc-badges{
  list-style:none; margin:0; padding:0; display:flex; gap:12px;
}
.flb-badge{
  width:70px; height:70px; border-radius:999px;
  display:grid; place-items:center;
  /* background: rgba(255,255,255,.55); */
  opacity:.35;
}
.flb-badge.is-on{ opacity:1; }
.flb-badge img{ width:70px; height:70px; }

/* separator */
.flb-sep{
  margin:2rem 0 !important;
    border:0; height:1px;
  border-top:1px solid var(--flb-green);
  opacity:0.5;
}

/* Body */
.flb-loc-card__body{
  padding:0;
  line-height: 0;
}
.flb-loc-address{
  font-style:normal; margin:0 0 .5rem; line-height:1.6;
}
.flb-loc-phone{ margin:0 0 1rem; }
.flb-loc-phone a{ color:var(--flb-green); text-decoration:none; font-weight:600; }

/* Actions */
.flb-loc-actions{
    position:absolute;
    bottom:0;
  display:flex; flex-wrap:wrap; gap:12px; align-items:center;
  margin-bottom: 12px;
  bottom: -30px;
  left:50%;
  transform: translateX(-50%);
}
.flb-btn{
  appearance:none; border:0; cursor:pointer;
  padding:12px 18px; border-radius:999px; font-weight:700; font-size:.95rem; line-height:1;
  display:inline-flex; align-items:center; justify-content:center; text-decoration:none;
}
.flb-btn--dark{ background:var(--flb-green); color:#fff; }
.flb-btn--accent{ background:var(--flb-accent); color:#fff; }

/* Hours details styled like a button */
.flb-hours{ display:inline-block; }
.flb-hours > summary{
  list-style:none; outline:0; user-select:none;
}
.flb-hours > summary::-webkit-details-marker{ display:none; }
.flb-hours > summary.flb-btn{ display:inline-flex; }
.flb-hours[open] > .flb-hours__content{
  margin-top:10px; background:#faf7f2; border-radius:12px; padding:12px 14px; border:1px solid rgba(0,0,0,.06);
}

/* Map */
.flb-loc-map{
  overflow:hidden; border-bottom-left-radius: var(--flb-radius); border-bottom-right-radius: var(--flb-radius);
}
.flb-loc-map__iframe{
  display:block; width:100%; height:260px; border:0;
}

/* Responsive tweaks */
@media (max-width:540px){
  /* .flb-loc-card__head{ flex-direction:column; align-items:flex-start; } */
  .flb-loc-badges{ margin-top:6px; }
}
