.elementor-7044 .elementor-element.elementor-element-000cf87{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-7044 .elementor-element.elementor-element-20bcd19{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-7044 .elementor-element.elementor-element-ef3dbec{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-7044 .elementor-element.elementor-element-d7e65c2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-7044 .elementor-element.elementor-element-89b40f5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-7044 .elementor-element.elementor-element-d61d7d9{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-7044 .elementor-element.elementor-element-fcb52e6{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-7044 .elementor-element.elementor-element-37f14198{--display:flex;}/* Start custom CSS for html, class: .elementor-element-131129e */.pp-heidelberg-intro {
    --pp-navy: #1c2539;
    --pp-red: #e13833;
    --pp-yellow: #fdcc0e;
    --pp-bg: #f4f5f7;
    --pp-text: #4b5563;
    --pp-line: #d9dde4;
    box-sizing: border-box;
    direction: rtl;
    text-align: right;
    font-family: inherit;
    color: var(--pp-text);
    max-width: 820px;
    margin: 0 auto;
    padding: 8px 16px 28px;
    min-width: 0;
    font-size: 16px;
    line-height: 1.95;
  }

  .pp-heidelberg-intro ,
  .pp-heidelberg-intro ::before,
  .pp-heidelberg-intro ::after {
    box-sizing: border-box;
  }

  .pp-heidelberg-intro__head {
    margin: 0 0 20px;
    min-width: 0;
  }

  .pp-heidelberg-intro__eyebrow {
    display: inline-block;
    margin: 0 0 10px;
    padding: 3px 10px;
    border: 1px solid var(--pp-line);
    border-radius: 4px;
    background: #ffffff;
    color: var(--pp-navy);
    font-size: 12.5px;
    line-height: 1.6;
    font-weight: 700;
    letter-spacing: 0;
  }

  .pp-heidelberg-intro__title {
    margin: 0 0 10px;
    color: var(--pp-navy);
    font-size: 21px;
    line-height: 1.7;
    font-weight: 700;
  }

  .pp-heidelberg-intro__rule {
    display: block;
    width: 64px;
    height: 3px;
    border-radius: 2px;
    background: var(--pp-red);
    position: relative;
  }

  .pp-heidelberg-intro__rule::after {
    content: "";
    position: absolute;
    right: 72px;
    top: 1px;
    width: 6px;
    height: 6px;
    border-radius: 50%;

    background: var(--pp-yellow);
  }

  .pp-heidelberg-intro__lead {
    margin: 0 0 16px;
    color: #2f3a4d;
    font-size: 16.5px;
    line-height: 2;
    text-align: justify;
  }

  .pp-heidelberg-intro__reasons {
    margin: 0 0 18px;
    padding: 16px;
    background: var(--pp-bg);
    border: 1px solid var(--pp-line);
    border-right: 3px solid var(--pp-navy);
    border-radius: 0 8px 8px 0;
    min-width: 0;
  }

  .pp-heidelberg-intro__reasons-text {
    margin: 0 0 12px;
    color: var(--pp-text);
    font-size: 16px;
    line-height: 2;
    text-align: justify;
  }

  .pp-heidelberg-intro__reasons-text:last-child {
    margin-bottom: 0;
  }

  .pp-heidelberg-intro__reasons-text strong {
    color: var(--pp-navy);
    font-weight: 700;
  }

  .pp-heidelberg-intro__factors {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    min-width: 0;
  }

  .pp-heidelberg-intro__factor {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    background: #ffffff;
    border: 1px solid var(--pp-line);
    border-radius: 8px;
    padding: 10px 12px;
    min-width: 0;
  }

  .pp-heidelberg-intro__factor-num {
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
    border-radius: 4px;
    background: var(--pp-navy);
    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
    line-height: 20px;
    text-align: center;
    margin-top: 3px;
  }

  .pp-heidelberg-intro__factor-text {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
    color: var(--pp-navy);
    font-size: 15.5px;
    line-height: 1.85;
    font-weight: 700;
  }

  .pp-heidelberg-intro__alert {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 0;
    padding: 13px 15px;
    background: #ffffff;
    border: 1px solid var(--pp-line);
    border-top: 1px solid var(--pp-line);
    border-right: 3px solid var(--pp-red);
    border-radius: 0 8px 8px 0;
    min-width: 0;
  }

  .pp-heidelberg-intro__alert-label {
    flex: 0 0 auto;
    margin: 1px 0 0;
    padding: 2px 8px;
    border-radius: 4px;
    background: #fbecec;
    color: #a82824;
    font-size: 12px;
    line-height: 1.7;
    font-weight: 700;
    white-space: nowrap;
  }

  .pp-heidelberg-intro__alert-text {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
    color: var(--pp-text);
    font-size: 14.5px;
    line-height: 1.9;
  }

  @media (min-width: 640px) {
    .pp-heidelberg-intro {
      padding: 12px 0 36px;
      font-size: 17px;
      line-height: 2;
    }

    .pp-heidelberg-intro__title {
      font-size: 25px;
    }

    .pp-heidelberg-intro__lead {
      font-size: 18px;
    }

    .pp-heidelberg-intro__reasons {
      padding: 20px 22px;
    }

    .pp-heidelberg-intro__factors {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .pp-heidelberg-intro__factor {
      flex-direction: column;
      gap: 6px;
      padding: 12px 14px;
    }

    .pp-heidelberg-intro__factor-num {
      margin-top: 0;
    }

    .pp-heidelberg-intro__factor-text {
      font-size: 15px;
    }
  }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b249830 */.pp-heidelberg-location {
    --pp-navy: #1c2539;
    --pp-red: #e13833;
    --pp-yellow: #fdcc0e;
    --pp-bg: #f4f5f7;
    --pp-text: #4b5563;
    --pp-line: #d9dde4;
    box-sizing: border-box;
    direction: rtl;
    text-align: right;
    font-family: inherit;
    color: var(--pp-text);
    max-width: 820px;
    margin: 0 auto;
    padding: 8px 16px 28px;
    min-width: 0;
    font-size: 16px;
    line-height: 1.95;
  }

  .pp-heidelberg-location ,
  .pp-heidelberg-location ::before,
  .pp-heidelberg-location ::after {
    box-sizing: border-box;
  }

  .pp-heidelberg-location__head {
    margin: 0 0 18px;
    min-width: 0;
  }

  .pp-heidelberg-location__title {
    margin: 0 0 10px;
    color: var(--pp-navy);
    font-size: 21px;
    line-height: 1.7;
    font-weight: 700;
  }

  .pp-heidelberg-location__title-en {
    color: var(--pp-text);
    font-size: 15px;
    font-weight: 400;
  }

  .pp-heidelberg-location__rule {
    display: block;
    width: 64px;
    height: 3px;
    border-radius: 2px;
    background: var(--pp-red);
  }

  .pp-heidelberg-location__lead {
    margin: 0 0 18px;
    color: #2f3a4d;
    font-size: 16.5px;
    line-height: 2;
    text-align: justify;
  }

  .pp-heidelberg-location__facts {
    list-style: none;
    margin: 0 0 18px;
    padding: 0;
    display: grid;
    grid-template-columns: 1fr;
    gap: 1px;
    background: var(--pp-line);
    border: 1px solid var(--pp-line);
    border-radius: 8px;
    overflow: hidden;
    min-width: 0;
  }

  .pp-heidelberg-location__fact {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    background: #ffffff;
    padding: 11px 14px;
    min-width: 0;
  }

  .pp-heidelberg-location__fact-label {
    flex: 0 0 auto;
    margin: 0;
    color: var(--pp-text);
    font-size: 13.5px;
    line-height: 1.7;
    font-weight: 700;
  }

  .pp-heidelberg-location__fact-value {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
    color: var(--pp-navy);
    font-size: 15px;
    line-height: 1.8;
    font-weight: 700;
    text-align: left;
    word-break: break-word;
  }

  .pp-heidelberg-location__note {
    margin: 0;
    padding: 15px 16px;
    background: var(--pp-bg);
    border: 1px solid var(--pp-line);
    border-right: 3px solid var(--pp-navy);
    border-radius: 0 8px 8px 0;
    min-width: 0;
  }

  .pp-heidelberg-location__note-text {
    margin: 0 0 12px;
    color: var(--pp-text);
    font-size: 16px;
    line-height: 2;
    text-align: justify;
  }

  .pp-heidelberg-location__note-text:last-child {
    margin-bottom: 0;
  }

  .pp-heidelberg-location__note-text strong {
    color: var(--pp-navy);
    font-weight: 700;
  }

  @media (min-width: 640px) {
    .pp-heidelberg-location {
      padding: 12px 0 36px;
      font-size: 17px;
      line-height: 2;
    }

    .pp-heidelberg-location__title {
      font-size: 25px;
    }

    .pp-heidelberg-location__title-en {
      font-size: 16px;
    }

    .pp-heidelberg-location__lead {
      font-size: 18px;
    }

    .pp-heidelberg-location__facts {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .pp-heidelberg-location__fact {
      flex-direction: column;
      align-items: flex-start;
      justify-content: flex-start;
      gap: 4px;
      padding: 14px 16px;
    }


    .pp-heidelberg-location__fact-value {
      text-align: right;
      font-size: 15.5px;
    }

    .pp-heidelberg-location__note {
      padding: 18px 20px;
    }
  }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-1b0273f */.pp-heidelberg-university {
    --pp-navy: #1c2539;
    --pp-red: #e13833;
    --pp-yellow: #fdcc0e;
    --pp-bg: #f4f5f7;
    --pp-text: #4b5563;
    --pp-line: #d9dde4;
    box-sizing: border-box;
    direction: rtl;
    text-align: right;
    font-family: inherit;
    color: var(--pp-text);
    max-width: 820px;
    margin: 0 auto;
    padding: 8px 16px 28px;
    min-width: 0;
    font-size: 16px;
    line-height: 1.95;
  }

  .pp-heidelberg-university ,
  .pp-heidelberg-university *::before,

  .pp-heidelberg-university *::after {
    box-sizing: border-box;
  }

  .pp-heidelberg-university__head {
    margin: 0 0 18px;
    min-width: 0;
  }

  .pp-heidelberg-university__title {
    margin: 0 0 6px;
    color: var(--pp-navy);
    font-size: 21px;
    line-height: 1.7;
    font-weight: 700;
  }

  .pp-heidelberg-university__subtitle {
    margin: 0 0 12px;
    color: var(--pp-text);
    font-size: 13.5px;
    line-height: 1.8;
    font-weight: 400;
    direction: ltr;
    text-align: right;
    word-break: break-word;
  }

  .pp-heidelberg-university__rule {
    display: block;
    width: 64px;
    height: 3px;
    border-radius: 2px;
    background: var(--pp-red);
  }

  .pp-heidelberg-university__lead {
    margin: 0 0 18px;
    color: #2f3a4d;
    font-size: 16.5px;
    line-height: 2;
    text-align: justify;
  }

  .pp-heidelberg-university__stats {
    list-style: none;
    margin: 0 0 18px;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    min-width: 0;
  }

  .pp-heidelberg-university__stat {
    display: flex;
    flex-direction: column;
    gap: 4px;
    background: var(--pp-bg);
    border: 1px solid var(--pp-line);
    border-top: 3px solid var(--pp-navy);
    border-radius: 8px;
    padding: 12px 13px;
    min-width: 0;
  }

  .pp-heidelberg-university__stat-value {
    margin: 0;
    color: var(--pp-navy);
    font-size: 19px;
    line-height: 1.5;
    font-weight: 700;
    word-break: break-word;
  }

  .pp-heidelberg-university__stat-label {
    margin: 0;
    color: var(--pp-text);
    font-size: 13.5px;
    line-height: 1.7;
  }

  .pp-heidelberg-university__stat-source {
    margin: 2px 0 0;
    padding: 1px 6px;
    align-self: flex-start;
    border: 1px solid var(--pp-line);
    border-radius: 4px;
    background: #ffffff;
    color: #6b7280;
    font-size: 11px;
    line-height: 1.7;
    font-weight: 700;
    white-space: nowrap;
  }

  .pp-heidelberg-university__body {
    margin: 0 0 14px;
    color: var(--pp-text);
    font-size: 16px;
    line-height: 2;
    text-align: justify;
  }

  .pp-heidelberg-university__body strong {
    color: var(--pp-navy);
    font-weight: 700;
  }

  .pp-heidelberg-university__rank {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin: 0;
    padding: 15px 16px;
    background: #ffffff;
    border: 1px solid var(--pp-line);
    border-right: 3px solid var(--pp-yellow);
    border-radius: 0 8px 8px 0;
    min-width: 0;
  }

  .pp-heidelberg-university__rank-mark {
    flex: 0 0 auto;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--pp-yellow);
    margin-top: 10px;
  }

  .pp-heidelberg-university__rank-text {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
    color: var(--pp-text);
    font-size: 16px;
    line-height: 2;
    text-align: justify;
  }

  .pp-heidelberg-university__rank-text strong {
    color: var(--pp-navy);
    font-weight: 700;
  }

  @media (min-width: 640px) {
    .pp-heidelberg-university {
      padding: 12px 0 36px;
      font-size: 17px;
      line-height: 2;
    }

    .pp-heidelberg-university__title {
      font-size: 25px;
    }

    .pp-heidelberg-university__subtitle {
      font-size: 14.5px;
    }

    .pp-heidelberg-university__lead {
      font-size: 18px;
    }

    .pp-heidelberg-university__stats {
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 12px;
    }

    .pp-heidelberg-university__stat-value {
      font-size: 22px;
    }

    .pp-heidelberg-university__rank {
      padding: 18px 20px;
    }
  }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3e13e70 */.pp-heidelberg-compare {
    --pp-navy: #1c2539;
    --pp-red: #e13833;
    --pp-yellow: #fdcc0e;
    --pp-bg: #f4f5f7;
    --pp-text: #4b5563;
    --pp-line: #d9dde4;
    box-sizing: border-box;
    direction: rtl;
    text-align: right;
    font-family: inherit;
    color: var(--pp-text);
    max-width: 820px;
    margin: 0 auto;
    padding: 8px 16px 28px;
    min-width: 0;
    font-size: 16px;
    line-height: 1.95;
  }

  .pp-heidelberg-compare ,
  .pp-heidelberg-compare ::before,
  .pp-heidelberg-compare ::after {
    box-sizing: border-box;
  }

  .pp-heidelberg-compare__head {
    margin: 0 0 18px;
    min-width: 0;
  }

  .pp-heidelberg-compare__title {
    margin: 0 0 10px;
    color: var(--pp-navy);
    font-size: 21px;
    line-height: 1.7;
    font-weight: 700;
  }

  .pp-heidelberg-compare__rule {
    display: block;
    width: 64px;
    height: 3px;
    border-radius: 2px;
    background: var(--pp-red);
  }

  .pp-heidelberg-compare__lead {
    margin: 0 0 14px;
    color: #2f3a4d;
    font-size: 16.5px;
    line-height: 2;
    text-align: justify;
  }

  .pp-heidelberg-compare__lead:last-of-type {
    margin-bottom: 18px;
  }

  .pp-heidelberg-compare__lead strong {
    color: var(--pp-navy);
    font-weight: 700;
  }

  .pp-heidelberg-compare__table-wrap {
    margin: 0;
    min-width: 0;
  }

  .pp-heidelberg-compare__table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid var(--pp-line);
    border-radius: 8px;
    overflow: hidden;
    table-layout: fixed;
    font-size: 14.5px;
    line-height: 1.85;
  }

  .pp-heidelberg-compare__caption {
    caption-side: top;
    padding: 0 0 10px;
    color: var(--pp-text);
    font-size: 13.5px;
    line-height: 1.8;
    text-align: right;
    font-weight: 700;
  }

  .pp-heidelberg-compare__thead-row {
    background: var(--pp-navy);
  }

  .pp-heidelberg-compare__th {
    padding: 12px 14px;
    color: #ffffff;
    text-align: right;
    vertical-align: middle;
    font-size: 14.5px;
    line-height: 1.7;
    font-weight: 700;
    border-left: 1px solid rgba(255, 255, 255, 0.18);
  }

  .pp-heidelberg-compare__th:last-child {
    border-left: 0;
  }

  .pp-heidelberg-compare__th--criteria {
    width: 22%;
    background: #162030;
  }

  .pp-heidelberg-compare__th--heidelberg {
    width: 39%;
  }

  .pp-heidelberg-compare__th--humboldt {
    width: 39%;
  }

  .pp-heidelberg-compare__row:nth-child(even) {
    background: #fafbfc;
  }

  .pp-heidelberg-compare__row:not(:last-child) .pp-heidelberg-compare__cell {
    border-bottom: 1px solid var(--pp-line);
  }

  .pp-heidelberg-compare__cell {
    padding: 12px 14px;
    vertical-align: top;
    text-align: right;
    color: var(--pp-text);
    font-size: 14.5px;
    line-height: 1.85;
    word-break: break-word;
    overflow-wrap: anywhere;
    border-left: 1px solid var(--pp-line);
  }

  .pp-heidelberg-compare__cell:last-child {
    border-left: 0;
  }

  .pp-heidelberg-compare__cell--criteria {
    background: var(--pp-bg);
    color: var(--pp-navy);
    font-weight: 700;
  }

  .pp-heidelberg-compare__cell--heidelberg {
    color: var(--pp-text);
  }

  .pp-heidelberg-compare__row:last-child .pp-heidelberg-compare__cell {
    border-bottom: 0;
  }

  @media (max-width: 639px) {
    .pp-heidelberg-compare__table,
    .pp-heidelberg-compare__tbody,
    .pp-heidelberg-compare__row,
    .pp-heidelberg-compare__cell {
      display: block;
      width: 100%;
    }

    .pp-heidelberg-compare__table {
      border: 0;
      font-size: 15px;
    }

    .pp-heidelberg-compare__caption {
      padding-bottom: 12px;
    }
    .pp-heidelberg-compare__thead {
      position: absolute;
      width: 1px;
      height: 1px;
      overflow: hidden;
      clip: rect(0 0 0 0);
      white-space: nowrap;
      border: 0;
    }

    .pp-heidelberg-compare__row {
      margin: 0 0 12px;
      border: 1px solid var(--pp-line);
      border-radius: 8px;
      overflow: hidden;
      background: #ffffff;
    }

    .pp-heidelberg-compare__row:nth-child(even) {
      background: #ffffff;
    }

    .pp-heidelberg-compare__cell {
      border-left: 0;
      border-bottom: 0;
      padding: 11px 13px;
      font-size: 15px;
      line-height: 1.9;
    }

    .pp-heidelberg-compare__cell--criteria {
      background: var(--pp-navy);
      color: #ffffff;
      font-size: 14.5px;
      padding: 10px 13px;
    }

    .pp-heidelberg-compare__cell[data-col]::before {
      content: attr(data-col);
      display: block;
      margin: 0 0 3px;
      color: var(--pp-text);
      font-size: 12px;
      line-height: 1.7;
      font-weight: 700;
    }

    .pp-heidelberg-compare__cell--heidelberg {
      border-bottom: 1px solid var(--pp-line);
    }
  }

  @media (min-width: 640px) {
    .pp-heidelberg-compare {
      padding: 12px 0 36px;
      font-size: 17px;
      line-height: 2;
    }

    .pp-heidelberg-compare__title {
      font-size: 25px;
    }

    .pp-heidelberg-compare__lead {
      font-size: 18px;
    }

    .pp-heidelberg-compare__table {
      font-size: 15px;
    }

    .pp-heidelberg-compare__th {
      font-size: 15px;
      padding: 13px 16px;
    }

    .pp-heidelberg-compare__cell {
      font-size: 15px;
      padding: 13px 16px;
    }
  }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b8ea210 */.pp-heidelberg-ranking {
    --pp-navy: #1c2539;
    --pp-red: #e13833;
    --pp-yellow: #fdcc0e;
    --pp-bg: #f4f5f7;
    --pp-text: #4b5563;
    --pp-line: #d9dde4;
    box-sizing: border-box;
    direction: rtl;
    text-align: right;
    font-family: inherit;
    color: var(--pp-text);
    max-width: 820px;
    margin: 0 auto;
    padding: 8px 16px 28px;
    min-width: 0;
    font-size: 16px;
    line-height: 1.95;
  }

  .pp-heidelberg-ranking ,
  .pp-heidelberg-ranking ::before,
  .pp-heidelberg-ranking ::after {
    box-sizing: border-box;
  }

  .pp-heidelberg-ranking__head {
    margin: 0 0 18px;
    min-width: 0;
  }

  .pp-heidelberg-ranking__title {
    margin: 0 0 10px;
    color: var(--pp-navy);
    font-size: 21px;
    line-height: 1.7;
    font-weight: 700;
  }

  .pp-heidelberg-ranking__rule {
    display: block;
    width: 64px;
    height: 3px;
    border-radius: 2px;
    background: var(--pp-red);
  }

  .pp-heidelberg-ranking__lead {
    margin: 0 0 18px;
    color: #2f3a4d;
    font-size: 16.5px;
    line-height: 2;
    text-align: justify;
  }


  .pp-heidelberg-ranking__table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid var(--pp-line);
    border-radius: 8px;
    overflow: hidden;
    table-layout: fixed;
    font-size: 14.5px;
    line-height: 1.85;
  }

  .pp-heidelberg-ranking__caption {
    caption-side: top;
    padding: 0 0 10px;
    color: var(--pp-text);
    font-size: 13.5px;
    line-height: 1.8;
    text-align: right;
    font-weight: 700;
  }

  .pp-heidelberg-ranking__thead-row {
    background: var(--pp-navy);
  }

  .pp-heidelberg-ranking__th {
    padding: 12px 14px;
    color: #ffffff;
    text-align: right;
    vertical-align: middle;
    font-size: 14.5px;
    line-height: 1.7;
    font-weight: 700;
    border-left: 1px solid rgba(255, 255, 255, 0.18);
  }

  .pp-heidelberg-ranking__th:last-child {
    border-left: 0;
  }

  .pp-heidelberg-ranking__th--system {
    width: 40%;
    background: #162030;
  }

  .pp-heidelberg-ranking__th--rank {
    width: 20%;
    text-align: center;
  }

  .pp-heidelberg-ranking__row:nth-child(even) {
    background: #fafbfc;
  }

  .pp-heidelberg-ranking__cell {
    padding: 12px 14px;
    vertical-align: middle;
    text-align: right;
    color: var(--pp-text);
    font-size: 14.5px;
    line-height: 1.85;
    border-bottom: 1px solid var(--pp-line);
    word-break: break-word;
    overflow-wrap: anywhere;
  }

  .pp-heidelberg-ranking__row:last-child .pp-heidelberg-ranking__cell {
    border-bottom: 0;
  }

  .pp-heidelberg-ranking__cell--system {
    background: var(--pp-bg);
    color: var(--pp-navy);
    font-weight: 700;
    border-left: 1px solid var(--pp-line);
  }

  .pp-heidelberg-ranking__system-name {
    display: inline;
  }

  .pp-heidelberg-ranking__system-en {
    display: block;
    margin-top: 3px;
    color: var(--pp-text);
    font-size: 12.5px;
    line-height: 1.7;
    font-weight: 400;
    direction: ltr;
    text-align: right;
  }

  .pp-heidelberg-ranking__cell--rank {
    text-align: center;
    color: var(--pp-navy);
    font-size: 16px;
    font-weight: 700;
    border-left: 1px solid var(--pp-line);
  }

  .pp-heidelberg-ranking__cell--rank:last-child {
    border-left: 0;
  }

  .pp-heidelberg-ranking__rank-dot {
    display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--pp-yellow);
    margin-left: 5px;
    vertical-align: middle;
  }

  .pp-heidelberg-ranking__footnote {
    margin: 10px 0 0;
    color: var(--pp-text);
    font-size: 12.5px;
    line-height: 1.8;
    text-align: right;
  }

  @media (max-width: 639px) {
    .pp-heidelberg-ranking__table,
    .pp-heidelberg-ranking__tbody,
    .pp-heidelberg-ranking__row,
    .pp-heidelberg-ranking__cell {
      display: block;
      width: 100%;
    }

    .pp-heidelberg-ranking__table {
      border: 0;
      font-size: 15px;
    }

    .pp-heidelberg-ranking__thead {
      position: absolute;
      width: 1px;
      height: 1px;
      overflow: hidden;
      clip: rect(0 0 0 0);
      white-space: nowrap;
      border: 0;
    }

    .pp-heidelberg-ranking__row {
      margin: 0 0 12px;
      border: 1px solid var(--pp-line);
      border-radius: 8px;
      overflow: hidden;
      background: #ffffff;
    }

    .pp-heidelberg-ranking__row:nth-child(even) {
      background: #ffffff;
    }

    .pp-heidelberg-ranking__cell {
      border-bottom: 0;
      border-left: 0;
      padding: 10px 13px;
      font-size: 15px;
      line-height: 1.9;
    }

    .pp-heidelberg-ranking__cell--system {
      background: var(--pp-navy);
      color: #ffffff;
      padding: 11px 13px;
      border-bottom: 1px solid rgba(255, 255, 255, 0.15);
    }

    .pp-heidelberg-ranking__cell--system .pp-heidelberg-ranking__system-en {
      color: rgba(255, 255, 255, 0.78);
    }

    .pp-heidelberg-ranking__cell--rank {
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      gap: 10px;
      text-align: right;
      font-size: 16px;
      padding: 10px 13px;
    }


    .pp-heidelberg-ranking__cell--rank::before {
      content: attr(data-label);
      color: var(--pp-text);
      font-size: 13px;
      line-height: 1.7;
      font-weight: 700;
      flex: 0 0 auto;
    }

    .pp-heidelberg-ranking__cell--rank:not(:last-child) {
      border-bottom: 1px solid var(--pp-line);
    }

    .pp-heidelberg-ranking__rank-dot {
      display: none;
    }

    .pp-heidelberg-ranking__footnote {
      font-size: 12px;
    }
  }

  @media (min-width: 640px) {
    .pp-heidelberg-ranking {
      padding: 12px 0 36px;
      font-size: 17px;
      line-height: 2;
    }

    .pp-heidelberg-ranking__title {
      font-size: 25px;
    }

    .pp-heidelberg-ranking__lead {
      font-size: 18px;
    }

    .pp-heidelberg-ranking__table {
      font-size: 15px;
    }

    .pp-heidelberg-ranking__th {
      font-size: 15px;
      padding: 13px 16px;
    }

    .pp-heidelberg-ranking__cell {
      font-size: 15px;
      padding: 13px 16px;
    }

    .pp-heidelberg-ranking__cell--rank {
      font-size: 17px;
    }
  }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-9b4f7d2 */.pp-heidelberg-faculties {
    --pp-navy: #1c2539;
    --pp-red: #e13833;
    --pp-yellow: #fdcc0e;
    --pp-bg: #f4f5f7;
    --pp-text: #4b5563;
    --pp-line: #d9dde4;
    box-sizing: border-box;
    direction: rtl;
    text-align: right;
    font-family: inherit;
    color: var(--pp-text);
    max-width: 820px;
    margin: 0 auto;
    padding: 8px 16px 28px;
    min-width: 0;
    font-size: 16px;
    line-height: 1.95;
  }

  .pp-heidelberg-faculties ,
  .pp-heidelberg-faculties ::before,
  .pp-heidelberg-faculties ::after {
    box-sizing: border-box;
  }

  .pp-heidelberg-faculties__head {
    margin: 0 0 18px;
    min-width: 0;
  }

  .pp-heidelberg-faculties__title {
    margin: 0 0 10px;
    color: var(--pp-navy);
    font-size: 21px;
    line-height: 1.7;
    font-weight: 700;
  }

  .pp-heidelberg-faculties__rule {
    display: block;
    width: 64px;
    height: 3px;
    border-radius: 2px;
    background: var(--pp-red);
  }

  .pp-heidelberg-faculties__lead {
    margin: 0 0 18px;
    color: #2f3a4d;
    font-size: 16.5px;
    line-height: 2;
    text-align: justify;
  }
  .pp-heidelberg-faculties__figure {
    margin: 0 0 22px;
    min-width: 0;
    border: 1px solid var(--pp-line);
    border-radius: 8px;
    overflow: hidden;
    background: var(--pp-bg);
  }

  .pp-heidelberg-faculties__img {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
  }

  .pp-heidelberg-faculties__caption {
    margin: 0;
    padding: 9px 13px;
    color: var(--pp-text);
    font-size: 12.5px;
    line-height: 1.8;
    text-align: right;
    background: #ffffff;
    border-top: 1px solid var(--pp-line);
  }
  .pp-heidelberg-faculties__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    min-width: 0;
    counter-reset: pp-faculty;
  }

  .pp-heidelberg-faculties__item {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr);
    gap: 12px;
    align-items: start;
    background: #ffffff;
    border: 1px solid var(--pp-line);
    border-radius: 8px;
    padding: 13px 14px;
    min-width: 0;
    counter-increment: pp-faculty;
  }

  .pp-heidelberg-faculties__item::before {
    content: counter(pp-faculty, persian);
    display: block;
    width: 28px;
    height: 28px;
    border-radius: 4px;
    background: var(--pp-navy);
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    line-height: 28px;
    text-align: center;
  }

  .pp-heidelberg-faculties__body {
    min-width: 0;
  }

  .pp-heidelberg-faculties__name {
    margin: 0 0 5px;
    color: var(--pp-navy);
    font-size: 15.5px;
    line-height: 1.8;
    font-weight: 700;
  }

  .pp-heidelberg-faculties__text {
    margin: 0;
    color: var(--pp-text);
    font-size: 15.5px;
    line-height: 1.95;
    text-align: justify;
  }

  .pp-heidelberg-faculties__text strong {

    color: var(--pp-navy);
    font-weight: 700;
  }
  .pp-heidelberg-faculties__item--highlight {
    background: #fffdf9;
    border-right: 3px solid var(--pp-red);
    padding-right: 13px;
  }

  .pp-heidelberg-faculties__item--highlight .pp-heidelberg-faculties__name {
    color: #a82824;
  }

  .pp-heidelberg-faculties__item--highlight::before {
    background: var(--pp-red);
  }

  @media (min-width: 640px) {
    .pp-heidelberg-faculties {
      padding: 12px 0 36px;
      font-size: 17px;
      line-height: 2;
    }

    .pp-heidelberg-faculties__title {
      font-size: 25px;
    }

    .pp-heidelberg-faculties__lead {
      font-size: 18px;
    }

    .pp-heidelberg-faculties__list {
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
    }

    .pp-heidelberg-faculties__item {
      padding: 15px 16px;
    }

    .pp-heidelberg-faculties__name {
      font-size: 16px;
    }

    .pp-heidelberg-faculties__text {
      font-size: 15.5px;
    }
  }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8b8b0e7 */.pp-heidelberg-admission {
    --pp-navy: #1c2539;
    --pp-red: #e13833;
    --pp-yellow: #fdcc0e;
    --pp-bg: #f4f5f7;
    --pp-text: #4b5563;
    --pp-line: #d9dde4;
    box-sizing: border-box;
    direction: rtl;
    text-align: right;
    font-family: inherit;
    color: var(--pp-text);
    max-width: 820px;
    margin: 0 auto;
    padding: 8px 16px 28px;
    min-width: 0;
    font-size: 16px;
    line-height: 1.95;
  }

  .pp-heidelberg-admission ,
  .pp-heidelberg-admission ::before,
  .pp-heidelberg-admission ::after {
    box-sizing: border-box;
  }

  .pp-heidelberg-admission__head {
    margin: 0 0 18px;
    min-width: 0;
  }

  .pp-heidelberg-admission__title {
    margin: 0 0 10px;
    color: var(--pp-navy);
    font-size: 21px;
    line-height: 1.7;
    font-weight: 700;
  }

  .pp-heidelberg-admission__rule {
    display: block;
    width: 64px;
    height: 3px;
    border-radius: 2px;
    background: var(--pp-red);
    position: relative;
  }

  .pp-heidelberg-admission__rule::after {
    content: "";
    position: absolute;
    right: 72px;
    top: 1px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--pp-yellow);
  }

  .pp-heidelberg-admission__lead {
    margin: 0 0 20px;
    color: #2f3a4d;
    font-size: 16.5px;
    line-height: 2;
    text-align: justify;
  }

  .pp-heidelberg-admission__figure {
    margin: 0 0 22px;
    min-width: 0;
    border: 1px solid var(--pp-line);
    border-radius: 8px;
    overflow: hidden;
    background: var(--pp-bg);
  }

  .pp-heidelberg-admission__img {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
  }

  .pp-heidelberg-admission__caption {
    margin: 0;
    padding: 9px 13px;
    color: var(--pp-text);
    font-size: 12.5px;
    line-height: 1.8;
    text-align: right;
    background: #ffffff;
    border-top: 1px solid var(--pp-line);
  }

  .pp-heidelberg-admission__block {
    margin: 0 0 22px;
    min-width: 0;
  }

  .pp-heidelberg-admission__block-head {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    margin: 0 0 10px;
    min-width: 0;
  }

  .pp-heidelberg-admission__num {
    width: 28px;
    height: 28px;
    border-radius: 4px;
    background: var(--pp-navy);
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    line-height: 28px;

    text-align: center;
  }

  .pp-heidelberg-admission__subtitle {
    margin: 0;
    color: var(--pp-navy);
    font-size: 17px;
    line-height: 1.8;
    font-weight: 700;
  }

  .pp-heidelberg-admission__text {
    margin: 0 0 12px;
    color: var(--pp-text);
    font-size: 16px;
    line-height: 2;
    text-align: justify;
  }

  .pp-heidelberg-admission__text:last-child {
    margin-bottom: 0;
  }

  .pp-heidelberg-admission__text strong {
    color: var(--pp-navy);
    font-weight: 700;
  }

  .pp-heidelberg-admission__certs {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    min-width: 0;
  }

  .pp-heidelberg-admission__cert {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    background: #ffffff;
    border: 1px solid var(--pp-line);
    border-radius: 8px;
    padding: 10px 12px;
    min-width: 0;
  }

  .pp-heidelberg-admission__cert-name {
    margin: 0;
    color: var(--pp-text);
    font-size: 15px;
    line-height: 1.9;
  }

  .pp-heidelberg-admission__cert-name strong {
    color: var(--pp-navy);
    font-weight: 700;
  }

  .pp-heidelberg-admission__cert-tag {
    flex: 0 0 auto;
    margin: 0;
    padding: 1px 7px;
    border: 1px solid var(--pp-line);
    border-radius: 4px;
    background: var(--pp-bg);
    color: var(--pp-navy);
    font-size: 11.5px;
    line-height: 1.7;
    font-weight: 700;
    white-space: nowrap;
  }

  .pp-heidelberg-admission__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 6px;
    min-width: 0;
  }

  .pp-heidelberg-admission__list-item {
    position: relative;
    padding: 0 20px 0 0;
    color: var(--pp-text);
    font-size: 16px;
    line-height: 1.95;
    min-width: 0;
  }

  .pp-heidelberg-admission__list-item::before {
    content: "";
    position: absolute;
    right: 4px;
    top: 11px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--pp-navy);
  }

  .pp-heidelberg-admission__list-item strong {
    color: var(--pp-navy);
    font-weight: 700;
  }

  .pp-heidelberg-admission__note {
    margin: 12px 0 0;
    padding: 13px 15px;
    background: var(--pp-bg);
    border: 1px solid var(--pp-line);
    border-right: 3px solid var(--pp-navy);
    border-radius: 0 8px 8px 0;
    min-width: 0;
  }

  .pp-heidelberg-admission__note-text {
    margin: 0;
    color: var(--pp-text);
    font-size: 15px;
    line-height: 1.95;
  }

  .pp-heidelberg-admission__experience {
    margin: 14px 0 0;
    padding: 13px 15px;
    background: #ffffff;
    border: 1px solid var(--pp-line);
    border-right: 3px solid var(--pp-red);
    border-radius: 0 8px 8px 0;
    min-width: 0;
  }

  .pp-heidelberg-admission__experience-label {
    display: inline-block;
    margin: 0 0 6px;
    padding: 1px 7px;
    border-radius: 4px;
    background: #fbecec;
    color: #a82824;
    font-size: 11.5px;
    line-height: 1.8;
    font-weight: 700;
  }

  .pp-heidelberg-admission__experience-text {
    margin: 0;
    color: var(--pp-text);
    font-size: 15px;
    line-height: 1.95;
  }

  @media (min-width: 640px) {
    .pp-heidelberg-admission {
      padding: 12px 0 36px;
      font-size: 17px;
      line-height: 2;
    }

    .pp-heidelberg-admission__title {
      font-size: 25px;
    }

    .pp-heidelberg-admission__lead {
      font-size: 18px;
    }

    .pp-heidelberg-admission__subtitle {
      font-size: 19px;
    }

    .pp-heidelberg-admission__certs {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pp-heidelberg-admission__block {
      margin-bottom: 26px;
    }
  }/* End custom CSS */