
.hkb-wrap{
  --hkb-accent:#008c48;
  --hkb-border:rgba(0,0,0,.35);
  --hkb-bg:#fff;
  --hkb-title:#4a4a4a;
  --hkb-text:#6b6b6b;

  display:grid;
  grid-template-columns:minmax(240px,.9fr) minmax(320px,1.1fr);
  gap:36px;
  align-items:stretch;
}
@media(max-width:1024px){ .hkb-wrap{grid-template-columns:1fr;} }

.hkb-media{
  position:relative;
  width:100%;
  height:100%;
  min-height:360px;
  overflow:hidden;
  background:#f3f3f3;
}
@media(max-width:1024px){ .hkb-media{min-height:260px;} }

.hkb-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;}
.hkb-media__placeholder{position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.05),rgba(0,0,0,.02));}

.hkb-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;}
@media(max-width:640px){ .hkb-grid{grid-template-columns:1fr;} }

.hkb-card{position:relative;background:transparent;border:0;padding:0;margin:0;min-width:0;}
.hkb-card__inner{
  position:relative;background:var(--hkb-bg);
  border:1px solid var(--hkb-border);
  padding:24px 26px 22px;
  height:100%;
  overflow:hidden;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.hkb-card:hover .hkb-card__inner,.hkb-card:focus .hkb-card__inner{
  border-color:rgba(0,0,0,.12);
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(0,0,0,.06);
}

.hkb-icon{width:52px;height:52px;margin-bottom:12px;display:flex;align-items:center;justify-content:center;}
.hkb-icon img{width:52px;height:52px;object-fit:contain;}

.hkb-title{margin:0 0 10px 0;font-size:18px;line-height:1.25;color:var(--hkb-title);}
.hkb-text{margin:0;font-size:14px;line-height:1.55;color:var(--hkb-text);}

/* thinner animated border lines */
.hkb-line{position:absolute;background:var(--hkb-accent);opacity:0;transition:opacity .15s ease;pointer-events:none;}
.hkb-line--top,.hkb-line--bottom{height:1px;width:100%;left:0;transform:translateX(-105%);}
.hkb-line--top{top:0;}
.hkb-line--bottom{bottom:0;transform:translateX(105%);}
.hkb-line--left,.hkb-line--right{width:1px;height:100%;top:0;transform:translateY(105%);}
.hkb-line--left{left:0;}
.hkb-line--right{right:0;transform:translateY(-105%);}

.hkb-card:hover .hkb-line,.hkb-card:focus .hkb-line{opacity:1;}
.hkb-card:hover .hkb-line--top,.hkb-card:focus .hkb-line--top{animation:hkb-top .7s ease forwards;}
.hkb-card:hover .hkb-line--right,.hkb-card:focus .hkb-line--right{animation:hkb-right .7s ease .12s forwards;}
.hkb-card:hover .hkb-line--bottom,.hkb-card:focus .hkb-line--bottom{animation:hkb-bottom .7s ease .24s forwards;}
.hkb-card:hover .hkb-line--left,.hkb-card:focus .hkb-line--left{animation:hkb-left .7s ease .36s forwards;}

@keyframes hkb-top{0%{transform:translateX(-105%);}100%{transform:translateX(0);}}
@keyframes hkb-right{0%{transform:translateY(-105%);}100%{transform:translateY(0);}}
@keyframes hkb-bottom{0%{transform:translateX(105%);}100%{transform:translateX(0);}}
@keyframes hkb-left{0%{transform:translateY(105%);}100%{transform:translateY(0);}}

@media (prefers-reduced-motion: reduce){
  .hkb-card__inner{transition:none;}
  .hkb-card:hover .hkb-card__inner,.hkb-card:focus .hkb-card__inner{transform:none;}
  .hkb-line{display:none;}
}


/* Swap layout: grid left, image right */
.hkb-wrap{grid-template-areas: "grid media";}
.hkb-grid{grid-area:grid;}
.hkb-media{grid-area:media;}
@media (max-width: 992px){.hkb-wrap{grid-template-areas:"media" "grid";}}

/* Link cards */
.hkb-card--link{color:inherit;text-decoration:none;display:block;}


/* Arrow indicator (always visible) */
.hkb-card--arrow .hkb-card__inner::after,
.hkb-card--arrow::after,
/* Links shouldn't look like links */
.hkb-card--link{ color: inherit; text-decoration:none; display:block; }
/* Disable focus/active outline (no green frame on click) */
.hkb-card:focus,
.hkb-card:focus-visible,
a.hkb-card:focus,
a.hkb-card:focus-visible{
  outline: none !important;
  box-shadow: none !important;
}

.hkb-arrow{position:absolute; right:14px !important; top:25% !important; left:auto !important; bottom:auto !important; transform:none !important; display:flex; align-items:center; justify-content:center; pointer-events:none;}

/* Link-Pfeil (eigener Node, damit Cache/Theme nicht reinfunkt) */
.hkb-arrow-indicator{
  position:absolute !important;
  right: 14px !important;
  left: auto !important;
  top: 25% !important;
  bottom: auto !important;
  transform: translateY(-50%) !important;
  font-size: 18px !important;
  line-height: 1 !important;
  color: var(--hkb-accent) !important;
  opacity: .95 !important;
  pointer-events:none !important;
  z-index: 2 !important;
}
/* Kein grüner Fokus-Rahmen beim Klick */
.hkb-card--link:focus,
.hkb-card--link:focus-visible{
  outline: none !important;
  box-shadow: none !important;
}

