.card-photo {
  margin-bottom: 20px; }
  .card-photo:nth-child(odd) {
    padding-left: 0;
    padding-right: 3px; }
  .card-photo:nth-child(even) {
    padding-right: 0;
    padding-left: 3px; }
  .card-photo .buttons {
    margin-top: 5px; }
  .card-photo h3 {
    font-size: 30rem;
    text-align: center;
    margin: 0;
    color: var(--secondary-title);
    font-weight: 600;
    text-transform: uppercase; }
  .card-photo p {
    text-align: left;
    color: var(--secondary-text);
    font-size: 17rem;
    margin-bottom: 0;
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    max-width: 655px; }
  .card-photo .wrapper {
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    border: none;
    position: relative; }
  .card-photo .title {
    position: absolute;
    left: 0;
    top: 0;
    background-color: var(--element2-color);
    padding: 24px 40px;
    padding-right: 51px; }
  .card-photo .text {
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 30px;
    height: fit-content;
    width: 100%;
    background-color: var(--transparent-color3);
    min-height: 15.2vw;
    display: flex;
    align-items: center;
    justify-content: center; }
    .card-photo .text h4, .card-photo .text h3, .card-photo .text h2 {
      color: var(--secondary-title);
      overflow: hidden;
      text-overflow: ellipsis;
      display: -webkit-box;
      -webkit-line-clamp: 2;
      margin-top: 0;
      -webkit-box-orient: vertical;
      text-align: center;
      font-size: 29rem;
      margin-bottom: 15px;
      max-width: 630px;
      font-weight: 600; }
  .card-photo .photo {
    width: 100%;
    height: 100%; }
    .card-photo .photo .image {
      display: flex;
      justify-content: center;
      align-items: center; }
    .card-photo .photo img {
      width: 100%;
      height: 37.5vw;
      object-fit: cover; }
  .card-photo .text-inner {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    height: 100%; }

@media (max-width: 575.5px) {
  .card-photo {
    padding: 0 15px !important;
    margin-bottom: 15px; }
    .card-photo h3 {
      font-size: 18rem; }
    .card-photo .photo img {
      height: 65.5vw; }
    .card-photo .title {
      padding: 11px 15px;
      padding-right: 20px; }
      .card-photo .title h3 {
        margin-bottom: 0; }
    .card-photo .text {
      padding: 20px 15px;
      position: initial;
      min-height: fit-content; }
      .card-photo .text h1, .card-photo .text h2, .card-photo .text h3, .card-photo .text h4 {
        font-size: 19rem;
        max-width: 410px;
        -webkit-line-clamp: none;
        margin-bottom: 7px; }
    .card-photo p {
      font-size: 16rem;
      max-width: 410px;
      -webkit-line-clamp: none; }
    .card-photo .buttons .btn {
      font-size: 16rem;
      margin-top: 5px; } }
@media (min-width: 576px) and (max-width: 767.5px) {
  .card-photo {
    padding: 0 15px !important;
    margin-bottom: 15px; }
    .card-photo h3 {
      font-size: 20rem; }
    .card-photo .photo img {
      height: 75.5vw; }
    .card-photo .title {
      padding: 11px 15px;
      padding-right: 20px; }
      .card-photo .title h3 {
        margin-bottom: 0; }
    .card-photo .text {
      padding: 20px 15px; }
      .card-photo .text h1, .card-photo .text h2, .card-photo .text h3, .card-photo .text h4 {
        font-size: 19rem;
        max-width: 410px;
        margin-bottom: 7px; }
    .card-photo p {
      font-size: 16rem;
      max-width: 410px; }
    .card-photo .buttons .btn {
      font-size: 16rem;
      margin-top: 5px; } }
@media (min-width: 768px) and (max-width: 991.5px) {
  .card-photo h3 {
    font-size: 18rem; }
  .card-photo .photo img {
    height: 43.5vw; }
  .card-photo .title {
    padding: 11px 15px;
    padding-right: 20px; }
    .card-photo .title h3 {
      margin-bottom: 0; }
  .card-photo .text {
    padding: 20px 15px; }
    .card-photo .text h1, .card-photo .text h2, .card-photo .text h3, .card-photo .text h4 {
      font-size: 16rem;
      max-width: 410px;
      margin-bottom: 7px; }
  .card-photo p {
    font-size: 12px;
    max-width: 410px; }
  .card-photo .buttons .btn {
    font-size: 13px;
    margin-top: 5px; } }
@media (min-width: 992px) and (max-width: 1199.5px) {
  .card-photo h3 {
    font-size: 20rem; }
  .card-photo .photo img {
    height: 40.5vw; }
  .card-photo .title {
    padding: 13px 20px;
    padding-right: 30px; }
    .card-photo .title h3 {
      margin-bottom: 0; }
  .card-photo .text {
    padding: 20px 15px; }
    .card-photo .text h1, .card-photo .text h2, .card-photo .text h3, .card-photo .text h4 {
      font-size: 18rem;
      max-width: 410px;
      margin-bottom: 7px; }
  .card-photo p {
    font-size: 14rem;
    max-width: 410px; }
  .card-photo .buttons .btn {
    margin-top: 0; } }
@media (min-width: 1200px) and (max-width: 1579.5px) {
  .card-photo h3 {
    font-size: 23rem; }
  .card-photo .title {
    padding: 18px 30px;
    padding-right: 40px; }
  .card-photo .text {
    padding: 25px 15px; }
    .card-photo .text h1, .card-photo .text h2, .card-photo .text h3, .card-photo .text h4 {
      font-size: 20rem;
      max-width: 410px; }
  .card-photo p {
    font-size: 15rem;
    max-width: 531px; } }
@media (min-width: 1580px) {
  .card-photo h3 {
    font-size: 22rem; }
  .card-photo .text h2, .card-photo .text h3, .card-photo .text h4 {
    font-size: 21rem;
    max-width: 520px; }
  .card-photo p {
    font-size: 14rem;
    max-width: 580px; } }

/*# sourceMappingURL=card_photo.css.map */
