/* screen - pricing-page-ui */

.pricing-page-ui {
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: var(--white);
  width: 100%;
  margin-top: clamp(48px, 7.5dvw, 72px);

  .home-get-started {
    margin-top: 100px;
    margin-bottom: 80px;

    @media screen and (max-width: 768px) {
      margin-top: 50px;
      margin-bottom: 40px;
    }
  }
}

.pricing-container {
  max-width: 1140px;
  width: 100%;

  &.small {
    max-width: 945px;

    @media screen and (max-width: 768px) {
      max-width: 100%;
      padding: 0 16px;
    }
  }

  @media screen and (max-width: 768px) {
    max-width: 100%;
    padding: 0 16px;
  }
}

/* Title */
.pricing-title {
  display: flex;
  padding-top: clamp(32px, 6.5dvw, 56px);

  h1, p {
    color: var(--black-2);
    font-family: var(--font-family);
    text-align: center;
    margin: 0;
  }

  h1 {
    font-size: clamp(24px, 7.5dvw, 38px);
    line-height: clamp(29.3px, 5dvw, 46.4px);
    font-weight: 700;
  }

  p {
    font-size: clamp(14px, 4.25dvw, 16px);
    line-height: clamp(16px, 4dvw, 19.09px);
    font-weight: 400;
    margin-top: 16px;
  }
}

/* Pricing plans */
.pricing-plans {
  margin-top: clamp(20px, 4dvw, 33px);

  @media screen and (max-width: 1024px) {
    padding: 0 16px;
  }

  @media screen and (max-width: 768px) {
    padding: 0;
  }

  .pricing-container {
    display: flex;
    gap: 24px;
    width: 100%;

    > div {
      display: flex;
      align-items: center;
      width: 100%;
    }

    @media screen and (max-width: 768px) {
      flex-direction: column;
    }
  }

  .plan-card {
    display: flex;
    flex-direction: column;
    padding: 24px 32px;
    border-radius: 14px;
    border: 1px solid var(--colorprimarymain);

    > div:first-of-type {
      display: flex;
      gap: 16px;
      width: 100%;
      margin-bottom: 12px;

      > div {
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: 4px;
      }

      h3, p {
        color: var(--black-2);
        font-family: var(--font-family);
        margin: 0;
      }

      h3 {
        font-size: clamp(18px, 7.5dvw, 24px);
        line-height: clamp(24px, 5dvw, 29.3px);
        font-weight: 500;
      }

      p {
        font-size: clamp(12px, 4.25dvw, 14px);
        line-height: clamp(14px, 4dvw, 16.7px);
        font-weight: 400;
      }
    }

    > div:last-of-type {
      flex-grow: 1;
      align-content: end;
      align-self: flex-start;
      width: 100%;
      margin-top: 28px;

      > span {
        color: var(--black-2);
        font-family: var(--font-family);
        font-size: clamp(14px, 7.5dvw, 16px);
        line-height: clamp(17px, 5dvw, 19.09px);
        font-weight: 400;

        strong {
          font-size: clamp(22px, 4.5dvw, 28px);
          line-height: clamp(24px, 5dvw, 34.19px);
          font-weight: 700;
        }
      }

      button {
        width: 100%;
        margin-top: 22px;
      }
    }

    > p {
      color: var(--colorgreydark);
      font-family: var(--font-family);
      font-size: clamp(14px, 7.5dvw, 16px);
      line-height: clamp(17px, 5dvw, 19.09px);
      font-weight: 400;
      margin: 0;
    }

    @media screen and (max-width: 768px) {
      padding: 20px 16px;

      svg {
        width: 60px;
        height: 60px;
      }
    }
  }
}

.create-account {
	display: flex;
	justify-content: center;
	align-items: center;
    margin: 48px auto;
	
	.create-container {
    	background-image: url(../img/pattern.svg);
    	background-size: 100% 100%;
		border: 1px solid;
        border-color: #0000000f;
        border-radius: 18px;
        box-shadow: 4px 11px 31px #00000018;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 24px;
		padding: 24px 40px;
		width: 550px;
	}
	
	.create-account-text {
    	color: var(--black-2);
    	font-family: var(--font-family);
        font-size: var(--font-size-xxl);
        font-weight: 500;
        text-align: center;
        line-height: 1.3;
	}
}

/* Benefits */
.pricing-benefits {
  margin-top: 40px;

  @media screen and (max-width: 1024px) {
    padding: 0 16px;
  }

  @media screen and (max-width: 768px) {
    padding: 0;
  }

  h4 {
    color: var(--black-2);
    font-family: var(--font-family);
    font-size: clamp(20px, 6dvw, 24px);
    line-height: clamp(24.42px, 5dvw, 29.3px);
    font-weight: 700;
    margin: 0;
    text-align: center;
  }

  .pricing-benefits-cards {
    display: flex;
    gap: 23px;
    padding: 0 40px;
    width: 100%;
    margin-top: 40px;

    @media screen and (max-width: 768px) {
      flex-direction: column;
      padding: 0;
    }

    div {
      display: flex;
      align-items: center;
      gap: 16px;
      width: 100%;

      svg {
        flex-shrink: 0;
      }

      > p {
        color: var(--black-2);
        font-family: var(--font-family);
        font-size: clamp(14px, 7.5dvw, 16px);
        line-height: clamp(17px, 5dvw, 19.09px);
        font-weight: 400;
        margin: 0;
      }
    }
  }

  .pricing-benefits-table {
    display: flex;
    flex-direction: column;
    align-items: center;
    border-radius: 12px;
    margin-top: 40px;
    border: 1px solid var(--colorgreylighter);

    > div:first-of-type {
      display: flex;
      width: 100%;

      @media screen and (max-width: 768px) {
        flex-direction: column;
      }

      div:first-of-type {
        display: flex;
        flex-direction: column;
        padding: 20px 44px 40px 32px;
        border-right: 1px solid var(--colorgreylighter);
        width: 50%;

        @media screen and (max-width: 768px) {
          border-right: none;
          padding: 20px 16px;
          width: 100%;
        }
      }

      div:last-of-type {
        display: flex;
        flex-direction: column;
        padding: 20px 32px 40px 44px;
        width: 50%;

        @media screen and (max-width: 768px) {
          padding: 20px 16px;
          width: 100%;
        }
      }
    }

    > div:last-of-type {
      width: 100%;
      padding: 21px 10px;
      border-top: 1px solid var(--colorgreylighter);
      background: var(--shuttle-gray);

      p {
        color: var(--black-2);
        font-family: var(--font-family);
        font-size: clamp(12px, 7.5dvw, 18px);
        line-height: clamp(17px, 5dvw, 21.98px);
        font-weight: 500;
        margin: 0;
        text-align: center;
      }
    }
    
    .pricing-table-subtitle {
      color: var(--black-2);
      font-family: var(--font-family);
      font-size: clamp(20px, 7.5dvw, 24px);
      line-height: clamp(24px, 5dvw, 29px);
      font-weight: 500;
      margin: 0;
      padding: 4px 0px 0px 32px;
    }

    ul {
      flex-grow: 1;
      height: 100%;
      list-style: none;
      margin: 0;
      padding: 32px 0px;

      li {
        display: flex;
        gap: 8px;
        padding: 4px 0;
        min-height: 57.3px;
      }

      img {
        align-self: flex-start;
      }

      span {
        color: var(--black-2);
        font-family: var(--font-family);
        font-size: clamp(14px, 7.5dvw, 16px);
        line-height: clamp(17px, 5dvw, 19.09px);
        font-weight: 400;
        margin: 0;
      }
    }

    button {
      width: 100%;
      margin-top: 10px;

      @media screen and (max-width: 768px) {
        margin-top: 20px;
      }
    }
  }
}

/* Questions */
.pricing-questions {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;

  @media screen and (max-width: 1024px) {
    padding: 0 16px;
  }

  @media screen and (max-width: 768px) {
    padding: 0;
  }

  .pricing-container div {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
  }

  h2 {
    color: var(--black-2);
    font-family: var(--font-family);
    font-size: clamp(24px, 6dvw, 34px);
    line-height: clamp(36px, 5dvw, 41.51px);
    font-weight: 700;
    margin: 0 0 48px 0;
    text-align: center;

    @media screen and (max-width: 768px) {
      margin-bottom: 30px;
    }
  }

  .shadow {
    box-shadow: 0px 6px 14px 0px #E1E3E980;
  }
}