/* ========================================
   Network Partner Toolkit Styles
   ======================================== */

/* Color Variables */
:root {
  --toolkit-red: #D12323;
  --toolkit-red-muted: rgba(209, 35, 35, 0.35);
  --toolkit-dark-blue: #112337;
  --toolkit-pale-blue: #EEF8F7;
  --toolkit-teal: #26947D;
  --toolkit-orange: #FCA311;
  --toolkit-grey: #59778F;
  --toolkit-light-teal: #98CDCF;
  --toolkit-white: #FFFFFF;
  --toolkit-bg-grey: rgba(89, 119, 143, 0.1);
}

/* Reset & Base Styles */
.toolkit-page * {
  box-sizing: border-box;
}

.toolkit-page {
  scroll-behavior: smooth;
}

/* Header */
.toolkit-header {
  background-size: cover;
  background-position: center;
  padding: 60px 0 0 0;
}

.toolkit-header .header-content {
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
}

.toolkit-header .entry-lead {
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.184;
  letter-spacing: 0.32px;
  text-transform: uppercase;
  color: var(--toolkit-red);
  margin-bottom: 16px;
}

.toolkit-header .entry-title {
  font-family: 'Alegreya', serif;
  font-weight: 700;
  font-size: 48px;
  line-height: 1.184;
  color: var(--toolkit-dark-blue);
  margin-bottom: 16px;
}

.toolkit-header .entry-subheading {
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 20px;
  line-height: 1.6;
  color: var(--toolkit-dark-blue);
}

/* Italic Callout */
.toolkit-italic-callout {
  color: var(--toolkit-dark-blue, #112337);
  /* font-family: Alegreya, serif; */
  font-size: 16px;
  font-style: italic;
  font-weight: 700;
  line-height: 145%;
}

/* Main Container */
.toolkit-container {
  background-color: var(--toolkit-white);
  padding: 80px 0;
}

.toolkit-layout {
  display: grid;
  grid-template-columns: 348px 1fr;
  gap: 104px;
  position: relative;
}

/* Mobile Navigation - Hidden on Desktop */
.toolkit-mobile-nav {
  display: none;
}

/* Sidebar Navigation */
.toolkit-sidebar {
  position: sticky;
  top: 120px;
  align-self: start;
  height: fit-content;
}

.toolkit-nav {
  background-color: var(--toolkit-bg-grey);
  border-radius: 8px;
  padding: 40px 38px;
  display: flex;
  gap: 16px;
}

.nav-indicators {
  display: none;
}

.nav-indicator {
  display: none;
}

.indicator-number {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIj4KICA8cGF0aCBkPSJNMTIuMDI2MyAyNEMxMS41NTE2IDI0IDExLjA3NjkgMjMuOTQ3MiAxMC42MDIyIDIzLjg5NDJDMTAuMTgwMiAyMy44NDE0IDkuODYzNjggMjMuNDcxNCA5LjkxNjUzIDIyLjk5NTdDOS45NjkyMiAyMi41NzI5IDEwLjMzODYgMjIuMjU1OCAxMC44MTMzIDIyLjMwODdDMTEuMjM1MyAyMi4zNjE1IDExLjY1NzIgMjIuMzYxNSAxMi4wNzkyIDIyLjM2MTVDMTIuNTAxMiAyMi4zNjE1IDEyLjkyMzEgMjIuMzYxNSAxMy4zNDUxIDIyLjMwODdDMTMuNzY3MSAyMi4yNTU5IDE0LjE4OSAyMi41NzMgMTQuMjQxOSAyMi45OTU3QzE0LjI5NDYgMjMuNDE4NiAxMy45NzgxIDIzLjg0MTMgMTMuNTU2MiAyMy44OTQyQzEzLjAyODUgMjMuOTQ3MiAxMi41MDExIDI0IDEyLjAyNjMgMjRaTTguMDcwMzQgMjMuMjZDNy45NjQ3OSAyMy4yNiA3Ljg1OTQgMjMuMjYgNy44MDY1NSAyMy4yMDcyQzYuOTA5OCAyMi44OTAxIDYuMDY1OTEgMjIuNDE0NSA1LjIyMjAxIDIxLjg4NkM0Ljg1Mjg0IDIxLjYyMTcgNC43NDcyOSAyMS4xNDYxIDUuMDExMDggMjAuNzc2MkM1LjI3NDg2IDIwLjQwNjMgNS43NDk1OSAyMC4zMDA1IDYuMTE4NzYgMjAuNTY0OEM2LjgwNDQyIDIxLjA0MDUgNy41NDI5MiAyMS40MTA0IDguMzM0MTIgMjEuNzI3NUM4Ljc1NjE1IDIxLjg4NiA4Ljk2NzA5IDIyLjM2MTcgOC44MDg4NSAyMi43MzE2QzguNzAzMyAyMy4wNDg3IDguMzg2ODIgMjMuMjYgOC4wNzAzNCAyMy4yNlpNMTYuMDM1IDIzLjI2QzE1LjcxODUgMjMuMjYgMTUuNDAyIDIzLjA0ODcgMTUuMjk2NSAyMi43MzE2QzE1LjEzODIgMjIuMzA4NyAxNS4zNDkyIDIxLjg4NiAxNS43NzEyIDIxLjcyNzVDMTYuNTYyNCAyMS40MTA0IDE3LjMwMDkgMjEuMDQwNSAxNy45ODY1IDIwLjU2NDhDMTguMzU1NyAyMC4zMDA1IDE4LjgzMDQgMjAuNDA2MyAxOS4wOTQyIDIwLjc3NjJDMTkuMzU4IDIxLjE0NjEgMTkuMjUyNSAyMS42MjE3IDE4Ljg4MzMgMjEuODg2QzE4LjA5MjEgMjIuNDE0NSAxNy4yNDgyIDIyLjg5MDEgMTYuMzUxNSAyMy4yNjAyQzE2LjE5MzIgMjMuMjA3MiAxNi4wODc4IDIzLjI2IDE2LjAzNSAyMy4yNlpNMy42Mzk2MSAyMC4xOTQ4QzMuNDI4NjcgMjAuMTk0OCAzLjIxNzU4IDIwLjA4OSAzLjA1OTM0IDE5LjkzMDVDMi40MjYzOCAxOS4xOTA1IDEuODQ2MTEgMTguMzk3NyAxLjQyNDI0IDE3LjU1MjJDMS4yMTMzMSAxNy4xODIzIDEuMzcxNTUgMTYuNzA2NiAxLjc0MDcyIDE2LjQ5NTFDMi4xMDk5IDE2LjI4MzggMi41ODQ2MiAxNi40NDIzIDIuNzk1NzEgMTYuODEyMkMzLjE2NDg5IDE3LjU1MjIgMy42OTI0NiAxOC4yMzkyIDQuMjE5ODggMTguODczNEM0LjUzNjM2IDE5LjE5MDUgNC40ODM2NiAxOS43MTkgNC4xNjcxOCAxOS45ODMzQzQuMDA4NzkgMjAuMTQyIDMuODUwNTUgMjAuMTk0OCAzLjYzOTYxIDIwLjE5NDhaTTIwLjQxMzEgMjAuMTk0OEMyMC4yMDIyIDIwLjE5NDggMjAuMDQzOSAyMC4xNDIgMTkuODg1NyAxOS45ODM0QzE5LjU2OTIgMTkuNzE5MSAxOS41MTY1IDE5LjE5MDcgMTkuODMzIDE4Ljg3MzZDMjAuNDEzMiAxOC4yMzk0IDIwLjg4OCAxNy41NTI0IDIxLjI1NzEgMTYuODEyNEMyMS40NjgxIDE2LjQ0MjUgMjEuOTQyOCAxNi4yODM5IDIyLjMxMjEgMTYuNDk1M0MyMi42ODEzIDE2LjcwNjYgMjIuODM5NSAxNy4xODIzIDIyLjYyODYgMTcuNTUyNEMyMi4xNTM5IDE4LjM5NzkgMjEuNjI2NSAxOS4xOTA3IDIwLjk5MzUgMTkuOTMwNkMyMC44MzUxIDIwLjA4OSAyMC42MjQgMjAuMTk0OCAyMC40MTMxIDIwLjE5NDhaTTEuMTYwMzggMTUuNDM4MkMwLjc5MTIwMiAxNS40MzgyIDAuNDc0NzIxIDE1LjE3MzkgMC4zNjkxNzUgMTQuODU2OEMwLjE1ODI0IDEzLjkwNTUgMCAxMi45NTQyIDAgMTIuMDAyOUMwIDExLjU4IDAuMzY5MTc1IDExLjIxMDEgMC43OTEyMDIgMTEuMjEwMUMxLjIxMzIzIDExLjIxMDEgMS41ODI0IDExLjU4IDEuNTgyNCAxMi4wMDI5QzEuNTgyNCAxMi44NDg0IDEuNjg3OTUgMTMuNjk0MiAxLjg5ODg4IDE0LjQ4NjlDMi4wMDQ0MyAxNC45MDk4IDEuNzQwNjQgMTUuMzMyNSAxLjMxODYyIDE1LjQzODJIMS4xNjAzOFpNMjIuODkyMyAxNS40MzgySDIyLjY4MTRDMjIuMjU5NCAxNS4zMzI1IDIxLjk5NTcgMTQuOTA5OCAyMi4xMDExIDE0LjQ4NjlDMjIuMzEyIDEzLjY5NDIgMjIuNDE3NiAxMi44NDg2IDIyLjQxNzYgMTIuMDAyOUMyMi40MTc2IDExLjU4IDIyLjc4NjggMTEuMjEwMSAyMy4yMDg4IDExLjIxMDFDMjMuNjMwOCAxMS4yMTAxIDI0IDExLjUyNzIgMjQgMTIuMDAyOVYxMS45NTAxQzI0IDEyLjkwMTQgMjMuODk0NSAxMy45MDU1IDIzLjYzMDggMTQuODA0QzIzLjU3OCAxNS4xNzM5IDIzLjI2MTUgMTUuNDM4MiAyMi44OTIzIDE1LjQzODJaTTEuMTYwMzggMTAuMTAwMkgwLjk0OTQ0MkMwLjUyNzQxNSA5Ljk5NDQ1IDAuMjYzNzg3IDkuNTcxNzUgMC4zNjkxNzUgOS4xNDg4OUMwLjU4MDEwOSA4LjE5NzU4IDAuOTQ5NDQyIDcuMjk5MDcgMS4zNzEzMSA2LjQ1MzUyQzEuNTgyMjUgNi4wODM2MiAyLjA1Njk3IDUuOTI1MDcgMi40MjYzIDYuMTM2NDFDMi43OTU0NyA2LjM0Nzc2IDIuOTUzNzEgNi44MjM0MiAyLjc0Mjc4IDcuMTkzNDhDMi4zNzM2MSA3LjkzMzQzIDIuMDU3MTIgOC43MjYxOSAxLjg0NjAzIDkuNTcxNzVDMS43OTMzNCA5LjgzNjA1IDEuNDc2ODYgMTAuMTAwMiAxLjE2MDM4IDEwLjEwMDJaTTIyLjg5MjMgOS45OTQ2QzIyLjUyMzEgOS45OTQ2IDIyLjIwNjcgOS43MzAzIDIyLjEwMTEgOS40MTMxOUMyMS44OTAyIDguNjIwNDQgMjEuNTczNyA3LjgyNzY4IDIxLjIwNDQgNy4wODc3MkMyMC45OTM0IDYuNzE3ODIgMjEuMTUxNyA2LjI0MjE2IDIxLjUyMDggNi4wMzA2NkMyMS44OSA1LjgxOTMxIDIyLjM2NDcgNS45Nzc4NiAyMi41NzU4IDYuMzQ3NzZDMjMuMDUwNiA3LjE5MzMxIDIzLjM2NyA4LjA5MTgzIDIzLjYzMDggOS4wNDMxM0MyMy43MzY0IDkuNDY1OTkgMjMuNDcyNiA5Ljg4ODY5IDIzLjA1MDYgOS45OTQ0NEMyMy4wNTA2IDkuOTk0NiAyMi45NDUgOS45OTQ2IDIyLjg5MjMgOS45OTQ2Wk0zLjYzOTYxIDUuMjkwNzhDMy40Mjg2NyA1LjI5MDc4IDMuMjcwNDMgNS4yMzc5OCAzLjExMjE5IDUuMDc5NDNDMi43OTU3MSA0LjgxNTEyIDIuNzQzMDIgNC4yODY2NyAzLjA1OTUgMy45Njk1N0MzLjY5MjQ2IDMuMjI5NjEgNC40MzA5NyAyLjU5NTQgNS4yMjIxNyAyLjA2Njk1QzUuNTkxMzQgMS44MDI2NSA2LjA2NjA3IDEuOTA4NCA2LjMyOTg1IDIuMjc4M0M2LjU5MzY0IDIuNjQ4MiA2LjQ4ODA5IDMuMTIzODYgNi4xMTg5MiAzLjM4ODE2QzUuNDMzMjYgMy44NjM4MSA0LjgwMDMgNC40NDUyMiA0LjIyMDAzIDUuMDc5NDNDNC4wNjE2NCA1LjIzNzk4IDMuODUwNTUgNS4yOTA3OCAzLjYzOTYxIDUuMjkwNzhaTTIwLjQxMzEgNS4yOTA3OEMyMC4yMDIyIDUuMjkwNzggMTkuOTkxMSA1LjE4NTAyIDE5LjgzMjggNS4wMjY0N0MxOS4yNTI2IDQuMzkyMjcgMTguNjE5NiAzLjg2MzgxIDE3LjkzMzkgMy4zODgxNkMxNy41NjQ4IDMuMTIzODYgMTcuNDU5MiAyLjY0ODIgMTcuNzIzIDIuMjc4M0MxNy45ODY4IDEuOTA4NCAxOC40NjE1IDEuODAyNjUgMTguODMwNyAyLjA2Njk1QzE5LjYyMTkgMi41OTU0IDIwLjM2MDQgMy4yODI1NyAyMC45OTM0IDMuOTY5NTdDMjEuMzA5OCA0LjI4NjY3IDIxLjI1NzEgNC44MTUxMiAyMC45NDA3IDUuMDc5NDNDMjAuNzgyMyA1LjE4NTAzIDIwLjU3MTMgNS4yOTA3OCAyMC40MTMxIDUuMjkwNzhaTTguMDE3NzIgMi4yMjU1QzcuNzAxMjQgMi4yMjU1IDcuMzg0NzYgMi4wMTQxNSA3LjI3OTIyIDEuNjk3MDVDNS4xMjA5OCAxLjI3NDIgNy4zMzE5MSAwLjg1MTQ5NyA3Ljc1Mzk0IDAuNjkyOTQ2QzguNjUwNjkgMC4zMjMwNDYgOS42MDAxMyAwLjExMTUzOCAxMC41NDk2IDAuMDA1OTQyNzlDMTAuOTcxNiAtMC4wNDY4NTQ4IDExLjM5MzUgMC4yNzAyNDggMTEuNDQ2MyAwLjY5Mjk0NkMxMS40OTkgMS4xMTU4IDExLjE4MjUgMS41Mzg1IDEwLjc2MDcgMS41OTE0NkM5LjkxNjc3IDEuNjk3MjEgOS4xMjU1NiAxLjkwODU2IDguMzM0MzYgMi4xNzI4NkM4LjIyODY2IDIuMjI1NTEgOC4xMjMxMiAyLjIyNTUgOC4wMTc3MiAyLjIyNTVaTTE1Ljk4MjQgMi4yMjU1QzE1Ljg3NjggMi4yMjU1IDE1Ljc3MTQgMi4yMjU1IDE1LjcxODYgMi4xNzI3MUMxNC45Mjc0IDEuODU1NiAxNC4xMzYyIDEuNjk3MDUgMTMuMjkyMyAxLjU5MTNDMTIuODcwMiAxLjUzODUgMTIuNTUzOCAxLjE2ODQ0IDEyLjYwNjYgMC42OTI3ODdDMTIuNjU5MyAwLjI2OTkzMSAxMy4wMjg2IC0wLjA0NzE3MTggMTMuNTAzNCAwLjAwNTc4NDMzQzE0LjQ1MjggMC4xMTE1MzggMTUuNDAyMiAwLjMyMjg4NyAxNi4yOTkgMC42OTI3ODdDMTYuNzIxIDAuODUxMzM5IDE2LjkzMiAxLjMyNjk5IDE2Ljc3MzcgMS42OTY4OUMxNi42MTUzIDIuMDE0IDE2LjI5ODggMi4yMjU1IDE1Ljk4MjQgMi4yMjU1WiIgZmlsbD0iI0QxMjMyMyIvPgo8L3N2Zz4K');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-color: transparent;
  border: none;
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 700;
  font-size: 10px;
  line-height: 1;
  letter-spacing: 0.32px;
  text-transform: uppercase;
  color: var(--toolkit-red);
  transition: all 0.3s ease;
  position: relative;
}

.nav-indicator.active .indicator-number {
  background-image: none;
  background-color: var(--toolkit-red);
  color: var(--toolkit-pale-blue);
  border: none;
  font-size: 16px;
  line-height: 1.184;
}

.indicator-line {
  width: 1px;
  height: 11px;
  background-color: var(--toolkit-grey);
  flex-shrink: 0;
}

.nav-items {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  flex: 1;
  counter-reset: nav-counter;
}

.nav-item {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--toolkit-grey);
  margin-bottom: 24px;
  counter-increment: nav-counter;
}

.nav-item:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.nav-item::before {
  content: counter(nav-counter);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  min-width: 32px;
  border-radius: 50%;
  border: 2px dashed var(--toolkit-red);
  background-color: transparent;
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 1;
  color: var(--toolkit-red);
  flex-shrink: 0;
}

.nav-item.active::before {
  border: none;
  background-color: var(--toolkit-red);
  color: var(--toolkit-white);
}

.nav-item a {
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.32px;
  text-transform: uppercase;
  color: var(--toolkit-dark-blue);
  text-decoration: none;
  transition: color 0.3s ease;
  display: block;
  outline-offset: 4px;
  padding-top: 4px;
}

.nav-item.active a {
  color: var(--toolkit-red);
}

.nav-item a:hover,
.nav-item a:focus {
  color: var(--toolkit-red);
}

/* Content Area */
.toolkit-content {
  max-width: 657px;
  position: relative;
}

.toolkit-section {
  display: none;
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.4s ease, transform 0.4s ease;
}

.toolkit-section.active {
  display: block;
  animation: fadeInUp 0.4s ease forwards;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.section-inner {
  display: flex;
  flex-direction: column;
  gap: 56px;
}

.section-header {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.section-number {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 32px;
  background-color: var(--toolkit-red);
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.184;
  letter-spacing: 0.32px;
  text-transform: uppercase;
  color: var(--toolkit-pale-blue);
}

.section-title-wrapper {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.section-title {
  font-family: 'Alegreya', serif;
  font-weight: 700;
  font-size: 32px;
  line-height: 1.184;
  color: var(--toolkit-dark-blue);
  margin: 0;
}

.section-divider {
  width: 60px;
  height: 2px;
  background-color: var(--toolkit-red);
}

/* Section Content */
.section-content {
  display: block;
  max-width: 620px;
}

.section-content > * {
  margin-bottom: 24px;
}

.section-content > *:last-child {
  margin-bottom: 0;
}

.section-content p {
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: var(--toolkit-dark-blue);
  margin: 0 0 24px 0;
}

/* Section Subheadings */
.section-content h3,
.section-content h4,
.section-content h5,
.section-content h6 {
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 1.4;
  letter-spacing: 0.36px;
  text-transform: uppercase;
  color: var(--toolkit-dark-blue);
  margin: 0 0 8px 0 !important;
}

.section-content h3:not(:first-child),
.section-content h4:not(:first-child),
.section-content h5:not(:first-child),
.section-content h6:not(:first-child) {
  margin-top: 32px !important;
}

.section-content ul {
  list-style: none;
  padding: 0;
  margin: 0 0 24px 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.section-content ul li {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.5;
  color: var(--toolkit-red);
}

.section-content ul li::before {
  content: '';
  width: 6px;
  height: 11px;
  border-radius: 0;
  background-color: var(--toolkit-red);
  flex-shrink: 0;
  margin-top: 5px;
}

/* Ordered Lists */
.section-content ol {
  list-style: none;
  padding: 0;
  margin: 0 0 24px 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
  counter-reset: list-counter;
}

.section-content ol li {
  display: block;
  position: relative;
  padding-left: 36px;
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.6;
  color: var(--toolkit-dark-blue);
  counter-increment: list-counter;
}

.section-content ol li::before {
  content: counter(list-counter) ".";
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.6;
  color: var(--toolkit-dark-blue);
  position: absolute;
  left: 0;
  top: 0;
}

/* Helpful Resource Callout Box */
.toolkit-callout {
  background-color: var(--toolkit-pale-blue);
  padding: 24px 32px;
  margin: 0 0 0 36px;
  border-radius: 8px;
}

.toolkit-callout + .toolkit-callout {
  margin-top: 8px;
}

/* Dark Callout Variant */
.toolkit-callout-dark {
  background-color: var(--toolkit-grey);
  padding: 32px 40px;
  margin: 24px 0;
}

.toolkit-callout-dark .toolkit-callout-title {
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 1.4;
  letter-spacing: 0.36px;
  text-transform: uppercase;
  color: var(--toolkit-white);
  margin: 0 0 16px 0;
}

.toolkit-callout-dark ol {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
  counter-reset: dark-list-counter;
}

.toolkit-callout-dark ol li {
  display: block;
  position: relative;
  padding-left: 32px;
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.6;
  color: var(--toolkit-white);
  counter-increment: dark-list-counter;
}

.toolkit-callout-dark ol li::before {
  content: counter(dark-list-counter) ".";
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.6;
  color: var(--toolkit-white);
  position: absolute;
  left: 0;
  top: 0;
}

/* Teal Callout Variant */
.toolkit-callout-teal {
  background-color: var(--toolkit-light-teal);
  padding: 32px 40px;
  margin: 24px 0;
}

.toolkit-callout-teal .toolkit-callout-title {
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 1.4;
  letter-spacing: 0.36px;
  text-transform: uppercase;
  color: var(--toolkit-dark-blue);
  margin: 0 0 16px 0;
}

.toolkit-callout-teal ol {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
  counter-reset: teal-list-counter;
}

.toolkit-callout-teal ol li {
  display: block;
  position: relative;
  padding-left: 32px;
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.6;
  color: var(--toolkit-dark-blue);
  counter-increment: teal-list-counter;
}

.toolkit-callout-teal ol li::before {
  content: counter(teal-list-counter) ".";
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.6;
  color: var(--toolkit-dark-blue);
  position: absolute;
  left: 0;
  top: 0;
}

.toolkit-callout-teal a {
  color: var(--toolkit-dark-blue);
  text-decoration: underline;
}

/* Callout within ordered list items */
.section-content ol li .toolkit-callout {
  flex-basis: 100%;
  margin: 16px 0 0 0;
}

.section-content ol li .toolkit-callout:last-child {
  margin-bottom: 0;
}

.toolkit-callout-title {
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 700;
  font-size: 16px !important;
  line-height: 1.4;
  letter-spacing: 0.32px;
  text-transform: uppercase;
  color: var(--toolkit-dark-blue);
  margin: 0 0 8px 0;
}

.toolkit-callout p {
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.6;
  color: var(--toolkit-dark-blue);
  margin: 0;
}

.toolkit-callout a {
  color: var(--toolkit-dark-blue);
  text-decoration: underline;
  transition: color 0.3s ease;
}

.toolkit-callout a:hover,
.toolkit-callout a:focus {
  color: var(--toolkit-teal);
}

/* Social Media Icons Grid */
.toolkit-social-icons {
  display: flex;
  gap: 8px;
  margin: 24px 0;
}

.toolkit-social-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  aspect-ratio: 1;
  max-width: 120px;
  min-width: 48px;
  min-height: 48px;
  transition: transform 0.2s ease, opacity 0.2s ease;
  /* Fallback: show icon via background when link has no inner SVG (e.g. from block editor) */
  background-size: 48px 48px;
  background-repeat: no-repeat;
  background-position: center;
}

.toolkit-social-icon:hover,
.toolkit-social-icon:focus {
  transform: scale(1.05);
  opacity: 0.9;
}

.toolkit-social-icon img,
.toolkit-social-icon svg {
  width: 48px;
  height: 48px;
}

/* When link contains SVG, don't use background icon */
.toolkit-social-icon:has(svg),
.toolkit-social-icon:has(img) {
  background-image: none !important;
}

.toolkit-social-icon.facebook {
  background-color: var(--toolkit-dark-blue);
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='white' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18 2h-3a5 5 0 0 0-5 5v3H7v4h3v8h4v-8h3l1-4h-4V7a1 1 0 0 1 1-1h3V2z'/%3E%3C/svg%3E");
}

.toolkit-social-icon.twitter {
  background-color: var(--toolkit-teal);
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='white' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z'/%3E%3C/svg%3E");
}

.toolkit-social-icon.linkedin {
  background-color: var(--toolkit-orange);
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='%23112337' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.062 2.062 0 0 1-2.063-2.065 2.064 2.064 0 1 1 2.063 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z'/%3E%3C/svg%3E");
}

.toolkit-social-icon.youtube {
  background-color: #C5D5D5;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='%23112337' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z'/%3E%3C/svg%3E");
}

.toolkit-social-icon.instagram {
  background-color: var(--toolkit-light-teal);
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='%23112337' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 2.163c3.204 0 3.584.012 4.85.07 3.252.148 4.771 1.691 4.919 4.919.058 1.265.069 1.645.069 4.849 0 3.205-.012 3.584-.069 4.849-.149 3.225-1.664 4.771-4.919 4.919-1.266.058-1.644.07-4.85.07-3.204 0-3.584-.012-4.849-.07-3.26-.149-4.771-1.699-4.919-4.92-.058-1.265-.07-1.644-.07-4.849 0-3.204.013-3.583.07-4.849.149-3.227 1.664-4.771 4.919-4.919 1.266-.057 1.645-.069 4.849-.069zM12 0C8.741 0 8.333.014 7.053.072 2.695.272.273 2.69.073 7.052.014 8.333 0 8.741 0 12c0 3.259.014 3.668.072 4.948.2 4.358 2.618 6.78 6.98 6.98C8.333 23.986 8.741 24 12 24c3.259 0 3.668-.014 4.948-.072 4.354-.2 6.782-2.618 6.979-6.98.059-1.28.073-1.689.073-4.948 0-3.259-.014-3.667-.072-4.947-.196-4.354-2.617-6.78-6.979-6.98C15.668.014 15.259 0 12 0zm0 5.838a6.162 6.162 0 1 0 0 12.324 6.162 6.162 0 0 0 0-12.324zM12 16a4 4 0 1 1 0-8 4 4 0 0 1 0 8zm6.406-11.845a1.44 1.44 0 1 0 0 2.881 1.44 1.44 0 0 0 0-2.881z'/%3E%3C/svg%3E");
}

/* Gravity Forms in toolkit – 24px spacing (Figma) */
.toolkit-page .section-content .gform_wrapper {
  margin-top: 24px;
  padding: 0;
}

.toolkit-page .section-content .gform_wrapper .gform_body,
.toolkit-page .section-content .gform_wrapper .gform_fields {
  margin: 0 !important;
  padding: 0 !important;
}

.toolkit-page .section-content .gform_wrapper .gform_title,
.toolkit-page .section-content .gform_wrapper .gform_heading .gform_title {
  margin: 0 0 24px 0 !important;
}

.toolkit-page .section-content .gform_wrapper .gform_fields .gfield {
  margin: 0 0 24px 0 !important;
  padding: 0 !important;
}

.toolkit-page .section-content .gform_wrapper .gform_fields .gfield:last-of-type {
  margin-bottom: 0 !important;
}

.toolkit-page .section-content .gform_wrapper.gform-theme .gform_fields {
  gap: 24px 24px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.toolkit-page .section-content .gform_wrapper.gform-theme .gform_fields .gfield {
  margin: 0 !important;
}

.toolkit-page .section-content .gform_wrapper .gfield_label,
.toolkit-page .section-content .gform_wrapper .gfield_label.gfield_label_before_complex {
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 700;
  font-size: 12px;
  line-height: 1.3;
  letter-spacing: 0.24px;
  color: var(--toolkit-dark-blue);
  margin: 0 0 6px 0 !important;
}

.toolkit-page .section-content .gform_wrapper .ginput_container {
  margin: 0 !important;
  padding: 0 !important;
}

.toolkit-page .section-content .gform_wrapper .ginput_container_name.gform-grid-row,
.toolkit-page .section-content .gform_wrapper .ginput_complex.gform-grid-row {
  gap: 0 24px !important;
}

.toolkit-page .section-content .gform_wrapper .ginput_container_name .gform-grid-col,
.toolkit-page .section-content .gform_wrapper .ginput_container_name .name_first,
.toolkit-page .section-content .gform_wrapper .ginput_container_name .name_last,
.toolkit-page .section-content .gform_wrapper .ginput_complex .gform-grid-col {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.toolkit-page .section-content .gform_wrapper .gfield_description {
  margin: 4px 0 0 0 !important;
}

.toolkit-page .section-content .gform_wrapper .gform_footer {
  margin: 24px 0 0 0 !important;
  padding: 0 !important;
}

.toolkit-page .section-content input[type="text"],
.toolkit-page .section-content input[type="email"],
.toolkit-page .section-content input[type="tel"],
.toolkit-page .section-content textarea {
  width: 100%;
  border: 1px solid var(--toolkit-grey);
  border-radius: 8px;
  padding: 12px 20px;
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 16px;
  line-height: 1.3;
  letter-spacing: 0.32px;
  color: var(--toolkit-dark-blue);
  transition: border-color 0.3s ease;
}

.toolkit-page .section-content input[type="text"]::placeholder,
.toolkit-page .section-content input[type="email"]::placeholder,
.toolkit-page .section-content input[type="tel"]::placeholder,
.toolkit-page .section-content textarea::placeholder {
  color: var(--toolkit-grey);
}

.toolkit-page .section-content input[type="text"]:focus,
.toolkit-page .section-content input[type="email"]:focus,
.toolkit-page .section-content input[type="tel"]:focus,
.toolkit-page .section-content textarea:focus {
  outline: none;
  border-color: var(--toolkit-red);
}

.toolkit-page .section-content .gform_wrapper .gform_button,
.toolkit-page .section-content .gform_wrapper input[type="submit"],
.toolkit-page .section-content .gform_wrapper .gform_footer input[type="submit"],
.toolkit-page .section-content .gform_wrapper .gform_page_footer input[type="submit"] {
  width: 100% !important;
  background-color: var(--toolkit-orange) !important;
  background-image: none !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 16px 24px !important;
  font-family: 'Source Sans Pro', sans-serif !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  line-height: 1.3 !important;
  letter-spacing: 0.32px !important;
  text-transform: none !important;
  color: var(--toolkit-dark-blue) !important;
  cursor: pointer;
  transition: background-color 0.3s ease;
  box-shadow: none !important;
}

.toolkit-page .section-content .gform_wrapper .gform_button:hover,
.toolkit-page .section-content .gform_wrapper input[type="submit"]:hover,
.toolkit-page .section-content .gform_wrapper .gform_footer input[type="submit"]:hover,
.toolkit-page .section-content .gform_wrapper .gform_page_footer input[type="submit"]:hover {
  background-color: #e69310 !important;
}

/* Section Navigation */
.section-navigation {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 32px;
  padding-top: 56px;
  border-top: none;
  background-image: linear-gradient(
    to right,
    var(--toolkit-light-teal) 2px,
    transparent 2px
  );
  background-size: 4px 1px;
  background-repeat: repeat-x;
  background-position: 0 0;
}

.section-nav-btn {
  display: flex;
  align-items: center;
  gap: 12px;
  background: transparent !important;
  border: none;
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.184;
  letter-spacing: 0.32px;
  text-transform: uppercase;
  cursor: pointer;
  transition: color 0.3s ease, background-color 0.3s ease, transform 0.2s ease;
  padding: 8px;
  outline-offset: 4px;
}

/* Circular icon wrapper (Figma: dashed circle for prev, solid for next) */
.section-nav-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  border-radius: 50%;
}

.section-nav-icon svg {
  width: 12px;
  height: 10.5px;
}

/* Previous: dashed circle, vibrant red (Figma node 276-354) */
.section-nav-btn.prev-section {
  color: var(--toolkit-dark-blue);
}

.section-nav-icon-prev {
  border: 2px dashed var(--toolkit-red);
  background-color: var(--toolkit-white);
  color: var(--toolkit-red);
}

.section-nav-btn.prev-section .section-nav-icon-prev svg {
  color: var(--toolkit-red);
}

.section-nav-btn.prev-section .section-nav-icon-prev {
  order: -1;
}

/* Next: solid red circle, white arrow (Figma active style) */
.section-nav-btn.next-section {
  color: var(--toolkit-dark-blue);
}

.section-nav-icon-next {
  background-color: var(--toolkit-red);
  color: var(--toolkit-white);
}

.section-nav-btn.next-section .section-nav-icon-next svg {
  color: var(--toolkit-white);
}

.section-nav-btn:hover,
.section-nav-btn:focus {
  background: #fca432 !important;
  transform: translateX(0);
}

.section-nav-btn.prev-section:hover,
.section-nav-btn.prev-section:focus {
  color: var(--toolkit-dark-blue);
}

.section-nav-btn.prev-section:hover .section-nav-icon-prev,
.section-nav-btn.prev-section:focus .section-nav-icon-prev {
  border-color: #a61c1c;
  color: #a61c1c;
}

.section-nav-btn.prev-section:hover .section-nav-icon-prev svg,
.section-nav-btn.prev-section:focus .section-nav-icon-prev svg {
  color: #a61c1c;
}

.section-nav-btn.next-section:hover,
.section-nav-btn.next-section:focus {
  color: var(--toolkit-dark-blue);
}

.section-nav-btn.next-section:hover .section-nav-icon-next,
.section-nav-btn.next-section:focus .section-nav-icon-next {
  background-color: #a61c1c;
}

/* Responsive Styles */
@media screen and (max-width: 1200px) {
  .toolkit-layout {
    grid-template-columns: 300px 1fr;
    gap: 60px;
  }

  .toolkit-sidebar {
    top: 100px;
  }

  .toolkit-nav {
    padding: 32px 24px;
  }
}

@media screen and (max-width: 900px) {
  .toolkit-container {
    padding: 24px 0;
  }

  .toolkit-layout {
    grid-template-columns: 1fr;
    gap: 0;
  }

  /* Hide Desktop Sidebar */
  .toolkit-sidebar {
    display: none;
  }

  /* Show Mobile Navigation */
  .toolkit-mobile-nav {
    display: block;
    background-color: #fff;
    padding: 12px 0;
    margin-bottom: 16px;
    position: sticky;
    top: 95px;
    z-index: 90;
  }

  .mobile-nav-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0;
  }

  .mobile-nav-label {
    display: none;
  }

  .mobile-nav-toggle,
  .toolkit-mobile-nav .mobile-nav-toggle,
  button.mobile-nav-toggle {
    background-color: var(--toolkit-bg-grey) !important;
    background-image: none !important;
    border: none !important;
    padding: 16px 32px;
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    transition: background-color 0.3s ease;
    border-radius: 0;
  }

  .mobile-nav-toggle .current-section {
    font-family: 'Source Sans Pro', sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.5;
    letter-spacing: 0.32px;
    text-transform: uppercase;
    color: var(--toolkit-red) !important;
  }

  .mobile-nav-toggle svg {
    width: 24px;
    height: 24px;
    color: var(--toolkit-red) !important;
    transition: transform 0.3s ease;
  }

  .mobile-nav-toggle[aria-expanded="true"],
  .toolkit-mobile-nav .mobile-nav-toggle[aria-expanded="true"],
  button.mobile-nav-toggle[aria-expanded="true"] {
    background-color: var(--toolkit-bg-grey) !important;
  }

  .mobile-nav-toggle[aria-expanded="true"] svg {
    transform: rotate(180deg);
  }

  .mobile-nav-toggle:hover,
  .mobile-nav-toggle:focus,
  .toolkit-mobile-nav .mobile-nav-toggle:hover,
  .toolkit-mobile-nav .mobile-nav-toggle:focus {
    background-color: var(--toolkit-bg-grey) !important;
    outline: none;
  }

  .mobile-nav-menu {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
  }

  .mobile-nav-menu.open {
    max-height: 1000px;
  }

  .mobile-nav-menu ul {
    list-style: none;
    margin: 24px 0 0 0;
    padding: 0;
    background-color: var(--toolkit-white);
  }

  .mobile-nav-menu li {
    border-bottom: 1px solid var(--toolkit-grey);
  }

  .mobile-nav-menu li:last-child {
    border-bottom: none;
  }

  .mobile-nav-menu a {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 24px 24px;
    text-decoration: none;
    transition: background-color 0.3s ease;
  }

  .mobile-nav-menu a:hover,
  .mobile-nav-menu a:focus {
    background-color: var(--toolkit-bg-grey);
    outline: none;
  }

  /* Match desktop sidenav: dashed red circle, red number when inactive */
  .mobile-nav-menu .nav-number {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    min-width: 32px;
    border-radius: 50%;
    border: 2px dashed var(--toolkit-red);
    background-color: transparent;
    font-family: 'Source Sans Pro', sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1;
    color: var(--toolkit-red);
    flex-shrink: 0;
  }

  .mobile-nav-menu a.active .nav-number {
    border: none;
    background-color: var(--toolkit-red);
    color: var(--toolkit-white);
  }

  .mobile-nav-menu .nav-title {
    font-family: 'Source Sans Pro', sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.5;
    letter-spacing: 0.32px;
    text-transform: uppercase;
    color: var(--toolkit-dark-blue);
    flex: 1;
  }

  .mobile-nav-menu a.active .nav-title {
    color: var(--toolkit-red);
  }

  .toolkit-content {
    max-width: 100%;
  }

  .section-content {
    max-width: 100%;
  }

  /* Form: name field full-width and stacked with gap on mobile */
  .toolkit-page .section-content .gform_wrapper .ginput_container_name.gform-grid-row,
  .toolkit-page .section-content .gform_wrapper .ginput_complex.gform-grid-row {
    display: flex !important;
    flex-direction: column !important;
    gap: 24px 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .toolkit-page .section-content .gform_wrapper .ginput_container_name .gform-grid-col,
  .toolkit-page .section-content .gform_wrapper .ginput_container_name .name_first,
  .toolkit-page .section-content .gform_wrapper .ginput_container_name .name_last,
  .toolkit-page .section-content .gform_wrapper .ginput_complex .gform-grid-col {
    width: 100% !important;
    max-width: 100% !important;
    flex: 1 1 100% !important;
  }

  .section-navigation {
    flex-direction: row;
    gap: 16px;
  }

  .section-nav-btn {
    width: auto;
    justify-content: center;
  }
}

@media screen and (max-width: 600px) {
  .toolkit-header {
    padding: 24px 0 16px 0;
  }

  .toolkit-header .entry-title {
    font-size: 28px;
  }

  .toolkit-header .entry-subheading {
    font-size: 16px;
  }

  .toolkit-container {
    padding: 0;
  }

  .section-title {
    font-size: 24px;
  }

  .section-header {
    gap: 16px;
  }

  .section-number {
    display: none;
  }

  .section-title-wrapper {
    gap: 16px;
  }

  .section-inner {
    gap: 32px;
  }

  .section-navigation {
    padding: 40px 0;
  }

  .section-nav-btn {
    font-size: 14px;
  }

  .mobile-nav-toggle .current-section {
    font-size: 14px;
  }
}
