.main-content {
  padding: 105px 150px; }
  @media (max-width: 800px) {
    .main-content {
      padding: 18px 18px; } }
.two-column {
  width: 100%;
  display: grid; }
  @media (min-width: 800px) {
    .two-column {
      grid-template-columns: 1fr 1fr; } }
.hero {
  margin-bottom: 140px; }
  .hero .left {
    display: flex;
    flex-direction: column; }
    @media (min-width: 800px) {
      .hero .left {
        position: relative;
        height: calc(100vh - 105px);
        justify-content: flex-end;
        padding-bottom: 60px; } }
    .hero .left .logo {
      mix-blend-mode: darken; }
      @media (min-width: 800px) {
        .hero .left .logo {
          position: absolute;
          top: 50px;
          left: 0; } }
    .hero .left .leaf {
      opacity: 0.74;
      position: absolute;
      left: 35%;
      top: 95px; }
    @media (min-width: 800px) {
      .hero .left .header {
        max-width: 28em;
        padding-right: 30px; } }
    .hero .left .header h1 {
      font-family: Meta-old-French;
      font-style: normal;
      font-weight: 400;
      line-height: 103%;
      /* 51.5px */
      text-decoration-thickness: 6%;
      text-underline-offset: 3px;
      color: #343131;
      text-decoration-color: #343131;
      -webkit-text-stroke-color: rgba(102, 92, 92, 0.71);
      margin-top: 1ex; }
      @media (min-width: 800px) {
        .hero .left .header h1 {
          font-size: 40px;
          letter-spacing: calc(40px * -0.02);
          -webkit-text-stroke-width: 0.75px; } }
      @media (max-width: 800px) {
        .hero .left .header h1 {
          font-size: 33px;
          letter-spacing: calc(33px * -0.02);
          -webkit-text-stroke-width: 0.25px; } }
@media (max-width: 800px) {
  .cta {
    align-items: center;
    padding-top: 110px; }
    .cta .logo {
      width: 80px; }
    .cta .header {
      text-align: center;
      margin-top: 28px;
      margin-bottom: 60px;
      color: #343131;
      text-decoration-color: #343131;
      -webkit-text-stroke-color: rgba(102, 92, 92, 0.71);
      max-width: 23em; }
    .cta > .line {
      width: 2px;
      height: 90px;
      background: rgba(0, 0, 0, 0.22);
      mix-blend-mode: luminosity; } }

.who-we-are {
  margin-bottom: calc(120px - 30px); }
  @media (min-width: 800px) {
    .who-we-are {
      padding: 0 50px; } }
  .who-we-are > h2 {
    font-family: Meta-old-French;
    font-style: normal;
    font-weight: 400;
    line-height: 103%;
    /* 51.5px */
    text-decoration-line: underline;
    text-decoration-style: solid;
    -webkit-text-decoration-skip: ink;
            text-decoration-skip-ink: auto;
    text-decoration-thickness: 5%;
    text-underline-offset: auto;
    text-underline-position: from-font;
    color: #343131;
    text-decoration-color: #343131;
    -webkit-text-stroke-color: rgba(102, 92, 92, 0.71);
    text-align: center;
    max-width: 330px;
    margin: auto;
    margin-bottom: 90px; }
    .who-we-are > h2 span.ampersand {
      font-family: 'Hershey-Noailles-Times'; }
    @media (min-width: 800px) {
      .who-we-are > h2 {
        font-size: 37px;
        letter-spacing: calc(37px * -0.02);
        -webkit-text-stroke-width: 0.75px; }
        .who-we-are > h2 span.ampersand {
          font-size: 39px;
          font-family: 'Hershey-Noailles-Times'; } }
    @media (max-width: 800px) {
      .who-we-are > h2 {
        font-size: 33px;
        letter-spacing: calc(33px * -0.02);
        -webkit-text-stroke-width: 0.25px;
        line-height: 92%;
        /* 51.5px */ } }
    @media (max-width: 800px) {
      .who-we-are > h2 {
        margin-bottom: 45px; } }
  .who-we-are .team-members {
    border-top: 2px solid rgba(0, 0, 0, 0.22); }
    .who-we-are .team-members .team-member {
      border-bottom: 2px solid rgba(0, 0, 0, 0.22);
      padding: 40px 0;
      display: grid;
      grid-template-columns: repeat(2, 1fr); }
      @media (max-width: 800px) {
        .who-we-are .team-members .team-member {
          grid-template-columns: max-content 1fr;
          gap: 35px;
          padding: 22px 0; }
          .who-we-are .team-members .team-member img {
            width: 85px; } }
      .who-we-are .team-members .team-member .name-role h1,
      .who-we-are .team-members .team-member .name-role h2,
      .who-we-are .team-members .team-member .name-role h3,
      .who-we-are .team-members .team-member .name-role h4 {
        font-family: 'PP Neue Montreal';
        font-style: normal;
        font-weight: 300;
        line-height: 120%;
        /* 39.14px */
        text-decoration-style: solid;
        -webkit-text-decoration-skip-ink: none;
                text-decoration-skip-ink: none;
        text-decoration-thickness: 6.5%;
        text-underline-offset: 6.5%;
        text-underline-position: from-font;
        color: #343131;
        text-decoration-color: #343131;
        -webkit-text-stroke-color: rgba(102, 92, 92, 0.71);
        text-decoration-line: none;
        margin-bottom: 16px; }
        @media (min-width: 800px) {
          .who-we-are .team-members .team-member .name-role h1,
          .who-we-are .team-members .team-member .name-role h2,
          .who-we-are .team-members .team-member .name-role h3,
          .who-we-are .team-members .team-member .name-role h4 {
            font-size: 26px;
            letter-spacing: calc(26px * 0.015); } }
        @media (max-width: 800px) {
          .who-we-are .team-members .team-member .name-role h1,
          .who-we-are .team-members .team-member .name-role h2,
          .who-we-are .team-members .team-member .name-role h3,
          .who-we-are .team-members .team-member .name-role h4 {
            font-size: 24px;
            letter-spacing: calc(24px * 0.015); } }
      .who-we-are .team-members .team-member .name-role p {
        font-family: 'PP Neue Montreal Mono';
        font-style: normal;
        font-weight: 350;
        line-height: 127%;
        /* 24.13px */
        text-decoration-style: solid;
        -webkit-text-decoration-skip: ink;
                text-decoration-skip-ink: auto;
        text-decoration-thickness: 6.5%;
        /* 1.425px */
        text-underline-offset: 10%;
        /* 1.9px */
        text-underline-position: from-font;
        color: #343131; }
        @media (min-width: 800px) {
          .who-we-are .team-members .team-member .name-role p {
            font-size: 14px; } }
        @media (max-width: 800px) {
          .who-we-are .team-members .team-member .name-role p {
            font-size: 14px; } }
