/* ==========================================================================
   GLOBAL CONTAINERS & WASHES
   ========================================================================== */
.full-page-section {
  display: block !important;
  width: 100% !important;
  clear: both !important;
  float: none !important;
  box-sizing: border-box !important;
  position: relative !important;
}

.section-padding-standard { padding: 85px 0 !important; }

.section-bg-white { background-color: #FFFFFF !important; }
.section-bg-cream-wash { background-color: #FAF5F0 !important; }
.section-bg-sage-wash { background-color: #F4F7F5 !important; }

.footprint-luminous-wrapper {
  background: radial-gradient(ellipse at center, #FFFFFF 40%, #FAF5F0 70%, #E3EBE7 100%) !important;
  width: 100% !important;
}

.section-container-narrow {
  max-width: 850px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

.section-container-wide {
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

/* ==========================================================================
   UNIFIED TYPOGRAPHY & SINGLE LINE TITLE
   ========================================================================== */
.eyebrow-text-unified {
  color: #4A806C !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  letter-spacing: 6px !important;
  text-transform: uppercase !important;
  margin-bottom: 16px !important;
  display: block !important;
}

.section-title-large {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 42px !important;
  color: #4B2A24 !important;
  margin-bottom: 28px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}

/* FORCED SINGLE LINE TITLE FOR FOOTPRINT */
.section-title-single-line {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 34px !important; /* Scaled down slightly to fit 1 line */
  color: #4B2A24 !important;
  margin-bottom: 28px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  text-align: center !important;
}

.editorial-body-text {
  font-size: 20px !important;
  line-height: 1.8 !important;
  color: #444444 !important;
  margin: 0 auto !important;
}

/* ==========================================================================
   BOOKEND RIBBON BANNERS
   ========================================================================== */
.hero-ribbon-banner,
.footer-ribbon-banner {
  display: block !important;
  width: 100% !important;
  padding: 22px 15px !important;
  text-align: center !important;
  box-sizing: border-box !important;
  clear: both !important;
  background-color: #4B2A24 !important;
}

.hero-ribbon-banner { margin-bottom: 40px !important; }

.hero-ribbon-text,
.footer-ribbon-text {
  color: #FFFFFF !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  letter-spacing: 5px !important;
  text-transform: uppercase !important;
  margin: 0 !important;
  line-height: 1.2 !important;
}

/* ==========================================================================
   HERO SECTION
   ========================================================================== */
.brand-new-hero-wrapper {
  background: radial-gradient(ellipse at center, #FFFFFF 30%, #FAF5F0 60%, #E3EBE7 85%, #8AA69B 100%) !important;
  padding: 0 0 0 0 !important;
}

.brand-new-hero-inner {
  max-width: 1100px !important;
  margin: 0 auto !important;
  text-align: center !important;
  padding: 0 20px !important;
}

.custom-desc { font-size: 22px !important; line-height: 1.6 !important; color: #333333 !important; margin-bottom: 35px !important; }
.custom-desc strong { font-family: "Playfair Display", Georgia, serif !important; font-weight: 700 !important; color: #4B2A24 !important; }

.custom-tagline-grid { display: flex !important; justify-content: space-around !important; margin: 30px 0 !important; }
.tagline-col { flex: 1 !important; padding: 0 15px !important; }

.tag-title { font-family: "Playfair Display", Georgia, serif !important; font-size: 26px !important; letter-spacing: 2px !important; font-weight: 700 !important; margin-bottom: 8px !important; text-transform: uppercase !important; }
.tag-title--mahogany { color: #4B2A24 !important; }
.tag-title--jade { color: #5B7B6E !important; }
.tag-title--cocoa { color: #8C6D62 !important; }
.tag-sub { font-family: Georgia, serif !important; font-style: italic !important; font-size: 16px !important; color: #555555 !important; }

.custom-stats-row { display: flex !important; justify-content: space-around !important; margin: 30px 0 20px 0 !important; }
.stat-col { flex: 1 !important; }
.stat-number { font-family: "Playfair Display", Georgia, serif !important; font-size: 42px !important; font-weight: 700 !important; color: #4B2A24 !important; line-height: 1 !important; margin-bottom: 8px !important; }
.stat-label { font-size: 12px !important; letter-spacing: 1.5px !important; text-transform: uppercase !important; color: #666666 !important; line-height: 1.4 !important; }

.hero-image-wrapper { margin-top: 15px !important; line-height: 0 !important; }
.hero-image-wrapper img { width: 100% !important; max-width: 1100px !important; height: auto !important; border-radius: 0px !important; display: block !important; margin: 0 auto !important; }

/* ==========================================================================
   OUR PRACTICES
   ========================================================================== */
.practices-grid { display: grid !important; grid-template-columns: repeat(4, 1fr) !important; gap: 40px 20px !important; margin-top: 30px !important; }
.practice-card { padding: 20px 15px !important; text-align: center !important; }

.icon-circle {
  width: 64px !important;
  height: 64px !important;
  background-color: #FFFFFF !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 auto 20px auto !important;
  border: 1px solid rgba(140, 109, 98, 0.15) !important;
}

.icon-circle i { color: #4A806C !important; font-size: 24px !important; }
.practice-title { font-family: "Playfair Display", Georgia, serif !important; font-size: 20px !important; font-weight: 700 !important; color: #4B2A24 !important; margin-bottom: 12px !important; }
.practice-desc { font-size: 14px !important; line-height: 1.6 !important; color: #666666 !important; margin: 0 !important; }
.practices-footer-link { margin-top: 50px !important; text-align: center !important; }
.explore-practices-btn { color: #8C6D62 !important; font-size: 16px !important; font-weight: 700 !important; letter-spacing: 3px !important; text-transform: uppercase !important; text-decoration: underline !important; display: inline-block !important; }

/* ==========================================================================
   THE METHOD
   ========================================================================== */
.method-steps-grid { display: flex !important; justify-content: space-between !important; margin-top: 35px !important; gap: 20px !important; }
.method-step { flex: 1 !important; text-align: center !important; }

.method-circle-cocoa-b5 {
  width: 60px !important;
  height: 60px !important;
  background-color: #B59A8B !important;
  color: #FFFFFF !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 auto 18px auto !important;
}

.method-title { font-family: "Playfair Display", Georgia, serif !important; font-size: 18px !important; color: #4B2A24 !important; margin-bottom: 10px !important; font-weight: 700 !important; }
.method-desc { font-size: 13px !important; line-height: 1.5 !important; color: #666666 !important; }

/* ==========================================================================
   WHAT TO EXPECT CARDS
   ========================================================================== */
.expect-grid-4 {
  display: flex !important;
  flex-direction: row !important;
  justify-content: space-between !important;
  gap: 20px !important;
  margin-top: 35px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.expect-card {
  flex: 1 !important;
  background-color: #FFFFFF !important;
  padding: 30px 20px !important;
  border-top: 3px solid #8AA69B !important;
  border-radius: 4px !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.03) !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

.expect-icon-circle {
  width: 52px !important;
  height: 52px !important;
  background-color: #FAF5F0 !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 auto 18px auto !important;
  border: 1px solid rgba(140, 109, 98, 0.15) !important;
}

.expect-icon-circle i { color: #4A806C !important; font-size: 20px !important; }
.expect-title { font-family: "Playfair Display", Georgia, serif !important; font-size: 18px !important; color: #4B2A24 !important; margin-bottom: 12px !important; font-weight: 700 !important; }
.expect-desc { font-size: 14px !important; line-height: 1.6 !important; color: #555555 !important; margin: 0 !important; }

/* ==========================================================================
   EXECUTIVE BIO & SYNTHESIZED LOCO SECTION
   ========================================================================== */
.loco-executive-card {
  display: flex !important;
  background-color: #FAF5F0 !important;
  border: 1px solid rgba(140, 109, 98, 0.2) !important;
  border-radius: 4px !important;
  overflow: hidden !important;
  max-width: 1000px !important;
  margin: 30px auto 0 auto !important;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.04) !important;
}

.loco-image-side {
  flex: 0 0 380px !important;
  position: relative !important;
  border-right: 4px solid #4A806C !important; /* Jade Accent Line */
}

.loco-image-side img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.loco-content-side {
  flex: 1 !important;
  padding: 40px 35px !important;
  text-align: left !important;
}

.loco-quote-editorial {
  font-family: Georgia, serif !important;
  font-style: italic !important;
  font-size: 19px !important;
  line-height: 1.65 !important;
  color: #8C6D62 !important;
  margin: 0 0 15px 0 !important;
  border: none !important;
  padding: 0 !important;
}

.loco-author-title {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 15px !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  color: #4A806C !important;
  font-weight: 700 !important;
  margin: 0 0 20px 0 !important;
}

.loco-card-divider {
  width: 100% !important;
  height: 1px !important;
  background-color: rgba(140, 109, 98, 0.2) !important;
  margin-bottom: 20px !important;
}

/* 3 SYNTHESIZED PILLARS */
.loco-pillars-grid {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

.loco-pillar-item {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

.pillar-tag {
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: 1.5px !important;
  color: #FFFFFF !important;
  background-color: #8AA69B !important;
  padding: 4px 8px !important;
  border-radius: 2px !important;
  text-transform: uppercase !important;
  min-width: 80px !important;
  text-align: center !important;
}

.pillar-text {
  font-size: 14px !important;
  color: #4B2A24 !important;
  margin: 0 !important;
}

/* ==========================================================================
   INDUSTRY ACCORDION CARDS
   ========================================================================== */
.industry-accordion-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 15px !important;
  margin-top: 30px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.accordion-item {
  background-color: #FFFFFF !important;
  border-left: 4px solid #4A806C !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05) !important;
  border-top: 1px solid rgba(0, 0, 0, 0.04) !important;
  border-right: 1px solid rgba(0, 0, 0, 0.04) !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.04) !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.accordion-header {
  padding: 18px 25px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  box-sizing: border-box !important;
  text-align: left !important;
}

.acc-icon-circle {
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  background-color: #FAF5F0 !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-right: 18px !important;
  border: 1px solid rgba(140, 109, 98, 0.2) !important;
}

.acc-icon-circle i { color: #4A806C !important; font-size: 18px !important; }

.acc-title {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 19px !important;
  color: #4B2A24 !important;
  flex: 1 !important;
  font-weight: 600 !important;
  text-align: left !important;
  margin: 0 !important;
  display: block !important;
}

.acc-plus { color: #4A806C !important; font-size: 22px !important; font-weight: 700 !important; margin-left: 15px !important; }

/* RESPONSIVE BREAKPOINTS */
@media (max-width: 850px) {
  .loco-executive-card { flex-direction: column !important; }
  .loco-image-side { width: 100% !important; height: 300px !important; border-right: none !important; border-bottom: 4px solid #4A806C !important; }
  .section-title-single-line { white-space: normal !important; font-size: 28px !important; }
  .practices-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .method-steps-grid, .expect-grid-4, .custom-tagline-grid, .custom-stats-row { flex-direction: column !important; }
}
/* SAFE PORTRAIT PLACEHOLDER STYLES */
.portrait-placeholder-box {
  width: 100% !important;
  height: 100% !important;
  min-height: 400px !important;
  background-color: #FAF5F0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  color: #8AA69B !important;
  text-align: center !important;
  padding: 20px !important;
  box-sizing: border-box !important;
}

.portrait-placeholder-box i {
  font-size: 48px !important;
  margin-bottom: 12px !important;
}

.portrait-placeholder-box p {
  font-size: 13px !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
  margin: 0 !important;
}
/* ==========================================================================
   SYNTHESIZED FOUNDER & LOCO SECTION (FORCED SIDE-BY-SIDE 2-COLUMN LAYOUT)
   ========================================================================== */
.founder-synthesized-card {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  background-color: #FAF5F0 !important;
  border: 1px solid rgba(140, 109, 98, 0.25) !important;
  border-radius: 4px !important;
  overflow: hidden !important;
  max-width: 1050px !important;
  margin: 30px auto 0 auto !important;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.04) !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.founder-image-col {
  width: 380px !important;
  min-width: 380px !important;
  max-width: 380px !important;
  flex: 0 0 380px !important;
  border-right: 4px solid #4A806C !important;
  background-color: #E3EBE7 !important;
  position: relative !important;
}

.founder-image-col img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.portrait-placeholder-box {
  width: 100% !important;
  height: 100% !important;
  min-height: 480px !important;
  background-color: #E3EBE7 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  color: #4A806C !important;
  text-align: center !important;
  padding: 20px !important;
  box-sizing: border-box !important;
}

.portrait-placeholder-box i {
  font-size: 54px !important;
  margin-bottom: 12px !important;
}

.portrait-placeholder-box p {
  font-size: 13px !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
  margin: 0 !important;
}

.founder-content-col {
  flex: 1 !important;
  padding: 45px 40px !important;
  text-align: left !important;
  box-sizing: border-box !important;
}

.founder-name-title {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 34px !important;
  color: #4B2A24 !important;
  margin: 0 0 6px 0 !important;
  font-weight: 700 !important;
}

.founder-sub-title {
  font-size: 13px !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  color: #4A806C !important;
  font-weight: 700 !important;
  margin: 0 0 20px 0 !important;
}

.founder-headline-commitment {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #4B2A24 !important;
  margin: 0 0 16px 0 !important;
}

.founder-body-paragraph {
  font-size: 15px !important;
  line-height: 1.7 !important;
  color: #555555 !important;
  margin: 0 0 14px 0 !important;
}

/* EMBEDDED LOCO BOX */
.embedded-loco-box {
  background-color: #FFFFFF !important;
  border: 1px solid rgba(140, 109, 98, 0.2) !important;
  border-radius: 4px !important;
  padding: 20px 25px !important;
  margin: 25px 0 20px 0 !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.02) !important;
}

.embedded-loco-header {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 15px !important;
  letter-spacing: 2px !important;
  color: #4B2A24 !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  margin: 0 0 12px 0 !important;
}

.embedded-loco-grid {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

.loco-row {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

.loco-badge {
  font-size: 9.5px !important;
  font-weight: 800 !important;
  letter-spacing: 1.5px !important;
  color: #FFFFFF !important;
  background-color: #8AA69B !important;
  padding: 4px 8px !important;
  border-radius: 2px !important;
  text-transform: uppercase !important;
  min-width: 82px !important;
  text-align: center !important;
}

.loco-row-text {
  font-size: 13.5px !important;
  color: #4B2A24 !important;
  margin: 0 !important;
}

.founder-closing-italic {
  font-family: Georgia, serif !important;
  font-style: italic !important;
  font-size: 16px !important;
  color: #8C6D62 !important;
  margin: 0 !important;
}

/* RESPONSIVE FALLBACK */
@media (max-width: 900px) {
  .founder-synthesized-card { flex-direction: column !important; }
  .founder-image-col { width: 100% !important; min-width: 100% !important; max-width: 100% !important; flex: none !important; height: 350px !important; border-right: none !important; border-bottom: 4px solid #4A806C !important; }
}
/* ==========================================================================
   FOUNDER & LOCO CARD (UNIFORM BADGE WIDTHS & TYPOGRAPHY)
   ========================================================================== */
.founder-synthesized-card {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  background-color: #FAF5F0 !important;
  border: 1px solid rgba(140, 109, 98, 0.25) !important;
  border-radius: 4px !important;
  overflow: hidden !important;
  max-width: 1050px !important;
  margin: 30px auto 0 auto !important;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.04) !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.founder-image-col {
  width: 380px !important;
  min-width: 380px !important;
  max-width: 380px !important;
  flex: 0 0 380px !important;
  border-right: 4px solid #4A806C !important;
  background-color: #E3EBE7 !important;
  position: relative !important;
}

.founder-image-col img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.founder-content-col {
  flex: 1 !important;
  padding: 45px 40px !important;
  text-align: left !important;
  box-sizing: border-box !important;
}

.founder-name-title {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 34px !important;
  color: #4B2A24 !important;
  margin: 0 0 4px 0 !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}

.founder-sub-title {
  font-family: Georgia, serif !important;
  font-size: 13px !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  color: #4A806C !important;
  font-weight: 700 !important;
  margin: 0 0 22px 0 !important;
}

.founder-headline-commitment {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #4B2A24 !important;
  margin: 0 0 16px 0 !important;
  line-height: 1.3 !important;
}

.founder-letter-body p {
  font-family: Georgia, serif !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
  color: #444444 !important;
  margin: 0 0 14px 0 !important;
}

.founder-letter-body strong {
  color: #4B2A24 !important;
  font-weight: 700 !important;
}

.embedded-loco-box {
  background-color: #FFFFFF !important;
  border: 1px solid rgba(140, 109, 98, 0.2) !important;
  border-radius: 4px !important;
  padding: 22px 25px !important;
  margin: 25px 0 20px 0 !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.02) !important;
}

.embedded-loco-header {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 15px !important;
  letter-spacing: 2.5px !important;
  color: #4B2A24 !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  margin: 0 0 14px 0 !important;
}

.embedded-loco-grid {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

.loco-row {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
}

/* FIXED UNIFORM 105PX BADGE WIDTH */
.loco-badge {
  font-family: Georgia, serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  color: #FFFFFF !important;
  background-color: #8AA69B !important;
  padding: 6px 0 !important;
  border-radius: 3px !important;
  text-transform: uppercase !important;
  width: 105px !important;        /* Locks exact width */
  min-width: 105px !important;    /* Prevents shrinking */
  max-width: 105px !important;
  text-align: center !important;
  display: inline-block !important;
  box-sizing: border-box !important;
}

.loco-row-text {
  font-family: Georgia, serif !important;
  font-size: 14px !important;
  color: #4B2A24 !important;
  margin: 0 !important;
  line-height: 1.4 !important;
}

.loco-row-text strong {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 15px !important;
  color: #4B2A24 !important;
}

.founder-closing-italic {
  font-family: Georgia, serif !important;
  font-style: italic !important;
  font-size: 16px !important;
  color: #8C6D62 !important;
  margin: 0 !important;
}

@media (max-width: 900px) {
  .founder-synthesized-card { flex-direction: column !important; }
  .founder-image-col { width: 100% !important; min-width: 100% !important; max-width: 100% !important; flex: none !important; height: 350px !important; border-right: none !important; border-bottom: 4px solid #4A806C !important; }
}
/* ==========================================================================
   WARM TAN 3-CARD TESTIMONIAL ROW & UNIFIED EYEBROW
   ========================================================================== */
.testimonial-tan-wrapper {
  background-color: #D8C3A5 !important; /* WARM TAN BACKGROUND */
  padding: 80px 0 !important;
  width: 100% !important;
}

/* UNIFIED GREEN EYEBROW FOR TESTIMONIALS */
.testimonial-eyebrow {
  color: #4A806C !important; /* MATCHES JADE GREEN ACROSS SITE */
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: 4px !important;
  text-transform: uppercase !important;
  margin-bottom: 8px !important;
  text-align: center !important;
}

.testimonial-section-title {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 36px !important;
  color: #4B2A24 !important;
  margin-bottom: 45px !important;
  font-weight: 700 !important;
  text-align: center !important;
}

.testimonial-grid-3 {
  display: flex !important;
  flex-direction: row !important;
  gap: 25px !important;
  justify-content: space-between !important;
  align-items: stretch !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.testimonial-card {
  flex: 1 !important;
  background-color: #FFFFFF !important;
  padding: 35px 30px !important;
  border-radius: 6px !important;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.06) !important;
  text-align: left !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
}

.testimonial-pillar-badge {
  font-family: Georgia, serif !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: 2px !important;
  color: #FFFFFF !important;
  padding: 5px 12px !important;
  border-radius: 3px !important;
  text-transform: uppercase !important;
  display: inline-block !important;
  margin-bottom: 15px !important;
  width: fit-content !important;
}

.badge--mahogany { background-color: #4B2A24 !important; }
.badge--jade { background-color: #4A806C !important; }
.badge--cocoa { background-color: #8C6D62 !important; }

.testimonial-quote-mark {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 45px !important;
  color: rgba(75, 42, 36, 0.2) !important;
  line-height: 20px !important;
  margin-bottom: 12px !important;
}

.testimonial-body-text {
  font-family: Georgia, serif !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
  color: #444444 !important;
  margin-bottom: 25px !important;
  font-style: italic !important;
  flex-grow: 1 !important;
}

.testimonial-author-block {
  border-top: 1px solid rgba(140, 109, 98, 0.2) !important;
  padding-top: 15px !important;
}

.author-name {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #4B2A24 !important;
  margin: 0 0 2px 0 !important;
}

.author-title {
  font-size: 12px !important;
  color: #666666 !important;
  margin: 0 !important;
}

/* RESTORE MAIN PRACTICE CARDS & HIDE OUT-OF-BOUNDS STRAY DUPLICATES */
.section-bg-cream-wash .practices-grid {
  display: grid !important; /* FORCES MAIN CARDS TO BE VISIBLE */
}

/* HIDES ONLY STRAY MODULES OUTSIDE MAIN CONTAINERS */
body > .practices-grid,
body > .full-page-section:has(.practices-grid) + .full-page-section:has(.practices-grid),
.row-fluid + .row-fluid:has(.practices-grid) {
  display: none !important;
}

@media (max-width: 900px) {
  .testimonial-grid-3 { flex-direction: column !important; }
  /* ==========================================================================
   FORCE HIDE STRAY PRACTICES DUPLICATE AT BOTTOM OF PAGE
   ========================================================================== */

/* 1. Hides any practices-grid that appears after the Testimonials section */
.testimonial-tan-wrapper ~ * .practices-grid,
.testimonial-tan-wrapper ~ .widget-type-module,
div[class*="testimonial"] ~ div[class*="practice"] {
  display: none !important;
}

/* 2. Target standalone HubSpot module wrappers that aren't inside our main cream section */
.widget-type-module:not(:has(.section-bg-cream-wash)) .practices-grid,
.dnd-section:not(:has(.section-bg-cream-wash)) .practices-grid {
  display: none !important;
}

/* 3. Ensure the main section inside our custom module remains 100% visible */
.section-bg-cream-wash .practices-grid {
  display: grid !important;
}
  /* ==========================================================================
   MOBILE & DESKTOP GLOBAL DUPLICATE SUPPRESSION
   ========================================================================== */

/* 1. HIDE ALL SECONDARY/STANDALONE PRACTICES GRIDS ON ALL SCREEN SIZES */
.widget-type-module:not(.brand-new-hero-wrapper) .practices-grid,
.dnd-module:not(.brand-new-hero-wrapper) .practices-grid,
.dnd-section + .dnd-section .practices-grid,
body > .practices-grid,
.testimonial-tan-wrapper ~ * .practices-grid,
.testimonial-tan-wrapper ~ .practices-grid {
  display: none !important;
}

/* 2. FORCE THE PRIMARY PRACTICES GRID INSIDE OUR MODULE TO BE VISIBLE ON ALL DEVICES */
.brand-new-hero-wrapper .practices-grid,
.section-bg-cream-wash .practices-grid {
  display: grid !important;
}

/* 3. ENSURE RESPONSIVE 1-COLUMN / 2-COLUMN LAYOUT FOR MOBILE WITHOUT DUPLICATION */
@media (max-width: 768px) {
  .brand-new-hero-wrapper .practices-grid {
    display: grid !important;
    grid-template-columns: repeat(1, 1fr) !important; /* Clean single column on phones */
    gap: 25px !important;
  }
}
/* EXPLORE THE SERVICE PRACTICES PILL BUTTON */
.practices-footer-link {
  margin-top: 45px !important;
  text-align: center !important;
}

.explore-practices-btn-pill {
  background-color: #4B2A24 !important; /* Mahogany background matching Schedule Consult */
  color: #FFFFFF !important;             /* White text */
  padding: 16px 32px !important;        /* Same padding/size as Schedule Consult button */
  font-family: Georgia, serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  border-radius: 4px !important;          /* Subtle pill/rectangular corner radius */
  display: inline-block !important;
  transition: background-color 0.25s ease, transform 0.2s ease !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.06) !important;
}

.explore-practices-btn-pill:hover {
  background-color: #4A806C !important; /* Shifts to Jade Green on hover */
  color: #FFFFFF !important;
  text-decoration: none !important;
}
  /* FORCE "EXPLORE THE SERVICE PRACTICES" TO MATCH THE CONSULTATION BUTTON */
.explore-practices-btn,
a.explore-practices-btn,
.practices-footer-link a {
  background-color: #4B2A24 !important; /* Solid Mahogany */
  color: #FFFFFF !important;             /* White Text */
  padding: 16px 32px !important;        /* Button Padding */
  font-family: Georgia, serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  border-radius: 4px !important;          /* Clean rectangular pill shape */
  display: inline-block !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08) !important;
  transition: background-color 0.25s ease !important;
}

.explore-practices-btn:hover,
a.explore-practices-btn:hover,
.practices-footer-link a:hover {
  background-color: #4A806C !important; /* Jade Green Hover */
  color: #FFFFFF !important;
  text-decoration: none !important;
}
  /* FORCE "EXPLORE THE SERVICE PRACTICES" TO MATCH THE CONSULTATION BUTTON */
.practices-footer-link a,
a.explore-practices-btn,
.explore-practices-btn {
  background-color: #4B2A24 !important; /* Solid Mahogany Background */
  color: #FFFFFF !important;             /* White Text */
  padding: 16px 32px !important;        /* Button Padding */
  font-family: Georgia, serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  border-radius: 4px !important;          /* Clean Pill Shape */
  display: inline-block !important;      /* Forces Box Dimensions */
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08) !important;
  transition: background-color 0.25s ease !important;
  border: none !important;
}

.practices-footer-link a:hover,
a.explore-practices-btn:hover,
.explore-practices-btn:hover {
  background-color: #4A806C !important; /* Muted Jade Green Hover */
  color: #FFFFFF !important;
  text-decoration: none !important;
}
  /* ==========================================================================
   UNIFIED BUTTON STYLES & HOVER STATES (#8AA69B -> #4B2A24)
   ========================================================================== */

/* 1. "EXPLORE THE SERVICE PRACTICES" HOVER STATE */
.btn-sage-to-mahogany:hover,
.practices-footer-link a:hover {
  background-color: #4B2A24 !important; /* Mahogany on hover */
  color: #FFFFFF !important;
  text-decoration: none !important;
}

/* 2. NAVIGATION BAR "SCHEDULE A CONSULTATION" BUTTON */
.header-cta-button,
.nav-cta-btn,
header a[href*="schedule"],
header a[href*="consult"] {
  background-color: #8AA69B !important; /* Sage background */
  color: #FFFFFF !important;
  font-family: Georgia, serif !important; /* Matches "EXPLORE..." font */
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  padding: 14px 28px !important;
  border-radius: 4px !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background-color 0.25s ease !important;
  border: none !important;
}

/* NAVIGATION BUTTON HOVER STATE */
.header-cta-button:hover,
.nav-cta-btn:hover,
header a[href*="schedule"]:hover,
header a[href*="consult"]:hover {
  background-color: #4B2A24 !important; /* Mahogany on hover */
  color: #FFFFFF !important;
  text-decoration: none !important;
}
/* ==========================================================================
   CONTAIN OUR PRACTICES SECTION INSIDE MATCHING CARD ENCLOSURE
   ========================================================================== */

/* 1. WRAP THE PRACTICES CONTENT IN A BOUNDED CONTAINER CARD */
.section-bg-cream-wash .section-container,
.section-bg-cream-wash > div:first-child {
  max-width: 1140px !important;
  margin: 0 auto !important;
  background-color: #FFFFFF !important;  /* Pure white background card */
  padding: 60px 50px 50px 50px !important; /* Generous internal card spacing */
  border-radius: 8px !important;            /* Matching soft corners */
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04) !important; /* Soft card shadow */
}

/* 2. ENSURE THE MAIN BACKGROUND REMAINS THE UNIFIED SOFT CANVAS */
.section-bg-cream-wash {
  background-color: #FAF5F0 !important; /* Soft Cream Canvas */
  padding: 60px 20px !important;
}

/* 3. CENTER THE BUTTON COMFORTABLY INSIDE THE NEW WHITE CARD */
.practices-footer-link {
  margin-top: 45px !important;
  padding-bottom: 10px !important;
}
  /* ==========================================================================
   CONTAIN OUR PRACTICES SECTION INSIDE MATCHING CARD ENCLOSURE
   ========================================================================== */

/* 1. WRAP THE PRACTICES CONTENT IN A BOUNDED CONTAINER CARD */
.section-bg-cream-wash .section-container,
.section-bg-cream-wash > div:first-child {
  max-width: 1140px !important;
  margin: 0 auto !important;
  background-color: #FFFFFF !important;  /* Pure white background card */
  padding: 60px 50px 50px 50px !important; /* Generous internal card spacing */
  border-radius: 8px !important;            /* Matching soft corners */
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04) !important; /* Soft card shadow */
}

/* 2. ENSURE THE MAIN BACKGROUND REMAINS THE UNIFIED SOFT CANVAS */
.section-bg-cream-wash {
  background-color: #FAF5F0 !important; /* Soft Cream Canvas */
  padding: 60px 20px !important;
}

/* 3. CENTER THE BUTTON COMFORTABLY INSIDE THE NEW WHITE CARD */
.practices-footer-link {
  margin-top: 45px !important;
  padding-bottom: 10px !important;
}
/* ==========================================================================
   LOCALIZED REFINEMENTS
   ========================================================================== */

/* 1. NAVIGATION LINKS SIZE (REQ #1) */
header nav a, .navigation-menu-link {
  font-size: 15px !important;
  font-weight: 700 !important;
}

/* 3. TIGHTEN HEADER LETTER SPACING (REQ #3) */
.eyebrow-text-unified {
  letter-spacing: 3.5px !important;
}

/* 4. WHAT TO EXPECT CARDS (REQ #4) */
.expect-card {
  background-color: #FAF5F0 !important; /* Soft cream/cocoa */
}

.expect-icon-circle {
  background-color: #FFFFFF !important; /* White circle background */
}

.expect-icon-circle i {
  color: #4A806C !important; /* Muted Jade symbol */
}

/* 6. FOUNDER SECTION PILL BADGES (REQ #6) */
.loco-badge {
  text-align: left !important;
  padding-left: 12px !important;
}

/* 8. ACCORDION EXPANSION DISPLAY (REQ #8) */
.accordion-body {
  display: none;
  padding: 15px 25px 20px 85px;
  background-color: #FAF5F0;
  font-size: 14.5px;
  color: #444444;
}

.accordion-item.active .accordion-body {
  display: block !important;
}

/* 9 & 10. CLIENT PERSPECTIVES BADGES & QUOTES (REQ #9 & #10) */
.testimonial-pillar-badge {
  font-size: 12px !important;
  letter-spacing: 2px !important;
  padding: 8px 16px !important;
  text-align: center !important;
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.testimonial-card:nth-child(1) .testimonial-quote-mark,
.testimonial-card:nth-child(1) .author-name { color: #4B2A24 !important; }

.testimonial-card:nth-child(2) .testimonial-quote-mark,
.testimonial-card:nth-child(2) .author-name { color: #4A806C !important; }

.testimonial-card:nth-child(3) .testimonial-quote-mark,
.testimonial-card:nth-child(3) .author-name { color: #8C6D62 !important; }

/* 11. READY TO BEGIN BANNER (REQ #11) */
.cta-banner-cream-cocoa, 
div[class*="cta-banner"] {
  background-color: #FAF5F0 !important;
}

.cta-banner-cream-cocoa hr {
  display: none !important; /* Omits linear line above title */
}

/* 12. FOOTER OVERHAUL (REQ #12) */
footer, .global-footer-wrapper {
  background-color: #FAF5F0 !important; /* Soft cream cocoa background */
  color: #444444 !important;
}

footer h3, footer h4, .footer-header-title {
  color: #4B2A24 !important; /* Header Color */
}

.footer-social-icons a {
  color: #8AA69B !important; /* Hex 8AA69B */
  font-size: 22px !important;
  margin-right: 15px !important;
}

footer a.consultation-link {
  color: #4A806C !important; /* Hex 4A806C */
  font-weight: 700 !important;
}  
/* ==========================================================================
   GLOBAL HEADER OVERALL SCALE INCREASE
   ========================================================================== */

/* 1. Expand top and bottom header padding (makes header taller) */
header,
.global-header,
.header-container {
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}

/* 2. Scale up the logo */
header img,
.header-logo img,
.brand-logo {
  max-height: 48px !important; /* Increases logo height */
  width: auto !important;
}

/* 3. Increase navigation text size & spacing between links */
header nav a,
header .nav-link,
header .menu-link,
.global-header a {
  font-size: 15px !important;       /* Larger text */
  margin-left: 18px !important;     /* More space between links */
  margin-right: 18px !important;
  letter-spacing: 2px !important;    /* Crisp spacing */
}

/* 4. Scale up the "SCHEDULE A CONSULTATION" header button */
header .header-cta,
header a[href*="consult"],
header a[href*="schedule"] {
  padding: 14px 28px !important;    /* Roomier button size */
  font-size: 13px !important;
}
/* ==========================================================================
   HERO STAT NUMBERS COLOR MATCHING
   ========================================================================== */

/* Pillar 1: CONNECTION (27 - Mahogany) */
.pillar-column:nth-child(1) .pillar-stat-num,
.hero-pillars-grid > div:nth-child(1) .pillar-stat-num {
  color: #4B2A24 !important;
}

/* Pillar 2: STRATEGY (8 - Muted Jade) */
.pillar-column:nth-child(2) .pillar-stat-num,
.hero-pillars-grid > div:nth-child(2) .pillar-stat-num {
  color: #4A806C !important;
}

/* Pillar 3: EXECUTION (14 - Cocoa/Muted Brown) */
.pillar-column:nth-child(3) .pillar-stat-num,
.hero-pillars-grid > div:nth-child(3) .pillar-stat-num {
  color: #8C6D62 !important;
}
/* ==========================================================================
   TIGHTEN LETTER SPACING FOR EYEBROWS & TITLES
   ========================================================================== */

/* 1. Eyebrow Headers (e.g., WHAT WE DO, OUR APPROACH, WHAT TO EXPECT) */
.section-eyebrow,
.eyebrow-text-unified,
.tag-title,
p[class*="eyebrow"],
span[class*="eyebrow"] {
  letter-spacing: 2px !important; /* Tightened tracking */
}

/* 2. Main Title Headers (e.g., Our Practices, The Method, etc.) */
.section-title,
.section-title-large,
h1, h2, h3 {
  letter-spacing: -1.5px !important; /* Reduces gap between characters by 1.5px */
}
/* ==========================================================================
   FURTHER TIGHTEN LETTER SPACING FOR EYEBROWS & HEADINGS
   ========================================================================== */

/* 1. Eyebrow Headers (WHAT WE DO, OUR APPROACH, WHAT TO EXPECT, etc.) */
.section-eyebrow,
.eyebrow-text-unified,
.tag-title,
.hero-ribbon-text,
p[class*="eyebrow"],
span[class*="eyebrow"] {
  letter-spacing: 0.5px !important; /* Tightened by another 1.5px */
}

/* 2. Main Title Headings (Our Practices, The Method, Our Engagement Model, etc.) */
.section-title,
.section-title-large,
.brand-new-hero-inner h1,
.brand-new-hero-inner h2,
h1, h2, h3 {
  letter-spacing: -3px !important; /* Tightened by another -1.5px */
}
/* ==========================================================================
   FULL-WIDTH SECTION COLOR TRANSITIONS & TOP ACCENT STRIPS
   ========================================================================== */

/* SECTION 1: ABOUT THE FIRM / HERO SECTION */
.brand-new-hero-wrapper,
div[class*="hero-inner"] {
  background-color: #FAF5F0 !important; /* Soft Cream Canvas */
  border-top: 5px solid #4A806C !important; /* Full-Width Muted Jade Top Strip */
  width: 100% !important;
}

/* SECTION 2: WHAT WE DO / OUR PRACTICES */
.section-bg-cream-wash,
div[class*="practices"] {
  background-color: #F7F2EC !important; /* Soft Cream/Cocoa Wash */
  border-top: 5px solid #4B2A24 !important; /* Full-Width Mahogany Top Strip */
  width: 100% !important;
  padding-top: 50px !important;
  padding-bottom: 50px !important;
}

/* SECTION 3: OUR APPROACH / THE METHOD */
div[class*="method"],
div[class*="approach"] {
  background-color: #FFFFFF !important; /* Crisp White Background */
  border-top: 5px solid #8C6D62 !important; /* Full-Width Cocoa Top Strip */
  width: 100% !important;
  padding-top: 50px !important;
  padding-bottom: 50px !important;
}

/* SECTION 4: WHAT TO EXPECT / OUR ENGAGEMENT MODEL */
div[class*="engagement"],
div[class*="expect"] {
  background-color: #FAF5F0 !important; /* Soft Cream Canvas */
  border-top: 5px solid #4A806C !important; /* Full-Width Muted Jade Top Strip */
  width: 100% !important;
  padding-top: 50px !important;
  padding-bottom: 50px !important;
}

/* SECTION 5: A NOTE FROM THE FOUNDER */
div[class*="founder"] {
  background-color: #FFFFFF !important; /* Crisp White Background */
  border-top: 5px solid #4B2A24 !important; /* Full-Width Mahogany Top Strip */
  width: 100% !important;
  padding-top: 50px !important;
  padding-bottom: 50px !important;
}
/* ==========================================================================
   EXACT SECTION TRANSITIONS & FULL-WIDTH ACCENT STRIPS
   ========================================================================== */

/* 1. HERO / ABOUT THE FIRM SECTION */
.brand-new-hero-wrapper {
  background-color: #FAF5F0 !important; /* Soft Cream Canvas */
  border-top: 5px solid #4A806C !important; /* Muted Jade Strip */
}

/* 2. WHAT WE DO / OUR PRACTICES */
.section-bg-cream-wash,
.practices-grid-wrapper,
div[class*="practices"] {
  background-color: #FFFFFF !important; /* White Section Card */
  border-top: 5px solid #4B2A24 !important; /* Mahogany Accent Strip */
  margin-top: 40px !important;
  margin-bottom: 40px !important;
  padding: 50px 20px !important;
}

/* 3. OUR APPROACH / THE METHOD */
.method-section-container,
div[class*="method"] {
  background-color: #FFFFFF !important;
  border-top: 5px solid #8C6D62 !important; /* Cocoa Accent Strip */
  margin-top: 40px !important;
  margin-bottom: 40px !important;
  padding: 50px 20px !important;
}

/* 4. WHAT TO EXPECT / OUR ENGAGEMENT MODEL */
.engagement-section-container,
div[class*="engagement"] {
  background-color: #FAF5F0 !important;
  border-top: 5px solid #4A806C !important; /* Muted Jade Accent Strip */
  margin-top: 40px !important;
  padding: 50px 20px !important;
}
/* MATCH TAGLINE SUBTITLES TO BODY FONT STYLE */
.tag-sub,
p.tag-sub {
  font-family: inherit !important;
  font-style: normal !important; /* Removes italics */
  font-size: 15px !important;
  color: #555555 !important;
  line-height: 1.5 !important;
  margin-top: 6px !important;
}
  /* ==========================================================================
   CLEAN TARGETED OVERRIDES (SAFE FOR HERO IMAGE & TEMPLATE STRUCTURE)
   ========================================================================== */

/* 1. Match "We understand your world." taglines to standard body font */
.tag-sub,
p.tag-sub {
  font-family: inherit !important;
  font-style: normal !important;
  font-size: 15px !important;
  color: #555555 !important;
}

/* 2. Stat Numbers Color Match */
.custom-stats-row .stat-col:nth-child(2) .stat-number {
  color: #4A806C !important; /* Strategy: Jade */
}

.custom-stats-row .stat-col:nth-child(3) .stat-number {
  color: #8C6D62 !important; /* Execution: Cocoa */
}

/* 3. Section Transitions & Borders */
.full-page-section.section-bg-white {
  border-top: 5px solid #4A806C !important;
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.full-page-section.section-bg-cream-wash {
  border-top: 5px solid #4B2A24 !important;
}
/* ==========================================================================
   MODULE-LEVEL TYPOGRAPHY & STAT NUMBER COLOR OVERRIDES
   ========================================================================== */

/* 1. Un-italicize tagline copy under Connection / Strategy / Execution */
.brand-new-hero-wrapper .tag-sub,
.editorial-hero-wrapper .tag-sub,
p.tag-sub {
  font-family: inherit !important;
  font-style: normal !important;
  font-size: 15px !important;
  color: #555555 !important;
}

/* 2. Stat Numbers Color Matching */
.custom-stats-row .stat-col:nth-child(2) .stat-number {
  color: #4A806C !important; /* 8: Jade */
}

.custom-stats-row .stat-col:nth-child(3) .stat-number {
  color: #8C6D62 !important; /* 14: Cocoa */
}
/* ==========================================================================
   SAFE FONT MATCH FOR TAGLINES (NO HTML EDITING REQUIRED)
   ========================================================================== */

div.brand-new-hero-wrapper p.tag-sub,
div.brand-new-hero-wrapper .custom-tagline-grid p {
  font-family: inherit !important;
  font-style: normal !important;
  font-size: 15px !important;
  color: #555555 !important;
}
/* ==========================================================================
   SECTION BACKGROUND COLOR ALTERNATIONS (NO BORDER LINES)
   ========================================================================== */

/* 1. WHAT WE DO / OUR PRACTICES */
.full-page-section.section-bg-cream-wash {
  background-color: #FAF5F0 !important; /* Soft Cream */
  border-top: none !important;
}

/* 2. OUR APPROACH / THE METHOD */
.method-section-container,
div[class*="method"],
.full-page-section.section-bg-white {
  background-color: #FFFFFF !important; /* Crisp White */
  border-top: none !important;
}

/* 3. WHAT TO EXPECT / OUR ENGAGEMENT MODEL */
.engagement-section-container,
div[class*="engagement"] {
  background-color: #FAF5F0 !important; /* Soft Cream */
  border-top: none !important;
}

/* 4. READY TO BEGIN / FOOTER CALLOUT */
.full-page-section.section-bg-ready,
div[class*="ready"] {
  background-color: #FFFFFF !important; /* Crisp White */
  border-top: none !important;
}  