/* Preserve the original Services/Pricing footer contrast after using the shared base stylesheet. */
footer .footer-links .copyrights {
  color: #fff;
}

/* ===========================================================================
   Services page conversion.
   The services page now reuses the landing-page system in #index.cdr-landing.
   Everything below is scoped to that wrapper plus services-only ids/classes,
   so the home page, the about page, the header and the footer stay untouched.
   =========================================================================== */

/* The services headline is longer than the home one, so it needs a calmer
   type scale and a wider measure to keep the emphasised line inside its column. */
/* Hero breadcrumb — sits above the existing .cdr-hero composition. */
.cdr-landing .cdr-hero .cdr-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1.2rem 1.8rem;
}

.cdr-landing .cdr-hero .cdr-breadcrumb p {
  margin: 0;
  padding: 0.85rem 1.45rem;
  border: 1px solid #ffffff33;
  border-radius: 99rem;
  background: #ffffff12;
  color: #e5edf8;
  font-size: 1.5rem;
  font-weight: 700;
}

.cdr-landing .cdr-hero .cdr-breadcrumb ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.cdr-landing .cdr-hero .cdr-breadcrumb li {
  color: #93a5c0;
  font-size: 1.35rem;
}

.cdr-landing .cdr-hero .cdr-breadcrumb a {
  background-image: none;
  color: #4ade80;
  font-weight: 700;
  text-decoration: none;
}

/* Hero highlights reuse .cdr-ticks, recoloured for the dark hero. */
.cdr-landing .cdr-hero .cdr-ticks {
  margin: 2.6rem 0 0;
}

.cdr-landing .cdr-hero .cdr-ticks li {
  margin: 1rem 0;
  color: #c9d4e5;
  font-size: 1.55rem;
}

.cdr-landing .cdr-hero .cdr-ticks li::before {
  color: #4ade80;
}

/* Shared hero trust strip. */
.cdr-landing .cdr-hero .cdr-proof {
  margin-top: 3rem;
}

.cdr-landing .cdr-hero .cdr-proof > span {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
}

.cdr-landing .cdr-hero .cdr-proof > span > .bi {
  color: #4ade80;
  font-size: 1.65rem;
}

/* Hero disclaimer note. */
.cdr-landing .cdr-hero .cdr-hero-note {
  display: flex;
  gap: 1rem;
  max-width: none;
  margin: 4.5rem 0 0;
  padding: 1.6rem 2rem;
  border: 1px solid #ffffff1f;
  border-radius: 1.6rem;
  background: #ffffff0a;
  color: #a9b8ce;
  font-size: 1.35rem;
  font-style: italic;
  line-height: 1.6;
}

.cdr-landing .cdr-hero .cdr-hero-note i {
  color: #4ade80;
  font-style: normal;
}

/* The services enquiry form keeps its own fields and reCAPTCHA. */
.cdr-landing .cdr-review-form__captcha {
  display: flex;
  justify-content: center;
  margin-top: 2rem;
}

/* Stat strip icons (services only — the home and about strips have no icons). */
.cdr-landing .cdr-stats .row > div > i {
  display: inline-grid;
  width: 4rem;
  height: 4rem;
  margin-bottom: 1.2rem;
  place-items: center;
  border-radius: 1.2rem;
  background: #e0f5e8;
  color: #0f7f37;
  font-size: 1.9rem;
}

.cdr-landing .cdr-stats b {
  overflow-wrap: break-word;
}

/* Service catalogue groups. */
.cdr-landing #review-services .cdr-catalogue-group + .cdr-catalogue-group {
  margin-top: 4.6rem;
}

.cdr-landing .cdr-catalogue-title {
  display: flex;
  align-items: center;
  gap: 1.4rem;
  margin: 0 0 2.2rem;
  color: #0a1a3b;
  font-size: clamp(1.9rem, 2.2vw, 2.4rem);
  line-height: 1.2;
}

.cdr-landing .cdr-catalogue-title::before {
  flex: 0 0 0.5rem;
  width: 0.5rem;
  height: 2.2rem;
  border-radius: 99rem;
  background: #16a34a;
  content: "";
}

.cdr-landing .cdr-catalogue-title::after {
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, #d7e0ee, transparent);
  content: "";
}

/* Service cards — the .cdr-card component with a bottom-right arrow action. */
.cdr-landing .cdr-service-card {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 2.4rem 2.4rem 7.6rem;
  border: 1px solid #dce3ef;
  border-radius: 2.4rem;
  background: #fff;
  box-shadow: 0 0.4rem 1.2rem rgba(10, 26, 59, 0.05);
  transition:
    transform 0.22s ease,
    border-color 0.22s ease,
    box-shadow 0.22s ease;
}

.cdr-landing .cdr-service-card:hover {
  transform: translateY(-0.4rem);
  border-color: #bfe3cd;
  box-shadow: 0 1.2rem 3rem rgba(10, 26, 59, 0.12);
}

.cdr-landing .cdr-service-card > i {
  display: grid;
  width: 4.8rem;
  height: 4.8rem;
  place-items: center;
  border-radius: 1.4rem;
  background: #e0f5e8;
  color: #0f7f37;
  font-size: 2.2rem;
}

.cdr-landing .cdr-service-card h4 {
  margin: 2rem 0 0.8rem;
  color: #0a1a3b;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.25;
}

.cdr-landing .cdr-service-card p {
  margin: 0;
  color: #556783;
  font-size: 1.45rem;
  line-height: 1.6;
}

.cdr-landing .cdr-service-card__arrow {
  position: absolute;
  right: 2.4rem;
  bottom: 2.4rem;
  display: grid;
  width: 4.2rem;
  height: 4.2rem;
  place-items: center;
  border-radius: 50%;
  background: #eef3fa;
  background-image: none;
  color: #0a1a3b;
  font-size: 1.7rem;
  text-decoration: none;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}

.cdr-landing .cdr-service-card:hover .cdr-service-card__arrow,
.cdr-landing .cdr-service-card__arrow:hover {
  background: #16a34a;
  color: #fff;
}

/* Mid-page call to action, matched to the .cdr-guarantee gradient band. */
.cdr-landing .cdr-cta-band {
  background: linear-gradient(135deg, #effdf3, #fff 52%, #f4f7fb);
}

.cdr-landing .cdr-cta-band__inner {
  max-width: 86rem;
  margin: 0 auto;
  padding: clamp(3.2rem, 4vw, 4.8rem);
  border: 1px solid #d6e6dc;
  border-radius: 3rem;
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 1.4rem 3.4rem rgba(10, 26, 59, 0.08);
  text-align: center;
}

.cdr-landing .cdr-cta-band__inner h2 {
  margin: 0 0 1.4rem;
}

.cdr-landing .cdr-cta-band__inner p {
  max-width: 58rem;
  margin: 0 auto;
  color: #5b6c86;
  font-size: 1.6rem;
}

.cdr-landing .cdr-cta-band__inner .cdr-btn {
  margin-top: 2.8rem;
}

/* Document pathway tabs. */
.cdr-landing #document-check {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 8% 85%, rgba(22, 163, 74, 0.1), transparent 24rem),
    radial-gradient(circle at 94% 10%, rgba(56, 189, 248, 0.1), transparent 28rem),
    #f8fbff;
}

.cdr-landing #document-check::before,
.cdr-landing #document-check::after {
  position: absolute;
  width: 18rem;
  height: 18rem;
  border: 1px solid rgba(22, 163, 74, 0.12);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

.cdr-landing #document-check::before {
  top: -11rem;
  right: 8%;
}

.cdr-landing #document-check::after {
  bottom: -13rem;
  left: 4%;
}

.cdr-landing #document-check .container {
  position: relative;
  z-index: 1;
}

.cdr-landing #document-check .cdr-heading {
  max-width: 82rem;
  margin: 0 auto 4.2rem;
}

.cdr-landing #document-check .cdr-heading .cdr-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  margin-bottom: 1.4rem;
  padding: 0.8rem 1.35rem;
  border: 1px solid #bde6cc;
  border-radius: 99rem;
  background: #ecfbf1;
  color: #087137;
  font-size: 1.2rem;
  letter-spacing: 0.08em;
}

.cdr-landing #document-check .cdr-heading h2 {
  max-width: 76rem;
  margin-inline: auto;
  font-size: clamp(3rem, 4.1vw, 4.8rem);
  line-height: 1.08;
}

.cdr-landing #document-check .cdr-heading p {
  max-width: 66rem;
  margin-inline: auto;
  font-size: 1.6rem;
}

.cdr-landing #document-check .cdr-pathway-tabs {
  align-items: stretch;
}

.cdr-landing .cdr-pathway-nav {
  gap: 1.2rem;
  margin: 0;
  padding: 0;
}

.cdr-landing .cdr-pathway-nav .nav-item {
  list-style: none;
}

.cdr-landing .cdr-pathway-nav .nav-link {
  display: grid;
  grid-template-columns: 4.3rem minmax(0, 1fr) auto;
  align-items: center;
  gap: 1.35rem;
  width: 100%;
  min-height: 8.4rem;
  padding: 1.45rem 1.8rem;
  border: 1px solid #dce3ef;
  border-radius: 2rem;
  background: rgba(255, 255, 255, 0.9);
  background-image: none;
  box-shadow: 0 0.4rem 1.2rem rgba(10, 26, 59, 0.05);
  color: #0a1a3b;
  font-size: 1.55rem;
  font-weight: 700;
  line-height: 1.35;
  text-align: left;
  text-decoration: none;
  transition:
    border-color 0.2s ease,
    background-color 0.2s ease,
    color 0.2s ease,
    box-shadow 0.2s ease;
}

.cdr-landing .cdr-pathway-nav__number {
  display: grid;
  width: 4.3rem;
  height: 4.3rem;
  place-items: center;
  border-radius: 1.3rem;
  background: #edf3fa;
  color: #5f7392;
  font-size: 1.25rem;
  font-weight: 800;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.cdr-landing .cdr-pathway-nav__copy {
  display: grid;
  gap: 0.35rem;
}

.cdr-landing .cdr-pathway-nav__copy b {
  color: inherit;
  font-size: 1.55rem;
  line-height: 1.2;
}

.cdr-landing .cdr-pathway-nav__copy small {
  color: #71829b;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.25;
  transition: color 0.2s ease;
}

.cdr-landing .cdr-pathway-nav .nav-link i {
  position: static;
  right: auto;
  flex: 0 0 auto;
  color: #94a6c0;
  font-size: 1.6rem;
  transition:
    transform 0.2s ease,
    color 0.2s ease;
}

.cdr-landing .cdr-pathway-nav .nav-link:hover {
  border-color: #bfe3cd;
  transform: translateX(0.35rem);
  box-shadow: 0 0.8rem 2.2rem rgba(10, 26, 59, 0.1);
}

.cdr-landing .cdr-pathway-nav .nav-link.active {
  border-color: #16a34a;
  background: linear-gradient(120deg, #071a3d, #0c2b5b);
  box-shadow: 0 1rem 2.6rem rgba(10, 26, 59, 0.18);
  color: #fff;
}

.cdr-landing .cdr-pathway-nav .nav-link.active .cdr-pathway-nav__number {
  background: #4ade80;
  color: #062044;
  transform: rotate(-5deg);
}

.cdr-landing .cdr-pathway-nav .nav-link.active .cdr-pathway-nav__copy small {
  color: #bbcadf;
}

.cdr-landing .cdr-pathway-nav .nav-link.active i {
  color: #4ade80;
  transform: translateX(0.3rem);
}

.cdr-landing .cdr-pathway-panel {
  position: relative;
  isolation: isolate;
  height: 100%;
  min-height: 37rem;
  padding: clamp(3rem, 4vw, 4.4rem);
  border: 1px solid #cddded;
  border-radius: 2.8rem;
  background: linear-gradient(135deg, #fff, #f3f8ff);
  box-shadow: 0 1.6rem 4rem rgba(10, 26, 59, 0.1);
}

.cdr-landing .cdr-pathway-panel::before {
  position: absolute;
  z-index: -1;
  top: 2.6rem;
  right: 3rem;
  width: 13rem;
  height: 13rem;
  border: 2.2rem solid #ddf7e6;
  border-radius: 50%;
  content: "";
}

.cdr-landing .cdr-pathway-panel .tab-pane {
  position: relative;
  z-index: 1;
}

.cdr-landing .cdr-pathway-panel__label {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 2rem;
  padding: 0.85rem 1.25rem;
  border-radius: 99rem;
  background: #e3f8ea;
  color: #087137;
  font-size: 1.25rem;
  font-weight: 800;
  letter-spacing: 0.03em;
}

.cdr-landing .cdr-pathway-panel h3 {
  max-width: 48rem;
  margin: 0 0 1.6rem;
  color: #092655;
  font-size: clamp(2.35rem, 2.8vw, 3.25rem);
  line-height: 1.15;
  letter-spacing: -0.04em;
}

.cdr-landing .cdr-pathway-panel p {
  max-width: 55rem;
  margin: 0;
  color: #556783;
  font-size: 1.65rem;
  line-height: 1.7;
}

/* What the review covers and excludes. */
.cdr-landing .cdr-scope-card {
  height: 100%;
  padding: clamp(2.4rem, 3vw, 3.2rem);
  border: 1px solid #dce3ef;
  border-radius: 2.4rem;
  background: #fff;
  box-shadow: 0 1rem 3rem rgba(10, 26, 59, 0.08);
}

.cdr-landing .cdr-scope-card--exclude {
  border-color: #f0dbd0;
  background: #fffaf7;
}

.cdr-landing .cdr-scope-card h3 {
  margin: 0 0 2.2rem;
  padding-bottom: 1.8rem;
  border-bottom: 1px solid #e5ebf3;
  font-size: clamp(1.9rem, 2.1vw, 2.3rem);
  line-height: 1.25;
}

.cdr-landing .cdr-scope-card--include h3 {
  color: #0f7f37;
}

.cdr-landing .cdr-scope-card--exclude h3 {
  border-bottom-color: #f2e2d9;
  color: #c2410c;
}

.cdr-landing .cdr-scope-list {
  display: grid;
  gap: 1.4rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.cdr-landing .cdr-scope-list li {
  display: grid;
  grid-template-columns: 2.6rem minmax(0, 1fr);
  gap: 1.2rem;
  align-items: start;
  color: #556783;
  font-size: 1.5rem;
  line-height: 1.6;
}

.cdr-landing .cdr-scope-list li > span {
  display: grid;
  width: 2.6rem;
  height: 2.6rem;
  place-items: center;
  border-radius: 50%;
  font-size: 1.2rem;
}

.cdr-landing .cdr-scope-card--include .cdr-scope-list li > span {
  background: #ddf7e6;
  color: #0f7f37;
}

.cdr-landing .cdr-scope-card--exclude .cdr-scope-list li > span {
  background: #fdeae2;
  color: #c2410c;
}

.cdr-landing .cdr-scope-note {
  max-width: 86rem;
  margin: 3rem auto 0;
  padding: 1.6rem 2rem;
  border: 1px dashed #c9d8ea;
  border-radius: 1.6rem;
  background: #fff;
  text-align: center;
}

.cdr-landing .cdr-scope-note p {
  margin: 0;
  color: #5b6c86;
  font-size: 1.4rem;
  font-style: italic;
}

.cdr-landing .cdr-scope-note i {
  color: #16a34a;
}

.cdr-landing .cdr-scope-note strong {
  color: #0a1a3b;
  font-style: normal;
}

/* What you receive — numbered steps, matched to the about-page timeline. */
.cdr-landing .cdr-steps {
  position: relative;
  max-width: 76rem;
  margin: 0 auto;
  padding: 0;
  list-style: none;
}

.cdr-landing .cdr-steps::before {
  position: absolute;
  top: 2.8rem;
  bottom: 2.8rem;
  left: 2.8rem;
  width: 1px;
  content: "";
  background: #d5dfe9;
}

.cdr-landing .cdr-steps__item {
  position: relative;
  display: grid;
  grid-template-columns: 5.6rem minmax(0, 1fr);
  gap: 2.6rem;
  align-items: start;
}

.cdr-landing .cdr-steps__item + .cdr-steps__item {
  margin-top: 2.4rem;
}

.cdr-landing .cdr-steps__num {
  z-index: 1;
  display: grid;
  width: 5.6rem;
  height: 5.6rem;
  place-items: center;
  border: 1px solid #e1e7ee;
  border-radius: 1.5rem;
  background: #fff;
  box-shadow: 0 1.2rem 2.5rem rgba(20, 46, 75, 0.09);
  color: #082c52;
  font-size: 1.55rem;
  font-weight: 800;
}

.cdr-landing .cdr-steps__card {
  padding: 2.35rem 2.6rem;
  border: 1px solid #e6edf5;
  border-radius: 2.4rem;
  background: #fff;
  box-shadow: 0 1.4rem 3rem rgba(20, 46, 75, 0.1);
  transition:
    transform 0.28s cubic-bezier(0.22, 0.61, 0.36, 1),
    box-shadow 0.28s ease;
}

.cdr-landing .cdr-steps__card:hover {
  transform: translateY(-0.4rem);
  box-shadow: 0 1.2rem 3rem rgba(10, 26, 59, 0.12);
}

.cdr-landing .cdr-steps__card h3 {
  margin: 0 0 1rem;
  color: #062950;
  font-size: clamp(1.9rem, 2.1vw, 2.25rem);
  line-height: 1.25;
}

.cdr-landing .cdr-steps__card p {
  margin: 0;
  color: #58779d;
  font-size: 1.5rem;
  line-height: 1.55;
}

/* Review pricing — reuses the dark #pricing band from the home page. */
.cdr-landing #pricing .cdr-pricing-tabs-wrapper {
  display: flex;
  justify-content: center;
  margin-top: 3.4rem;
}

.cdr-landing #pricing .cdr-pricing-tabs {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.6rem;
  margin: 0;
  padding: 0.6rem;
  border: 1px solid #ffffff2e;
  border-radius: 3rem;
  background: #ffffff08;
  list-style: none;
}

.cdr-landing #pricing .cdr-pricing-tabs .nav-item {
  list-style: none;
}

.cdr-landing #pricing .cdr-pricing-tabs .nav-link {
  display: block;
  padding: 1.1rem 1.9rem;
  border-radius: 99rem;
  background: transparent;
  background-image: none;
  color: #c6d0df;
  font-size: 1.35rem;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}

.cdr-landing #pricing .cdr-pricing-tabs .nav-link:hover {
  background: #ffffff14;
  color: #fff;
}

.cdr-landing #pricing .cdr-pricing-tabs .nav-link.active {
  background: #16a34a;
  color: #061024;
}

.cdr-landing #pricing .cdr-pricing-content {
  margin-top: 4.4rem;
}

.cdr-landing #pricing .cdr-price-card {
  max-width: 104rem;
  margin: 0 auto;
  padding: clamp(2.6rem, 3.4vw, 4rem);
  border: 1px solid #ffffff1d;
  border-radius: 3.2rem;
  background: #121a2d;
  color: #fff;
  text-align: center;
}

.cdr-landing #pricing .cdr-price-card h3 {
  margin: 0 0 1.2rem;
  color: #fff;
  font-size: clamp(2.1rem, 2.6vw, 2.8rem);
  line-height: 1.2;
}

.cdr-landing #pricing .cdr-price-card__desc {
  max-width: 70rem;
  margin: 0 auto;
  color: #aebacd;
  font-size: 1.5rem;
  line-height: 1.65;
}

.cdr-landing #pricing .cdr-price-tiles {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
  gap: 1.8rem;
  margin: 4.2rem 0 3.4rem;
}

.cdr-landing #pricing .cdr-price-tile {
  position: relative;
  display: grid;
  gap: 0.9rem;
  justify-items: center;
  padding: 2.6rem 1.8rem;
  border: 1px solid #ffffff1d;
  border-radius: 2.4rem;
  background: #0d1526;
  transition:
    transform 0.22s ease,
    border-color 0.22s ease;
}

.cdr-landing #pricing .cdr-price-tile:hover {
  transform: translateY(-0.4rem);
  border-color: rgba(22, 163, 74, 0.45);
}

.cdr-landing #pricing .cdr-price-tile > i {
  display: grid;
  width: 4.4rem;
  height: 4.4rem;
  place-items: center;
  border-radius: 1.4rem;
  background: rgba(15, 111, 67, 0.28);
  color: #4ade80;
  font-size: 1.9rem;
}

.cdr-landing #pricing .cdr-price-tile__days {
  color: #c6d0df;
  font-size: 1.3rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.cdr-landing #pricing .cdr-price-tile__amount {
  color: #fff;
  font-size: clamp(2.2rem, 2.6vw, 2.8rem);
  font-weight: 800;
  line-height: 1.1;
}

.cdr-landing #pricing .cdr-price-tile.popular {
  border: 2px solid #16c756;
  background: #fff;
  box-shadow: 0 1.5rem 3.5rem rgba(22, 163, 74, 0.28);
}

.cdr-landing #pricing .cdr-price-tile.popular > i {
  background: #ddf7e6;
  color: #0f7f37;
}

.cdr-landing #pricing .cdr-price-tile.popular .cdr-price-tile__days {
  color: #647b9e;
}

.cdr-landing #pricing .cdr-price-tile.popular .cdr-price-tile__amount {
  color: #102750;
}

.cdr-landing #pricing .cdr-price-card__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.4rem;
}

.cdr-landing #pricing .cdr-price-card__note {
  margin: 2.8rem 0 0;
  color: #8fa0b9;
  font-size: 1.3rem;
  line-height: 1.6;
}

.cdr-landing #pricing .cdr-price-card__note i {
  color: #4ade80;
}

/* Client reviews. */
.cdr-landing #reviews .testimonial-wrapper {
  gap: 2rem;
}

.cdr-landing #reviews .testimonial-sets {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  width: 100%;
  margin-bottom: 2rem;
}

.cdr-landing #reviews .testimonial-blocks {
  padding: clamp(2rem, 2.4vw, 2.6rem);
  border: 1px solid #e2e9f2;
  border-radius: 2.4rem;
  background: #fff;
  box-shadow: 0 1rem 2.6rem rgba(10, 26, 59, 0.07);
  transition:
    transform 0.28s cubic-bezier(0.22, 0.61, 0.36, 1),
    box-shadow 0.28s ease;
}

.cdr-landing #reviews .testimonial-blocks:hover {
  transform: translateY(-0.4rem);
  box-shadow: 0 1.4rem 3.2rem rgba(10, 26, 59, 0.12);
}

.cdr-landing #reviews .testimonial-blocks h4 {
  margin: 0 0 0.6rem;
  color: #0a1a3b;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.3;
}

.cdr-landing #reviews .testimonial-blocks p {
  margin-top: 1.4rem;
  color: #556783;
  font-size: 1.45rem;
  line-height: 1.65;
}

.cdr-landing #reviews .testimonial-blocks i {
  margin: 0 0.15rem;
  color: #f6a623;
  font-size: 1.3rem;
}

.cdr-landing #reviews .testimonial-btn {
  display: block;
  margin: 0 auto;
  padding: 1.3rem 2.6rem;
  border: 0;
  border-radius: 99rem;
  background: #16a34a;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 800;
}

/* Services FAQ uses one centred heading rather than the two-column home layout. */
.cdr-landing #faq .cdr-heading h2 {
  max-width: none;
  margin-inline: auto;
  font-size: clamp(2.8rem, 3.8vw, 4.4rem);
  line-height: 1.1;
}

.cdr-landing #faq .accordion {
  max-width: 96rem;
  margin-inline: auto;
}

@media (max-width: 991px) {
  .cdr-landing .cdr-pathway-panel {
    height: auto;
  }
}

@media (max-width: 767px) {
  .cdr-landing #document-check .cdr-heading {
    margin-bottom: 3rem;
  }

  .cdr-landing .cdr-pathway-nav .nav-link {
    grid-template-columns: 3.8rem minmax(0, 1fr) auto;
    min-height: 7.4rem;
    gap: 1rem;
    padding: 1.25rem 1.35rem;
  }

  .cdr-landing .cdr-pathway-nav__number {
    width: 3.8rem;
    height: 3.8rem;
    border-radius: 1.1rem;
    font-size: 1.1rem;
  }

  .cdr-landing .cdr-pathway-nav__copy b {
    font-size: 1.35rem;
  }

  .cdr-landing .cdr-pathway-nav__copy small {
    font-size: 1.08rem;
  }

  .cdr-landing .cdr-pathway-panel {
    min-height: 28rem;
    padding: 2.5rem 2rem;
    border-radius: 2.2rem;
  }

  .cdr-landing .cdr-pathway-panel::before {
    top: 1.6rem;
    right: 1.2rem;
    width: 9rem;
    height: 9rem;
    border-width: 1.5rem;
  }

  .cdr-landing .cdr-pathway-panel__label {
    margin-bottom: 1.6rem;
    font-size: 1.1rem;
  }

  .cdr-landing .cdr-pathway-panel h3 {
    max-width: 32rem;
    font-size: 2.35rem;
  }

  .cdr-landing .cdr-hero .cdr-breadcrumb p {
    font-size: 1.35rem;
  }

  .cdr-landing .cdr-hero .cdr-hero-note {
    margin-top: 3.2rem;
    padding: 1.4rem 1.6rem;
  }

  .cdr-landing .cdr-stats .row > div > i {
    width: 3.4rem;
    height: 3.4rem;
    margin-bottom: 0.9rem;
    font-size: 1.6rem;
  }

  .cdr-landing .cdr-service-card {
    padding: 2rem 2rem 7rem;
    border-radius: 2rem;
  }

  .cdr-landing .cdr-service-card__arrow {
    right: 2rem;
    bottom: 2rem;
  }

  .cdr-landing .cdr-cta-band__inner {
    border-radius: 2.2rem;
  }

  .cdr-landing .cdr-scope-card {
    border-radius: 2rem;
  }

  .cdr-landing .cdr-steps::before {
    left: 2.35rem;
  }

  .cdr-landing .cdr-steps__item {
    grid-template-columns: 4.7rem minmax(0, 1fr);
    gap: 1.5rem;
  }

  .cdr-landing .cdr-steps__num {
    width: 4.7rem;
    height: 4.7rem;
    border-radius: 1.3rem;
    font-size: 1.35rem;
  }

  .cdr-landing .cdr-steps__card {
    padding: 2rem;
    border-radius: 2rem;
  }

  .cdr-landing #pricing .cdr-pricing-tabs {
    border-radius: 2.4rem;
  }

  .cdr-landing #pricing .cdr-pricing-tabs .nav-link {
    padding: 1rem 1.4rem;
    font-size: 1.25rem;
  }

  .cdr-landing #pricing .cdr-price-card {
    border-radius: 2.4rem;
  }

  .cdr-landing #pricing .cdr-price-tiles {
    grid-template-columns: 1fr;
    margin-top: 3.6rem;
  }

  .cdr-landing #pricing .cdr-price-card__actions .cdr-btn {
    width: 100%;
  }
}

@media (max-width: 400px) {
  .cdr-landing .cdr-review-form__captcha {
    transform: scale(0.86);
    transform-origin: center top;
  }
}

/* Pricing page - shared review-pricing design. */
.service-choice {
  padding: clamp(5rem, 8vw, 9rem) 0;
  background: #f4f8fc;
}

.service-choice__intro {
  max-width: 82rem;
  margin: 0 auto clamp(3rem, 5vw, 4.8rem);
  text-align: center;
}

.service-choice__intro .cdr-kicker {
  margin-bottom: 1.4rem;
}

.service-choice__intro h2 {
  margin: 0;
  color: #0a1a3b;
  font-size: clamp(2.8rem, 4vw, 4.6rem);
  line-height: 1.12;
}

.service-choice__intro p {
  max-width: 74rem;
  margin: 1.8rem auto 0;
  color: #52637d;
  font-size: 1.7rem;
  line-height: 1.7;
}

.service-choice__card {
  height: 100%;
  padding: clamp(2.4rem, 4vw, 4rem);
  border: 1px solid #dce5f0;
  border-top: 0.5rem solid #16a34a;
  border-radius: 0.8rem;
  background: #fff;
  box-shadow: 0 1.2rem 3.2rem rgba(10, 26, 59, 0.08);
}

.service-choice__card--review {
  border-top-color: #2873c9;
}

.service-choice__icon {
  display: grid;
  width: 5rem;
  height: 5rem;
  margin-bottom: 2.2rem;
  place-items: center;
  border-radius: 0.8rem;
  background: #e5f6e9;
  color: #108437;
  font-size: 2.2rem;
}

.service-choice__card--review .service-choice__icon {
  background: #e8f1fc;
  color: #1e65b4;
}

.service-choice__card h3 {
  margin: 0 0 2rem;
  color: #0a1a3b;
  font-size: clamp(2.1rem, 2.5vw, 2.8rem);
  line-height: 1.25;
}

.service-choice__card ul {
  display: grid;
  gap: 1.35rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.service-choice__card li {
  position: relative;
  padding-left: 2.8rem;
  color: #52637d;
  font-size: 1.6rem;
  line-height: 1.6;
}

.service-choice__card li::before {
  position: absolute;
  top: 0.4rem;
  left: 0;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 50%;
  background: #16a34a;
  content: "";
}

.service-choice__card li::after {
  position: absolute;
  top: 0.95rem;
  left: 0.42rem;
  width: 0.55rem;
  height: 0.3rem;
  border-bottom: 0.18rem solid #fff;
  border-left: 0.18rem solid #fff;
  content: "";
  transform: rotate(-45deg);
}

.service-choice__card--review li::before {
  background: #2873c9;
}

.service-choice__note {
  display: flex;
  gap: 1.4rem;
  max-width: 110rem;
  margin: clamp(3rem, 5vw, 4.8rem) auto 0;
  padding: 2rem 2.4rem;
  border-left: 0.4rem solid #e6a400;
  background: #fff8df;
  color: #624c16;
}

.service-choice__note > i {
  flex: 0 0 auto;
  margin-top: 0.2rem;
  color: #b17d00;
  font-size: 2.1rem;
}

.service-choice__note p {
  margin: 0;
  font-size: 1.5rem;
  line-height: 1.65;
}

@media (max-width: 575px) {
  .service-choice__note {
    padding: 1.8rem;
  }
}

.pricing-page .cdr-hero h1 .pricing-hero-plan {
  display: block;
  white-space: nowrap;
}

.pricing-page .cdr-hero h1 .pricing-hero-plan em {
  display: inline-block;
}

.pricing-page .pricing-table {
  padding: clamp(4.5rem, 7vw, 7rem) 0;
  background: #fff;
}

.pricing-page .pricing-table .section-heading {
  max-width: 76rem;
  margin: 0 auto 2.5rem;
  text-align: center;
}

.pricing-page .pricing-table__eyebrow {
  display: inline-flex;
  margin-bottom: 1.2rem;
  color: #43b138;
  font-size: 1.2rem;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.pricing-page .pricing-table .section-heading h2 {
  margin: 0;
  color: #082b63;
  font-size: clamp(2.6rem, 3.2vw, 4rem);
  font-weight: 700;
  letter-spacing: -.025em;
  line-height: 1.2;
}

.pricing-page .pricing-table .section-heading p {
  max-width: 66rem;
  margin: 1.3rem auto 0;
  color: #64748b;
  font-size: 1.55rem;
  line-height: 1.65;
}

.pricing-page .review-pricing-tabs-wrapper {
  max-width: 124rem;
  margin: 0 auto;
  padding: .4rem 1rem;
  border: 1px solid #e0e7ef;
  border-radius: 1.2rem;
  background: #fff;
  overflow-x: auto;
}

.pricing-page .review-pricing-tabs {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  gap: .5rem;
  min-width: max-content;
  margin: 0;
  padding: 0;
  border: 0;
}

.pricing-page .review-pricing-tabs .nav-item {
  flex: 0 0 auto;
}

.pricing-page .review-pricing-tabs .nav-link {
  display: block;
  padding: 1.25rem 1.45rem;
  border: 0;
  border-bottom: .3rem solid transparent;
  border-radius: 0;
  background: transparent;
  background-image: none;
  color: #182338;
  font-size: clamp(1.25rem, 1.05vw, 1.65rem);
  font-weight: 600;
  line-height: 1.25;
  white-space: nowrap;
}

.pricing-page .review-pricing-tabs .nav-link:hover,
.pricing-page .review-pricing-tabs .nav-link:focus,
.pricing-page .review-pricing-tabs .nav-link.active {
  background: transparent;
  background-image: none;
  color: #43b138;
}

.pricing-page .review-pricing-tabs .nav-link.active {
  border-bottom-color: #43b138;
}

.pricing-page .review-pricing-content {
  max-width: 124rem;
  margin: 2.5rem auto 0;
}

.pricing-page .review-pricing-content .tab-pane > .container {
  padding: clamp(2.4rem, 4vw, 4rem) !important;
  margin-bottom: 0 !important;
  border: 1px solid #e0e7ef;
  border-radius: 1.6rem;
  background: #fff;
  box-shadow: 0 .8rem 2.4rem rgba(8, 43, 99, .08);
}

.pricing-page .pricing-package-header {
  max-width: 76rem;
  margin: 0 auto 2.8rem;
  text-align: center;
}

.pricing-page .pricing-package-header > span {
  display: inline-flex;
  align-items: center;
  gap: .65rem;
  padding: .65rem 1.1rem;
  border-radius: 99rem;
  background: #effbf1;
  color: #43b138;
  font-size: 1.2rem;
  font-weight: 700;
}

.pricing-page .pricing-package-header h3 {
  margin: 1.4rem 0 1rem;
  color: #172b4d;
  font-size: clamp(2.2rem, 2.5vw, 3.2rem);
  font-weight: 700;
  letter-spacing: -.025em;
  line-height: 1.2;
}

.pricing-page .pricing-package-header p {
  margin: 0;
  color: #64748b;
  font-size: 1.5rem;
  line-height: 1.65;
}

.pricing-page .table-responsive {
  margin-top: 0;
  border: 1px solid #e0e7ef;
  border-radius: 1.2rem;
  background: #fff;
  overflow: hidden;
}

.pricing-page .table-responsive table {
  min-width: 74rem;
  margin: 0;
  border: 0;
}

.pricing-page .table-responsive table thead {
  background: #fff;
  color: #082b63;
}

.pricing-page .table-responsive table thead th {
  padding: 2.2rem 1.6rem;
  border: 0;
  border-bottom: 1px solid #e4eaf1;
  background: #fff;
  color: #082b63;
  font-size: clamp(1.35rem, 1.15vw, 1.75rem);
  font-weight: 700;
  text-align: center;
}

.pricing-page .table-responsive table thead th:first-child {
  width: 43%;
  padding-left: 2.6rem;
  text-align: left;
}

.pricing-page .table-responsive table thead th:nth-child(3) {
  position: relative;
  padding-top: 3.2rem;
  background: #f1fcf3;
  color: #248d2f;
}

.pricing-page .table-responsive table thead th:nth-child(3)::before {
  position: absolute;
  top: .65rem;
  left: 50%;
  padding: .3rem .75rem;
  border-radius: 99rem;
  background: #43b138;
  color: #fff;
  content: "Most popular";
  font-size: .9rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  transform: translateX(-50%);
  white-space: nowrap;
}

.pricing-page .table-responsive table thead span {
  display: block;
  margin-top: .5rem;
  color: #65748a;
  font-size: 1.05rem;
  font-weight: 600;
}

.pricing-page .table-responsive table th,
.pricing-page .table-responsive table td {
  padding: 1.8rem 1.6rem;
  border: 0;
  font-size: clamp(1.3rem, 1.1vw, 1.6rem);
  vertical-align: middle;
}

.pricing-page .table.table-bordered > :not(caption) > * {
  border-width: 0;
}

.pricing-page .table-responsive table tbody tr:not(:last-child) > * {
  border-bottom: 1px solid #edf1f5;
}

.pricing-page .table-responsive table tbody th {
  padding-left: 2.6rem;
  color: #203452;
  font-weight: 600;
}

.pricing-page .table-responsive table tbody td {
  color: #248d2f;
  font-size: clamp(1.55rem, 1.3vw, 1.9rem);
  font-weight: 700;
  text-align: center;
}

.pricing-page .table-responsive table tbody td:nth-child(3) {
  background: #f8fdf9;
}

.pricing-page .table-responsive table tbody tr:last-child td {
  padding: 2.2rem;
  background: #f7fcf8;
}

.pricing-page .pricing-element {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
}

.pricing-page .summer-offer {
  width: 5rem;
  height: auto;
  margin: 0 .7rem 0 0;
  object-fit: contain;
}

.pricing-page .pricing-element-text {
  display: block;
  margin-top: .6rem;
  color: #43b138;
  font-size: 1.1rem;
  font-weight: 800;
}

.pricing-page .buy-servives {
  display: flex;
  justify-content: center;
}

/* Keep the consultation callout visually separate from the services table. */
.pricing-page .call-to-action + .container {
  margin-top: 2.4rem;
}

.pricing-page .call-to-action {
  margin-top: 2.4rem;
}

.pricing-page .call-to-action > .container > .btn-all {
  display: block;
  width: fit-content;
  margin: 0 auto;
}

.pricing-page .btn-all-price {
  display: inline-block;
  min-width: 32rem;
  padding: 1.35rem 2.8rem;
  border-radius: .6rem;
  background: #43b138;
  color: #fff;
  font-size: clamp(1.5rem, 1.3vw, 1.9rem);
  font-weight: 700;
  text-align: center;
  text-decoration: none;
}

.pricing-page .btn-all-price:hover {
  background: #36982d;
  color: #fff;
}

@media (max-width: 767px) {
  .pricing-page .pricing-table {
    padding: 3.5rem 0 5rem;
  }

  .pricing-page .review-pricing-tabs-wrapper {
    border-radius: 1rem;
  }

  .pricing-page .review-pricing-tabs {
    justify-content: flex-start;
  }

  .pricing-page .review-pricing-content .tab-pane > .container {
    padding: 2rem 1.4rem !important;
    border-radius: 1.2rem;
  }

  .pricing-page .table-responsive {
    overflow-x: auto;
  }

  .pricing-page .btn-all-price {
    min-width: 24rem;
  }

  .pricing-page .call-to-action + .container {
    margin-top: 1.6rem;
  }

  .pricing-page .call-to-action {
    margin-top: 1.6rem;
  }
}