.relationship-home {
  --relationship-cloud: #f1efea;
  --relationship-teal: #0e5f63;
  --relationship-ink: #0f1716;
  --relationship-mist: #cfe3e0;
  --relationship-spark: #d4f25c;
  background: var(--relationship-cloud);
}
.relationship-hero {
  position: relative;
  display: flex;
  min-height: 590px;
  align-items: center;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(ellipse at 92% 14%,rgba(207,227,224,.12),transparent 28%),
    linear-gradient(125deg,#0e5f63,#0b5559 72%,#0f1716 150%);
}
.relationship-hero:after {
  position: absolute;
  top: -24rem;
  right: -9rem;
  width: 44rem;
  height: 44rem;
  border: 1px solid rgba(207,227,224,.16);
  border-radius: 50%;
  box-shadow: 0 0 0 4rem rgba(207,227,224,.025),0 0 0 8rem rgba(207,227,224,.02);
  content: "";
  pointer-events: none;
}
.relationship-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 900px;
  padding-top: 6rem;
  padding-bottom: 7rem;
}
.relationship-home .eyebrow {
  margin-bottom: 1.2rem;
  color: var(--relationship-teal);
  font-size: .68rem;
  letter-spacing: .17em;
}
.relationship-hero .eyebrow { color: var(--relationship-spark); }
.relationship-hero h1 {
  max-width: 850px;
  margin: 0;
  color: #fff;
  font-family: Archivo,Inter,sans-serif;
  font-size: clamp(3rem,7vw,6.5rem);
  font-weight: 700;
  line-height: .99;
  letter-spacing: -.065em;
}
.relationship-hero-intro {
  max-width: 640px;
  margin: 1.6rem 0 0;
  color: #e0ece9;
  font-size: clamp(1.05rem,2vw,1.25rem);
  line-height: 1.65;
}
.relationship-signoff {
  display: flex;
  align-items: center;
  gap: .7rem;
  margin-top: 2.5rem;
  color: var(--relationship-mist);
  font-size: .75rem;
  letter-spacing: .035em;
}
.relationship-signoff span { width: 2rem; height: 1px; background: var(--relationship-spark); }
.relationship-hero-mark {
  position: absolute;
  right: max(calc((100vw - 1140px)/2),2rem);
  bottom: 2rem;
  display: flex;
  align-items: center;
  gap: .7rem;
  color: rgba(207,227,224,.7);
  font-family: "IBM Plex Mono",monospace;
  font-size: .57rem;
  letter-spacing: .15em;
}
.relationship-hero-mark i { width: 4px; height: 4px; border-radius: 50%; background: var(--relationship-spark); }
.relationship-section { padding: 6.5rem 0; }
.relationship-home h2 {
  max-width: 650px;
  margin: 0;
  color: var(--relationship-ink);
  font-family: Archivo,Inter,sans-serif;
  font-size: clamp(2.25rem,4.4vw,4.1rem);
  line-height: 1.04;
  letter-spacing: -.052em;
}
.relationship-split,.structure-layout,.partner-layout {
  display: grid;
  grid-template-columns: minmax(0,.95fr) minmax(0,1.05fr);
  align-items: start;
  gap: 5rem;
}
.relationship-copy,.partner-copy {
  max-width: 590px;
  color: #435550;
  font-size: 1rem;
  line-height: 1.8;
}
.relationship-copy p:last-child,.partner-copy p:last-child { margin-bottom: 0; }
.alignment-note {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .8rem;
  margin-top: 3.2rem;
  padding-top: 1.15rem;
  border-top: 1px solid var(--relationship-mist);
  color: var(--relationship-teal);
  font-family: "IBM Plex Mono",monospace;
  font-size: .67rem;
  letter-spacing: .1em;
}
.alignment-note i { color: #7d9e98; font-size: .9rem; font-style: normal; }
.alignment-note strong { color: var(--relationship-ink); font-weight: 600; }
.shaping-section { background: #fff; }
.shaping-intro {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(280px,.75fr);
  align-items: end;
  gap: 4rem;
  margin-bottom: 3rem;
}
.shaping-intro h2 { max-width: 650px; }
.shaping-intro > p {
  max-width: 440px;
  margin: 0;
  color: #536461;
  line-height: 1.8;
}
.idea-list { border-top: 1px solid var(--relationship-mist); }
.idea-list article {
  display: grid;
  grid-template-columns: 3.3rem minmax(0,1fr);
  gap: 1rem;
  padding: 1.45rem 0;
  border-bottom: 1px solid var(--relationship-mist);
}
.idea-list article > span {
  padding-top: .15rem;
  color: var(--relationship-teal);
  font-family: "IBM Plex Mono",monospace;
  font-size: .68rem;
}
.idea-list h3 {
  margin: 0;
  color: var(--relationship-ink);
  font-family: Archivo,Inter,sans-serif;
  font-size: 1.35rem;
}
.idea-list p { max-width: 600px; margin: .35rem 0 0; color: #536461; font-size: .9rem; }
.structure-section { background: var(--relationship-cloud); }
.structure-heading h2 { max-width: 550px; }
.structure-copy { color: #435550; line-height: 1.8; }
.structure-copy > p { max-width: 620px; }
.structure-tools { display: flex; flex-wrap: wrap; gap: .55rem; margin-top: 1.7rem; }
.structure-tools span {
  padding: .5rem .7rem;
  border: 1px solid var(--relationship-mist);
  color: var(--relationship-teal);
  background: rgba(255,255,255,.55);
  font-size: .72rem;
}
.brand-thought {
  position: relative;
  overflow: hidden;
  padding: 6.8rem 0;
  color: #fff;
  background: var(--relationship-teal);
}
.brand-thought-inner { position: relative; z-index: 1; max-width: 900px; }
.brand-thought .eyebrow { color: var(--relationship-spark); }
.brand-thought h2 {
  max-width: 850px;
  margin: 0;
  color: #fff;
  font-family: Archivo,Inter,sans-serif;
  font-size: clamp(2.4rem,5vw,4.8rem);
  line-height: 1.04;
  letter-spacing: -.055em;
}
.brand-thought-inner > p:last-child {
  max-width: 640px;
  margin: 1.25rem 0 0;
  color: #e0ece9;
  font-size: 1rem;
  line-height: 1.8;
}
.brand-thought-aside {
  position: absolute;
  right: max(calc((100vw - 1140px)/2),1rem);
  bottom: 1.5rem;
  color: rgba(207,227,224,.54);
  font-family: "IBM Plex Mono",monospace;
  font-size: .55rem;
  letter-spacing: .14em;
}
.partner-section { background: #fff; }
.partner-copy a {
  display: inline-flex;
  align-items: center;
  gap: .7rem;
  margin-top: 1.1rem;
  color: var(--relationship-teal);
  font-size: .84rem;
  font-weight: 600;
  text-decoration: none;
}
.partner-copy a:hover { color: var(--relationship-ink); }
.partner-signature {
  display: grid;
  gap: .15rem;
  margin: 1.8rem 0 0!important;
  padding-top: 1rem;
  border-top: 1px solid var(--relationship-mist);
}
.partner-signature strong { color: var(--relationship-ink); font-size: .88rem; }
.partner-signature span { color: var(--relationship-teal); font-size: .76rem; }
.quiet-contact {
  padding: 4.5rem 0;
  color: #fff;
  background: var(--relationship-ink);
}
.quiet-contact-inner { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: .5rem 3rem; }
.quiet-contact .eyebrow { grid-column: 1 / -1; margin: 0 0 .4rem; color: var(--relationship-mist); }
.quiet-contact-inner > p:not(.eyebrow) { margin: 0; color: #e0ece9; }
.quiet-contact a {
  display: inline-flex;
  align-items: center;
  gap: .65rem;
  color: var(--relationship-spark);
  font-size: .88rem;
  font-weight: 600;
  text-decoration: none;
}
.quiet-contact a:hover { color: #fff; }
.quiet-contact-links { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1.75rem; }
.quiet-contact-links a[href^="tel:"] { color: #fff; font-size: 1rem; font-weight: 700; letter-spacing: .01em; }
.quiet-contact-links a[href^="tel:"]:hover { color: var(--relationship-spark); }
.relationship-home .footer-message a { font-family: Inter,Arial,sans-serif; font-size: .9rem; font-weight: 500; }
.relationship-home .footer-message a b { color: var(--relationship-mist); }
@media (max-width: 767.98px) {
  .relationship-home .brand-nav .navbar-collapse { padding-top: .9rem; }
  .relationship-home .brand-nav .relationship-contact-link { margin-left: 0; }
  .relationship-hero { min-height: 520px; }
  .relationship-hero-inner { padding-top: 5rem; padding-bottom: 6rem; }
  .relationship-hero-mark { right: 1.25rem; bottom: 1.4rem; }
  .relationship-section { padding: 4.5rem 0; }
  .relationship-split,.structure-layout,.partner-layout { grid-template-columns: 1fr; gap: 1.5rem; }
  .shaping-intro { grid-template-columns: 1fr; gap: 1rem; }
  .brand-thought { padding: 4.8rem 0; }
  .quiet-contact-inner { grid-template-columns: 1fr; gap: .75rem; }
  .quiet-contact .eyebrow { grid-column: auto; }
  .quiet-contact a { margin-top: .5rem; }
}
@media (prefers-reduced-motion: reduce) {
  .relationship-home *, .relationship-home *:before, .relationship-home *:after {
    animation-duration: .01ms!important;
    animation-iteration-count: 1!important;
    transition-duration: .01ms!important;
  }
}
