
:root {
  --paper:#F7F5EF;
  --ink:#172223;
  --navy:#183642;
  --muted:#69706E;
  --line:#D7D1C3;
  --teal:#176D75;
}
* { box-sizing:border-box; }
body {
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family: Georgia, serif;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,.brand,.nav a,.page-tagline,.section-label,.caption,.media-link,.kicker {
  font-family:"EB Garamond", Garamond, Georgia, serif;
}
.site-header {
  position:sticky;
  top:0;
  z-index:20;
  height:76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 56px;
  background:rgba(247,245,239,.94);
  border-bottom:1px solid rgba(215,209,195,.75);
}
.brand { color:var(--teal); font-size:clamp(26px,2.2vw,34px); text-decoration:none; font-weight:500; }
.nav { display:flex; gap:28px; align-items:center; }
.nav a { color:var(--navy); text-decoration:none; font-size:19px; border-bottom:1px solid transparent; padding-bottom:3px; }
.nav a.active,.nav a:hover { color:var(--teal); border-color:var(--teal); }
main { padding:92px 56px 110px; }
.page-wrap { max-width:1200px; margin:0 auto; }
.page-tagline { color:var(--teal); font-size:56px; line-height:1.04; font-weight:500; max-width:760px; text-align:center; margin:0 auto 54px; }
.intro { max-width:950px; margin:0 auto 56px; text-align:center; font-size:28px; line-height:1.45; }
.hero-image { margin:0 auto 12px; max-width:1080px; }
img { display:block; width:100%; height:auto; border:1px solid rgba(215,209,195,.9); }
.caption { color:var(--muted); font-style:italic; font-size:18px; line-height:1.4; margin:14px 0 0; }
.section-grid { display:grid; grid-template-columns: minmax(0, 1.05fr) minmax(300px, .9fr); gap:52px; align-items:start; margin-top:56px; }
.section-grid h2.section-heading:first-child { display:none; }
.section-heading { color:var(--teal); font-size:44px; line-height:1.08; font-weight:500; margin:0 0 12px; }
.section-copy { font-size:27px; line-height:1.5; margin:0 0 28px; }
.list-wrap { display:grid; grid-template-columns:1fr; gap:28px; }
.list-block h3 { margin:0 0 14px; font-size:34px; line-height:1.1; font-weight:500; }
.list-block ul { margin:0; padding-left:28px; }
.list-block li { margin:0 0 12px; font-size:19px; line-height:1.45; }
.link-list { list-style:none; padding:0; margin:0; }
.link-list li { margin:0 0 14px; font-size:22px; line-height:1.45; }
.link-list a { color:var(--teal); text-decoration:none; }
.link-list a:hover, .download-link:hover { text-decoration:underline; }
.teal-rule { height:1px; background:var(--teal); opacity:.72; margin:70px 0; }
.feature-photo { margin:0 auto; max-width:980px; }
.advisory-grid { display:block; margin-top:56px; }
.advisory-photo-bottom { margin:44px auto 0; max-width:1080px; }
.focus-line { font-size:23px; line-height:1.55; color:var(--ink); margin:0; }
.focus-label { color:var(--teal); font-size:34px; margin:0 0 12px; font-weight:500; }
.download-card { border-top:1.5px solid var(--teal); padding-top:26px; text-align:center; max-width:620px; margin:70px auto 0; }
.download-card h3 { margin:0 0 12px; font-size:34px; font-weight:500; }
.download-card p { margin:0 0 18px; font-size:19px; line-height:1.5; }
.download-row { display:grid; grid-template-columns:130px 1fr; gap:22px; align-items:start; max-width:520px; margin:0 auto; text-align:left; }
.download-link { color:var(--teal); text-decoration:none; font-size:24px; font-style:italic; }
.contact { margin-top:22px; font-size:21px; }
.download-link { font-style:italic; }
.contact a, footer a { color:var(--teal); text-decoration:none; }
.footer-rule { height:1px; background:var(--teal); opacity:.72; margin:84px 0 0; }
footer { border-top:1px solid var(--line); padding:34px 56px; color:var(--muted); font-size:17px; display:flex; justify-content:space-between; gap:24px; }
@media (max-width: 960px) {
  .site-header { height:auto; padding:18px 24px; flex-direction:column; align-items:flex-start; gap:12px; }
  .nav { flex-wrap:wrap; gap:12px 20px; }
  main { padding:68px 24px 88px; }
  .page-tagline { font-size:42px; }
  .intro, .section-copy { font-size:23px; }
  .section-grid, .advisory-grid, .download-row { grid-template-columns:1fr; gap:30px; }
  footer { padding:28px 24px; flex-direction:column; }
}


.page-tagline {
  text-align:left !important;
  margin:0 0 18px !important;
  max-width:760px !important;
  font-size:56px !important;
  line-height:1.02 !important;
}
.intro {
  max-width:820px;
  margin:0 0 42px;
  font-size:28px;
  line-height:1.45;
}
.contact-label {
  color: var(--muted);
  letter-spacing: .12em;
  text-transform: uppercase;
  font-size: 14px;
  margin: 26px 0 8px;
}
.advisory-photo-block {
  margin: 42px 0 38px;
}
.advisory-photo-block img {
  width: 100%;
  max-width: 980px;
}
.advisory-photo-block .caption {
  margin-top: 12px;
  font-size: 18px;
  line-height: 1.4;
}


.intro {
  max-width: 860px !important;
  margin: 0 auto 46px !important;
  text-align: center !important;
  font-size: 28px;
  line-height: 1.45;
}

.hero-image + .intro {
  max-width: 860px !important;
  margin: 28px auto 46px !important;
  text-align: center !important;
}

.centered-section-heading {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 860px;
}

.centered-section-heading {
  margin-bottom: 34px !important;
}
.hero-image {
  margin-top: 10px;
}
.advisory-grid > .section-copy:first-of-type {
  margin-top: 8px;
}

.speaking-themes-heading {
  color: var(--teal) !important;
  margin-bottom: 22px !important;
}

.site-header {
  justify-content: space-between;
}
.nav {
  gap: 24px;
}
.intro {
  max-width: 900px !important;
  margin: 28px auto 54px !important;
  text-align: center !important;
}
.download-card {
  margin-top: 72px;
}

.intro-proof {
  max-width: 860px;
  margin: 16px auto 42px;
  text-align: center;
  font-size: 22px;
  line-height: 1.5;
  color: var(--ink);
}

.intro-proof {
  max-width: 860px !important;
  margin: 0 auto 42px !important;
  text-align: center !important;
  font-size: 28px !important;
  line-height: 1.45 !important;
  color: var(--ink) !important;
}

.intro,
.intro-proof {
  max-width: 860px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: left !important;
}

/* force both opening paragraphs to match */
p.intro,
p.intro-proof {
  max-width: 860px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: left !important;
  display: block !important;
}
p.intro {
  margin-top: 28px !important;
  margin-bottom: 12px !important;
  font-size: 28px !important;
  line-height: 1.45 !important;
}
p.intro-proof {
  margin-top: 0 !important;
  margin-bottom: 42px !important;
  font-size: 28px !important;
  line-height: 1.45 !important;
}

/* unified opening text block */
p.intro-combined {
  max-width: 860px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: left !important;
  font-size: 28px !important;
  line-height: 1.45 !important;
  color: var(--ink) !important;
  font-style: normal !important;
  font-weight: 400 !important;
}
p.intro.intro-combined {
  margin-top: 28px !important;
  margin-bottom: 8px !important;
}
p.intro-proof.intro-combined {
  margin-top: 0 !important;
  margin-bottom: 42px !important;
}

.intro-combined-block {
  max-width: 860px !important;
  margin: 28px auto 42px !important;
  text-align: left !important;
  font-size: 28px !important;
  line-height: 1.45 !important;
  color: var(--ink) !important;
}


.footer-contact {
  display:flex;
  align-items:center;
  gap:0;
  flex-wrap:wrap;
}
.social-links {
  display:inline-flex;
  align-items:center;
  gap:12px;
  margin-left:2px;
}
.social-icon {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:var(--teal);
  line-height:1;
}
.social-icon:hover,
.social-icon:focus {
  opacity:.75;
}
.social-icon:focus {
  outline:1px solid var(--teal);
  outline-offset:4px;
}

.social-icon svg {
  display:block;
  width:20px;
  height:20px;
  flex:0 0 20px;
}
