/* What I would like to afford: the house frame and type, in the warm sage and terracotta of the home it describes. */

.uses-institution {
  --sage: #4a6f5a;
  --sage-deep: #22382f;
  --sage-wash: #e2e9d9;
  --terracotta: #a65a3e;
  --terracotta-ink: #8f4f3e;
  --cream: #fffdf6;
  --linen: #f4eddc;
  --sand: #ebe2cf;
  --rule: #cdbfa6;
  --uses-ink: #27251f;
  --uses-muted: #5a5346;
}

.uses-fresco {
  position: relative;
  padding: 76px clamp(22px, 5vw, 64px) 52px;
  color: #fffaf0;
  background: var(--sage-deep);
}

.uses-fresco .hierarchy-nav.hierarchy-nav {
  position: absolute;
  top: 22px;
  left: clamp(18px, 3vw, 28px);
  max-width: calc(100% - 56px);
  margin: 0;
}

.uses-fresco h1 {
  max-width: 18ch;
  margin: 0;
  font: 600 clamp(48px, 8vw, 104px)/.94 var(--house-serif);
  letter-spacing: -.012em;
  text-shadow: 0 2px 18px rgba(8, 18, 12, .35);
}

.uses-hero-facts {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 40px;
}

.uses-hero-fact {
  min-width: 0;
  padding: 26px 28px;
  color: var(--uses-ink);
  background: var(--cream);
  border: 1px solid #d9c9a8;
  border-radius: 3px;
  box-shadow: inset 0 1px #fff, 0 12px 28px rgba(10, 20, 15, .3);
}

.uses-hero-fact h2 {
  margin: 0 0 10px;
  font: 600 clamp(24px, 2.6vw, 30px)/1.1 var(--house-serif);
}

.uses-hero-fact > p:last-child { margin: 0; font: 17px/1.5 var(--house-serif); }

.uses-hero-amount,
.uses-estimate-amount {
  margin: 0;
  color: var(--terracotta-ink);
  font: 600 clamp(30px, 3.4vw, 38px)/1.05 var(--house-serif);
  letter-spacing: -.01em;
}

.uses-command-shelf { display: grid; grid-template-columns: repeat(5, 1fr); }

.uses-panel {
  margin: 0;
  border: 0;
  border-top: 1px solid var(--rule);
}

.uses-section-heading { max-width: 850px; margin-bottom: 30px; }
.uses-section-heading h2 { margin: 0 0 12px; font: 600 clamp(30px, 3.6vw, 42px)/1.1 var(--house-serif); }
.uses-section-heading > p:last-child { margin: 0; font: 18px/1.6 var(--house-serif); }

.uses-home-link {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  margin-top: 20px;
  padding: 9px 16px;
  color: #4f3a00;
  background: linear-gradient(#ffedba, #ffcf66);
  border: 1px solid #c79a2c;
  border-radius: 5px;
  box-shadow: inset 0 1px rgba(255, 255, 255, .7), 0 2px 4px rgba(79, 58, 0, .2);
  font: 700 13px/1.3 var(--house-sans);
  text-decoration: none;
}

.uses-home-link:hover,
.uses-home-link:focus-visible {
  color: #4f3a00;
  background: linear-gradient(#fff4d1, #ffd77e);
}

.uses-property {
  padding: 44px clamp(22px, 5vw, 64px) 52px;
  background: linear-gradient(180deg, var(--sand) 0, var(--linen) 160px, var(--linen) 100%);
}

.uses-property-figure {
  margin: 0;
  background: var(--sage-deep);
  border: 1px solid #3a4f44;
}

.uses-property-picture,
.uses-property-picture img { display: block; width: 100%; }
.uses-property-picture img { height: auto; }
.uses-property-figure figcaption {
  padding: 11px 15px;
  color: #f9eed8;
  background: #34493f;
  font: 12px/1.45 var(--house-sans);
}

.uses-zone-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-top: 16px;
}

.uses-zone {
  min-width: 0;
  padding: 22px;
  background: var(--cream);
  border: 1px solid var(--rule);
  border-top: 2px solid var(--terracotta);
}

.uses-zone-number {
  margin: 0 0 12px;
  color: var(--terracotta-ink);
  font: 700 11px/1 var(--house-sans);
  letter-spacing: .12em;
}

.uses-zone h3 { margin: 0 0 9px; font: 600 26px/1.1 var(--house-serif); }
.uses-zone > p:not(.uses-zone-number) { min-height: 67px; margin: 0; font: 17px/1.5 var(--house-serif); }

.uses-seed-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 17px 0 0;
  padding: 0;
  list-style: none;
}

.uses-seed-packet {
  padding: 6px 8px 5px;
  color: #4d4638;
  background: #f4d78d;
  border: 1px solid #c79a2c;
  border-radius: 2px;
  font: 700 10px/1.2 var(--house-sans);
  text-transform: uppercase;
}

.uses-scope-note {
  margin-top: 16px;
  border-left: 3px solid var(--terracotta);
}

.uses-scope-note p { margin: 0; padding: 14px 18px; background: var(--cream); font: 17px/1.55 var(--house-serif); }

.uses-research {
  display: grid;
  grid-template-columns: 1.2fr .8fr;
  gap: 32px;
  align-items: center;
  padding: 44px clamp(22px, 5vw, 64px);
  background: linear-gradient(180deg, #d4dec9 0, var(--sage-wash) 100%);
}

.uses-research-copy h2 { margin: 0 0 12px; font: 600 clamp(30px, 3.6vw, 42px)/1.1 var(--house-serif); }
.uses-research-copy > p:last-child { max-width: 700px; font: 18px/1.6 var(--house-serif); }
.uses-research .uses-estimate-amount { margin: 14px 0; font-size: clamp(34px, 4vw, 44px); }
.uses-seed-bank { align-content: center; margin: 0; padding: 24px; background: var(--cream); border: 1px solid #b4bfa6; }
.uses-seed-bank .uses-seed-packet { flex: 1 1 42%; min-height: 47px; display: grid; place-items: center; text-align: center; }

.uses-tools {
  padding: 44px clamp(22px, 5vw, 64px) 52px;
  background: linear-gradient(180deg, var(--sand) 0, var(--linen) 100%);
}

.uses-tool-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.uses-tool-card { min-width: 0; padding: 26px; background: var(--cream); border: 1px solid var(--rule); border-top: 2px solid var(--terracotta); }
.uses-tool-card h3 { margin: 0 0 10px; font: 600 clamp(25px, 2.8vw, 30px)/1.1 var(--house-serif); }
.uses-tool-card .uses-estimate-amount { margin: 12px 0; color: var(--sage); }
.uses-tool-card > p:last-of-type { font: 17px/1.55 var(--house-serif); }

.uses-residence {
  padding: 56px clamp(22px, 5vw, 64px);
  color: #f8f0df;
  background:
    radial-gradient(120% 90% at 85% 8%, rgba(214, 140, 100, .26), transparent 60%),
    radial-gradient(90% 70% at 8% 100%, rgba(255, 207, 102, .18), transparent 60%),
    linear-gradient(180deg, #3f6050 0%, var(--sage-deep) 100%);
}

.uses-residence-copy { max-width: 850px; }
.uses-residence h2 { margin: 0 0 18px; font: 600 clamp(32px, 4.2vw, 50px)/1.08 var(--house-serif); }
.uses-residence-copy > p:not(.eyebrow) { font: 19px/1.62 var(--house-serif); }

.uses-gallery {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin: 0;
  padding: clamp(18px, 3vw, 32px) clamp(22px, 5vw, 64px);
  background: var(--sand);
}

.uses-gallery-item {
  min-width: 0;
  margin: 0;
  background: var(--cream);
  border: 1px solid var(--rule);
}

.uses-gallery-item picture,
.uses-gallery-item img { display: block; width: 100%; }
.uses-gallery-item img { height: 280px; object-fit: cover; }
.uses-gallery-item figcaption { padding: 20px 22px 22px; }
.uses-gallery-item h3 { margin: 0 0 8px; font: 600 24px/1.15 var(--house-serif); }
.uses-gallery-item p { margin: 0; font: 17px/1.5 var(--house-serif); }

.uses-projects {
  padding: 48px clamp(22px, 5vw, 64px) 56px;
  color: var(--uses-ink);
  background: linear-gradient(180deg, var(--linen) 0, var(--sand) 100%);
}

.uses-projects-heading { max-width: 960px; }
.uses-projects-heading .eyebrow { margin: 0 0 10px; color: var(--terracotta-ink); font: 700 11px/1.3 var(--house-sans); letter-spacing: .1em; }

.uses-project-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.uses-project-item {
  min-width: 0;
  margin: 0;
  overflow: hidden;
  background: var(--cream);
  border: 1px solid var(--rule);
}

.uses-project-item--wide { grid-column: 1 / -1; }
.uses-project-picture,
.uses-project-picture img { display: block; width: 100%; }
.uses-project-picture img { height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
.uses-project-item figcaption { padding: 22px 25px 26px; }
.uses-project-number {
  margin: 0 0 10px;
  color: var(--terracotta-ink);
  font: 700 11px/1 var(--house-sans);
  letter-spacing: .1em;
  text-transform: uppercase;
}
.uses-project-item h3 { margin: 0 0 10px; font: 600 clamp(25px, 2.8vw, 30px)/1.12 var(--house-serif); }
.uses-project-item figcaption > p:last-child { margin: 0; font: 17px/1.58 var(--house-serif); }

.uses-status-bar { background: var(--sage-deep); }
