/* Three-step clinic timeline, using the original clinic photographs. */
body #your-first-visit.ffc-process {
  position:relative;isolation:isolate;overflow:hidden;
  padding:76px 28px 84px;
  background:radial-gradient(ellipse at 50% 0,#fff 0,#f2f9ff 58%,#edf7ff 100%);
  color:#003366;
}
body #your-first-visit.ffc-process::before {
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:var(--ffc-media-c9017c874781, url("images/process-waves.svg")) center/100% 100% no-repeat;
}
body #your-first-visit .ffc-process__header {position:relative;z-index:3;max-width:1000px;margin:0 auto 48px;text-align:center}
body #your-first-visit .ffc-process__eyebrow {
  display:flex;justify-content:center;align-items:center;gap:18px;margin:0 0 18px;
  color:#003366;font-size:13px;font-weight:700;line-height:1.6;letter-spacing:3px;text-transform:uppercase;
}
body #your-first-visit .ffc-process__eyebrow::before,
body #your-first-visit .ffc-process__eyebrow::after {content:"";width:36px;height:2px;background:#fe9933}
body #your-first-visit #our-process-heading {
  margin:0 0 16px;color:#003366;font-size:clamp(36px,4.8vw,56px);font-weight:700;
  line-height:1.08;letter-spacing:-1.7px;text-transform:none;
}
body #your-first-visit #our-process-heading span {color:#07549b}
body #your-first-visit .ffc-process__intro {margin:0;color:#5a6579;font-size:17px;line-height:1.65}
body #your-first-visit .ffc-process__timeline {position:relative;max-width:1240px;margin:0 auto}
body #your-first-visit .ffc-process__spine {
  position:absolute;z-index:2;top:-30px;left:50%;transform:translateX(-50%);
  width:240px;max-width:none;height:calc(100% + 46px);object-fit:fill;pointer-events:none;
  filter:saturate(.15) brightness(1.22) contrast(.92) drop-shadow(0 0 13px #9dd7ff);
}
body #your-first-visit .ffc-process__steps {display:grid;gap:28px;margin:0;padding:0;list-style:none}
body #your-first-visit .ffc-process__step {
  position:relative;display:grid;grid-template-columns:minmax(0,1fr) 88px minmax(0,1fr);
  column-gap:12px;min-height:410px;margin:0;padding:0;
}
body #your-first-visit .ffc-process__step:first-child {min-height:460px}
body #your-first-visit .ffc-process__card {
  position:relative;z-index:1;grid-column:1;grid-row:1;min-width:0;
  padding:32px;border:1px solid rgba(255,255,255,.9);border-radius:30px;
  background:rgba(255,255,255,.94);box-shadow:0 14px 38px #00336604;
}
body #your-first-visit .ffc-process__card-heading {display:flex;align-items:flex-start;gap:18px;margin-bottom:22px}
body #your-first-visit .ffc-process__icon {
  display:flex;justify-content:center;align-items:center;flex:0 0 74px;width:74px;height:74px;
  border-radius:50%;background:#e0f0ff;color:#003366;
}
body #your-first-visit .ffc-process__icon svg {width:39px;height:39px;display:block}
body #your-first-visit .ffc-process__card h3 {
  min-width:0;margin:0;color:#003366;font-size:clamp(24px,2.7vw,32px);
  font-weight:700;line-height:1.13;letter-spacing:-1px;text-transform:none;
}
body #your-first-visit .ffc-process__card p {margin:0 0 20px;color:#5a6579;font-size:16px;line-height:1.6;text-wrap:pretty}
body #your-first-visit .ffc-process__card p:last-child {margin-bottom:0}
body #your-first-visit .ffc-process__actions {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:24px}
body #your-first-visit .ffc-process__button {
  display:flex;align-items:center;justify-content:center;gap:8px;min-width:0;min-height:50px;padding:12px;
  border:1.5px solid #003366;border-radius:8px;font-size:15px;font-weight:700;line-height:1.4;
  text-align:center;text-decoration:none;white-space:nowrap;transition:background-color .18s,color .18s;
}
body #your-first-visit .ffc-process__button svg {flex-shrink:0;width:18px;height:18px}
body #your-first-visit .ffc-process__button--primary {color:#fff;background:#003366}
body #your-first-visit .ffc-process__button--secondary {color:#003366;background:transparent}
body #your-first-visit .ffc-process__button:hover {background:#00264d;color:#fff;border-color:#00264d}
body #your-first-visit .ffc-process__button:focus-visible {outline:3px solid #07549b;outline-offset:4px}
body #your-first-visit .ffc-process__marker {
  position:relative;z-index:4;grid-column:2;grid-row:1;align-self:start;justify-self:center;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  width:80px;height:80px;margin-top:48px;border:3px solid #fff;border-radius:50%;
  background:radial-gradient(circle at 35% 25%,#164f86,#003366 72%);
  box-shadow:0 0 0 4px #d9efff,0 5px 18px #00336620;color:#fff;
}
body #your-first-visit .ffc-process__marker::before {
  content:"";position:absolute;left:100%;top:50%;width:44px;height:2px;background:#07549b;
}
body #your-first-visit .ffc-process__marker::after {
  content:"";position:absolute;left:calc(100% + 40px);top:calc(50% - 6px);
  width:13px;height:13px;border:3px solid #fff;border-radius:50%;background:#07549b;
}
body #your-first-visit .ffc-process__number {font-size:29px;font-weight:700;line-height:1.05;letter-spacing:-1px}
body #your-first-visit .ffc-process__step-label {margin-top:3px;font-size:10px;font-weight:600;line-height:1;letter-spacing:1px;text-transform:uppercase}
body #your-first-visit .ffc-process__photo {
  position:relative;z-index:1;grid-column:3;grid-row:1;min-width:0;min-height:0;
  margin:0;overflow:hidden;border:4px solid #fff;border-radius:50px 26px 38px 68px;
  background:#e5eff7;box-shadow:0 12px 36px #00336607;
}
body #your-first-visit .ffc-process__photo img {position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:55% center}
body #your-first-visit .ffc-process__step:first-child .ffc-process__photo {aspect-ratio:4/3;align-self:center;width:100%}
body #your-first-visit .ffc-process__step--reverse .ffc-process__card {grid-column:3}
body #your-first-visit .ffc-process__step--reverse .ffc-process__photo {grid-column:1;border-radius:48px 30px 42px 30px}
body #your-first-visit .ffc-process__step--reverse .ffc-process__marker::before {left:auto;right:100%}
body #your-first-visit .ffc-process__step--reverse .ffc-process__marker::after {left:auto;right:calc(100% + 40px)}
body #your-first-visit .ffc-process__step:last-child .ffc-process__photo {border-radius:54px 30px 45px 72px}
body #your-first-visit .ffc-process__step:last-child .ffc-process__photo img {object-position:center 38%}
@media(max-width:1100px) and (min-width:768px){
  body #your-first-visit.ffc-process {padding:60px 28px 70px}
  body #your-first-visit .ffc-process__step {grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr);column-gap:10px}
  body #your-first-visit .ffc-process__card {padding:26px 24px}
  body #your-first-visit .ffc-process__card-heading {gap:14px}
  body #your-first-visit .ffc-process__icon {flex-basis:62px;width:62px;height:62px}
  body #your-first-visit .ffc-process__icon svg {width:33px;height:33px}
  body #your-first-visit .ffc-process__card h3 {font-size:clamp(25px,3vw,32px)}
  body #your-first-visit .ffc-process__card p {font-size:16px}
  body #your-first-visit .ffc-process__spine {width:200px}
  body #your-first-visit .ffc-process__button {font-size:13px;padding:12px 8px;gap:6px}
  body #your-first-visit .ffc-process__button svg {width:16px;height:16px}
  body #your-first-visit .ffc-process__marker {width:68px;height:68px}
  body #your-first-visit .ffc-process__number {font-size:26px}
  body #your-first-visit .ffc-process__marker::before {width:34px}
  body #your-first-visit .ffc-process__marker::after {left:calc(100% + 30px)}
  body #your-first-visit .ffc-process__step--reverse .ffc-process__marker::after {left:auto;right:calc(100% + 30px)}
}
@media(max-width:767px){
  body #your-first-visit.ffc-process {padding:52px 20px 56px}
  body #your-first-visit .ffc-process__header {margin-bottom:30px}
  body #your-first-visit .ffc-process__eyebrow {font-size:11px;letter-spacing:2px;gap:12px;margin-bottom:16px}
  body #your-first-visit #our-process-heading {font-size:clamp(30px,8vw,42px);line-height:1.12;letter-spacing:-1.1px}
  body #your-first-visit .ffc-process__intro {font-size:15px;line-height:1.65}
  body #your-first-visit .ffc-process__spine {display:none}
  body #your-first-visit .ffc-process__steps {gap:32px}
  body #your-first-visit .ffc-process__step,
  body #your-first-visit .ffc-process__step:first-child {display:flex;flex-direction:column;gap:16px;min-height:0}
  body #your-first-visit .ffc-process__card {order:0;padding:24px;border-radius:24px}
  body #your-first-visit .ffc-process__card-heading {display:block;margin-bottom:20px}
  body #your-first-visit .ffc-process__icon {width:58px;height:58px;margin-bottom:18px}
  body #your-first-visit .ffc-process__icon svg {width:32px;height:32px}
  body #your-first-visit .ffc-process__card h3 {font-size:26px;line-height:1.15;letter-spacing:-.7px}
  body #your-first-visit .ffc-process__card p {font-size:15px;line-height:1.7;margin-bottom:18px}
  body #your-first-visit .ffc-process__actions {max-width:none;margin-top:22px}
  body #your-first-visit .ffc-process__button {font-size:13px;min-height:50px;padding:12px 8px;gap:6px}
  body #your-first-visit .ffc-process__button svg {width:16px;height:16px}
  body #your-first-visit .ffc-process__marker {position:absolute;top:24px;right:24px;margin:0;width:58px;height:58px;box-shadow:0 0 0 3px #d9efff}
  body #your-first-visit .ffc-process__number {font-size:23px}
  body #your-first-visit .ffc-process__step-label {font-size:8px}
  body #your-first-visit .ffc-process__marker::before,
  body #your-first-visit .ffc-process__marker::after {display:none}
  body #your-first-visit .ffc-process__photo {order:1;width:100%;aspect-ratio:1.15;border-radius:30px 20px 30px 40px}
  body #your-first-visit .ffc-process__step--reverse .ffc-process__photo,
  body #your-first-visit .ffc-process__step:last-child .ffc-process__photo {border-radius:30px 20px 30px 40px}
}
@media(prefers-reduced-motion:reduce){body #your-first-visit .ffc-process__button {transition:none}}
