/* Hallmark · shape: Letter · genre: editorial · theme: Hedgerow (deal 2/3, seed creek-stream-llc-kentucky-770c·2d6ed081·2026-11-05·r0) · job: visit · draw: none (words material)
 * hero: statement on drenched green · nav: inline wordmark bar · footer: single legal line · imagery: hero creek photo under green wash · signature: one Prata sentence, "Small waters feed the larger river." · hedgerow: hedge
 * axes: dark/high-contrast-serif/chromatic-green · posture: drenched · contrast: pass · fold: pass · v2.0.0 */
/* Hallmark · pre-emit critique: P4 H4 E4 S3 R4 V4 · weakest: S, the empty Companies index is honest and structured with a chartreuse rule so it reads as a ledger waiting, not a hole */
@import url("./tokens.css");
@import url("./base.css");

h1, h2, h3 { font-weight: 400; line-height: 1.08; font-synthesis: none; }
body { color: var(--color-ink); }
p { color: var(--color-ink-2); }

.skip { position: absolute; left: var(--space-sm); top: -100px; background: var(--color-accent); color: var(--color-accent-ink); padding: var(--space-xs) var(--space-sm); z-index: var(--z-toast); }
.skip:focus-visible { top: var(--space-sm); }

.site-header { border-bottom: var(--rule-hair) solid var(--color-rule); }
.bar { display: flex; align-items: center; justify-content: space-between; gap: var(--space-md); padding-block: var(--space-md); flex-wrap: wrap; }
.wordmark { font-family: var(--font-display); font-size: var(--text-lg); text-decoration: none; }
.site-header ul { display: flex; gap: var(--space-lg); list-style: none; margin: 0; padding: 0; }
.site-header nav a { font-size: var(--text-sm); font-weight: 500; text-decoration-color: transparent; transition: text-decoration-color var(--dur-short) var(--ease-out); }
.site-header nav a:hover { text-decoration-color: var(--color-accent); }

.hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding-block: var(--section-gap) var(--section-gap-s);
  min-height: min(72vh, 40rem);
  display: flex;
  align-items: flex-end;
}
.hero-media {
  position: absolute;
  inset: 0;
  z-index: -1;
}
.hero-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 55%;
  display: block;
}
.hero-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, color-mix(in oklch, var(--color-paper) 72%, transparent) 0%, color-mix(in oklch, var(--color-paper) 88%, transparent) 55%, var(--color-paper) 100%),
    linear-gradient(90deg, color-mix(in oklch, var(--color-paper) 70%, transparent) 0%, transparent 55%);
}
.hero-copy { width: 100%; padding-block: var(--space-xl) 0; }
.hero h1 { max-width: 14ch; text-shadow: 0 1px 0 color-mix(in oklch, var(--color-paper) 40%, transparent); }
.hero .lead { margin-top: var(--space-lg); max-width: 36ch; }
.credit { font-size: var(--text-xs); }
.credit a { color: inherit; text-decoration-color: var(--color-rule); }
.actions { margin-top: var(--space-xl); display: flex; flex-wrap: wrap; gap: var(--space-sm); }

.btn { display: inline-block; text-decoration: none; border: 1.5px solid var(--color-accent); border-radius: var(--radius-pill); padding: var(--space-sm) var(--space-lg); font-size: var(--text-sm); font-weight: 700; transition: background-color var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out); }
.btn--primary { background: var(--color-accent); color: var(--color-accent-ink); }
.btn--primary:hover { background: var(--color-accent-2); border-color: var(--color-accent-2); }
.btn--secondary { background: transparent; color: var(--color-accent); }

.band { background: var(--color-paper-2); color: var(--color-ink); padding-block: var(--section-gap-s); }
.about-grid, .contact-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--gap-columns); align-items: start; }
.about-copy p + p { margin-top: var(--space-md); }

.companies { padding-block: var(--section-gap-s); }
.index { list-style: none; margin: var(--space-xl) 0 0; padding: 0; border-top: 1.5px solid var(--color-accent); }
.index > li { border-bottom: var(--rule-hair) solid var(--color-rule); padding-block: var(--space-lg); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto; gap: var(--space-md); align-items: baseline; }
.index h3 { font-size: var(--text-2xl); }
.index h3 a { text-decoration-color: var(--color-accent); }
.kind, .meta { font-size: var(--text-sm); font-weight: 500; color: var(--color-muted); margin-top: var(--space-2xs); }
.empty { padding-block: var(--space-lg); border-bottom: var(--rule-hair) solid var(--color-rule); color: var(--color-muted); }
.index:empty { margin-bottom: 0; }

.band--cream { background: var(--color-ink); color: var(--color-paper); }
.band--cream h2, .band--cream p { color: var(--color-paper); }
.band--cream .btn { border-color: var(--color-paper); color: var(--color-paper); }
.band--cream .btn--primary { background: var(--color-paper); color: var(--color-ink); }
.band--cream .btn--primary:hover { background: var(--color-paper-3); border-color: var(--color-paper-3); }
.band--cream .actions { margin-top: var(--space-lg); }

.site-footer { padding-block: var(--space-xl); }
.foot { display: flex; justify-content: space-between; gap: var(--space-md); flex-wrap: wrap; }
.foot p { font-size: var(--text-sm); color: var(--color-muted); }

@media (max-width: 48rem) {
  .about-grid, .contact-grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-lg); }
  .index > li { grid-template-columns: minmax(0, 1fr); gap: var(--space-xs); }
}
.btn:active { transform: translateY(1px); }
.site-header nav a:active, .index h3 a:active { color: var(--color-accent-2); }
