/* Approved Greenspace typography, shared by every page and generated template.
   Load after layout styles. The logo and its location lockup retain their styling. */
:root {
  --portfolio-sans: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --type-h1: clamp(36px, 4.7vw, 68px);
  --type-display: clamp(36px, 5.2vw, 80px);
  --type-h2: clamp(28px, 3vw, 42px);
  --type-h3: clamp(21px, 2vw, 26px);
  --type-body: 16px;
  --type-small: 13px;
  --type-caption: 12px;
  --type-label: 11px;
  --secondary-ink: #626262;
  --heading-space: 24px;
  --paragraph-space: 18px;
}
body {font-family:var(--portfolio-sans);font-size:var(--type-body);line-height:1.75}
button,input,select,textarea {font-family:var(--portfolio-sans)}
body h1,body h2,body h3,body h4 {font-weight:400;text-wrap:balance;overflow-wrap:break-word}
body h1,body .seo-main h1,body .contact-shell h1,body .resources-shell h1,
body .seo-main .project-introduction h1 {font-size:clamp(30px,3.3vw,48px);font-weight:400;line-height:1.16;letter-spacing:-.035em}
body h2,body .section-heading h2,body .seo-main h2,body .contact-shell h2,
body .contact h2 {font-size:var(--type-h2);font-weight:400;line-height:1.3;letter-spacing:-.025em}
body h3,body .services h3,body .founder-profile h3,body .document-group {font-size:var(--type-h3);font-weight:400;line-height:1.35;letter-spacing:-.015em}
body h4,body .document-card h4,body .award h4 {font-size:20px;font-weight:400;line-height:1.4;letter-spacing:-.015em}
body .hero h1 {font-size:var(--type-display);line-height:1.14;letter-spacing:-.035em}
body .eyebrow,body .project-descriptor,body .project-information dt,
body .case-copy h2 {font-size:var(--type-label);font-weight:400;line-height:1.6;letter-spacing:.16em;text-transform:uppercase}
body .eyebrow {margin:0 0 var(--heading-space)}
body .intro h1,body .contact-intro h1,body .resources-shell h1,
body .practice-details h2 {margin:0 0 var(--heading-space)}
body .seo-main h2 {margin:44px 0 var(--heading-space)}
body .case-copy h2 {margin:0 0 var(--paragraph-space)}
body .contact-shell h2 {margin:0 0 18px}
body .intro p:not(.eyebrow):not(.lede),body .case-copy p,
body .practice-details p:not(.credential),body .contact-intro p:not(.eyebrow),
body .thank-you p,body .resources-shell>p {font-size:var(--type-body);line-height:1.75;margin:0 0 var(--paragraph-space)}
body .lede,body .practice-details .lead,body .practice-grid .lead {font-size:clamp(20px,2.2vw,27px);line-height:1.6;letter-spacing:-.015em;margin:24px 0}
body .project-summary {font-size:var(--type-body);line-height:1.75;margin:24px 0 0}
body .section-heading>p:last-child,body .project-card p,body .seo-project small,
body .founder-role,body .document-card p,body .award p,
body .case-location,body #gallery-location,body .breadcrumbs,
body .case-gallery figcaption {color:var(--secondary-ink)}
body .project-card h3,body .seo-project strong,body .project-grid .seo-project strong {font-size:18px;font-weight:400;line-height:1.35;letter-spacing:-.015em;text-wrap:pretty}
body .project-card p,body .project-grid .seo-project small {font-size:var(--type-small);line-height:1.6;margin:7px 0 0}
body .project-card .meta {margin-top:14px}
body .case-heading {padding-top:24px;padding-bottom:36px}
body .case-heading .eyebrow {margin-bottom:24px}
body .case-location,body #gallery-location {font-size:var(--type-body);line-height:1.7;margin:24px 0 0}
body .gallery-heading {max-width:none;margin:24px 0 32px}
body .gallery-heading h2 {font-size:var(--type-h1);font-weight:400;line-height:1.2;letter-spacing:-.035em}
body #gallery-description {font-size:var(--type-body);line-height:1.75;margin:18px 0 0}
body .project-title-row {align-items:flex-start}
body .project-title-row h1,body .project-title-row h2 {flex:1 1 360px;overflow-wrap:anywhere;margin:0}
body .project-controls {flex-wrap:wrap;justify-content:flex-end;max-width:100%}
body .project-information dt {margin:0 0 8px;color:var(--secondary-ink)}
body .project-information dd {font-size:var(--type-body);line-height:1.75}
body .project-descriptor {margin:0 0 24px}
body .project-introduction-copy>p:last-child:not(.project-summary):not(.project-descriptor),
body .project-practice,body #practice .practice-details .credential,
body .credential {font-size:var(--type-small);line-height:1.7}
body .project-introduction-copy strong {font-weight:400}
body .case-gallery figcaption,body figcaption,body #image-count,
body .breadcrumbs {font-size:var(--type-caption);line-height:1.6}
body>header>nav {font-size:14px;font-weight:400;line-height:1.6}
body footer {font-size:var(--type-caption);font-weight:400;line-height:1.6}
body .button,body .filters button,body .viewer button,body .submit-button,
body .project-controls .close {font-size:14px;font-weight:400;line-height:1.4;letter-spacing:.02em}
body .talk-to-us {font-size:var(--type-caption);font-weight:400;line-height:1.4;letter-spacing:.08em}
body .field label,body .resources-shell label {font-size:14px;font-weight:400;line-height:1.5;letter-spacing:.01em}
body .field input:not([type=file]),body .field select,body .field textarea,
body .resources-shell input {font-family:var(--portfolio-sans);font-size:var(--type-body);line-height:1.5}
body .field input[type=file],body .field-help,body .consent small,
body .required-note,body .resource-list span {font-size:var(--type-small);line-height:1.6}
body .consent strong,body .signature strong {font-size:var(--type-body);font-weight:500;line-height:1.6}
body .form-section {padding-top:24px}
body .contact-intro {margin-bottom:32px}
body hr {border:0;border-top:1px solid var(--line);margin:32px 0}
body .resources-shell h2 {margin:36px 0 20px}
@media(max-width:750px) {
  :root {--type-h1:clamp(32px,7vw,46px);--type-h2:clamp(26px,5vw,34px);--type-h3:22px;--heading-space:20px}
  body .hero h1 {font-size:clamp(34px,7vw,52px);line-height:1.2;letter-spacing:-.025em}
  body .project-title-row h1,body .project-title-row h2 {flex-basis:100%}
  body .project-controls {margin-left:auto}
  body .project-card h3,body .project-grid .seo-project strong {font-size:17px}
  body .case-heading .eyebrow {margin-bottom:18px}
  body .seo-main .project-introduction h1 {font-size:clamp(24px,5.2vw,34px)}
  body .case-location,body #gallery-location {margin-top:18px}
  body .gallery-heading {margin-bottom:24px}
  body .seo-main h2 {margin-top:32px}
  body .case-copy h2 {margin-top:0}
}
