/* Xpro V130 – CTA alignment and contrast refinement.
   Contact aligned with the FIRST LINE of the explanatory paragraph.
   On dark blue, every fine editorial link rule is white, never pale blue.
   V129 content, imagery, routes, favicon and all non-CTA layout unchanged. */

/* Consistent white hairline on all deep-blue sections. */
body.xpro-editorial-a main .end-cta a.xpro-cta-link,
body.xpro-editorial-a main .end-cta a.xpro-inline-link,
body.xpro-editorial-a main .end-cta a.btn,
body.xpro-editorial-a main .section.dark a.xpro-inline-link,
body.xpro-editorial-a main .section.dark a.btn,
body.xpro-editorial-a main .section.dark a.about-text-link,
body.xpro-editorial-a main .ps-v85-highlight:first-child a,
body.xpro-editorial-a main .ps-featured a,
body.xpro-editorial-a main .about-values a,
body.xpro-editorial-a main .about-end a,
body.xpro-editorial-a main .exp-hero a.btn,
body.xpro-editorial-a main .interim-hero a.btn {
  border-bottom-color:#fff !important;
  text-decoration-color:#fff !important;
  text-decoration-thickness:1px;
}
body.xpro-editorial-a main .end-cta a.xpro-cta-link:hover,
body.xpro-editorial-a main .end-cta a.xpro-inline-link:hover,
body.xpro-editorial-a main .end-cta a.btn:hover,
body.xpro-editorial-a main .section.dark a.xpro-inline-link:hover,
body.xpro-editorial-a main .section.dark a.btn:hover,
body.xpro-editorial-a main .ps-v85-highlight:first-child a:hover,
body.xpro-editorial-a main .ps-featured a:hover,
body.xpro-editorial-a main .about-end a:hover {
  border-bottom-color:#fff !important;
  text-decoration-color:#fff !important;
}
/* Keep link lettering white; the rule is always a subtle 1px. */
body.xpro-editorial-a main .end-cta a.xpro-cta-link {
  color:#fff !important;
  position:relative;
  border-bottom:1px solid #fff !important;
  padding:0 0 4px !important;
  margin:0 !important;
  min-height:0 !important;
  font-size:.95rem;
  line-height:1.6;
  align-self:start;
  justify-self:start;
  text-decoration:none !important;
}
/* Generous invisible touch target around the compact editorial link. */
body.xpro-editorial-a main .end-cta a.xpro-cta-link::before {
  content:'';
  position:absolute;
  inset:-9px -8px;
}

/* Display the CTA link alongside the first line of explanatory copy.
   This includes Experience, About and Perspectives, not only the services. */
@media (min-width:701px) {
  body.xpro-editorial-a main .end-cta .cta-inner {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) max-content;
    grid-template-rows:auto auto auto;
    align-items:start;
    column-gap:45px;
    row-gap:0;
  }
  body.xpro-editorial-a main .end-cta .cta-inner > div:first-child {
    display:contents !important;
  }
  body.xpro-editorial-a main .end-cta .cta-inner .eyebrow {
    grid-column:1 / -1;
    grid-row:1;
  }
  body.xpro-editorial-a main .end-cta .cta-inner h2 {
    grid-column:1 / -1;
    grid-row:2;
  }
  body.xpro-editorial-a main .end-cta .cta-inner .muted {
    grid-column:1;
    grid-row:3;
    min-width:0;
    margin:0;
  }
  body.xpro-editorial-a main .end-cta .cta-inner > a.xpro-cta-link,
  body.xpro-editorial-a main .end-cta .cta-inner > .xpro-about-end-links,
  body.xpro-editorial-a main .end-cta .cta-inner > .xpro-persp-end-links {
    grid-column:2;
    grid-row:3;
    margin:0 !important;
    align-self:start;
    justify-self:start;
  }
  body.xpro-editorial-a main .end-cta .cta-inner > .xpro-about-end-links,
  body.xpro-editorial-a main .end-cta .cta-inner > .xpro-persp-end-links {
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:flex-start;
    gap:17px;
    min-width:0;
  }
}
@media (max-width:700px) {
  body.xpro-editorial-a main .end-cta .cta-inner {display:block !important;}
  body.xpro-editorial-a main .end-cta .cta-inner > div:first-child {display:block !important;}
  body.xpro-editorial-a main .end-cta .cta-inner > a.xpro-cta-link,
  body.xpro-editorial-a main .end-cta .cta-inner > .xpro-about-end-links,
  body.xpro-editorial-a main .end-cta .cta-inner > .xpro-persp-end-links {margin-top:20px !important;}
}
