    
    /* Single project page */
    .single-project-page {
      background: #ead8bd;
      color: #17120e;
    }

    .single-project-page .topbar-logo {
      color: inherit;
      text-decoration: none;
    }

    .single-project-main {
      overflow: hidden;
    }

    .single-project-container,
    .single-project-gallery {
      width: min(1180px, calc(100% - 96px));
      margin-inline: auto;
    }

    .single-project-hero-meta {
      display: flex;
      gap: 24px;
      margin: 0 0 22px;
      color: #76664f;
      font-size: 11px;
      font-weight: 700;
      letter-spacing: 2px;
      text-transform: uppercase;
    }

    .single-project-overview {
      padding: 0 0 108px;
    }

    .single-project-principles,
    .single-project-cta {
      padding: var(--section-space-y) 0;
    }

    .single-project-vision {
      display: grid;
      grid-template-columns: 190px minmax(0, 1fr);
      gap: 70px;
      max-width: 940px;
      margin: 0 auto;
    }

    .single-project-label {
      align-self: start;
      width: max-content;
      margin: 0;
      padding-bottom: 8px;
      border-bottom: 1px solid rgba(23, 18, 14, 0.5);
      font-size: 18px;
      line-height: 1.2;
    }

    .single-project-vision-copy {
      max-width: 670px;
      font-size: 18px;
      line-height: 1.45;
    }

    .single-project-vision-copy p {
      margin: 0;
    }

    .single-project-vision-copy p + p {
      margin-top: 24px;
    }

    .single-project-facts {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 52px 72px;
      max-width: 940px;
      margin: 76px auto 0;
      padding: 42px 0 0;
      border-top: 1px solid rgba(23, 18, 14, 0.17);
    }

    .single-project-fact dt,
    .single-project-fact dd {
      margin: 0;
    }

    .single-project-fact dt {
      display: flex;
      align-items: center;
      gap: 12px;
      font-size: 16px;
      font-weight: 600;
    }

    .single-project-fact dt span {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 22px;
      height: 22px;
      font-size: 17px;
    }

    .single-project-fact dd {
      padding: 12px 0 0 34px;
      color: #76664f;
      font-size: 15px;
      line-height: 1.4;
    }

    .single-project-gallery {
      display: grid;
      gap: 12px;
      /*padding-bottom: 108px;*/
    }

    .single-project-gallery figure {
      margin: 0;
      overflow: hidden;
      background: #c9b99f;
    }

    .single-project-gallery-reveal {
      --gallery-x: 0px;
      --gallery-y: 0px;
      opacity: 0;
      transform: translate3d(var(--gallery-x), var(--gallery-y), 0);
      will-change: transform, opacity;
    }

    .single-project-gallery-from-left-diagonal {
      --gallery-x: -110px;
      --gallery-y: -110px;
    }

    .single-project-gallery-from-left {
      --gallery-x: -150px;
      --gallery-y: 0px;
    }

    .single-project-gallery-from-right {
      --gallery-x: 150px;
      --gallery-y: 0px;
    }

    .single-project-gallery-from-right-diagonal {
      --gallery-x: 110px;
      --gallery-y: 110px;
    }

    .single-project-gallery img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    .single-project-gallery-wide {
      aspect-ratio: 16 / 8.4;
    }

    .single-project-gallery-pair {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 12px;
    }

    .single-project-gallery-pair figure {
      aspect-ratio: 4 / 3;
    }

    .single-project-principles-grid {
      display: grid;
      grid-template-columns: minmax(260px, 0.7fr) minmax(0, 1fr);
      gap: 100px;
      max-width: 980px;
    }

    .single-project-principles h2,
    .single-project-cta h2 {
      margin: 0;
      font-size: 48px;
      font-weight: 400;
      line-height: 1.02;
    }

    .single-project-principles-copy article {
      padding: 0 0 28px;
    }

    .single-project-principles-copy article + article {
      padding-top: 28px;
      border-top: 1px solid rgba(23, 18, 14, 0.18);
    }

    .single-project-principles-copy h3 {
      margin: 0 0 12px;
      font-size: 20px;
      font-weight: 500;
    }

    .single-project-principles-copy p {
      max-width: 600px;
      margin: 0;
      color: #76664f;
      font-size: 15px;
      font-weight: 600;
      line-height: 1.5;
    }

    .single-project-quote {
      background: var(--color-dark);
      color: var(--color-cream);
      padding: var(--section-space-y) 0;
    }

    .single-project-quote .single-project-container {
      display: grid;
      justify-content: center;
      max-width: min(920px, calc(100% - 96px));
    }

    .single-project-quote blockquote {
      margin: 0 auto;
      width: fit-content;
      max-width: 100%;
      font-size: 44px;
      font-weight: 400;
      line-height: 1.04;
      text-align: center;
      color: var(--color-cream);
    }

    .single-project-quote p {
      position: relative;
      justify-self: end;
      width: fit-content;
      margin: 12px 0 0;
      left: clamp(35px, 5vw, 90px);
      font-size: 10px;
      line-height: 1;
      font-weight: 800;
      letter-spacing: 2.4px;
      text-transform: uppercase;
      color: rgba(241, 223, 199, 0.58);
    }

    .single-project-cta-grid {
      display: grid;
      grid-template-columns: minmax(280px, 0.9fr) minmax(0, 1fr);
      align-items: center;
      gap: 90px;
      max-width: 980px;
    }

    .single-project-cta-copy p {
      max-width: 520px;
      margin: 0 0 30px;
      color: #76664f;
      font-size: 16px;
      font-weight: 600;
      line-height: 1.5;
    }

    .single-project-cta-copy a {
      display: inline-flex;
      align-items: center;
      justify-content: space-between;
      gap: 46px;
      min-width: 220px;
      padding: 16px 22px;
      border: 1px solid rgba(23, 18, 14, 0.52);
      border-radius: 999px;
      color: #17120e;
      font-size: 10px;
      font-weight: 700;
      letter-spacing: 1.8px;
      text-decoration: none;
      text-transform: uppercase;
      transition: background-color 280ms ease, color 280ms ease;
    }

    .single-project-cta-copy a:hover,
    .single-project-cta-copy a:focus-visible {
      background: #17120e;
      color: #f4e2c8;
    }

    @media (max-width: 900px) {
      .single-project-container,
      .single-project-gallery {
        width: calc(100% - 64px);
      }

      .single-project-overview {
        padding-bottom: 94px;
      }

      .single-project-principles,
      .single-project-cta {
        padding: var(--section-space-y-soft) 0;
      }

      .single-project-vision {
        grid-template-columns: 150px minmax(0, 1fr);
        gap: 42px;
      }

      .single-project-facts {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .single-project-principles-grid,
      .single-project-cta-grid {
        grid-template-columns: 1fr;
        gap: 48px;
      }

      .single-project-principles h2,
      .single-project-cta h2 {
        font-size: 42px;
      }

      .single-project-quote blockquote {
        font-size: 38px;
      }
    }

    @media (max-width: 600px) {
      .single-project-container,
      .single-project-gallery {
        width: calc(100% - 32px);
      }

      /*.single-project-overview {
        padding-bottom: 64px;
      }*/

      .single-project-principles,
      .single-project-cta {
        padding: var(--section-space-y-mobile) 0 var(--section-space-y-mobile-end);
      }

      .single-project-vision {
        grid-template-columns: 1fr;
        gap: 34px;
      }

      .single-project-vision-copy {
        font-size: 16px;
      }

      .single-project-facts {
        grid-template-columns: 1fr;
        gap: 30px;
        margin-top: 54px;
      }

      .single-project-gallery {
        gap: 8px;
        /*padding-bottom: 64px;*/
      }

      .single-project-gallery-wide,
      .single-project-gallery-pair figure {
        aspect-ratio: 4 / 3;
      }

      .single-project-gallery-pair {
        grid-template-columns: 1fr;
        gap: 8px;
      }

      .single-project-principles h2,
      .single-project-cta h2 {
        font-size: 34px;
      }

      .single-project-quote {
        padding: var(--section-space-y-mobile) 0 var(--section-space-y-mobile-end);
      }

      .single-project-quote blockquote {
        font-size: 31px;
      }

      .single-project-quote p {
        margin-top: 12px;
        left: clamp(10px, 4vw, 24px);
      }
    }


    /* =========================
       SINGLE PROJECT FONT / COLOR CONSISTENCY FIX
       Aligns this page with the shared Amara Build theme used on
       index, about, contact, services, and projects pages.
    ========================= */
    .single-project-page {
      background: var(--color-light);
      color: var(--color-text);
    }

    .single-project-main,
    .single-project-overview,
    .single-project-principles {
      background: var(--color-light);
      color: var(--color-text);
    }

    .single-project-cta {
      background: var(--color-green-primary);
      color: var(--color-text);
    }

    .single-project-container,
    .single-project-gallery {
      width: min(1180px, calc(100% - 96px));
    }

    .single-project-hero-meta {
      color: rgba(25, 21, 16, 0.62);
      font-size: var(--body-sm);
      line-height: 1.35;
      font-weight: 700;
      letter-spacing: 1.4px;
    }

    .single-project-vision {
      color: var(--color-text);
    }

    .single-project-label {
      font-size: var(--body-lg);
      line-height: 1.32;
      font-weight: 800;
      letter-spacing: 0;
      color: rgba(25, 21, 16, 0.82);
      border-bottom-color: rgba(25, 21, 16, 0.75);
    }

    .single-project-vision-copy,
    .single-project-principles-copy p {
      font-size: var(--body-md);
      line-height: 1.45;
      font-weight: 600;
      color: rgba(25, 21, 16, 0.66);
    }

    .single-project-cta-copy p {
      font-size: var(--body-md);
      line-height: 1.45;
      font-weight: 700;
      color: rgba(25, 21, 16, 0.64);
    }

    .single-project-facts {
      border-top-color: rgba(25, 21, 16, 0.18);
    }

    .single-project-fact dt {
      font-size: var(--body-md);
      line-height: 1.25;
      font-weight: 800;
      color: var(--color-text);
    }

    .single-project-fact dd {
      font-size: var(--body-md);
      line-height: 1.45;
      font-weight: 600;
      color: rgba(25, 21, 16, 0.62);
    }

    .single-project-gallery figure {
      background: var(--color-cream);
    }

    .single-project-principles h2,
    .single-project-cta h2 {
      font-size: var(--heading-lg);
      line-height: 1.02;
      font-weight: 500;
      letter-spacing: -1.5px;
      color: var(--color-text);
    }

    .single-project-principles-copy h3 {
      font-size: var(--heading-sm);
      line-height: 1.05;
      font-weight: 500;
      letter-spacing: -0.8px;
      color: var(--color-text);
    }

    .single-project-principles-copy article + article {
      border-top-color: rgba(25, 21, 16, 0.18);
    }

    .single-project-quote {
      background: var(--color-dark);
      color: var(--color-cream);
    }

    .single-project-quote blockquote {
      font-size: var(--heading-md);
      line-height: 1.04;
      font-weight: 500;
      letter-spacing: -1.2px;
      color: var(--color-cream);
    }

    .single-project-quote p {
      font-size: 10px;
      line-height: 1;
      font-weight: 800;
      letter-spacing: 2.4px;
      color: rgba(241, 223, 199, 0.58);
    }

    .single-project-cta-copy a {
      display: inline-flex;
      align-items: center;
      justify-content: space-between;
      gap: 46px;
      width: auto;
      min-width: 220px;
      max-width: max-content;
      padding: 16px 22px;
      border: 1px solid rgba(23, 18, 14, 0.52);
      border-radius: 999px;
      background: transparent;
      color: #17120e;
      text-decoration: none;
      font-size: 10px;
      line-height: 1;
      font-weight: 700;
      letter-spacing: 1.8px;
      text-transform: uppercase;
      box-shadow: none;
      transition: background-color 280ms ease, color 280ms ease, border-color 280ms ease;
    }

    .single-project-cta-copy a span {
      display: inline-block;
      font-size: 12px;
      line-height: 1;
      transform: rotate(-35deg);
      transform-origin: center;
      transition: transform 280ms ease, opacity 280ms ease;
    }

    .single-project-cta-copy a:hover,
    .single-project-cta-copy a:focus-visible {
      background: #17120e;
      color: var(--color-green-primary);
      border-color: #17120e;
    }

    .single-project-cta-copy a:hover span,
    .single-project-cta-copy a:focus-visible span {
      transform: rotate(0deg);
    }

    .single-project-cta-copy a:focus-visible {
      outline: 2px solid var(--color-text);
      outline-offset: 4px;
    }

    @media (max-width: 900px) {
      .single-project-container,
      .single-project-gallery {
        width: calc(100% - 64px);
      }

      .single-project-principles h2,
      .single-project-cta h2 {
        font-size: var(--heading-lg);
        letter-spacing: -1.5px;
      }
    }

    @media (max-width: 600px) {
      .single-project-container,
      .single-project-gallery {
        width: calc(100% - 32px);
      }

      .single-project-vision-copy,
      .single-project-cta-copy p,
      .single-project-principles-copy p {
        font-size: var(--body-md);
      }

      .single-project-cta-copy a {
        width: auto;
        min-width: 220px;
        max-width: max-content;
      }
    }

  
