body { margin: 0; }
.crawlable-home {
  color: #1b1d2b;
  background: #f7f2e7;
  font-family: "DM Sans", Arial, sans-serif;
  line-height: 1.6;
}
.crawlable-home * { box-sizing: border-box; }
.crawlable-home a { color: #674187; text-underline-offset: 3px; }
.crawlable-header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.25rem max(5%, calc((100% - 76rem) / 2));
  background: #1b1d2b;
}
.crawlable-header .crawlable-brand { color: #e8b83e; font: 700 1.2rem "Playfair Display", Georgia, serif; }
.crawlable-header nav { display: flex; flex-wrap: wrap; gap: 1rem; }
.crawlable-header nav a { color: #f7f2e7; }
.crawlable-home section { padding: 3.5rem max(5%, calc((100% - 76rem) / 2)); }
.crawlable-home section:nth-child(2n) { background: #eceaf4; }
.crawlable-home .crawlable-hero { padding-top: 6rem; padding-bottom: 6rem; background: #eceaf4; }
.crawlable-home h1, .crawlable-home h2, .crawlable-home h3 { font-family: "Playfair Display", Georgia, serif; line-height: 1.15; }
.crawlable-home h1 { max-width: 13ch; font-size: clamp(3rem, 7vw, 6rem); margin: 0 0 1.5rem; }
.crawlable-home h1 small { display: block; margin-bottom: 1rem; font: 700 .85rem "DM Sans", Arial, sans-serif; text-transform: uppercase; letter-spacing: .1em; }
.crawlable-home h1 em { color: #946b16; }
.crawlable-home h2 { font-size: clamp(2rem, 4vw, 3rem); }
.crawlable-home p { max-width: 50rem; }
.crawlable-home .crawlable-actions, .crawlable-home .crawlable-columns { display: flex; flex-wrap: wrap; gap: 1.5rem; }
.crawlable-home .crawlable-columns > div { flex: 1 1 18rem; }
.crawlable-home .crawlable-programs { columns: 2 18rem; padding-left: 1.5rem; }
.crawlable-home .crawlable-programs li { margin-bottom: .5rem; }
.crawlable-home #calendar { margin-top: 2rem; padding: 1rem; border: 1px solid #b9aac7; }
.crawlable-home footer { padding: 2rem 5%; color: #f7f2e7; background: #1b1d2b; }
.crawlable-home footer a { color: #e8b83e; }