/* DM Box Hover – Final CSS */

/* Grid wrapper */
.dm-bh-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}

/* Card container */
.dm-bh-card{
  position:relative;
  border-radius:18px;
  overflow:hidden;
  isolation:isolate;
  background:#E9F4F2;
  padding:24px;
}

/* Background layer (base bg + hover image via CSS var) */
.dm-bh-card .dm-bh-bg{
  position:absolute;
  inset:0;
  z-index:0;
  background:inherit;
  background-size:cover;
  background-position:center;
  transition:transform .6s ease;
  /* default rotate fallback */
  --dm-bh-rotate: 2deg;
}
.dm-bh-card .dm-bh-bg::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:var(--dm-bh-img);
  background-size:cover;
  background-position:center;
  opacity:0;                       /* shown on hover */
  transition:opacity .4s ease;
}

/* Overlay layer (color/opacity on hover) */
.dm-bh-card .dm-bh-overlay{
  position:absolute;
  inset:0;
  z-index:0;
  background:transparent;
  opacity:0;
  transition:background .4s ease, opacity .4s ease;
}

/* Foreground content sits above bg/overlay */
.dm-bh-card > *:not(.dm-bh-bg):not(.dm-bh-overlay):not(.dm-bh-card-link){
  position:relative;
  z-index:1;
}

/* Icon */
.dm-bh-icon{ margin-bottom:12px; line-height:0; }
.dm-bh-icon svg{ display:block; width:40px; height:40px; color:currentColor; fill:currentColor; }

/* Title / Description */
.dm-bh-title{ margin:8px 0 10px; }
.dm-bh-desc{ margin:0 0 18px; }

/* Button */
.dm-bh-btn{
  display:inline-block;
  background:#ffffff;
  color:#0c3b3a;
  border-radius:24px;
  padding:12px 20px;
  text-decoration:none;
  transition:background .3s ease, color .3s ease;
}

/* Whole-card link overlay (must sit on top) */
.dm-bh-card .dm-bh-card-link{
  position:absolute;
  inset:0;
  display:block;
  z-index:9999;          /* ensure it’s above all content */
  pointer-events:auto;   /* allow clicks */
}

/* Optional: give whole-card link priority over inner button clicks */
/* .dm-bh-card .dm-bh-btn{ pointer-events:none; } */

/* Hover interactions */
.dm-bh-card:hover .dm-bh-bg{ transform:scale(1.08) rotate(var(--dm-bh-rotate,2deg)); }
.dm-bh-card:hover .dm-bh-bg::before{ opacity:1; }
.dm-bh-card:hover .dm-bh-overlay{ background:var(--dm-bh-overlay, rgba(0,0,0,.5)); opacity:1; }

/* Editor: keep links clickable inside Elementor panel */
.elementor-editor-active .dm-bh-card .dm-bh-card-link{ pointer-events:auto; }
