  :root {
      --primary-green: #198754;

      --header-bg: #f8f9fa;
      --content-bg: #ffffff;

      --content-border: #eeeeee;
      --text-color: #444444;

      --content-radius: 15px;

      --content-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);

      --poster-border: #ffffff;

      --poster-hover-scale: 1.02;
  }

  /* Essential for fixed headers */
  .header-spacer {
      height: 120px;
  }

  .memorial-header {
      background-color: var(--header-bg);
      padding: 40px 0;
      border-bottom: 3px solid var(--primary-green);
      margin-bottom: 30px;
  }

  .content-box {
      background: var(--content-bg);
      border-radius: var(--content-radius);
      padding: 30px;
      box-shadow: var(--content-shadow);
      border: 1px solid var(--content-border);
  }

  .obituary-full-text {
      line-height: 1.9;
      font-size: 1.15rem;
      color: var(--text-color);
  }

  .poster-image {
      max-height: 600px;
      width: auto;
      border: 8px solid var(--poster-border);
      transition: transform 0.3s ease;
  }

  .poster-image:hover {
      transform: scale(var(--poster-hover-scale));
  }