/* Refinement layer for the GHL export. Loaded after site.css.
   Keeps the page's layout, Trajan/Frutiger type and blush/slate palette;
   only tightens corners, motion, form consistency, focus and small details. */

:root {
  --pcs-slate: #53667b;
  --pcs-slate-deep: #3f4f60;
  --pcs-blush: #cbb1a8;
  --pcs-ink: #1d1d1f;
  --pcs-radius: 6px;
  --pcs-radius-sm: 4px;
  --pcs-ease-out: cubic-bezier(.16, 1, .3, 1);
  --pcs-frutiger: "customhl-6aa256c129d4abf4cf911342-FrutigerLTStd-Roman", "Frutiger", "Helvetica Neue", Arial, sans-serif;
  --pcs-trajan: "customhl-6aa256c41f33e377ddfddd5b-TrajanPro-Bold", "Trajan Pro", Georgia, serif;
}

/* ---------- Corners: cards, panels, quote boxes, photos ---------- */
#col-3s9U3tNz6T, #col-bXLt0glxLK, #col-YVydaOT1N0,
#col-B_o7Wl4R1n, #col-3PVZydG1cK, #col-jggKhXncjM,   /* procedure cards */
#col-DAZ32cuVdJ,                                       /* results card */
#col-FKazy1gF3t, #col-WOm5jdXDBh, #col-S9vUgn9sck, #col-tUBCWG2EKi, /* credential cards */
#col-FXp7WZcu6w, #col-obhL6sef6Z,                     /* candidacy + next steps */
.sub-heading-8TPDFchwE4, .sub-heading-8WSSJLwLEO,     /* quote boxes */
#_builder-form {
  border-radius: var(--pcs-radius) !important;
}
.c-image img, .image-container img { border-radius: var(--pcs-radius-sm) !important; }
.pcs-results a { border-radius: var(--pcs-radius-sm) !important; }

/* ---------- Motion: one calm entrance instead of full-height linear slides ---------- */
@keyframes pcs-rise {
  from { opacity: 0; transform: translate3d(0, 18px, 0); }
  to   { opacity: 1; transform: none; }
}
[class*="animate__fadeIn"], [class*="animate__zoomIn"] {
  animation: pcs-rise .7s var(--pcs-ease-out) both !important;
}
/* The shimmering red headline gradient stays, but still. */
.heading strong { animation: none !important; background-position: 0% 50% !important; }

@media (prefers-reduced-motion: reduce) {
  [class*="animate__fadeIn"], [class*="animate__zoomIn"] { animation: none !important; }
  [data-animation-class] { opacity: 1 !important; }
  .consult-btn, .consult-btn::after, .box-hover, .rad-box-hover { transition: none !important; }
  html { scroll-behavior: auto !important; }
}
html { scroll-behavior: smooth; }

/* ---------- Mobile hero: bring the CTA into the first screen ---------- */
@media (max-width: 767px) {
  #image-ihhjOkZoeA img {
    max-height: 300px; width: auto !important; margin: 0 auto;
    object-fit: contain;
  }
}

/* ---------- Buttons: keyboard focus that the export removed ---------- */
button.consult-btn:focus-visible,
#_builder-form button[type="submit"]:focus-visible,
a:focus-visible {
  outline: 3px solid var(--pcs-blush) !important;
  outline-offset: 3px !important;
}
button.consult-btn:active { transform: translateY(0) scale(.98); }

/* ---------- Form: one type family, calmer spacing, legible submit ---------- */
#_builder-form,
#_builder-form label,
#_builder-form .label-alignment,
#_builder-form input,
#_builder-form select,
#_builder-form textarea,
#_builder-form .multiselect,
#_builder-form .text-element,
#_builder-form .text-element span,
#_builder-form .pcs-consent {
  font-family: var(--pcs-frutiger) !important;
}
#_builder-form h2, #_builder-form h2 span {
  font-family: var(--pcs-trajan) !important;
  font-weight: 700 !important;
  letter-spacing: .01em;
  text-transform: uppercase;
  color: var(--pcs-ink);
  font-size: clamp(22px, 5.4vw, 30px) !important;
  line-height: 1.12 !important;
  text-wrap: balance;
}
#_builder-form h1 span { line-height: 1.5; }
#_builder-form label { line-height: 1.35 !important; color: #344054; }
#_builder-form input.form-control,
#_builder-form .pcs-select,
#_builder-form textarea {
  border-radius: var(--pcs-radius-sm) !important;
  border-color: #d9cdc8 !important;
  min-height: 46px;
  font-size: 16px !important;               /* prevents iOS zoom on focus */
  caret-color: var(--pcs-slate);
  transition: border-color .15s ease, box-shadow .15s ease;
}
#_builder-form input.form-control:focus,
#_builder-form .pcs-select:focus,
#_builder-form textarea:focus {
  border-color: var(--pcs-slate) !important;
  box-shadow: 0 0 0 3px rgba(83, 102, 123, .16) !important;
  outline: none !important;
}
#_builder-form input::placeholder, #_builder-form textarea::placeholder { color: #8a8f98; }
#_builder-form button[type="submit"] {
  background: var(--pcs-slate) !important;    /* was #7388A0: 3.4:1 with white, now 5.9:1 */
  border-radius: var(--pcs-radius-sm) !important;
  font-family: var(--pcs-frutiger) !important;
  letter-spacing: .04em;
  min-height: 52px;
  transition: background-color .2s ease;
}
#_builder-form button[type="submit"]:hover { background: var(--pcs-slate-deep) !important; }
#_builder-form button[type="submit"]:disabled { opacity: .6; cursor: progress; }
#_builder-form .pcs-error { border-color: #b42318 !important; box-shadow: 0 0 0 3px rgba(180, 35, 24, .12) !important; }
#_builder-form .pcs-msg { font-family: var(--pcs-frutiger) !important; }
@media (max-width: 767px) {
  #_builder-form { padding: 24px 18px 16px !important; }
  #_builder-form button[type="submit"] { width: 100% !important; }
}

/* ---------- Browser surfaces ---------- */
::selection { background: rgba(203, 177, 168, .55); color: var(--pcs-ink); }
html { scrollbar-color: #b9a39b #f3eeeb; }
a { text-underline-offset: 3px; }

/* ---------- Contrast: "What happens next" card keeps its blush gradient,
   text moves from white (~2:1) to espresso (~7:1) ---------- */
#col-obhL6sef6Z h1, #col-obhL6sef6Z h2, #col-obhL6sef6Z p,
#col-obhL6sef6Z h1 *, #col-obhL6sef6Z h2 *, #col-obhL6sef6Z p * {
  color: #33241f !important;
}

/* Form subtitle sits in an oversized heading; give it body leading. */
#_builder-form h1, #_builder-form h1 * { line-height: 1.45 !important; }

/* ---------- De-templating: keep the design, drop the generated-looking effects ---------- */

/* Headline emphasis: solid dark grey instead of gradient-clipped red text. */
.heading strong {
  background: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  -webkit-text-fill-color: currentColor !important;
  color: #4a4a4a !important;
}

/* Callouts: hairline frame instead of a thick colored left bar. */
.sub-heading-SUkTEaVPFy, .sub-heading-RU-4zM1I85 {
  border: 1px solid rgba(83, 102, 123, .28) !important;
}

/* Buttons: flat slate, no glow halo or shine sweep. */
.consult-btn { background: var(--pcs-slate) !important; }
.consult-btn::before, .consult-btn::after { content: none !important; display: none !important; }
.consult-btn:hover {
  background: var(--pcs-slate-deep) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 16px rgba(30, 40, 52, .18) !important;
}

/* Procedure cards: matte slate instead of a diagonal sheen; quiet hover. */
#col-3s9U3tNz6T, #col-bXLt0glxLK, #col-YVydaOT1N0,
#col-B_o7Wl4R1n, #col-3PVZydG1cK, #col-jggKhXncjM {
  background-image: linear-gradient(180deg, #5d7186 0%, #53667b 100%) !important;
}
.box-hover:hover, .rad-box-hover:hover { transform: translateY(-3px) !important; }
.box-hover:hover .image-container img,
.rad-box-hover:hover .image-container img { scale: 1 !important; transform: none !important; }

/* Form subtitle lives in an h1 sized for a headline; size it like the text it holds. */
#_builder-form h1 { font-size: 16px !important; margin: 6px 0 0 !important; }
#_builder-form h2 span { white-space: normal; hyphens: none; }

/* A required field that was skipped stays red even while focused. */
#_builder-form .pcs-select.pcs-error,
#_builder-form .pcs-select.pcs-error:focus,
#_builder-form input.form-control.pcs-error:focus {
  border-color: #b42318 !important;
  box-shadow: 0 0 0 3px rgba(180, 35, 24, .14) !important;
}

/* ---------- Version B only (giveaway.html, body[data-variant="b"]) ---------- */
body[data-variant="b"] #heading-IFeXl6hBuC h1 strong {
  display: block;
  font-size: 1.7em;
  line-height: 1;
  margin-bottom: .08em;
}
body[data-variant="b"] #image-rSBUB2Ty0Z img { width: 112px !important; height: auto !important; }
@media (max-width: 767px) {
  body[data-variant="b"] #image-rSBUB2Ty0Z img { width: 76px !important; }
}
body[data-variant="b"] .pcs-enter {
  margin: 10px auto 0; max-width: 34em;
  font-family: var(--pcs-frutiger); font-size: 15px; line-height: 1.45; color: #3a3a3a;
}
body[data-variant="b"] .pcs-enter a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }

/* Longer CTA labels wrap on phones; keep wrapped lines tight. */
#_builder-form button[type="submit"] p,
#_builder-form button[type="submit"] span,
.consult-btn .main-heading-button { line-height: 1.25 !important; }
