/* Just Xplored V28: JSON-driven products, galleries, colouring pages and places */
.jx-data-loading,
.jx-data-empty,
.jx-data-error{
  grid-column:1/-1;
  min-height:150px;
  display:grid;
  place-items:center;
  padding:24px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:22px;
  background:rgba(255,255,255,.06);
  color:rgba(247,244,236,.76);
  text-align:center;
  font-weight:850;
}

.jx-product-section{padding-top:78px;padding-bottom:78px}
.jx-product-section--compact{padding-top:52px;padding-bottom:52px}
.jx-product-list{display:grid;gap:22px}
.jx-product-card{
  display:grid;
  grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);
  gap:34px;
  align-items:center;
  padding:30px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:34px;
  background:
    radial-gradient(circle at 8% 10%,rgba(57,168,232,.18),transparent 28%),
    radial-gradient(circle at 92% 88%,rgba(212,177,111,.15),transparent 27%),
    rgba(255,255,255,.075);
  box-shadow:0 30px 90px rgba(0,0,0,.42);
  overflow:hidden;
}
.jx-product-card--compact{
  grid-template-columns:170px minmax(0,1fr);
  padding:22px;
  border-radius:28px;
}
.jx-product-cover{
  width:100%;
  max-width:390px;
  margin-inline:auto;
  border-radius:22px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 24px 60px rgba(0,0,0,.38);
}
.jx-product-card--compact .jx-product-cover{max-width:170px;border-radius:16px}
.jx-product-cover img{display:block;width:100%;height:auto;aspect-ratio:404/522;object-fit:cover}
.jx-product-copy{min-width:0}
.jx-product-copy h3{
  margin:12px 0 14px;
  font-size:clamp(2rem,4.2vw,4.8rem);
  line-height:.94;
  letter-spacing:-.055em;
  text-wrap:balance;
}
.jx-product-card--compact .jx-product-copy h3{font-size:clamp(1.55rem,3vw,2.6rem);margin:9px 0 10px}
.jx-product-series{color:var(--sand,#d4b16f);font-weight:900}
.jx-product-description{color:var(--muted,rgba(247,244,236,.72));font-size:1.05rem;line-height:1.65;max-width:760px}
.jx-product-features{display:grid;gap:8px;margin:20px 0 0;padding:0;list-style:none;color:rgba(247,244,236,.82)}
.jx-product-features li{display:flex;gap:10px;align-items:flex-start}
.jx-product-features li::before{content:'★';color:var(--sand,#d4b16f);font-size:.78rem;margin-top:.28em}
.jx-amazon-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:24px}
.jx-amazon-actions .btn{justify-content:center}
.jx-product-card--compact .jx-product-features{display:none}
.jx-product-card--compact .jx-amazon-actions{margin-top:16px}
.jx-product-card--compact .jx-amazon-actions .btn:not(:first-child){display:none}
.jx-fourthwall-card{
  display:grid;
  grid-template-columns:1.1fr auto;
  align-items:center;
  gap:24px;
  padding:34px;
  border-radius:30px;
  background:linear-gradient(135deg,rgba(1,119,187,.28),rgba(255,255,255,.07));
  border:1px solid rgba(255,255,255,.14);
}
.jx-fourthwall-card h3{font-size:clamp(2rem,4vw,4rem);line-height:.95;margin-bottom:12px}
.jx-fourthwall-card p{color:var(--muted,rgba(247,244,236,.72));line-height:1.6}

#placesGrid .place-card{height:100%}
#foodGalleryGrid .food-photo{min-width:0}

@media(max-width:820px){
  .jx-product-card,
  .jx-product-card--compact{grid-template-columns:1fr;gap:24px;padding:22px}
  .jx-product-card--compact .jx-product-cover{max-width:210px}
  .jx-product-copy{text-align:center}
  .jx-product-description{margin-inline:auto}
  .jx-product-features{justify-items:start;text-align:left;max-width:520px;margin-inline:auto;margin-top:18px}
  .jx-amazon-actions{justify-content:center}
  .jx-fourthwall-card{grid-template-columns:1fr;text-align:center}
  .jx-fourthwall-card .actions{justify-content:center;margin-top:0}
}

@media(max-width:520px){
  .jx-product-section{padding-top:58px;padding-bottom:58px}
  .jx-product-card{border-radius:26px;padding:18px}
  .jx-product-cover{max-width:280px}
  .jx-amazon-actions{display:grid;grid-template-columns:1fr;width:100%}
  .jx-amazon-actions .btn{width:100%}
  .jx-product-card--compact .jx-amazon-actions .btn:not(:first-child){display:inline-flex}
}
