/**
 * @file content.css
 * Content styling: Layout Builder sections, views, fields, blocks.
 */

/* ============================================================
   Layout Builder sections
   ============================================================ */
.layout {
  margin-bottom: var(--vg-space-4);
}

.layout--onecol .layout__region--content {
  max-width: 100%;
}

/* Two-column sections */
.layout--twocol-section {
  display: grid;
  gap: var(--vg-h-32);
}

.layout--twocol-section--25-75 {
  grid-template-columns: 1fr 3fr;
}

.layout--twocol-section--33-67 {
  grid-template-columns: 1fr 2fr;
}

.layout--twocol-section--67-33 {
  grid-template-columns: 2fr 1fr;
}

.layout--twocol-section--50-50 {
  grid-template-columns: 1fr 1fr;
}

/* Stack columns on mobile */
@media (max-width: 767px) {
  .layout--twocol-section {
    grid-template-columns: 1fr;
  }
}

/* ============================================================
   Blocks within layout
   ============================================================ */
.block {
  margin-bottom: var(--vg-space-2);
}

/* ============================================================
   Views
   ============================================================ */
.views-element-container {
  margin-bottom: var(--vg-space-3);
}

/* Article wrapper in views */
.artikel-wrapper {
  margin-bottom: var(--vg-space-3);
  padding-bottom: var(--vg-space-3);
  border-bottom: 1px solid var(--vg-color-border);
}

.artikel-wrapper:last-child {
  border-bottom: none;
}

/* ============================================================
   Fields
   ============================================================ */
.field {
  margin-bottom: var(--vg-space-2);
}

.field--label-above .field__label {
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--vg-color-accent);
  margin-bottom: var(--vg-space-1);
}

.field--label-inline {
  display: flex;
  gap: var(--vg-h-8);
}

.field--label-inline .field__label {
  font-weight: 700;
}

/* ============================================================
   Images and media
   ============================================================ */
.field--type-image img,
.media-library-item img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* ============================================================
   Text content (body, formatted text)
   ============================================================ */
.field--type-text-long,
.field--type-text-with-summary,
.text-content {
  line-height: 1.2;
}

.field--type-text-long p,
.field--type-text-with-summary p,
.text-content p {
  margin-bottom: var(--vg-space-2);
}

.field--type-text-long ul,
.field--type-text-long ol,
.text-content ul,
.text-content ol {
  padding-left: var(--vg-h-32);
  margin-bottom: var(--vg-space-2);
}

.field--type-text-long ul,
.text-content ul {
  list-style: disc;
}

.field--type-text-long ol,
.text-content ol {
  list-style: decimal;
}

.field--type-text-long li,
.text-content li {
  margin-bottom: var(--vg-space-1);
}

/* ============================================================
   Links and taxonomy terms
   ============================================================ */
.field--type-entity-reference a {
  color: var(--vg-color-link);
}

.field--type-entity-reference a:hover {
  color: var(--vg-color-link-hover);
}

/* Taxonomy terms as tags */
.field--name-field-tags .field__items,
.field--name-field-categorie .field__items {
  display: flex;
  flex-wrap: wrap;
  gap: var(--vg-h-8);
}

/* ============================================================
   Page title
   ============================================================ */
.page-title {
  font-size: 2.4rem;
  line-height: 60px;
  margin-bottom: var(--vg-space-2);
  color: var(--vg-color-heading);
}

/* ============================================================
   Views grid
   ============================================================ */
.views-view-grid {
  display: grid;
  gap: var(--vg-h-32);
}

.views-view-grid.cols-2 {
  grid-template-columns: repeat(2, 1fr);
}

.views-view-grid.cols-3 {
  grid-template-columns: repeat(3, 1fr);
}

.views-view-grid.cols-4 {
  grid-template-columns: repeat(4, 1fr);
}

@media (max-width: 767px) {
  .views-view-grid.cols-2,
  .views-view-grid.cols-3,
  .views-view-grid.cols-4 {
    grid-template-columns: 1fr;
  }
}

/* ============================================================
   Layout Builder section backgrounds
   (vg25 used class vg-grijs-1 for sections)
   ============================================================ */
.vg-grijs-1 {
  background-color: var(--vg-bg-1);
  padding: var(--vg-space-3) var(--vg-h-32);
}
