  /* ── Hero ── */
  
  /* ── Site Header ── */
header {
  padding: 1rem 1.5rem;
}

header h1 {
  font-family: 'DM Sans', sans-serif;
  font-size: 1rem;
  font-weight: 600;
  color: #1a2e1a;
  margin: 0;
}

  .hero {
    text-align: center;
    padding: 4.5rem 1.5rem 3rem;
    max-width: 680px;
    margin: 0 auto;
  }
  .hero-tag {
    display: inline-block;
    background: #f2e9df;
    color: #a04e20;
    font-size: .75rem;
    font-weight: 500;
    padding: .28rem .9rem;
    border-radius: 20px;
    margin-bottom: 1.25rem;
    letter-spacing: .05em;
    text-transform: uppercase;
  }
  .hero h1 {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(2.2rem, 5vw, 3.2rem);
    color: #1a2e1a;
    line-height: 1.15;
    margin: 0 0 1rem;
  }
  .hero h1 em {
    color: #c8622a;
    font-style: normal;
  }
  .hero p {
    color: #8c7b6e;
    font-size: 1.05rem;
    line-height: 1.75;
    margin: 0 auto 2.25rem;
  }
  .hero-actions {
    display: flex;
    gap: .85rem;
    justify-content: center;
    flex-wrap: wrap;
  }

  /* ── Buttons ── */
  .btn-pill {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .72rem 1.75rem;
    border-radius: 50px;
    font-family: 'DM Sans', sans-serif;
    font-size: .95rem;
    font-weight: 500;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: background .18s, transform .12s;
  }
  .btn-pill:active { transform: scale(.97); }
  .btn-pill-solid  { background: #c8622a; color: #fff; }
  .btn-pill-solid:hover { background: #a04e20; }
  .btn-pill-outline { background: transparent; color: #0f3d2e; border: 1.5px solid #0f3d2e; }
  .btn-pill-outline:hover { background: #0f3d2e; color: #fff; }

  /* ── Divider ── */
  .home-divider {
    width: 48px;
    height: 3px;
    background: #c8622a;
    border-radius: 2px;
    margin: .5rem auto 3rem;
  }

  /* ── Feature cards ── */
  .features {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1.25rem;
    max-width: 820px;
    margin: 0 auto;
    padding: 0 1.25rem 4rem;
  }
  .feature-card {
    background: #ffffff;
    border: 1px solid #e8ddd2;
    border-radius: 14px;
    padding: 1.75rem 1.25rem 1.5rem;
    text-align: center;
    transition: transform .2s, box-shadow .2s;
  }
  .feature-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 32px rgba(44,32,22,.1);
  }
  .feature-icon {
    font-size: 2rem;
    display: block;
    margin-bottom: .9rem;
  }
  .feature-card h3 {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 1.05rem;
    font-weight: 500;
    color: #2c2016;
    margin: 0 0 .5rem;
  }
  .feature-card p {
    font-size: .85rem;
    color: #8c7b6e;
    line-height: 1.65;
    margin: 0;
  }

  /* ── Footer ── */
  .home-footer {
    text-align: center;
    padding: 1.5rem 1rem;
    font-size: .78rem;
    color: #b5a99e;
    border-top: 1px solid #e8ddd2;
  }
