/* PCR Latam Homepage 1.2.0 */

:root {
  --navy: #15244B;
  --navy-deep: #0E1733;
  --ink: #1C2433;
  --ink-soft: #4A5564;
  --green: #155A3A;
  --green-hover: #0E3F2A;
  --green-mid: #3A9E46;
  --green-soft: #DCE8DF;
  --green-wash: #EAF1EB;
  --cyan: #3FD9FD;
  --cream: #F3F1EB;
  --cream-deep: #E7E4DB;
  --paper: #FFFCF7;
  --line: rgba(21, 36, 75, 0.12);
  --line-strong: rgba(21, 36, 75, 0.22);
  --shadow: 0 16px 40px rgba(21, 36, 75, 0.08);
  --serif: "Source Serif 4", "Iowan Old Style", "Palatino Linotype", Palatino, serif;
  --sans: "DM Sans", "Segoe UI", "Helvetica Neue", sans-serif;
  --radius: 8px;
  --wrap: 70rem;
}

*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation: none !important;
    transition: none !important;
  }
}

/* ==========================================================================
   Chrome (header / footer) — homepage and inner pages
   ========================================================================== */

body.pcr-chrome .pcr-skip {
  position: absolute;
  left: 1rem;
  top: -4rem;
  background: var(--navy);
  color: var(--paper);
  padding: 0.6rem 1rem;
  border-radius: 999px;
  z-index: 100;
  color: var(--paper);
}
body.pcr-chrome .pcr-skip:focus { top: 1rem; }

body.pcr-chrome .pcr-wrap {
  width: min(calc(100% - 2.5rem), var(--wrap));
  margin-inline: auto;
}
@media (min-width: 720px) {
  body.pcr-chrome .pcr-wrap { width: min(calc(100% - 4rem), var(--wrap)); }
}

body.pcr-chrome .pcr-site-header {
  position: sticky;
  top: 0;
  z-index: 40;
  background: color-mix(in srgb, var(--cream) 88%, transparent);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid var(--line);
  font-family: var(--sans);
}
body.admin-bar.pcr-chrome .pcr-site-header { top: 32px; }
@media screen and (max-width: 782px) {
  body.admin-bar.pcr-chrome .pcr-site-header { top: 46px; }
}

body.pcr-chrome .pcr-header-in {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 4.4rem;
}

body.pcr-chrome .pcr-brand {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  text-decoration: none;
  color: var(--navy);
  min-width: 0;
}
body.pcr-chrome .pcr-brand:hover { color: var(--navy); }
body.pcr-chrome .pcr-brand svg { width: 2.15rem; height: 2.35rem; flex: none; display: block; }
body.pcr-chrome .pcr-wordmark {
  font-family: var(--sans);
  font-size: 1.08rem;
  letter-spacing: -0.03em;
  font-weight: 700;
  white-space: nowrap;
  color: var(--navy);
}

body.pcr-chrome .pcr-nav-toggle {
  display: none;
  border: 1px solid var(--line-strong);
  background: var(--paper);
  color: var(--navy);
  border-radius: var(--radius);
  padding: 0.45rem 0.85rem;
  font: inherit;
  font-family: var(--sans);
  font-weight: 600;
  font-size: 0.9rem;
  cursor: pointer;
}

body.pcr-chrome .pcr-header-tools {
  display: flex;
  align-items: center;
  gap: 1.1rem;
}
body.pcr-chrome .pcr-nav-panel {
  display: flex;
  align-items: center;
  gap: 1.15rem;
}

body.pcr-chrome .pcr-nav-links {
  display: flex;
  align-items: center;
  gap: 0.15rem 1.2rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
body.pcr-chrome .pcr-nav-links a {
  color: var(--ink-soft);
  text-decoration: none;
  font-weight: 600;
  font-size: 0.92rem;
  font-family: var(--sans);
}
body.pcr-chrome .pcr-nav-links a:hover,
body.pcr-chrome .pcr-nav-links a[aria-current="page"] { color: var(--navy); }

body.pcr-chrome .pcr-lang {
  display: inline-flex;
  align-items: center;
  min-width: 5.75rem;
  min-height: 2.2rem;
}
body.pcr-chrome .pcr-lang .gtranslate_wrapper:empty {
  visibility: hidden;
}
body.pcr-chrome .pcr-lang .gtranslate_wrapper,
body.pcr-chrome .pcr-lang .gt_switcher,
body.pcr-chrome .pcr-lang .gt_selector,
body.pcr-chrome .pcr-lang .gt_container {
  margin: 0 !important;
  font-family: var(--sans);
  font-size: 0.8rem;
}

body.pcr-chrome .pcr-btn,
body.pcr-chrome a.pcr-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  border-radius: var(--radius);
  padding: 0.78rem 1.3rem;
  font-family: var(--sans);
  font-weight: 700;
  font-size: 0.95rem;
  text-decoration: none !important;
  border: 1.5px solid transparent;
  cursor: pointer;
  line-height: 1.2;
  box-shadow: none;
}
body.pcr-chrome .pcr-btn--primary,
body.pcr-chrome a.pcr-btn--primary {
  background: var(--green);
  color: #F7F4EE !important;
}
body.pcr-chrome .pcr-btn--primary:hover,
body.pcr-chrome a.pcr-btn--primary:hover {
  background: var(--green-hover);
  color: #F7F4EE !important;
}

body.pcr-chrome .pcr-site-footer {
  background: var(--navy-deep);
  color: #E8EBE6;
  padding: 3rem 0 1.6rem;
  font-family: var(--sans);
  font-size: 1rem;
  line-height: 1.6;
}
body.pcr-chrome .pcr-footer-grid {
  display: grid;
  gap: 2rem;
  padding-bottom: 2rem;
}
@media (min-width: 800px) {
  body.pcr-chrome .pcr-footer-grid { grid-template-columns: 1.4fr 0.8fr 1fr; gap: 3rem; }
}
body.pcr-chrome .pcr-site-footer h2 {
  font-family: var(--sans);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #A6D9B0;
  margin: 0 0 0.8rem;
}
body.pcr-chrome .pcr-site-footer p,
body.pcr-chrome .pcr-site-footer li {
  color: #E8EBE6;
  margin: 0;
}
body.pcr-chrome .pcr-site-footer a {
  color: #FFFFFF;
  text-decoration: none;
}
body.pcr-chrome .pcr-site-footer a:hover { color: #A6D9B0; text-decoration: underline; }
body.pcr-chrome .pcr-footer-links { list-style: none; margin: 0; padding: 0; }
body.pcr-chrome .pcr-footer-links li { margin: 0 0 0.4rem; }
body.pcr-chrome .pcr-legal {
  border-top: 1px solid rgba(247, 244, 238, 0.18);
  padding-top: 1.2rem;
  font-size: 0.9rem;
  color: #C9D2CC;
  margin: 0;
}

@media (max-width: 879px) {
  body.pcr-chrome .pcr-nav-toggle { display: inline-flex; }
  body.pcr-chrome .pcr-header-tools { position: relative; }
  body.pcr-chrome .pcr-nav-panel {
    display: none;
    position: absolute;
    top: calc(100% + 0.6rem);
    right: 0;
    width: min(20rem, calc(100vw - 2.5rem));
    background: var(--paper);
    border: 1px solid var(--line-strong);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    padding: 0.8rem;
    flex-direction: column;
    align-items: stretch;
    gap: 0.8rem;
    z-index: 50;
  }
  body.pcr-chrome .pcr-header-tools.is-open .pcr-nav-panel { display: flex; }
  body.pcr-chrome .pcr-nav-links {
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    width: 100%;
  }
  body.pcr-chrome .pcr-nav-links li { width: 100%; }
  body.pcr-chrome .pcr-nav-links a { display: block; padding: 0.55rem 0.35rem; }
  body.pcr-chrome .pcr-nav-panel .pcr-btn { width: 100%; }
  body.pcr-chrome .pcr-nav-panel .pcr-lang { align-self: flex-start; }
}

/* Hide Astra chrome when our header/footer are injected on inner pages */
body.pcr-chrome:not(.pcr-redesign) #masthead,
body.pcr-chrome:not(.pcr-redesign) .ast-hfb-header .site-header,
body.pcr-chrome:not(.pcr-redesign) header#masthead,
body.pcr-chrome:not(.pcr-redesign) .ast-above-header-bar,
body.pcr-chrome:not(.pcr-redesign) .ast-below-header-bar,
body.pcr-chrome:not(.pcr-redesign) footer#colophon,
body.pcr-chrome:not(.pcr-redesign) .ast-footer-overlay,
body.pcr-chrome:not(.pcr-redesign) .site-footer:not(.pcr-site-footer) {
  display: none !important;
}

/* ==========================================================================
   Homepage redesign
   ========================================================================== */

body.pcr-redesign {
  margin: 0 !important;
  padding: 0 !important;
  background: var(--cream) !important;
  color: var(--ink);
  font-family: var(--sans);
  font-optical-sizing: auto;
  font-size: 1.0625rem;
  line-height: 1.65;
  letter-spacing: 0.005em;
  overflow-x: hidden;
}

body.pcr-redesign img,
body.pcr-redesign svg { max-width: 100%; display: block; }
body.pcr-redesign a { color: var(--green); text-underline-offset: 0.18em; }
body.pcr-redesign :focus-visible {
  outline: 3px solid var(--green);
  outline-offset: 3px;
}

/* Content container — must beat WP group/column width resets */
body.pcr-redesign .wrap,
body.pcr-redesign .wp-block-group.wrap,
body.pcr-redesign .pcr-wrap {
  width: min(calc(100% - 2.5rem), var(--wrap)) !important;
  max-width: var(--wrap) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0;
  padding-right: 0;
  box-sizing: border-box;
}
@media (min-width: 720px) {
  body.pcr-redesign .wrap,
  body.pcr-redesign .wp-block-group.wrap,
  body.pcr-redesign .pcr-wrap {
    width: min(calc(100% - 4rem), var(--wrap)) !important;
  }
}

body.pcr-redesign #content,
body.pcr-redesign main {
  max-width: none !important;
  width: 100%;
  margin: 0;
  padding: 0;
}

body.pcr-redesign h1,
body.pcr-redesign h2,
body.pcr-redesign h3,
body.pcr-redesign .wp-block-heading {
  font-family: var(--serif);
  font-optical-sizing: auto;
  font-weight: 560;
  letter-spacing: -0.02em;
  line-height: 1.15;
  color: var(--navy);
  margin-block-start: 0;
}
body.pcr-redesign h1,
body.pcr-redesign h1.wp-block-heading { font-size: clamp(2.25rem, 5.2vw, 3.85rem); margin: 0 0 1.1rem; }
body.pcr-redesign h2,
body.pcr-redesign h2.wp-block-heading { font-size: clamp(1.8rem, 3.4vw, 2.7rem); margin: 0 0 1rem; }
body.pcr-redesign h3,
body.pcr-redesign h3.wp-block-heading { font-size: 1.35rem; margin: 0 0 0.5rem; }
body.pcr-redesign p,
body.pcr-redesign .wp-block-paragraph {
  margin: 0 0 1rem;
  color: var(--ink-soft);
}
body.pcr-redesign p:last-child,
body.pcr-redesign .wp-block-paragraph:last-child { margin-bottom: 0; }

body.pcr-redesign .kicker,
body.pcr-redesign p.kicker {
  display: inline-flex;
  align-items: center;
  gap: 0.7rem;
  font-family: var(--sans);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--green);
  margin: 0 0 1rem;
}
body.pcr-redesign .kicker::before {
  content: "";
  width: 1.4rem;
  height: 1px;
  background: var(--green);
  flex: none;
}
@media (max-width: 600px) {
  body.pcr-redesign .kicker,
  body.pcr-redesign p.kicker {
    display: block;
    letter-spacing: 0.1em;
  }
  body.pcr-redesign .kicker::before {
    display: block;
    margin-bottom: 0.45rem;
  }
}

/* Buttons inside homepage content (WP button blocks) */
body.pcr-redesign .wp-block-buttons,
body.pcr-redesign .wp-block-buttons.actions,
body.pcr-redesign .actions {
  display: flex !important;
  flex-wrap: wrap;
  gap: 0.7rem;
  align-items: center;
  margin: 0;
}
body.pcr-redesign .wp-block-button { margin: 0; }
body.pcr-redesign .btn,
body.pcr-redesign a.btn,
body.pcr-redesign .btn.wp-block-button__link,
body.pcr-redesign a.wp-block-button__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  border-radius: var(--radius) !important;
  padding: 0.78rem 1.3rem !important;
  font-family: var(--sans);
  font-weight: 700;
  font-size: 0.95rem;
  text-decoration: none !important;
  border: 1.5px solid transparent !important;
  cursor: pointer;
  line-height: 1.2;
  box-shadow: none !important;
  background-image: none !important;
}
body.pcr-redesign .btn--primary,
body.pcr-redesign a.btn--primary,
body.pcr-redesign .btn--primary.wp-block-button__link {
  background: var(--green) !important;
  color: #F7F4EE !important;
}
body.pcr-redesign .btn--primary:hover,
body.pcr-redesign a.btn--primary:hover {
  background: var(--green-hover) !important;
  color: #F7F4EE !important;
}
body.pcr-redesign .btn--on-dark,
body.pcr-redesign a.btn--on-dark {
  background: #F7F4EE !important;
  color: var(--navy) !important;
}
body.pcr-redesign .btn--on-dark:hover,
body.pcr-redesign a.btn--on-dark:hover {
  background: #fff !important;
  color: var(--navy) !important;
}
body.pcr-redesign .btn--ghost-on-dark,
body.pcr-redesign a.btn--ghost-on-dark {
  background: transparent !important;
  color: #F7F4EE !important;
  border-color: rgba(247, 244, 238, 0.45) !important;
}
body.pcr-redesign .btn--ghost-on-dark:hover,
body.pcr-redesign a.btn--ghost-on-dark:hover {
  background: rgba(247, 244, 238, 0.08) !important;
  color: #F7F4EE !important;
}

/* Hero */
body.pcr-redesign .hero,
body.pcr-redesign section.hero,
body.pcr-redesign .wp-block-group.hero {
  padding: 3.4rem 0 3.8rem;
  background: transparent;
  margin: 0;
}
body.pcr-redesign .hero-grid,
body.pcr-redesign .wp-block-columns.hero-grid {
  display: grid !important;
  gap: 2.5rem !important;
  align-items: center;
  flex-wrap: unset;
  margin: 0;
}
@media (min-width: 900px) {
  body.pcr-redesign .hero-grid,
  body.pcr-redesign .wp-block-columns.hero-grid {
    grid-template-columns: 1.15fr 0.85fr;
    gap: 3.5rem !important;
  }
  body.pcr-redesign .hero-grid > .wp-block-column,
  body.pcr-redesign .wp-block-columns.hero-grid > .wp-block-column {
    width: auto !important;
    flex-basis: auto !important;
  }
}
body.pcr-redesign .hero h1 { max-width: 14ch; }
body.pcr-redesign .hero-sub,
body.pcr-redesign p.hero-sub {
  font-size: 1.2rem;
  color: var(--ink-soft);
  margin: 0 0 1.6rem;
  max-width: 28rem;
}
body.pcr-redesign .hero-meta,
body.pcr-redesign p.hero-meta {
  margin: 1.6rem 0 0;
  padding-top: 1.2rem;
  border-top: 1px solid var(--line);
  font-size: 0.82rem;
  letter-spacing: 0.02em;
  color: var(--ink-soft);
}
body.pcr-redesign .hero-meta strong { color: var(--navy); font-weight: 600; }

/* Practice / services snapshot card */
body.pcr-redesign .practice,
body.pcr-redesign aside.practice,
body.pcr-redesign .wp-block-group.practice {
  background: var(--paper) !important;
  border: 1px solid var(--line) !important;
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  overflow: hidden;
  padding: 0 !important;
  margin: 0;
}
body.pcr-redesign .practice-top {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
  padding: 0.95rem 1.35rem;
  border-bottom: 1px solid var(--line);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: var(--ink-soft);
}
body.pcr-redesign .practice-top span { color: var(--green); letter-spacing: 0.08em; text-transform: uppercase; }
body.pcr-redesign .practice h2,
body.pcr-redesign .practice .wp-block-heading {
  font-size: 1.7rem;
  margin: 0;
  padding: 1.3rem 1.35rem 0.4rem;
}
body.pcr-redesign .practice ol {
  list-style: none;
  margin: 0;
  padding: 0.4rem 0 0.5rem;
}
body.pcr-redesign .practice li {
  display: grid;
  grid-template-columns: 2.1rem 1fr;
  gap: 0.55rem;
  padding: 0.85rem 1.35rem;
  border-top: 1px solid var(--line);
  color: var(--navy);
  font-weight: 600;
  font-size: 0.98rem;
}
body.pcr-redesign .practice li em {
  display: block;
  font-style: normal;
  font-weight: 400;
  color: var(--ink-soft);
  font-size: 0.88rem;
  margin-top: 0.15rem;
}
body.pcr-redesign .practice .num {
  font-family: var(--serif);
  color: var(--green);
  font-weight: 560;
}
body.pcr-redesign .practice-foot {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.85rem 1.35rem 1.05rem;
  border-top: 1px solid var(--line);
  font-size: 0.78rem;
  color: var(--ink-soft);
}
body.pcr-redesign .practice-foot strong { color: var(--green); font-weight: 600; white-space: nowrap; }
@media (max-width: 600px) {
  body.pcr-redesign .practice-foot { flex-direction: column; gap: 0.3rem; }
}

/* Sections */
body.pcr-redesign main > .wp-block-group,
body.pcr-redesign main > section,
body.pcr-redesign #content > .wp-block-group,
body.pcr-redesign #content > section {
  padding: 4.4rem 0;
  margin: 0;
}
body.pcr-redesign .hero,
body.pcr-redesign section.hero,
body.pcr-redesign .wp-block-group.hero {
  padding: 3.4rem 0 3.8rem;
}

body.pcr-redesign .band-paper,
body.pcr-redesign .wp-block-group.band-paper {
  background: var(--paper) !important;
}
body.pcr-redesign .band-green,
body.pcr-redesign .wp-block-group.band-green {
  background: var(--green-wash) !important;
}
body.pcr-redesign .band-navy,
body.pcr-redesign section.band-navy,
body.pcr-redesign .wp-block-group.band-navy {
  background: var(--navy) !important;
  color: #E8E4D8;
  padding: 4.4rem 0 !important;
}
body.pcr-redesign .band-navy h2,
body.pcr-redesign .band-navy h3,
body.pcr-redesign .band-navy .wp-block-heading { color: #FFFCF7 !important; }
body.pcr-redesign .band-navy p,
body.pcr-redesign .band-navy a,
body.pcr-redesign .band-navy .wp-block-paragraph { color: #C9D0C8; }
body.pcr-redesign .band-navy a:hover { color: #FFFCF7; }
body.pcr-redesign .band-navy .kicker,
body.pcr-redesign .band-navy p.kicker { color: #8FCB9A; }
body.pcr-redesign .band-navy .kicker::before { background: #8FCB9A; }

body.pcr-redesign .section-head,
body.pcr-redesign .wp-block-group.section-head {
  max-width: 40rem;
  margin: 0 0 2.2rem !important;
  padding: 0;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none;
}
body.pcr-redesign .section-head h2,
body.pcr-redesign .section-head .wp-block-heading { margin-bottom: 0; }

/* Situation / solution */
body.pcr-redesign .split,
body.pcr-redesign .wp-block-columns.split {
  display: grid !important;
  gap: 0 !important;
  border-top: 1px solid var(--line);
  margin: 0;
  flex-wrap: unset;
}
@media (min-width: 800px) {
  body.pcr-redesign .split,
  body.pcr-redesign .wp-block-columns.split { grid-template-columns: 1fr 1fr; }
  body.pcr-redesign .split > .wp-block-column,
  body.pcr-redesign .wp-block-columns.split > .wp-block-column {
    width: auto !important;
    flex-basis: auto !important;
  }
  body.pcr-redesign .split-item:first-child,
  body.pcr-redesign .wp-block-column.split-item:first-child {
    padding: 2rem 2.6rem 0 0 !important;
    border-right: 1px solid var(--line);
  }
  body.pcr-redesign .split-item:last-child,
  body.pcr-redesign .wp-block-column.split-item:last-child {
    padding: 2rem 0 0 2.6rem !important;
  }
}
body.pcr-redesign .split-item,
body.pcr-redesign .wp-block-column.split-item { padding: 2rem 0 0; }
body.pcr-redesign .split-item h3,
body.pcr-redesign .split-item .wp-block-heading { font-size: 1.15rem; margin: 0 0 0.7rem; }
body.pcr-redesign .split-item p { font-size: 1.02rem; }

/* Service cards */
body.pcr-redesign .cards,
body.pcr-redesign .wp-block-columns.cards {
  display: grid !important;
  gap: 1rem !important;
  margin: 0;
  flex-wrap: unset;
}
@media (min-width: 800px) {
  body.pcr-redesign .cards,
  body.pcr-redesign .wp-block-columns.cards { grid-template-columns: 1fr 1fr; }
  body.pcr-redesign .cards > .wp-block-column,
  body.pcr-redesign .wp-block-columns.cards > .wp-block-column {
    width: auto !important;
    flex-basis: auto !important;
  }
}
body.pcr-redesign .card,
body.pcr-redesign .wp-block-column.card {
  background: var(--paper) !important;
  border: 1px solid var(--line) !important;
  border-radius: var(--radius);
  padding: 1.45rem 1.4rem 1.5rem !important;
  box-shadow: none;
}
body.pcr-redesign .card .num,
body.pcr-redesign .card p.num {
  font-family: var(--serif);
  font-size: 0.95rem;
  color: var(--green);
  display: block;
  margin: 0 0 0.45rem;
}
body.pcr-redesign .card h3,
body.pcr-redesign .card .wp-block-heading { font-size: 1.28rem; margin: 0 0 0.5rem; }
body.pcr-redesign .card p { margin-bottom: 0.9rem; font-size: 0.98rem; }
body.pcr-redesign .card ul,
body.pcr-redesign .card .wp-block-list {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 1px solid var(--line);
}
body.pcr-redesign .card li {
  padding: 0.48rem 0;
  border-bottom: 1px solid var(--line);
  color: var(--navy);
  font-size: 0.92rem;
  font-weight: 500;
  margin: 0;
}
body.pcr-redesign .card li:last-child { border-bottom: 0; padding-bottom: 0; }

/* Benefits */
body.pcr-redesign .benefit,
body.pcr-redesign article.benefit,
body.pcr-redesign .wp-block-group.benefit {
  display: grid !important;
  gap: 0.6rem 2rem;
  padding: 1.7rem 0 !important;
  margin: 0;
  border-top: 1px solid var(--line);
  border-bottom: 0;
  background: transparent !important;
  box-shadow: none;
  border-left: 0;
  border-right: 0;
  border-radius: 0;
}
body.pcr-redesign .benefit:last-of-type { border-bottom: 1px solid var(--line); }
@media (min-width: 800px) {
  body.pcr-redesign .benefit,
  body.pcr-redesign .wp-block-group.benefit {
    grid-template-columns: 16rem 1fr;
    align-items: start;
  }
}
body.pcr-redesign .benefit .num,
body.pcr-redesign .benefit p.num {
  font-family: var(--serif);
  font-size: 0.95rem;
  color: var(--green);
  display: block;
  margin: 0 0 0.25rem;
}
body.pcr-redesign .benefit h3,
body.pcr-redesign .benefit .wp-block-heading { margin: 0; font-size: 1.45rem; }
body.pcr-redesign .benefit p { font-size: 1rem; max-width: 46rem; }

/* About */
body.pcr-redesign .about-grid,
body.pcr-redesign .wp-block-columns.about-grid {
  display: grid !important;
  gap: 2.2rem !important;
  margin: 0;
  flex-wrap: unset;
}
@media (min-width: 860px) {
  body.pcr-redesign .about-grid,
  body.pcr-redesign .wp-block-columns.about-grid {
    grid-template-columns: 1fr 1fr;
    gap: 3.5rem !important;
    align-items: start;
  }
  body.pcr-redesign .about-grid > .wp-block-column,
  body.pcr-redesign .wp-block-columns.about-grid > .wp-block-column {
    width: auto !important;
    flex-basis: auto !important;
  }
}
body.pcr-redesign .stat-panel,
body.pcr-redesign .wp-block-group.stat-panel {
  background: var(--navy) !important;
  color: #E8E4D8;
  border-radius: var(--radius);
  padding: 1.8rem 1.6rem !important;
  margin: 0 0 1.4rem !important;
  border: 0 !important;
  box-shadow: none;
}
body.pcr-redesign .stat-panel .year,
body.pcr-redesign .stat-panel p.year {
  font-family: var(--serif);
  font-size: clamp(3.2rem, 7vw, 4.4rem);
  line-height: 0.9;
  color: #FFFCF7 !important;
  letter-spacing: -0.04em;
  margin: 0 0 0.6rem;
}
body.pcr-redesign .stat-panel p { color: #C9D0C8; margin: 0; }
body.pcr-redesign .stat-panel strong { color: #FFFCF7; font-weight: 600; }

/* Testimonials */
body.pcr-redesign .quotes,
body.pcr-redesign .wp-block-columns.quotes {
  display: grid !important;
  gap: 1rem !important;
  margin: 0;
  flex-wrap: unset;
}
@media (min-width: 860px) {
  body.pcr-redesign .quotes,
  body.pcr-redesign .wp-block-columns.quotes { grid-template-columns: 1fr 1fr 1fr; }
  body.pcr-redesign .quotes > .wp-block-column,
  body.pcr-redesign .wp-block-columns.quotes > .wp-block-column {
    width: auto !important;
    flex-basis: auto !important;
  }
}
body.pcr-redesign .quote,
body.pcr-redesign blockquote.quote,
body.pcr-redesign .wp-block-quote.quote {
  background: var(--paper) !important;
  border: 1px solid var(--line) !important;
  border-left: 1px solid var(--line) !important;
  border-radius: var(--radius);
  padding: 1.4rem 1.3rem 1.3rem !important;
  margin: 0;
  display: flex;
  flex-direction: column;
  box-shadow: none;
  quotes: none;
}
body.pcr-redesign .quote::before,
body.pcr-redesign .quote::after { content: none; }
body.pcr-redesign .quote p,
body.pcr-redesign .wp-block-quote.quote p {
  font-family: var(--serif);
  font-size: 1.05rem;
  line-height: 1.5;
  color: var(--ink);
  margin: 0 0 1.3rem;
  flex: 1;
}
body.pcr-redesign .who {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding-top: 1rem;
  border-top: 1px solid var(--line);
  margin: 0;
}
body.pcr-redesign .who img,
body.pcr-redesign .pcr-avatar img {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  object-fit: cover;
  flex: none;
}
body.pcr-redesign .who strong {
  display: block;
  color: var(--navy);
  font-size: 0.95rem;
  font-weight: 700;
}
body.pcr-redesign .who span {
  display: block;
  color: var(--ink-soft);
  font-size: 0.8rem;
}

/* Close / contact */
body.pcr-redesign .close-grid,
body.pcr-redesign .wp-block-columns.close-grid {
  display: grid !important;
  gap: 2rem !important;
  align-items: start;
  margin: 0;
  flex-wrap: unset;
}
@media (min-width: 800px) {
  body.pcr-redesign .close-grid,
  body.pcr-redesign .wp-block-columns.close-grid {
    grid-template-columns: 1.2fr 0.8fr;
    gap: 3rem !important;
  }
  body.pcr-redesign .close-grid > .wp-block-column,
  body.pcr-redesign .wp-block-columns.close-grid > .wp-block-column {
    width: auto !important;
    flex-basis: auto !important;
  }
}
body.pcr-redesign .contact-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
body.pcr-redesign .contact-list li {
  padding: 0.75rem 0;
  border-top: 1px solid rgba(247, 244, 238, 0.14);
  margin: 0;
}
body.pcr-redesign .contact-list li:first-child { border-top: 0; padding-top: 0; }
body.pcr-redesign .contact-list li:last-child { border-bottom: 1px solid rgba(247, 244, 238, 0.14); }
body.pcr-redesign .contact-list span {
  display: block;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #8FCB9A;
  margin-bottom: 0.2rem;
}
body.pcr-redesign .contact-list a,
body.pcr-redesign .contact-list b {
  color: #FFFCF7 !important;
  font-weight: 600;
  text-decoration: none;
  font-size: 1.05rem;
}
body.pcr-redesign .contact-list a:hover { color: #8FCB9A !important; }

@media (max-width: 600px) {
  body.pcr-redesign .band-navy .actions,
  body.pcr-redesign .band-navy .wp-block-buttons.actions { width: 100%; }
  body.pcr-redesign .band-navy .actions .pcr-btn,
  body.pcr-redesign .band-navy .actions .btn,
  body.pcr-redesign .band-navy .actions .wp-block-button,
  body.pcr-redesign .band-navy .actions .wp-block-button__link { width: 100%; }
}

/* Neutralise leftover theme wrappers on the blank homepage template */
body.pcr-redesign .ast-container,
body.pcr-redesign #page,
body.pcr-redesign .site-content {
  padding: 0;
  margin: 0;
  max-width: none;
  width: 100%;
}
body.pcr-redesign #ast-scroll-top { display: none !important; }

/* Equal-height testimonial cards: pin the attribution to the bottom */
body.pcr-redesign .quotes > .wp-block-column,
body.pcr-redesign .wp-block-columns.quotes > .wp-block-column {
  display: flex;
  flex-direction: column;
  height: auto;
  align-self: stretch;
}
body.pcr-redesign .quotes .quote,
body.pcr-redesign .wp-block-columns.quotes .wp-block-quote.quote {
  flex: 1 1 auto;
  height: 100%;
  width: 100%;
  box-sizing: border-box;
}


/* ==========================================================================
   Inner pages (v1.2.0) — Services CTA contrast, Contact chrome
   ========================================================================== */

/*
 * Services "Get Started" CTA sits on a photo banner. Astra colors all `a`
 * with a dark slate, and the label lives in an inner .uagb-button__link div,
 * so the pill can render as navy text on the theme-blue background.
 * Force white text on the redesign forest green, scoped to this page only.
 */
body.pcr-chrome.pcr-page-services a.uagb-buttons-repeater.wp-block-button__link {
  color: #FFFFFF !important;
  background-color: var(--green) !important;
  border-color: var(--green) !important;
  text-decoration: none !important;
}
body.pcr-chrome.pcr-page-services a.uagb-buttons-repeater.wp-block-button__link .uagb-button__link {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  background-color: transparent !important;
}
body.pcr-chrome.pcr-page-services a.uagb-buttons-repeater.wp-block-button__link:hover,
body.pcr-chrome.pcr-page-services a.uagb-buttons-repeater.wp-block-button__link:focus {
  color: #FFFFFF !important;
  background-color: var(--navy) !important;
  border-color: var(--navy) !important;
}
body.pcr-chrome.pcr-page-services a.uagb-buttons-repeater.wp-block-button__link:hover .uagb-button__link,
body.pcr-chrome.pcr-page-services a.uagb-buttons-repeater.wp-block-button__link:focus .uagb-button__link {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}

/* Contact: hide the in-content GTranslate shortcode; keep the header widget. */
body.pcr-chrome.pcr-page-contact .elementor-shortcode .gtranslate_wrapper,
body.pcr-chrome.pcr-page-contact .elementor-widget-shortcode .gtranslate_wrapper {
  display: none !important;
}

/* Belt-and-suspenders if the broken heading link is still in the markup. */
body.pcr-chrome.pcr-page-contact a[href="http://Cont"],
body.pcr-chrome.pcr-page-contact a[href="http://Cont/"],
body.pcr-chrome.pcr-page-contact a[href="https://Cont"],
body.pcr-chrome.pcr-page-contact a[href="https://Cont/"] {
  color: inherit;
  text-decoration: none;
  pointer-events: none;
  cursor: text;
}
