/* ────────────────────────────────────────────────────────────────
   DΛREΛKT_ UI — SERVICE BLOCK
   Semantic unit that renders heading + description + image.
   ──────────────────────────────────────────────────────────────── */
@layer components {
  .ui-service-block {
    display: block;
    width: 100%;
  }

  /* Icon styling - subtle marker, not a badge */
  .ui-service-block__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    margin-bottom: 0.5rem;
    color: var(--site-accent, #2d5016);
    opacity: 0.7;
    /* No background - icon as marker only */
  }

  .ui-service-block__icon svg {
    width: 22px;
    height: 22px;
    stroke-width: 1.75;
  }

  .ui-service-block__title {
    margin: 0 0 0.375rem 0;
    font-weight: 650;
    line-height: 1.25;
  }

  /* Clickable card — stretched link pattern */
  .ui-service-block[data-href] {
    position: relative;
  }

  .ui-service-block__title a {
    color: inherit;
    text-decoration: none;
    border-bottom: 1px solid transparent;
    transition: border-color 0.2s ease;
  }

  /* Stretched link: ::after covers the whole card */
  .ui-service-block__link::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 1;
  }

  .ui-service-block__title a:hover {
    color: var(--site-accent, #2d5016);
    border-bottom-color: var(--site-accent, #2d5016);
  }

  .ui-service-block__subtitle {
    display: block;
    font-size: 0.8rem;
    color: var(--site-muted, #888);
    margin-bottom: 0.375rem;
    letter-spacing: 0.3px;
  }

  .ui-service-block__description {
    margin: 0 0 1rem 0;
    line-height: 1.5;
    color: var(--site-muted, #555);
  }

  /* Image frame - soft, summer afternoon feel */
  .ui-service-block__image-wrap {
    margin-top: 1rem;
    border: 6px solid var(--site-border, #a8d5a8);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
  }

  .ui-service-block__image {
    width: 100%;
    height: auto;
    display: block;
  }

  .ui-service-block__list {
    margin: 0;
    padding: 0;
    list-style: none !important;
  }

  .ui-service-block__list::before,
  .ui-service-block__list::after {
    display: none;
  }

  .ui-service-block__item {
    margin: 0 0 0.5rem 0;
    padding: 0;
    list-style: none !important;
  }

  .ui-service-block__item::before,
  .ui-service-block__item::after {
    display: none;
    content: none;
  }
}
