:root{--page-title-display:none;}/* Start custom CSS *//* ABOUTME: Hire in the US page CSS: built from the Hire in Latin America page (Gigi, 2026-10-09) without its time-zone section, so its section positions are one lower:
   2 Why hire, 3 screening, 4 how you pay, 5 pay table, 6 FAQ, last the CTA. */

/* Every rule is scoped under .elementor, the document wrapper. Elementor emits each Global Class as ".elementor .<label>" at (0,2,0) in a sheet
   that loads AFTER this one, so a rule that overrides a class on the same element is lifted to (0,3,0) by a doubled class or a longer path. Rules
   every page needs (arrow links in a stack, source lines, the table component, the callout's section) are the child theme's. The page has two tables and the component's
   markup carries no per-table class, so each is reached by what is its own: the time-zone table is the one inside the reveal group, the salary table the one in the ghost section.
   Columns are named by position for the same reason. */

/* ---------- Time-zone table ---------- */
/* The comparison is two short phrases per row ("Same clock as Central" against "Same clock as Mountain"), which the component keeps on one line until the frame is narrower than one;
   the places column is the long text, so it carries the wrapping: it wraps at 22rem on a wide frame and at half of a phone's, which leaves the first season column's edge showing
   beside the pinned offset. A phrase wraps only where it would not fit the strip left of the pinned offset (7rem, the offset's width), which is below about 360px. The offset and its heading ("UTC offset") never break. The two seasons are told apart the way weather is: the standard-time column's cells carry a cool tint and
   the daylight-time column's a warm one, each with a matching dot in its heading, while the heading band stays one pale colour across all four columns (the dots carry the season
   there). The two tints are mixed into the surface to the same distance from white (CIE Lab ΔE about 13, so each is clearly a colour and neither outweighs the other), and the
   text on them keeps its contrast. The cool season is an aqua (the periwinkle and the success green of the palette, mixed in OKLCH, so the blue-green keeps its chroma; mixed in sRGB it drifted to a muddy grey-green beside the gold), not the periwinkle: a pale periwinkle sits within ΔE 2 of the heading band
   (the mist ground), so the standard-time column merged with the header into one block; the aqua is ΔE 12.7 from the band and carries the warm tint's chroma within 0.01. */
/* UI kit gray 400 for the table frame (the wrapper) and every divider: the component draws them with these two tokens, set here on the wrapper's ancestor. */
.elementor .ffdh-reveal {
  --c-border: #CED4DA;
  --c-border-strong: #CED4DA;
}
.elementor .ffdh-reveal .ffdh-table {
  --tz-std: #E7ECFD; --tz-std-hover: #C6D3FA; --tz-std-dot: #7B96EE;
  --tz-day: #FBDAF3; --tz-day-hover: #F6C4E8; --tz-day-dot: #E74BAB;
}
.elementor .ffdh-reveal .ffdh-table thead th {
  background: #1C244B;
  color: #fff;
  border-color: #1C244B;
}
.elementor .ffdh-reveal .ffdh-table tbody th {
  font-size: var(--fs-h4);
  font-variant-numeric: tabular-nums;
}
.elementor .ffdh-reveal .ffdh-table :is(thead, tbody) th:first-child {
  white-space: nowrap;
}
.elementor .ffdh-reveal .ffdh-table :is(th, td) {
  vertical-align: baseline;
}
.elementor .ffdh-reveal .ffdh-table td:nth-child(3) {
  background: var(--tz-std);
}
.elementor .ffdh-reveal .ffdh-table td:nth-child(4) {
  background: var(--tz-day);
}
/* The component tints the row under the pointer ghost, which the season tints above would hide on two of its four cells; they deepen instead, so the whole row answers. */
.elementor .ffdh-reveal .ffdh-table tbody tr:hover > :nth-child(3) {
  background: var(--tz-std-hover);
}
.elementor .ffdh-reveal .ffdh-table tbody tr:hover > :nth-child(4) {
  background: var(--tz-day-hover);
}
.elementor .ffdh-reveal .ffdh-table thead th:nth-child(n + 3)::before {
  content: "";
  display: inline-block;
  width: 0.625rem;
  height: 0.625rem;
  margin-inline-end: var(--sp-2);
  border-radius: 50%;
  background: var(--tz-std-dot);
}
.elementor .ffdh-reveal .ffdh-table thead th:nth-child(4)::before {
  background: var(--tz-day-dot);
}
/* 20rem is the width of the six place names on two lines ("Mexico City, Costa Rica, Guatemala," is the longest line, 268px of the 272px of text it leaves); at 22rem the column held about 60px of
   empty space on its second line and the table, 982px wide, scrolled by a sliver in a 954px frame at 1024px. 57cqi is the most a phone's frame can give the places and still leave the first season column's edge beside the pinned
   offset (any more and the edge disappears at 320px). */
.elementor .ffdh-reveal .ffdh-table td:nth-child(2) {
  max-width: min(20rem, 57cqi);
}
/* The table's point is comparing the two seasons, so where it scrolls on a tablet the standard-time column is whole and the daylight column shows beside it. The columns left of the
   daylight one hold the 125px offset, the places and the 256px standard-time column, and the daylight column needs the peek's 16px (the component's MIN_PEEK) and 3px more in hand,
   so the places give up what the frame cannot spare: 25rem is those 125 + 256 + 19px. At the narrowest tablet (768px, a 698px frame) the places are 298px, not 320px; from 787px
   they are the 20rem above, and from 1020px the table fits. */
@media (min-width: 768px) {
  .elementor .ffdh-reveal .ffdh-table td:nth-child(2) {
    max-width: min(20rem, 100cqi - 25rem);
  }
}
/* 26rem is the component's own cap for a text cell; the 7rem taken off the frame is the pinned offset's width; the 10rem floor keeps a phrase from being narrower than "Same clock as". */
.elementor .ffdh-reveal .ffdh-table td:nth-child(n + 3) {
  max-width: max(10rem, min(26rem, 100cqi - 7rem));
}

/* ---------- Pay statement ---------- */
/* The statement is the page's one definition, a few sentences, so the plate keeps a reading measure instead of the container's width, and its text is the lead size. */
.elementor .ffdh-callout.ffdh-callout {
  max-width: 48rem;
}
.elementor .ffdh-callout.ffdh-callout p {
  margin: 0;
  font-size: var(--fs-lead);
  line-height: 1.6;
}

/* ---------- Salary table ---------- */
/* The two money columns are figures: end-aligned so the digits stack, tabular so they line up, ink and a step heavier. A range is one line (the table scrolls before it wraps one);
   a role name, pinned beside them, wraps within the pinned column's share of the frame. */
.elementor .ffdh-section--ghost .ffdh-table :is(th, td):nth-child(n + 2) {
  text-align: end;
}
.elementor .ffdh-section--ghost .ffdh-table td {
  white-space: nowrap;
}
.elementor .ffdh-section--ghost .ffdh-table td:nth-child(n + 2) {
  color: var(--c-ink-900);
  font-variant-numeric: tabular-nums;
  font-weight: 600;
}

/* ---------- Hero heading ---------- */
/* The h1 carries the home's weight and tight tracking, and "flat" gets the brand-pink underline. The accent is the LAST span: a fact span can be the h1's first child. */
.elementor[data-elementor-type="wp-page"] .ffdh-hero h1 {
  font-weight: 800;
  letter-spacing: -.025em;
}
.elementor[data-elementor-type="wp-page"] .ffdh-hero h1 > span:last-child {
  position: relative;
  white-space: nowrap;
}
.elementor[data-elementor-type="wp-page"] .ffdh-hero h1 > span:last-child::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -.02em;
  height: .1em;
  border-radius: 3px;
  background: var(--c-fuchsia-600, #BE1A6E);
}


/* ---------- Time-zone intro ---------- */
/* Wide enough for the intro to run on two lines on a desktop frame; it wraps further on narrower ones. */


/* Sections 2 and 3 are both plain: drop the top padding of 3 so the two paddings do not stack into one big gap. */

/* ---------- Time zones: interactive LATAM map (shortcode [ffdh_latam_map], mu-plugin ffdh-latam-timezone-map.php) ---------- */
/* Map on the left (covered countries lavender light #C6D3FA, fuchsia #BE1A80 on hover or tap), panel on the right: country list, then that country's standard / daylight rows in the table's own lavender and fuchsia-light tints. */
/* Fixed row height on desktop: the panel changes height between the list and a country, and the map is centred in the row, so a growing panel used to shift the map under the cursor (hover flicker). */
.ffdh-latam-map { display: grid; grid-template-columns: 1.3fr 1fr; gap: 48px; align-items: center; width: 100%; min-height: 680px; }
.ffdh-latam-map [hidden] { display: none !important; }
.ffdh-latam-map p, .ffdh-latam-map ul { margin: 0; padding: 0; }
.ffdh-latam-map__map svg { display: block; width: 100%; max-height: 560px; height: auto; margin: 0 auto; }
.ffdh-latam-map__map path { fill: #E7ECFD; stroke: #fff; stroke-width: .8; transition: fill .15s; }
.ffdh-latam-map__map path.is-covered { fill: #C6D3FA; cursor: pointer; outline: none; }
.ffdh-latam-map__map path.is-covered:hover,
.ffdh-latam-map__map path.is-covered:focus-visible,
.ffdh-latam-map__map path.is-on,
.ffdh-latam-map__map path.is-hover { fill: #BE1A80; }
.ffdh-latam-map__panel { min-width: 0; background: #fff; border: 1px solid #CED4DA; border-radius: 22px; padding: 28px; }
.ffdh-latam-map__label { margin: 0 0 14px; font-size: .78rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: #BE1A80; }
.ffdh-latam-map__list { list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 2px 12px; padding-top: 14px !important; border-top: 1px solid #E6E6E6; }
.ffdh-latam-map__list button { display: flex; align-items: center; gap: 10px; width: 100%; padding: 8px 10px; border: 0; border-radius: 8px; background: none; font: inherit; font-size: .95rem; color: #1F2630; text-align: left; cursor: pointer; transition: background .12s; }
.ffdh-latam-map .ffdh-latam-map__list button:hover, .ffdh-latam-map .ffdh-latam-map__list button:focus-visible { background: #E7ECFD; color: #1F2630; }
.ffdh-latam-map__list img, .ffdh-latam-map__head img { flex: none; object-fit: cover; border-radius: 2px; }
.ffdh-latam-map__back { border: 0; background: none; font: inherit; font-size: .9rem; font-weight: 500; color: #1F2630; text-decoration: underline; cursor: pointer; }
.ffdh-latam-map .ffdh-latam-map__back { padding: 4px 8px; margin-left: -8px; border-radius: 6px; transition: background .12s, color .12s; }
.ffdh-latam-map .ffdh-latam-map__back:hover, .ffdh-latam-map .ffdh-latam-map__back:focus-visible { background: #BE1A80; color: #fff; }
.ffdh-latam-map__head { display: flex; align-items: center; gap: 14px; margin: 14px 0 18px; padding-bottom: 18px; border-bottom: 1px solid #E6E6E6; }
.ffdh-latam-map__name { font-size: 1.5rem; font-weight: 800; line-height: 1.2; letter-spacing: -.02em; color: #1C244B; }
.ffdh-latam-map__utc { margin-top: 2px !important; font-size: .95rem; color: #54595F; }
.ffdh-latam-map__cities { display: grid; gap: 8px; }
.ffdh-latam-map__city { display: flex; justify-content: space-between; gap: 16px; font-size: .95rem; color: #54595F; }
.ffdh-latam-map__city strong { font-weight: 700; color: #1C244B; }
.ffdh-latam-map__overlap { margin: 18px 0 22px; padding-top: 18px; border-top: 1px solid #E6E6E6; }
.ffdh-latam-map__bar { height: 8px; border-radius: 8px; background: #E6E6E6; overflow: hidden; }
.ffdh-latam-map__bar span { display: block; height: 100%; border-radius: 8px; background: #BE1A80; }
.ffdh-latam-map__overlap p { margin-top: 10px !important; font-size: .9rem; color: #54595F; }
.ffdh-latam-map__rows { display: grid; gap: 12px; }
.ffdh-latam-map__row { padding: 16px 20px; border-radius: 14px; }
.ffdh-latam-map__row--std { background: #E7ECFD; }
.ffdh-latam-map__row--day { background: #FBDAF3; }
.ffdh-latam-map__when { font-size: .9rem; font-weight: 600; color: #1C244B; }
.ffdh-latam-map__when::before { content: ""; display: inline-block; width: 10px; height: 10px; margin-right: 8px; border-radius: 50%; background: #7B96EE; }
.ffdh-latam-map__row--day .ffdh-latam-map__when::before { background: #E74BAB; }
.ffdh-latam-map__when span { display: block; padding-left: 18px; font-size: .85rem; font-weight: 400; color: #54595F; }
.ffdh-latam-map__gap { margin-top: 10px !important; font-size: 1.15rem; font-weight: 700; color: #1C244B; }
.ffdh-latam-map__note { font-size: 1.02rem; line-height: 1.6; color: #54595F; }
@media (max-width: 900px) {
  .ffdh-latam-map { grid-template-columns: 1fr; gap: 24px; min-height: 0; }
  .ffdh-latam-map__map svg { max-height: 420px; }
}
@media (max-width: 480px) {
  .ffdh-latam-map__list { grid-template-columns: 1fr; }
  .ffdh-latam-map__panel { padding: 22px 18px; }
}

/* ---------- Why hire in LATAM: six benefit cards ---------- */
/* Section 3. Same card language as the English and pay sections: white, gray 400 frame, fuchsia light icon tile with a fuchsia #BE1A80 line icon. */
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(2) > div > div:nth-of-type(1) {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  padding: 0;
  width: 100%;
}
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(2) > div > div:nth-of-type(1) > div {
  display: block;
  min-width: 0;
  border-radius: 22px;
  padding: 28px;
  background: #fff;
  border: 1px solid #CED4DA;
}
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(2) > div > div:nth-of-type(1) > div > p:first-child {
  width: 48px;
  height: 48px;
  margin: 0 0 18px;
  border-radius: 50%;
  background: #FBDAF3;
  position: relative;
  font-size: 0;
}
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(2) > div > div:nth-of-type(1) > div > p:first-child::before {
  content: "";
  position: absolute;
  inset: 12px;
  background: #BE1A80;
  -webkit-mask: var(--why-icon) center / contain no-repeat;
  mask: var(--why-icon) center / contain no-repeat;
}
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(2) > div > div:nth-of-type(1) > div > h3 {
  margin: 0;
  font-size: 1.15rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -.01em;
  color: var(--c-ink-900, #1F2630);
}
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(2) > div > div:nth-of-type(1) > div > p:last-child {
  margin: 8px 0 0;
  font-size: .95rem;
  line-height: 1.6;
  color: #54595F;
}
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(2) > div > div:nth-of-type(1) > div > p:last-child strong { font-weight: 700; color: #1C244B; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(2) > div > div:nth-of-type(1) > div:nth-of-type(1) { --why-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpolyline points='12 6 12 12 16 14'/%3E%3C/svg%3E"); }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(2) > div > div:nth-of-type(1) > div:nth-of-type(2) { --why-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E"); }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(2) > div > div:nth-of-type(1) > div:nth-of-type(3) { --why-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 9a2 2 0 0 1-2 2H6l-4 4V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2z'/%3E%3Cpath d='M18 9h2a2 2 0 0 1 2 2v11l-4-4h-6a2 2 0 0 1-2-2v-1'/%3E%3C/svg%3E"); }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(2) > div > div:nth-of-type(1) > div:nth-of-type(4) { --why-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='8' r='6'/%3E%3Cpath d='M18.09 10.37A6 6 0 1 1 10.34 18'/%3E%3Cpath d='M7 6h1v4'/%3E%3Cpath d='m16.71 13.88.7.71-2.82 2.82'/%3E%3C/svg%3E"); }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(2) > div > div:nth-of-type(1) > div:nth-of-type(5) { --why-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='14' x='2' y='7' rx='2'/%3E%3Cpath d='M16 21V5a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v16'/%3E%3C/svg%3E"); }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(2) > div > div:nth-of-type(1) > div:nth-of-type(6) { --why-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='6'/%3E%3Cpath d='M15.477 12.89 17 22l-5-3-5 3 1.523-9.11'/%3E%3C/svg%3E"); }
@media (max-width: 900px) {
  .elementor[data-elementor-type="wp-page"] > section:nth-of-type(2) > div > div:nth-of-type(1) { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
  .elementor[data-elementor-type="wp-page"] > section:nth-of-type(2) > div > div:nth-of-type(1) { grid-template-columns: 1fr; }
}

/* ---------- English assessment and How you pay: information cards ---------- */
/* The two sections keep the page's own head (h2, lead) and add cards on the UI kit palette: lavender #E7ECFD, fuchsia #BE1A80, fuchsia light #FBDAF3, charcoal #54595F, gray 400 #CED4DA for frames.
   Sections are reached by position (4 English, 5 pay; 3 is "Why hire in LATAM"): the countries section sits after the FAQ so it cannot shift them. */
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(3) > div > div:nth-of-type(1),
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(3) > div > div:nth-of-type(2),
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) {
  display: grid;
  gap: 20px;
  padding: 0;
  width: 100%;
}
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(3) > div > div:nth-of-type(1) { grid-template-columns: repeat(3, 1fr); }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(3) > div > div:nth-of-type(2),
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) { grid-template-columns: 1fr 1fr; }

/* the step cards, the two panels and the two pay cards share a base */
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(3) > div > div > div,
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div {
  display: block;
  min-width: 0;
  border-radius: 22px;
  padding: 28px;
  background: #fff;
  border: 1px solid #CED4DA;
}
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(3) > div > div > div > h3,
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div > h3 {
  margin: 0;
  font-size: 1.15rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -.01em;
  color: var(--c-ink-900, #1F2630);
}
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(3) > div > div > div > p {
  margin: 8px 0 0;
  font-size: .95rem;
  line-height: 1.6;
  color: #54595F;
}

/* English: numbered steps */
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(3) > div > div:nth-of-type(1) > div > p:first-child {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  margin: 0 0 18px;
  border-radius: 50%;
  background: #FBDAF3;
  color: #BE1A80;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
}
/* English: the two panels (lavender, white) */
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(3) > div > div:nth-of-type(2) > div { padding: 24px 28px; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(3) > div > div:nth-of-type(2) > div:first-child {
  background: #E7ECFD;
  border-color: #E7ECFD;
}
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(3) > div > div:nth-of-type(2) > div > h3 { font-size: 1.05rem; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(3) > div > div:nth-of-type(2) > div > p { font-size: .92rem; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(3) > div > p:last-child { margin: 0; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(3) > div > p:last-child a {
  color: var(--c-ink-900, #1F2630);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 5px;
  text-decoration-thickness: 2px;
  text-decoration-color: var(--c-fuchsia-600, #BE1A80);
}
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(3) > div > p:last-child a:hover { color: var(--c-fuchsia-600, #BE1A80); }

/* Pay: the pricing-card language. Left: what you pay us (white card, big navy price, label/value rows, button). Right: what you arrange yourself (offwhite #F7F9FE card). */
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) { align-items: stretch; gap: 24px; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div { border-radius: 32px; padding: 40px; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div:first-child {
  background: #fff;
  border: 1px solid #E6E6E6;
  box-shadow: 0 2px 6px rgba(28, 36, 75, .06), 0 28px 60px -28px rgba(28, 36, 75, .28);
}
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div:last-child { background: #F7F9FE; border-color: #E6E6E6; color: #1F2630; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div > h3 { display: flex; align-items: center; gap: 12px; font-size: 1.1rem; font-weight: 600; color: #54595F; letter-spacing: 0; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div:first-child > h3::before {
  content: ""; flex: none; width: 24px; height: 24px; background: #BE1A80;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M12%2021s-7-6.2-7-11.5A7%207%200%200112%202.5a7%207%200%20017%207C19%2014.8%2012%2021%2012%2021z'/%3E%3Ccircle%20cx='12'%20cy='9.5'%20r='2.5'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M12%2021s-7-6.2-7-11.5A7%207%200%200112%202.5a7%207%200%20017%207C19%2014.8%2012%2021%2012%2021z'/%3E%3Ccircle%20cx='12'%20cy='9.5'%20r='2.5'/%3E%3C/svg%3E") center / contain no-repeat;
}
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div:last-child > h3 { color: #1F2630; font-size: 1.35rem; font-weight: 700; letter-spacing: -.01em; }
/* price */
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div:first-child > p:nth-of-type(1) { margin: 28px 0 0; font-size: clamp(3rem, 5.4vw, 4.25rem); font-weight: 800; line-height: 1; letter-spacing: -.03em; color: #1C244B; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div:first-child > p:nth-of-type(2) { margin: 10px 0 0; font-size: 1.1rem; color: #54595F; }
/* rows */
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div:first-child > div { display: grid; gap: 14px; margin-top: 28px; padding: 28px 0 0; border-top: 1px solid #E6E6E6; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div:first-child > div > div { display: flex; justify-content: space-between; align-items: baseline; gap: 20px; padding: 0; border: 0; background: none; border-radius: 0; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div:first-child > div > div > p { margin: 0; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div:first-child > div > div > p:first-child { font-size: 1.05rem; color: #54595F; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div:first-child > div > div > p:last-child { text-align: right; font-size: 1.1rem; font-weight: 700; color: #1C244B; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div:first-child > div > div > p:last-child > span:not(.ffdh-fact) { display: block; margin-top: 2px; font-size: .85rem; font-weight: 400; color: #54595F; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div:first-child > p:nth-of-type(3) { margin: 22px 0 0; font-size: .92rem; color: #54595F; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div:first-child > a { display: flex; width: 100%; margin-top: 28px; justify-content: center; }
/* the offwhite card */
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div:last-child > div { margin-top: 28px; padding: 28px 0 0; border: 0; border-top: 1px solid #E6E6E6; border-radius: 0; background: none; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div:last-child > div:nth-of-type(1) { margin-top: 24px; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div:last-child > div > p { margin: 0; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div:last-child > div > p:first-child { font-size: .78rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: #BE1A80; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div:last-child > div > p:last-child { margin-top: 10px; font-size: 1.02rem; line-height: 1.6; color: #54595F; }

@media (max-width: 900px) {
  .elementor[data-elementor-type="wp-page"] > section:nth-of-type(3) > div > div:nth-of-type(1),
  .elementor[data-elementor-type="wp-page"] > section:nth-of-type(3) > div > div:nth-of-type(2),
  .elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) { grid-template-columns: 1fr; }
  .elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > div:nth-of-type(1) > div { padding: 28px 24px; }
}

/* The legal note under the pay cards is centred. */
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(4) > div > p:last-child { align-self: stretch; width: 100%; max-width: none; text-align: center; padding-top: 12px; font-size: 1.0625rem; }

/* ---------- FAQ: the pricing page's two columns ---------- */
/* Left: big navy heading (no bar), intro and the link to every answer; right: the accordion. The section is white so it alternates with the salary bands above it. */
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(6) > div {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 72px;
  align-items: start;
}
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(6) > div > div:first-child { display: block; padding: 0; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(6) h2 {
  margin: 0;
  max-width: 12ch;
  font-size: clamp(2.2rem, 4.2vw, 3.25rem);
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: -.025em;
  color: #1C244B;
}
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(6) h2::before, .elementor[data-elementor-type="wp-page"] > section:nth-of-type(6) h2::after { content: none; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(6) > div > div:first-child > p:nth-of-type(1) { margin: 20px 0 0; max-width: 30ch; font-size: 1.15rem; line-height: 1.6; color: #54595F; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(6) > div > div:first-child > p:nth-of-type(2) { margin: 28px 0 0; }
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(6) > div > div:first-child > p:nth-of-type(2) a {
  color: var(--c-ink-900, #1F2630);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 5px;
  text-decoration-thickness: 2px;
  text-decoration-color: var(--c-fuchsia-600, #BE1A80);
}
.elementor[data-elementor-type="wp-page"] > section:nth-of-type(6) > div > div:first-child > p:nth-of-type(2) a:hover { color: var(--c-fuchsia-600, #BE1A80); }
@media (max-width: 900px) {
  .elementor[data-elementor-type="wp-page"] > section:nth-of-type(6) > div { grid-template-columns: 1fr; gap: 40px; }
}

/* ---------- Final CTA: navy card, offer on the left, three proof points on the right ---------- */
/* Last section of the page, so it is reached with :last-of-type (the countries section, when its fact exists, sits before it). Navy #1C244B, fuchsia light #FBDAF3 icons, lavender light #C6D3FA text. Buttons keep the site's own classes. */
.elementor[data-elementor-type="wp-page"] > section:last-of-type { padding-top: 0; padding-bottom: 104px; }
.elementor[data-elementor-type="wp-page"] > section:last-of-type > div > div { display: grid; grid-template-columns: 1.2fr 1fr; gap: 56px; align-items: center; padding: 64px 56px; border-radius: 32px; background: #1C244B; color: #fff; }
.elementor[data-elementor-type="wp-page"] > section:last-of-type > div > div > div:first-child { display: block; padding: 0; }
.elementor[data-elementor-type="wp-page"] > section:last-of-type h2 { margin: 0; max-width: 16ch; font-size: clamp(2rem, 3.6vw, 2.9rem); font-weight: 800; line-height: 1.1; letter-spacing: -.025em; color: #fff; text-align: left; }
.elementor[data-elementor-type="wp-page"] > section:last-of-type h2::before, .elementor[data-elementor-type="wp-page"] > section:last-of-type h2::after { content: none; }
.elementor[data-elementor-type="wp-page"] > section:last-of-type > div > div > div:first-child > p { max-width: 40ch; margin: 18px 0 0; font-size: 1.1rem; line-height: 1.6; color: #C6D3FA; text-align: left; }
.elementor[data-elementor-type="wp-page"] > section:last-of-type > div > div > div:first-child > div { margin-top: 32px; justify-content: flex-start; }
.elementor[data-elementor-type="wp-page"] > section:last-of-type > div > div > div:last-child { display: grid; gap: 0; padding: 0; }
.elementor[data-elementor-type="wp-page"] > section:last-of-type > div > div > div:last-child > div { position: relative; display: block; padding: 22px 0 22px 68px; border: 0; border-top: 1px solid rgba(198, 211, 250, .2); background: none; }
.elementor[data-elementor-type="wp-page"] > section:last-of-type > div > div > div:last-child > div:first-child { border-top: 0; padding-top: 0; }
.elementor[data-elementor-type="wp-page"] > section:last-of-type > div > div > div:last-child > div:last-child { padding-bottom: 0; }
.elementor[data-elementor-type="wp-page"] > section:last-of-type > div > div > div:last-child > div::before { content: ""; position: absolute; left: 0; top: 18px; width: 48px; height: 48px; border-radius: 50%; background: rgba(251, 218, 243, .12); }
.elementor[data-elementor-type="wp-page"] > section:last-of-type > div > div > div:last-child > div:first-child::before { top: -4px; }
.elementor[data-elementor-type="wp-page"] > section:last-of-type > div > div > div:last-child > div::after { content: ""; position: absolute; left: 12px; top: 30px; width: 24px; height: 24px; background: #FBDAF3; -webkit-mask: var(--cta-icon) center / contain no-repeat; mask: var(--cta-icon) center / contain no-repeat; }
.elementor[data-elementor-type="wp-page"] > section:last-of-type > div > div > div:last-child > div:first-child::after { top: 8px; }
.elementor[data-elementor-type="wp-page"] > section:last-of-type > div > div > div:last-child > div:nth-of-type(1) { --cta-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E"); }
.elementor[data-elementor-type="wp-page"] > section:last-of-type > div > div > div:last-child > div:nth-of-type(2) { --cta-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpolyline points='12 6 12 12 16 14'/%3E%3C/svg%3E"); }
.elementor[data-elementor-type="wp-page"] > section:last-of-type > div > div > div:last-child > div:nth-of-type(3) { --cta-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 9a2 2 0 0 1-2 2H6l-4 4V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2z'/%3E%3Cpath d='M18 9h2a2 2 0 0 1 2 2v11l-4-4h-6a2 2 0 0 1-2-2v-1'/%3E%3C/svg%3E"); }
.elementor[data-elementor-type="wp-page"] > section:last-of-type > div > div > div:last-child h3 { margin: 0; font-size: 1.15rem; font-weight: 700; line-height: 1.3; color: #fff; }
.elementor[data-elementor-type="wp-page"] > section:last-of-type > div > div > div:last-child p { margin: 6px 0 0; font-size: .98rem; line-height: 1.55; color: #C6D3FA; }
@media (max-width: 900px) {
  .elementor[data-elementor-type="wp-page"] > section:last-of-type > div > div { grid-template-columns: 1fr; gap: 40px; padding: 48px 28px; border-radius: 24px; }
}


/* ---------- Pay table on phones ---------- */
/* Three columns (role, median pay, 20% agency fee) fit a 320-390px frame when the cells keep a phone's padding, so the agency fee, the column the table exists for, never hides behind the scroll. */
@media (max-width: 640px) {
  .elementor .ffdh-section--ghost .ffdh-table.ffdh-table :is(th, td) {
    padding: 12px 8px;
    font-size: .82rem;
  }
}
@media (max-width: 400px) {
  .elementor .ffdh-section--ghost .ffdh-table.ffdh-table :is(th, td) {
    padding: 10px 6px;
    font-size: .78rem;
  }
}/* End custom CSS */