/* ===== Marketing site — Tiliaderm ===== */

/* ---- Nav ---- */
.nav {
  position: sticky; top: 0; z-index: 50;
  background: rgba(250,249,244,0.85);
  backdrop-filter: saturate(140%) blur(12px);
  border-bottom: 1px solid var(--border);
}
.nav-inner {
  max-width: 1240px; margin: 0 auto; padding: 14px 32px;
  display: flex; align-items: center; gap: 32px;
}
.nav-links { display: flex; gap: 28px; margin-left: 24px; }
.nav-links a {
  font-size: 14px; color: var(--fg-1); text-decoration: none;
  font-weight: 450;
}
.nav-links a:hover { color: var(--tilia-700); }
.nav-cta { margin-left: auto; display: flex; gap: 10px; align-items: center; }

.wordmark {
  display: inline-flex; align-items: center; gap: 12px;
  text-decoration: none; color: var(--tilia-800);
  font-family: var(--font-brand); font-weight: 500;
  font-size: 26px; letter-spacing: 0.23em; text-transform: uppercase;
  white-space: nowrap; line-height: 1;
}
.wordmark .leaf {
  display: inline-block; width: 1.55em; height: 1.7em; flex-shrink: 0;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2081.8%2097.9%22%20width%3D%2281.8%22%20height%3D%2297.9%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cpath%20class%3D%22st0%22%20fill%3D%22%231F3A2E%22%20d%3D%22M78.4%2C35.3C72.9%2C20.2%2C54.1%2C2.4%2C41.2.1h-.6c0-.1-.5.3-.5.3C30.5%2C7.2%2C7.8%2C24.5%2C3.4%2C38.5c-4.5%2C11.6-5.9%2C28.5%2C5.2%2C38.1%2C8.7%2C8.4%2C21.6%2C9.3%2C29.9%2C5.1v13.8c0%2C.6.2%2C1.2.6%2C1.6.5.4%2C1.1.7%2C1.7.7h0c1.3%2C0%2C2.4-1.1%2C2.4-2.3v-14.2c4.9%2C2%2C9.5%2C3%2C13.8%2C3s11.2-2%2C15.4-5.8c9.7-9%2C12.2-26.8%2C6-43.2ZM76.5%2C59.8v.2c-.3%2C7.4-3.9%2C13.4-10.3%2C16.8-6.9%2C3.7-15.9%2C3.5-23-.5v-14.4s1.7-1.7%2C1.7-1.7c4.3-4.4%2C6.9-7%2C11.6-11.4.5-.4.7-1%2C.7-1.7%2C0-.6-.3-1.3-.7-1.7-.9-.9-2.4-.9-3.3%2C0-3.9%2C3.6-6.2%2C6-9.5%2C9.3-.2.2-.3.3-.5.5v-11.2s1.8-1.9%2C1.8-1.9c1.2-1.3%2C2.3-2.4%2C3.8-4%2C.5-.5.7-1.1.7-1.8%2C0-.6-.3-1.2-.8-1.6-1-.8-2.4-.7-3.3.2-.9.9-1.5%2C1.6-2.2%2C2.3v-13.2c0-.7-.3-1.3-.8-1.7-.5-.4-1.2-.6-1.9-.5-1.2.2-2.1%2C1.3-2.1%2C2.4v13.8c-.7-.6-1.4-1.1-2.4-1.9-.9-.8-2.4-.6-3.3.3-.5.5-.7%2C1.1-.7%2C1.8%2C0%2C.6.3%2C1.2.8%2C1.6%2C1.6%2C1.3%2C2.7%2C2.2%2C3.9%2C3.1l1.6%2C1.3v11.5c-.2-.2-.4-.3-.6-.5-3.2-2.6-5.5-4.6-9.3-8-.9-.8-2.4-.8-3.3%2C0-.5.4-.8%2C1.1-.8%2C1.7%2C0%2C.6.3%2C1.2.7%2C1.7%2C4.7%2C4.3%2C7.5%2C6.5%2C11.6%2C10l1.6%2C1.3v14.3c-8.2%2C5.7-20.2%2C3.1-26.5-3-9.4-8.2-8.1-23.1-4.1-33.5C12.1%2C26.9%2C32.8%2C11.4%2C41.3%2C5.1c19.5%2C5.7%2C39.4%2C31%2C35.3%2C54.7Z%22%3E%3C%2Fpath%3E%0A%3C%2Fsvg%3E") no-repeat center/contain;
          mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2081.8%2097.9%22%20width%3D%2281.8%22%20height%3D%2297.9%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cpath%20class%3D%22st0%22%20fill%3D%22%231F3A2E%22%20d%3D%22M78.4%2C35.3C72.9%2C20.2%2C54.1%2C2.4%2C41.2.1h-.6c0-.1-.5.3-.5.3C30.5%2C7.2%2C7.8%2C24.5%2C3.4%2C38.5c-4.5%2C11.6-5.9%2C28.5%2C5.2%2C38.1%2C8.7%2C8.4%2C21.6%2C9.3%2C29.9%2C5.1v13.8c0%2C.6.2%2C1.2.6%2C1.6.5.4%2C1.1.7%2C1.7.7h0c1.3%2C0%2C2.4-1.1%2C2.4-2.3v-14.2c4.9%2C2%2C9.5%2C3%2C13.8%2C3s11.2-2%2C15.4-5.8c9.7-9%2C12.2-26.8%2C6-43.2ZM76.5%2C59.8v.2c-.3%2C7.4-3.9%2C13.4-10.3%2C16.8-6.9%2C3.7-15.9%2C3.5-23-.5v-14.4s1.7-1.7%2C1.7-1.7c4.3-4.4%2C6.9-7%2C11.6-11.4.5-.4.7-1%2C.7-1.7%2C0-.6-.3-1.3-.7-1.7-.9-.9-2.4-.9-3.3%2C0-3.9%2C3.6-6.2%2C6-9.5%2C9.3-.2.2-.3.3-.5.5v-11.2s1.8-1.9%2C1.8-1.9c1.2-1.3%2C2.3-2.4%2C3.8-4%2C.5-.5.7-1.1.7-1.8%2C0-.6-.3-1.2-.8-1.6-1-.8-2.4-.7-3.3.2-.9.9-1.5%2C1.6-2.2%2C2.3v-13.2c0-.7-.3-1.3-.8-1.7-.5-.4-1.2-.6-1.9-.5-1.2.2-2.1%2C1.3-2.1%2C2.4v13.8c-.7-.6-1.4-1.1-2.4-1.9-.9-.8-2.4-.6-3.3.3-.5.5-.7%2C1.1-.7%2C1.8%2C0%2C.6.3%2C1.2.8%2C1.6%2C1.6%2C1.3%2C2.7%2C2.2%2C3.9%2C3.1l1.6%2C1.3v11.5c-.2-.2-.4-.3-.6-.5-3.2-2.6-5.5-4.6-9.3-8-.9-.8-2.4-.8-3.3%2C0-.5.4-.8%2C1.1-.8%2C1.7%2C0%2C.6.3%2C1.2.7%2C1.7%2C4.7%2C4.3%2C7.5%2C6.5%2C11.6%2C10l1.6%2C1.3v14.3c-8.2%2C5.7-20.2%2C3.1-26.5-3-9.4-8.2-8.1-23.1-4.1-33.5C12.1%2C26.9%2C32.8%2C11.4%2C41.3%2C5.1c19.5%2C5.7%2C39.4%2C31%2C35.3%2C54.7Z%22%3E%3C%2Fpath%3E%0A%3C%2Fsvg%3E") no-repeat center/contain;
}
.wordmark .word { color: inherit; }

/* ---- Hero ---- */
.hero { padding: 80px 0 96px; position: relative; overflow: hidden; }
.hero-grid {
  display: grid; grid-template-columns: 1.15fr 1fr; gap: 80px;
  align-items: center; max-width: 1240px; margin: 0 auto; padding: 0 32px;
}
.hero h1 {
  font-family: var(--font-brand); font-weight: 700;
  font-size: clamp(2.75rem, 5vw, 4.5rem);
  line-height: 1.04; letter-spacing: -0.02em;
  color: var(--ink); margin: 24px 0 28px; text-wrap: balance;
  text-transform: none;
}
.hero h1 em {
  font-style: normal;
  font-weight: 700; color: var(--tilia-700);
  letter-spacing: -0.025em;
}
.hero-lead {
  font-size: 21px; line-height: 1.45;
  color: var(--fg-2); max-width: 520px; margin: 0 0 36px;
}
.hero-cta { display: flex; gap: 12px; align-items: center; }
.hero-meta {
  margin-top: 56px;
  display: grid; grid-template-columns: repeat(3, max-content);
  gap: 0 48px;
  font-family: var(--font-mono); font-size: 11px;
  color: var(--fg-3); letter-spacing: 0.06em; text-transform: uppercase;
  padding-top: 24px; border-top: 1px solid var(--border);
}
.hero-meta strong {
  display: block;
  font-family: var(--font-serif); font-weight: 500; font-size: 28px;
  letter-spacing: -0.01em; text-transform: none; color: var(--fg-1);
  margin-bottom: 4px;
}

.hero-art {
  aspect-ratio: 4/5; border-radius: var(--radius-lg);
  background:
    radial-gradient(80% 50% at 60% 30%, rgba(184,133,74,0.22), transparent 60%),
    radial-gradient(70% 70% at 20% 85%, rgba(135,170,159,0.55), transparent 60%),
    linear-gradient(150deg, var(--tilia-800), var(--tilia-600));
  position: relative; overflow: hidden;
  box-shadow: var(--shadow-lg);
}
.hero-art::after {
  content: ""; position: absolute; inset: 0;
  background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2081.8%2097.9%22%20width%3D%2281.8%22%20height%3D%2297.9%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cpath%20class%3D%22st0%22%20fill%3D%22%231F3A2E%22%20d%3D%22M78.4%2C35.3C72.9%2C20.2%2C54.1%2C2.4%2C41.2.1h-.6c0-.1-.5.3-.5.3C30.5%2C7.2%2C7.8%2C24.5%2C3.4%2C38.5c-4.5%2C11.6-5.9%2C28.5%2C5.2%2C38.1%2C8.7%2C8.4%2C21.6%2C9.3%2C29.9%2C5.1v13.8c0%2C.6.2%2C1.2.6%2C1.6.5.4%2C1.1.7%2C1.7.7h0c1.3%2C0%2C2.4-1.1%2C2.4-2.3v-14.2c4.9%2C2%2C9.5%2C3%2C13.8%2C3s11.2-2%2C15.4-5.8c9.7-9%2C12.2-26.8%2C6-43.2ZM76.5%2C59.8v.2c-.3%2C7.4-3.9%2C13.4-10.3%2C16.8-6.9%2C3.7-15.9%2C3.5-23-.5v-14.4s1.7-1.7%2C1.7-1.7c4.3-4.4%2C6.9-7%2C11.6-11.4.5-.4.7-1%2C.7-1.7%2C0-.6-.3-1.3-.7-1.7-.9-.9-2.4-.9-3.3%2C0-3.9%2C3.6-6.2%2C6-9.5%2C9.3-.2.2-.3.3-.5.5v-11.2s1.8-1.9%2C1.8-1.9c1.2-1.3%2C2.3-2.4%2C3.8-4%2C.5-.5.7-1.1.7-1.8%2C0-.6-.3-1.2-.8-1.6-1-.8-2.4-.7-3.3.2-.9.9-1.5%2C1.6-2.2%2C2.3v-13.2c0-.7-.3-1.3-.8-1.7-.5-.4-1.2-.6-1.9-.5-1.2.2-2.1%2C1.3-2.1%2C2.4v13.8c-.7-.6-1.4-1.1-2.4-1.9-.9-.8-2.4-.6-3.3.3-.5.5-.7%2C1.1-.7%2C1.8%2C0%2C.6.3%2C1.2.8%2C1.6%2C1.6%2C1.3%2C2.7%2C2.2%2C3.9%2C3.1l1.6%2C1.3v11.5c-.2-.2-.4-.3-.6-.5-3.2-2.6-5.5-4.6-9.3-8-.9-.8-2.4-.8-3.3%2C0-.5.4-.8%2C1.1-.8%2C1.7%2C0%2C.6.3%2C1.2.7%2C1.7%2C4.7%2C4.3%2C7.5%2C6.5%2C11.6%2C10l1.6%2C1.3v14.3c-8.2%2C5.7-20.2%2C3.1-26.5-3-9.4-8.2-8.1-23.1-4.1-33.5C12.1%2C26.9%2C32.8%2C11.4%2C41.3%2C5.1c19.5%2C5.7%2C39.4%2C31%2C35.3%2C54.7Z%22%3E%3C%2Fpath%3E%0A%3C%2Fsvg%3E") no-repeat;
  background-size: 75%; background-position: 130% 95%;
  opacity: 0.10; filter: brightness(3);
}
.hero-caption {
  position: absolute; bottom: 28px; left: 28px; right: 28px;
  color: var(--paper); font-family: var(--font-sans);
  font-size: 15px; line-height: 1.45;
  border-left: 2px solid var(--honey-500); padding-left: 14px; z-index: 2;
}
.hero-caption b {
  display: block; font-style: normal; font-family: var(--font-sans);
  font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase;
  color: var(--honey-200); margin-bottom: 6px; font-weight: 500;
}

/* ---- Eyebrow (marketing site — bold + honey square) ---- */
.eyebrow {
  font-family: var(--font-sans); font-size: 12.5px; font-weight: 700;
  letter-spacing: 0.16em; text-transform: uppercase;
  color: var(--ink);
  display: inline-flex; align-items: center; gap: 10px;
}
.eyebrow::before {
  content: ""; display: inline-block;
  width: 6px; height: 6px; border-radius: 0;
  background: var(--honey-600);
}

/* ---- Section primitives ---- */
/* ---- Section dividers — green hairline between sections ---- */
section.block { border-top: 1px solid var(--tilia-300); }
section.block:first-of-type,
.hero + section.block { border-top: 0; }

section.block { padding: 96px 0; }
.block-tint { background: var(--bg-brand-soft); }
.block-paper-pure { background: var(--paper-pure); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.block-dark { background: var(--tilia-900); color: var(--paper); }
.block-dark .eyebrow { color: var(--tilia-300); }
.block-dark h2, .block-dark h3 { color: var(--paper); }
.block-dark .lead { color: var(--tilia-200); }

.section-head {
  max-width: 1240px; margin: 0 auto 64px; padding: 0 32px;
  display: grid; grid-template-columns: 1fr 1.4fr; gap: 80px; align-items: end;
}
.section-head h2 {
  font-family: var(--font-brand); font-weight: 600;
  font-size: clamp(1.75rem, 2.8vw, 2.5rem);
  line-height: 1.12; letter-spacing: -0.01em;
  text-transform: uppercase;
  margin: 16px 0 0; color: inherit; text-wrap: balance;
}
.section-head .lead {
  font-family: var(--font-sans);
  font-size: 19px; line-height: 1.5; color: var(--fg-2);
  margin: 0; max-width: 520px;
}

/* ---- Curriculum grid — outlined cards ---- */
.curriculum {
  max-width: 1240px; margin: 0 auto; padding: 0 32px;
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px;
  background: transparent; border: 0;
}
.module {
  background: var(--paper-pure);
  border: 1px solid var(--border-strong);
  border-radius: var(--radius-lg);
  box-shadow: 0 1px 2px rgba(20,30,24,.04);
  padding: 36px 32px;
  display: flex; flex-direction: column; gap: 16px;
  min-height: 280px;
  transition: box-shadow 200ms cubic-bezier(.2,.7,.2,1), transform 200ms cubic-bezier(.2,.7,.2,1);
}
.module:hover { box-shadow: var(--shadow-md); transform: translateY(-1px); }
.module h3 {
  font-family: var(--font-serif); font-weight: 600;
  font-size: 22px; line-height: 1.2; letter-spacing: -0.01em;
  margin: 0; color: var(--ink); text-wrap: balance;
}
.module-num {
  font-family: var(--font-mono); font-size: 11px;
  letter-spacing: 0.14em; color: var(--tilia-600);
  display: flex; align-items: center; gap: 10px;
}
.module-num::after { content: ""; flex: 1; height: 1px; background: var(--border); }

.module p { font-size: 14px; color: var(--fg-2); margin: 0; line-height: 1.55; }
.module-meta {
  margin-top: auto; display: flex; gap: 12px; align-items: center;
  font-family: var(--font-sans); font-size: 12px; color: var(--fg-3);
}
.module-meta .dot { width: 3px; height: 3px; background: var(--stone-300); border-radius: 99px; }

/* ---- Pillar row (Why) ---- */
.pillars {
  max-width: 1240px; margin: 0 auto; padding: 0 32px;
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 56px;
}
.pillar h3 {
  font-family: var(--font-serif); font-weight: 500; font-size: 22px;
  margin: 20px 0 10px; color: inherit; letter-spacing: -0.01em;
}
.pillar p { font-size: 15px; line-height: 1.6; color: inherit; opacity: 0.85; margin: 0; }
.pillar-num {
  font-family: var(--font-brand); font-weight: 500;
  font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase;
  color: var(--honey-700);
  display: flex; align-items: center; gap: 12px;
}
.pillar-num::after { content: ""; flex: 1; height: 1px; background: currentColor; opacity: 0.4; }

/* ---- Faculty section — dark, foliage background ---- */
section#faculty {
  background: var(--tilia-900); color: var(--paper);
  border-top: 0;
}
section#faculty + section.block { border-top: 0; }
section#faculty .eyebrow { color: var(--honey-300); }
section#faculty .eyebrow::before { background: var(--honey-500); }
section#faculty h2,
section#faculty .section-head h2 { color: var(--paper); }
section#faculty blockquote {
  color: var(--paper);
}
section#faculty cite { color: var(--tilia-200); }
section#faculty cite b { color: var(--paper); }
section#faculty .btn-secondary {
  color: var(--paper); border-color: var(--tilia-400);
}
section#faculty .btn-secondary:hover {
  background: rgba(135,170,159,0.1); border-color: var(--tilia-300);
}
section#faculty .faculty-art {
  box-shadow: 0 24px 60px rgba(0,0,0,0.4);
  border: 1px solid var(--tilia-800);
}

/* ---- Faculty / about row ---- */
.faculty {
  max-width: 1240px; margin: 0 auto; padding: 0 32px;
  display: grid; grid-template-columns: 1fr 1.3fr; gap: 80px; align-items: center;
}
.faculty-art {
  aspect-ratio: 4/5; border-radius: var(--radius-lg);
  background:
    radial-gradient(70% 70% at 30% 30%, rgba(212,169,116,0.22), transparent 60%),
    linear-gradient(160deg, var(--tilia-700), var(--tilia-500));
  position: relative; overflow: hidden; box-shadow: var(--shadow-md);
}
.faculty-art::after {
  content: ""; position: absolute; inset: 0;
  background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2081.8%2097.9%22%20width%3D%2281.8%22%20height%3D%2297.9%22%3E%0A%20%20%0A%20%20%3Cdefs%3E%0A%20%20%20%20%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cpath%20class%3D%22st0%22%20fill%3D%22%231F3A2E%22%20d%3D%22M78.4%2C35.3C72.9%2C20.2%2C54.1%2C2.4%2C41.2.1h-.6c0-.1-.5.3-.5.3C30.5%2C7.2%2C7.8%2C24.5%2C3.4%2C38.5c-4.5%2C11.6-5.9%2C28.5%2C5.2%2C38.1%2C8.7%2C8.4%2C21.6%2C9.3%2C29.9%2C5.1v13.8c0%2C.6.2%2C1.2.6%2C1.6.5.4%2C1.1.7%2C1.7.7h0c1.3%2C0%2C2.4-1.1%2C2.4-2.3v-14.2c4.9%2C2%2C9.5%2C3%2C13.8%2C3s11.2-2%2C15.4-5.8c9.7-9%2C12.2-26.8%2C6-43.2ZM76.5%2C59.8v.2c-.3%2C7.4-3.9%2C13.4-10.3%2C16.8-6.9%2C3.7-15.9%2C3.5-23-.5v-14.4s1.7-1.7%2C1.7-1.7c4.3-4.4%2C6.9-7%2C11.6-11.4.5-.4.7-1%2C.7-1.7%2C0-.6-.3-1.3-.7-1.7-.9-.9-2.4-.9-3.3%2C0-3.9%2C3.6-6.2%2C6-9.5%2C9.3-.2.2-.3.3-.5.5v-11.2s1.8-1.9%2C1.8-1.9c1.2-1.3%2C2.3-2.4%2C3.8-4%2C.5-.5.7-1.1.7-1.8%2C0-.6-.3-1.2-.8-1.6-1-.8-2.4-.7-3.3.2-.9.9-1.5%2C1.6-2.2%2C2.3v-13.2c0-.7-.3-1.3-.8-1.7-.5-.4-1.2-.6-1.9-.5-1.2.2-2.1%2C1.3-2.1%2C2.4v13.8c-.7-.6-1.4-1.1-2.4-1.9-.9-.8-2.4-.6-3.3.3-.5.5-.7%2C1.1-.7%2C1.8%2C0%2C.6.3%2C1.2.8%2C1.6%2C1.6%2C1.3%2C2.7%2C2.2%2C3.9%2C3.1l1.6%2C1.3v11.5c-.2-.2-.4-.3-.6-.5-3.2-2.6-5.5-4.6-9.3-8-.9-.8-2.4-.8-3.3%2C0-.5.4-.8%2C1.1-.8%2C1.7%2C0%2C.6.3%2C1.2.7%2C1.7%2C4.7%2C4.3%2C7.5%2C6.5%2C11.6%2C10l1.6%2C1.3v14.3c-8.2%2C5.7-20.2%2C3.1-26.5-3-9.4-8.2-8.1-23.1-4.1-33.5C12.1%2C26.9%2C32.8%2C11.4%2C41.3%2C5.1c19.5%2C5.7%2C39.4%2C31%2C35.3%2C54.7Z%22%3E%3C%2Fpath%3E%0A%3C%2Fsvg%3E") no-repeat;
  background-size: 60%; background-position: 110% 110%;
  opacity: 0.1; filter: brightness(2.5);
}
.faculty blockquote {
  font-family: var(--font-sans); font-weight: 500;
  font-size: clamp(1.6rem, 2.4vw, 2.1rem); line-height: 1.3;
  color: var(--ink); margin: 24px 0; text-wrap: balance; letter-spacing: -0.01em;
}
.faculty cite {
  display: block; font-style: normal; font-family: var(--font-sans);
  font-size: 13px; color: var(--fg-2); letter-spacing: 0.02em;
}
.faculty cite b { display: block; color: var(--fg-1); font-weight: 600; margin-bottom: 2px; }

/* ---- Testimonial strip — outlined cards ---- */
.testimonials {
  max-width: 1240px; margin: 0 auto; padding: 0 32px;
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
}
.tcard {
  background: var(--paper-pure); border: 1px solid var(--border-strong);
  border-radius: var(--radius-lg); padding: 28px;
  display: flex; flex-direction: column; gap: 16px;
  box-shadow: none;
}
.tcard p {
  font-family: var(--font-sans);
  font-size: 17px; line-height: 1.45; color: var(--fg-1); margin: 0;
}
.tcard footer {
  display: flex; align-items: center; gap: 12px;
  margin-top: auto; padding-top: 16px; border-top: 1px solid var(--border);
}
.tcard .avatar {
  width: 36px; height: 36px; border-radius: 99px; flex-shrink: 0;
  background: linear-gradient(135deg, var(--tilia-600), var(--tilia-400));
}
.tcard .who { font-size: 13px; color: var(--fg-1); font-weight: 500; }
.tcard .who span { display: block; color: var(--fg-3); font-weight: 400; font-size: 12px; }

/* ---- CTA band ---- */
.cta-band {
  max-width: 1240px; margin: 0 auto; padding: 80px 64px;
  display: grid; grid-template-columns: 1.4fr 1fr; gap: 64px; align-items: center;
  border-top: 1px solid var(--border); border-bottom: 1px solid var(--border);
}
.cta-band h2 {
  font-family: var(--font-sans); font-weight: 600;
  font-size: clamp(2rem, 3.5vw, 2.75rem); line-height: 1.08;
  letter-spacing: -0.02em; margin: 0 0 16px; text-wrap: balance;
}
.cta-band p { color: var(--fg-2); margin: 0; max-width: 480px; font-size: 16px; line-height: 1.6; }
.cta-band .cta-actions { display: flex; flex-direction: column; gap: 10px; }

/* ---- Footer ---- */
.footer {
  background: var(--tilia-900); color: var(--tilia-200);
  padding: 64px 0 32px;
}
.footer-inner {
  max-width: 1240px; margin: 0 auto; padding: 0 32px;
  display: grid; grid-template-columns: 1.5fr repeat(3, 1fr); gap: 64px;
}
.footer h4 {
  font-family: var(--font-sans); font-size: 12px; font-weight: 500;
  letter-spacing: 0.14em; text-transform: uppercase;
  color: var(--tilia-300); margin: 0 0 16px;
}
.footer ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; }
.footer a { color: var(--tilia-100); text-decoration: none; font-size: 14px; }
.footer a:hover { color: var(--paper); }
.footer-bottom {
  max-width: 1240px; margin: 64px auto 0; padding: 24px 32px 0;
  border-top: 1px solid rgba(135,170,159,0.2);
  display: flex; justify-content: space-between; align-items: center;
  font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.04em;
  color: var(--tilia-400);
}
.footer .wordmark { color: var(--paper); font-size: 30px; }
.footer .wordmark .leaf { filter: brightness(1.6) saturate(0.7); }
.footer-blurb { font-family: var(--font-sans); font-size: 15px;
  color: var(--tilia-200); margin-top: 16px; line-height: 1.5; max-width: 320px; }
