/* Text in one column, a whole block in the other — the slot decides what stands there. */
[qcms-mod^="cont.luca.beside"] {
  margin-block: clamp(3rem, 7vw, 6rem);

  .cols {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
    container-type: inline-size;
    gap: clamp(2rem, 5vw, 4rem);
    align-items: center;
  }

  /* a block in the slot brings its own spacing — not here, where it is a column */
  .cols > :not(.text) { padding-block: 0; margin-block: 0 }

  .note {
    font-family: var(--font-hand, cursive);
    font-size: 1.3rem;
    line-height: 1.35;
    margin: 1.6rem 0 0;
  }

  [qcms-name=actions] {
    p { margin: 0 }
    a {
      display: inline-block;
      font-size: .76rem;
      text-transform: uppercase;
      letter-spacing: .13em;
      text-decoration: none;
      border-bottom: 1px solid transparent;
    }
    a:hover { border-color: currentColor }
  }

  @media (width < 48rem) {
    .cols { grid-template-columns: minmax(0, 1fr) }
  }
}
