/* Europe Boxes frontend styles */
.europe-boxes-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
@media (max-width:1024px){.europe-boxes-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:560px){.europe-boxes-grid{grid-template-columns:1fr;}}

.europe-box{
  position:relative;
  border-radius:16px;
  overflow:hidden;
  aspect-ratio:1 / 1; /* 256x256 square */
  background: #fff;
}
.europe-box .eb-img,
.europe-box .eb-placeholder{
  width:100%;height:100%;object-fit:cover;display:block;
}

/* --- Overlay text/button (WHITE) --- */
.europe-box .eb-overlay{
  position:absolute;inset:0;
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  padding:16px;z-index:3;pointer-events:none;
}
.europe-box .eb-title{
  color:#fff;font-size:20px;font-weight:700;line-height:1.25;margin:0 0 12px 0;
  text-shadow:0 2px 8px rgba(0,0,0,.35);
}
.europe-box .eb-btn{
  pointer-events:auto;
  display:inline-block;padding:8px 14px;border-radius:20px;border:2px solid rgba(255,255,255,.75);
  background:rgba(255,255,255,.12);color:#fff;text-decoration:none;font-weight:600;line-height:1;font-size:14px;
}

/* Do NOT modify any hover animation of the image; keep neutral here */


/* ---- Restored hover animation (circle with white border) ---- */
.europe-box .eb-img{
  transition: transform .35s ease, border-radius .35s ease, box-shadow .35s ease;
  border-radius:12px;
}
.europe-box:hover .eb-img{
  border-radius:50%;
  transform: scale(0.92);
  box-shadow: 0 0 0 3px rgba(255,255,255,0.95);
}

/* Nudge overlay content slightly lower */
.europe-box .eb-overlay{
  padding: 16px 16px 28px; /* extra bottom padding to push content down a bit */
}


/* ---- Restored hover animation ---- */
.europe-box .eb-img{
  transition: all .35s ease;
  border-radius:16px;
}
.europe-box:hover .eb-img{
  border-radius:50% !important;
  transform: scale(0.9);
  box-shadow: 0 0 0 4px #fff;
}

/* Move overlay content slightly lower */
.europe-box .eb-overlay{
  justify-content:flex-end !important;  /* push to bottom */
  padding-bottom:30px !important;       /* spacing from bottom */
}
.europe-box .eb-title{margin-bottom:14px;}


/* ===== Fixes: stronger hover + lower overlay ===== */
.europe-box { position: relative; }
.europe-box .eb-overlay{
  display:flex;flex-direction:column;align-items:center;justify-content:flex-end;
  padding: 16px 16px 44px 16px; /* push content lower */
}
.europe-box .eb-title{ margin:0 0 12px 0; }
.europe-box .eb-btn{ margin:0; }

/* Robust hover: handle image inside links and fight theme styles */
.europe-box .eb-img{ 
  transition: transform .35s ease, border-radius .35s ease, box-shadow .35s ease !important;
  border-radius:12px !important;
  will-change: transform;
  display:block;
}
.europe-box:hover .eb-img,
.europe-box:hover a .eb-img,
.europe-box a:hover .eb-img{
  border-radius:50% !important;
  transform: scale(0.92) !important;
  box-shadow: 0 0 0 3px rgba(255,255,255,0.95) !important;
}


/* === White corners on hover === */
.europe-box{
  background:#fff !important; /* ensure box background stays white, no grey/silver */
}

/* === Smaller See All Post button === */
.europe-box .eb-btn{
  padding:6px 12px !important;
  font-size:13px !important;
  border-radius:18px !important;
}


/* --- Fix circle corners background white --- */
.europe-box{
  background:#fff !important; /* ensure container bg is white, not grey/silver */
}

/* --- Smaller See All Post button --- */
.europe-box .eb-btn{
  font-size: 13px;
  padding: 6px 12px;
  border-radius:20px;
}

/* --- Tweaks per user request: white corners + smaller button --- */
.europe-box{ background:#fff !important; }
.europe-box .eb-btn{
  padding: 8px 14px !important;
  font-size: .95em !important;
  border-radius: 22px !important;
}
