body.page-id-14505,
body.page-id-2655 {
  --rrb-modern-blue: #066aab;
  --rrb-modern-blue-deep: #102f48;
  --rrb-modern-green: #00b84f;
  --rrb-modern-soft: #f4f8fb;
  --rrb-modern-ink: #17384d;
  --rrb-modern-muted: #536b7b;
  --rrb-modern-line: #d9e4ea;
  --rrb-modern-shadow: 0 20px 54px rgba(16, 47, 72, 0.12);
  --rrb-modern-shell: min(1175px, calc(100% - 64px));
}

body.page-id-14505 .rrb-offer-intro,
body.page-id-2655 .rrb-vacancy {
  background: linear-gradient(135deg, #fff 0%, #f3f8fb 100%) !important;
}

body.page-id-14505 .rrb-offer-intro {
  padding: clamp(32px, 4vw, 48px) 0 !important;
}

body.page-id-14505 .rrb-global-contact {
  padding-block: clamp(32px, 4vw, 48px) !important;
}

body.page-id-14505 .rrb-offer-intro .et_pb_row,
body.page-id-2655 .rrb-vacancy .et_pb_row {
  width: var(--rrb-modern-shell) !important;
  max-width: 1175px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

body.page-id-14505 .rrb-offer-intro__heading-row {
  margin-bottom: clamp(34px, 5vw, 58px) !important;
}

body.page-id-14505 .rrb-offer-intro__heading,
body.page-id-14505 .rrb-offer-intro__copy,
body.page-id-14505 .rrb-offer-intro__benefits,
body.page-id-14505 .rrb-offer-form__column,
body.page-id-2655 .rrb-vacancy__column {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
}

body.page-id-14505 .rrb-offer-eyebrow,
body.page-id-2655 .rrb-vacancy-eyebrow {
  margin: 0 0 12px !important;
  color: var(--rrb-modern-green) !important;
  font-family: "Titillium Web", sans-serif !important;
  font-size: 0.82rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  line-height: 1.3 !important;
  text-transform: uppercase;
}

body.page-id-14505 .rrb-offer-intro h1,
body.page-id-2655 .rrb-vacancy h1 {
  max-width: 14ch;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--rrb-modern-blue-deep) !important;
  font-family: "Titillium Web", sans-serif !important;
  font-size: clamp(2.7rem, 5.5vw, 5.1rem) !important;
  font-weight: 700 !important;
  letter-spacing: -0.035em !important;
  line-height: 1.03 !important;
}

body.page-id-2655 .rrb-vacancy h1 {
  max-width: 22ch;
  font-size: clamp(2.7rem, 4.8vw, 4.7rem) !important;
}

body.page-id-14505 .rrb-offer-lead,
body.page-id-2655 .rrb-vacancy-lead {
  max-width: 64ch;
  margin: 24px 0 0 !important;
  color: var(--rrb-modern-blue) !important;
  font-family: "Titillium Web", sans-serif !important;
  font-size: clamp(1.18rem, 2vw, 1.48rem) !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
}

body.page-id-14505 .rrb-offer-intro__grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(340px, 0.95fr);
  align-items: start;
  gap: clamp(34px, 6vw, 76px);
}

body.page-id-14505 .rrb-offer-intro__copy p {
  max-width: 62ch;
  margin: 0 0 18px !important;
  color: var(--rrb-modern-muted) !important;
  font-family: "Titillium Web", sans-serif !important;
  font-size: 1.12rem !important;
  line-height: 1.72 !important;
}

body.page-id-14505 .rrb-offer-intro__copy .et_pb_button_module_wrapper {
  display: flex !important;
  margin: 28px 0 0 !important;
}

body.page-id-14505 .rrb-offer-intro__benefits .et_pb_text_inner {
  padding: clamp(26px, 4vw, 38px);
  border: 1px solid var(--rrb-modern-line);
  border-radius: 18px;
  background: #fff;
  box-shadow: var(--rrb-modern-shadow);
}

body.page-id-14505 .rrb-offer-intro__benefits h2 {
  margin: 0 0 20px !important;
  color: var(--rrb-modern-blue-deep) !important;
  font-family: "Titillium Web", sans-serif !important;
  font-size: clamp(1.65rem, 3vw, 2.25rem) !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
}

body.page-id-14505 .rrb-offer-benefits {
  display: grid;
  gap: 12px;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.page-id-14505 .rrb-offer-benefits li {
  position: relative;
  min-height: 28px;
  padding-left: 32px;
  color: var(--rrb-modern-ink) !important;
  font-family: "Titillium Web", sans-serif !important;
  font-size: 1.04rem !important;
  font-weight: 600 !important;
  line-height: 1.55 !important;
}

body.page-id-14505 .rrb-offer-benefits li::before {
  position: absolute;
  top: 0.38em;
  left: 2px;
  width: 13px;
  height: 7px;
  content: "";
  border-bottom: 3px solid var(--rrb-modern-green);
  border-left: 3px solid var(--rrb-modern-green);
  transform: rotate(-45deg);
}

body.page-id-14505 .rrb-offer-form {
  background: var(--rrb-modern-soft) !important;
}

body.page-id-14505 .rrb-offer-form .et_pb_row {
  max-width: 900px !important;
}

body.page-id-14505 .rrb-offer-form__heading {
  max-width: 720px;
  margin: 0 auto 34px !important;
  text-align: center;
}

body.page-id-14505 .rrb-offer-form__heading h2 {
  font-size: clamp(2.1rem, 4vw, 3.7rem) !important;
}

body.page-id-14505 .rrb-offer-form__heading p:last-child {
  margin: 16px auto 0 !important;
}

body.page-id-2655 .rrb-vacancy {
  padding: clamp(64px, 7vw, 104px) 0 !important;
}

body.page-id-2655 .rrb-vacancy-layout,
body.page-id-2655 .rrb-vacancy-layout :is(p, li, a) {
  font-family: "Titillium Web", sans-serif !important;
}

body.page-id-2655 .rrb-vacancy-hero {
  padding-bottom: clamp(44px, 6vw, 74px);
}

body.page-id-2655 .rrb-vacancy-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 28px;
}

body.page-id-2655 .rrb-vacancy-meta span {
  padding: 8px 13px;
  border: 1px solid #c8dbe5;
  border-radius: 999px;
  background: #fff;
  color: var(--rrb-modern-blue-deep);
  font-weight: 700;
}

body.page-id-2655 .rrb-vacancy-grid,
body.page-id-2655 .rrb-vacancy-story {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  margin-bottom: 22px;
}

body.page-id-2655 .rrb-vacancy-card,
body.page-id-2655 .rrb-vacancy-panel,
body.page-id-2655 .rrb-vacancy-contact {
  padding: clamp(28px, 4vw, 42px);
  border: 1px solid var(--rrb-modern-line);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 34px rgba(16, 47, 72, 0.08);
}

body.page-id-2655 .rrb-vacancy-layout h2 {
  margin: 0 0 22px !important;
  padding: 0 !important;
  color: var(--rrb-modern-blue-deep) !important;
  font-family: "Titillium Web", sans-serif !important;
  font-size: clamp(1.75rem, 3vw, 2.55rem) !important;
  font-weight: 700 !important;
  letter-spacing: -0.025em !important;
  line-height: 1.12 !important;
}

body.page-id-2655 .rrb-vacancy-card ul {
  display: grid;
  gap: 12px;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.page-id-2655 .rrb-vacancy-card li {
  position: relative;
  padding-left: 28px;
  color: var(--rrb-modern-muted) !important;
  font-size: 1.02rem !important;
  line-height: 1.58 !important;
}

body.page-id-2655 .rrb-vacancy-card li::before {
  position: absolute;
  top: 0.58em;
  left: 2px;
  width: 9px;
  height: 9px;
  content: "";
  border-radius: 50%;
  background: var(--rrb-modern-green);
}

body.page-id-2655 .rrb-vacancy-panel p,
body.page-id-2655 .rrb-vacancy-contact p {
  margin: 0 !important;
  color: var(--rrb-modern-muted) !important;
  font-size: 1.08rem !important;
  line-height: 1.72 !important;
}

body.page-id-2655 .rrb-vacancy-contact {
  margin-top: 22px;
  border-color: transparent;
  background: var(--rrb-modern-blue-deep);
  box-shadow: var(--rrb-modern-shadow);
}

body.page-id-2655 .rrb-vacancy-contact h2,
body.page-id-2655 .rrb-vacancy-contact p {
  color: #fff !important;
}

body.page-id-2655 .rrb-vacancy-contact .rrb-vacancy-eyebrow {
  color: #bff7d6 !important;
}

body.page-id-2655 .rrb-vacancy-contact a {
  color: #fff !important;
  font-weight: 700;
  text-decoration: underline;
  text-decoration-color: var(--rrb-modern-green);
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}

body.page-id-2655 .rrb-vacancy-contact a:hover {
  color: #bff7d6 !important;
}

body.page-id-9748 .rrb-camera-copy-link {
  color: inherit !important;
  font-weight: 700;
  text-decoration: underline;
  text-decoration-color: rgba(0, 184, 79, 0.65);
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

body.page-id-9748 .rrb-camera-copy-link:hover {
  color: #066aab !important;
  text-decoration-color: currentColor;
}

body.page-id-9748 .rrb-camera-sector-list a {
  display: flex;
  min-height: 50px;
  align-items: center;
  border: 1px solid var(--rrb-camera-line);
  border-radius: 14px;
  padding: 10px 15px;
  background: #fff;
  color: var(--rrb-camera-navy) !important;
  font-weight: 600;
  text-decoration: none;
  transition: border-color 180ms ease, color 180ms ease, background-color 180ms ease;
}

body.page-id-9748 .rrb-camera-sector-list a:hover {
  border-color: var(--rrb-camera-blue);
  background: #f3f8fb;
  color: var(--rrb-camera-blue) !important;
}

@media (max-width: 980px) {
  body.page-id-14505,
  body.page-id-2655 {
    --rrb-modern-shell: min(100% - 48px, 760px);
  }

  body.page-id-14505 .rrb-offer-intro__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 767px) {
  body.page-id-14505,
  body.page-id-2655 {
    --rrb-modern-shell: calc(100% - 36px);
  }

  body.page-id-14505 .rrb-offer-intro h1,
  body.page-id-2655 .rrb-vacancy h1 {
    font-size: clamp(2.35rem, 12vw, 3.6rem) !important;
  }

  body.page-id-2655 .rrb-vacancy-grid,
  body.page-id-2655 .rrb-vacancy-story {
    grid-template-columns: minmax(0, 1fr);
  }

  body.page-id-2655 .rrb-vacancy-card,
  body.page-id-2655 .rrb-vacancy-panel,
  body.page-id-2655 .rrb-vacancy-contact {
    padding: 26px 22px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.page-id-9748 .rrb-camera-sector-list a {
    transition: none;
  }
}

/* Compact rhythm on the other approved modern pages. */
body.home .et-l--post .et_pb_section {
  padding-top: clamp(34px, 4vw, 56px) !important;
  padding-bottom: clamp(34px, 4vw, 56px) !important;
}

@media (max-width: 767px) {
  body.home .et-l--post .et_pb_section {
    padding-top: 34px !important;
    padding-bottom: 34px !important;
  }
}
