/* /website-development only. Loaded by app/(site)/website-development/page.jsx,
   not part of bundle.css. Every rule is scoped to .wd-page / wd-* classes so
   nothing here can affect any other page. */

.wd-page {
  --wd-primary: #004265;
  --wd-primary-dark: #002c44;
  --wd-accent: #bccf02;
  --wd-blue: #0a6fb5;
  --wd-text: #0f1b2d;
  --wd-muted: #5b6678;
  --wd-border: #e4e9f0;
  --wd-tint: #f5f8fb;
  --wd-radius: 14px;
  --wd-shadow: 0 10px 30px rgba(0, 66, 101, 0.08);
  font-family: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
  color: var(--wd-text);
  background: #fff;
  overflow-x: hidden;
}

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

.wd-container { width: 100%; max-width: 1240px; margin: 0 auto; padding: 0 24px; }

/* ---------- Shared type & buttons ---------- */
.wd-eyebrow {
  display: inline-flex; align-items: center; gap: 8px;
  margin: 0 0 10px; font-size: 12px; font-weight: 700; letter-spacing: .08em;
  text-transform: uppercase; color: var(--wd-blue);
}
.wd-eyebrow::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--wd-accent); }
.wd-eyebrow--light { color: var(--wd-accent); }
.wd-h2 { margin: 0 0 10px; font-size: clamp(24px, 3vw, 34px); font-weight: 800; line-height: 1.2; color: var(--wd-text); }
.wd-lead { margin: 0; font-size: 15px; line-height: 1.65; color: var(--wd-muted); max-width: 680px; }

.wd-section { padding: 72px 0; }
.wd-section--tint { background: var(--wd-tint); }
.wd-section__head { margin-bottom: 36px; }
.wd-section__head--row { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; flex-wrap: wrap; }

.wd-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  padding: 13px 24px; border-radius: 8px; border: 1.5px solid transparent;
  font-size: 15px; font-weight: 600; line-height: 1.2; text-decoration: none;
  cursor: pointer; transition: background .2s, color .2s, border-color .2s, transform .2s;
}
.wd-btn:hover { transform: translateY(-1px); }
.wd-btn--primary { background: var(--wd-primary); color: #fff; }
.wd-btn--primary:hover { background: var(--wd-primary-dark); color: #fff; }
.wd-btn--outline { background: #fff; color: var(--wd-primary); border-color: var(--wd-primary); }
.wd-btn--outline:hover { background: var(--wd-primary); color: #fff; }
.wd-btn--light { background: var(--wd-accent); color: var(--wd-primary-dark); }
.wd-btn--light:hover { background: #d3e620; color: var(--wd-primary-dark); }
.wd-btn--ghost { background: transparent; color: #fff; border-color: rgba(255, 255, 255, .55); font-family: inherit; }
.wd-btn--ghost:hover { background: rgba(255, 255, 255, .1); color: #fff; }
.wd-btn--block { width: 100%; }

.wd-link {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 14px; font-weight: 600; color: var(--wd-blue); text-decoration: none; white-space: nowrap;
}
.wd-link:hover { color: var(--wd-primary); text-decoration: underline; }
.wd-link--sm { font-size: 13px; }

/* ---------- Hero ---------- */
.wd-hero {
  position: relative; overflow: hidden; padding: 64px 0 80px;
  background:
    radial-gradient(700px 420px at 8% 0%, rgba(10, 111, 181, .08), transparent 70%),
    radial-gradient(600px 400px at 40% 100%, rgba(188, 207, 2, .10), transparent 70%),
    linear-gradient(180deg, #f6f9fc 0%, #ffffff 100%);
}
/* Navy/lime swoosh behind the form (cropped from the brand banner) */
.wd-hero__backdrop {
  position: absolute; top: 0; right: 0; bottom: 0; width: 44%;
  background: url("/img/website-development/hero-swoosh.webp") left center / cover no-repeat;
  border-top-left-radius: 55% 70%; border-bottom-left-radius: 20% 30%;
}
.wd-hero__dots {
  position: absolute; width: 132px; height: 104px; pointer-events: none;
  background-image: radial-gradient(rgba(0, 66, 101, .22) 2px, transparent 2.5px);
  background-size: 22px 22px;
}
.wd-hero__dots--a { top: 28px; left: 46%; }
.wd-hero__dots--b { bottom: 40px; left: 2%; background-image: radial-gradient(rgba(188, 207, 2, .7) 2px, transparent 2.5px); }

/* Full-cover background image + readability overlay (dark hero) */
.wd-hero { background: #003a5a; }
.wd-hero__bg, .wd-hero__bg img { position: absolute; inset: 0; width: 100%; height: 100%; }
.wd-hero__bg img { display: block; object-fit: cover; object-position: left center; }
.wd-hero__overlay {
  position: absolute; inset: 0; pointer-events: none;
  background:
    linear-gradient(0deg, rgba(0, 30, 48, .7) 0%, rgba(0, 30, 48, 0) 38%),
    linear-gradient(90deg, rgba(0, 30, 48, .86) 0%, rgba(0, 30, 48, .74) 46%, rgba(0, 30, 48, .3) 60%, rgba(0, 30, 48, 0) 72%);
}

.wd-hero__grid {
  position: relative; z-index: 1; display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
  grid-template-areas: "content form" "visual form";
  column-gap: 64px; row-gap: 36px; align-items: start;
}
.wd-hero__content { grid-area: content; }
.wd-hero__visual { grid-area: visual; }
.wd-hero__form { grid-area: form; }

.wd-pill {
  display: inline-flex; align-items: center; gap: 10px; margin: 0 0 22px; padding: 8px 18px;
  border-radius: 999px; background: #fff; border: 1.5px solid #e3ebab;
  box-shadow: 0 6px 18px rgba(0, 66, 101, .06);
  font-size: 13px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--wd-primary);
}
.wd-pill span { width: 9px; height: 9px; border-radius: 50%; background: var(--wd-accent); box-shadow: 0 0 0 4px rgba(188, 207, 2, .2); }

.wd-hero__title {
  margin: 0; font-size: clamp(32px, 3.7vw, 50px); font-weight: 800; line-height: 1.12;
  letter-spacing: -1.2px; color: #0d2a40;
}
.wd-hero__accent {
  display: inline-flex; align-items: center; gap: 12px;
  background: linear-gradient(90deg, #7a9400 0%, #a4ba00 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.wd-hero__trend { flex: 0 0 auto; }
.wd-hero__bar {
  display: block; width: 84px; height: 4px; margin: 18px 0 20px; border-radius: 4px;
  background: linear-gradient(90deg, var(--wd-accent) 0 60%, #e4ebb0 60% 100%);
}
.wd-hero__text { margin: 0 0 28px; font-size: 17px; line-height: 1.7; color: var(--wd-muted); max-width: 580px; }

.wd-hero__features {
  list-style: none; margin: 0 0 32px; padding: 0;
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 28px; max-width: 600px;
}
.wd-hero__features li { display: flex; align-items: center; gap: 14px; }
.wd-hero__features strong { display: block; font-size: 15px; font-weight: 700; color: #0d2a40; line-height: 1.3; }
.wd-hero__features small { display: block; font-size: 13px; color: var(--wd-muted); margin-top: 2px; }
.wd-hero__ficon {
  flex: 0 0 48px; width: 48px; height: 48px; border-radius: 14px;
  display: inline-flex; align-items: center; justify-content: center;
  box-shadow: 0 8px 20px rgba(0, 66, 101, .08);
}
.wd-tone--blue { background: #e7f1fb; color: #1d6fd1; }
.wd-tone--navy { background: #e4edf3; color: var(--wd-primary); }
.wd-tone--green { background: #eef5d3; color: #5f7a00; }
.wd-tone--orange { background: #fff0e3; color: #e0701b; }
.wd-tone--purple { background: #f1ebfd; color: #7c3aed; }
.wd-tone--teal { background: #e2f5f2; color: #0f8f84; }

.wd-hero__actions { display: flex; flex-wrap: wrap; gap: 14px; margin-bottom: 34px; }
.wd-btn--lg { padding: 16px 28px; font-size: 16px; border-radius: 10px; }
.wd-btn--primary.wd-btn--lg { box-shadow: 0 12px 26px rgba(0, 66, 101, .25); }
.wd-btn--lime-outline { background: #fff; color: var(--wd-primary); border: 2px solid var(--wd-accent); }
.wd-btn--lime-outline:hover { background: var(--wd-accent); color: var(--wd-primary-dark); }

.wd-hero__stats { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 0; }
.wd-hero__stats li { display: flex; align-items: center; gap: 12px; padding: 0 28px; border-left: 1px solid var(--wd-border); }
.wd-hero__stats li:first-child { padding-left: 0; border-left: 0; }
.wd-hero__sicon {
  flex: 0 0 46px; width: 46px; height: 46px; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center;
  background: #f2f6d3; color: #6f8800;
}
.wd-hero__stats strong { display: block; font-size: 24px; font-weight: 800; color: #0d2a40; line-height: 1.1; }
.wd-hero__stats small { display: block; font-size: 13px; color: var(--wd-muted); }

/* Device mockup + floating chips */
.wd-hero__visual { position: relative; max-width: 640px; }
.wd-hero__visual img {
  display: block; width: 100%; height: auto; aspect-ratio: 1200 / 747;
  border-radius: 22px; box-shadow: 0 30px 60px rgba(0, 42, 68, .22);
}
.wd-chip {
  position: absolute; display: inline-flex; align-items: center; gap: 8px; padding: 9px 14px 9px 9px;
  border-radius: 12px; background: rgba(255, 255, 255, .96); box-shadow: 0 12px 28px rgba(0, 42, 68, .18);
  font-size: 13px; font-weight: 700; color: #0d2a40; white-space: nowrap;
  animation: wd-float 5s ease-in-out infinite;
}
.wd-chip__icon { width: 30px; height: 30px; border-radius: 9px; display: inline-flex; align-items: center; justify-content: center; }
.wd-chip--a { top: 12%; left: -22px; }
.wd-chip--b { top: -16px; right: 18%; animation-delay: -1.6s; }
.wd-chip--c { bottom: 10%; right: -20px; animation-delay: -3.2s; }
@keyframes wd-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }

/* Form card (wraps the existing ContactForm) */
.wd-hero__form {
  position: relative; scroll-margin-top: 110px; margin-top: 8px;
  padding: 44px 38px 34px; border-radius: 24px; background: #fff;
  border: 1px solid rgba(255, 255, 255, .8);
  box-shadow: 0 34px 80px rgba(0, 32, 52, .25);
}
.wd-hero__form-badge {
  position: absolute; top: -30px; right: 36px; width: 68px; height: 68px; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--wd-accent); color: var(--wd-primary-dark);
  box-shadow: 0 0 0 7px rgba(188, 207, 2, .25), 0 14px 30px rgba(0, 42, 68, .2);
}
.wd-hero__form-title { margin: 0; padding-right: 60px; font-size: clamp(24px, 2.4vw, 32px); font-weight: 800; line-height: 1.18; letter-spacing: -.6px; color: #0d2a40; }
.wd-hero__form-title span {
  background: linear-gradient(90deg, #7a9400 0%, #a4ba00 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.wd-hero__form .wd-hero__bar { margin: 14px 0 16px; }
.wd-hero__form-sub { margin: 0 0 22px; font-size: 15px; line-height: 1.6; color: var(--wd-muted); }
/* Scoped look tweaks for the shared form inside this card only */
.wd-hero__form .cf { padding: 0; }
.wd-hero__form .cf-heading:empty { display: none; }
.wd-hero__form .cf-privacy { background: #f5f8e1; border-radius: 12px; padding: 14px 16px; }
.wd-hero__form .cf-loading-placeholder { min-height: 520px !important; }

/* Light text on the dark cover background */
.wd-hero .wd-pill { background: rgba(255, 255, 255, .1); border-color: rgba(188, 207, 2, .55); color: #fff; box-shadow: none; backdrop-filter: blur(4px); }
.wd-hero .wd-hero__title { color: #fff; }
.wd-hero .wd-hero__accent { background-image: linear-gradient(90deg, #bccf02 0%, #dbe96a 100%); }
.wd-hero .wd-hero__text { color: rgba(255, 255, 255, .82); }
.wd-hero .wd-hero__features strong { color: #fff; }
.wd-hero .wd-hero__features small { color: rgba(255, 255, 255, .68); }
.wd-hero .wd-btn--primary { background: var(--wd-accent); color: var(--wd-primary-dark); }
.wd-hero .wd-btn--primary:hover { background: #d3e620; color: var(--wd-primary-dark); }
.wd-hero .wd-btn--lime-outline { background: rgba(255, 255, 255, .06); color: #fff; }
.wd-hero .wd-btn--lime-outline:hover { background: var(--wd-accent); color: var(--wd-primary-dark); }
.wd-hero .wd-hero__stats li { border-left-color: rgba(255, 255, 255, .2); }
.wd-hero .wd-hero__stats li:first-child { border-left: 0; }
.wd-hero .wd-hero__stats strong { color: #fff; }
.wd-hero .wd-hero__stats small { color: rgba(255, 255, 255, .7); }
.wd-hero .wd-hero__sicon { background: rgba(188, 207, 2, .16); color: var(--wd-accent); }
/* Desktop: the laptop/phone are in the background image, so no device card */
@media (min-width: 1200px) {
  /* .wd-hero { padding: 72px 0 88px; }
  .wd-hero__grid { grid-template-areas: "content form"; align-items: center; } */
  .wd-hero { padding: 40px 0 64px; }
  .wd-hero__grid { grid-template-areas: "content form"; align-items: start; }
  .wd-hero__form { margin-top: 32px; }
  .wd-hero__visual { display: none; }
}

@media (prefers-reduced-motion: reduce) { .wd-chip { animation: none; } }

@media (max-width: 1199px) {
  .wd-hero { padding: 32px 0 56px; }
  .wd-hero__backdrop { display: none; }
  .wd-hero__bg img { object-position: left top; }
  .wd-hero__overlay { background: rgba(0, 30, 48, .45); }
  .wd-hero__grid { grid-template-columns: 1fr; grid-template-areas: "content" "form" "visual"; row-gap: 48px; }
  .wd-hero__form { max-width: 720px; width: 100%; }
  .wd-hero__visual { margin: 0 auto; }
}
@media (max-width: 767px) {
  .wd-hero { padding: 32px 0 48px; }
  .wd-hero__dots { display: none; }
  .wd-pill { font-size: 11px; padding: 7px 14px; margin-bottom: 16px; }
  .wd-hero__title { letter-spacing: -.6px; }
  .wd-hero__trend { width: 36px; height: 24px; }
  .wd-hero__text { font-size: 15px; }
  .wd-hero__features { gap: 14px 12px; }
  .wd-hero__features strong { font-size: 13px; }
  .wd-hero__features small { font-size: 12px; }
  .wd-hero__ficon { flex-basis: 40px; width: 40px; height: 40px; border-radius: 11px; }
  .wd-hero__actions .wd-btn { flex: 1 1 100%; }
  .wd-hero__stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
  .wd-hero__stats li { flex-direction: column; align-items: flex-start; gap: 6px; padding: 0 0 0 10px; }
  .wd-hero__sicon { flex-basis: 36px; width: 36px; height: 36px; }
  .wd-hero__stats strong { font-size: 19px; }
  .wd-hero__stats small { font-size: 12px; }
  .wd-hero__form { padding: 40px 18px 24px; border-radius: 18px; }
  .wd-hero__form-badge { width: 54px; height: 54px; top: -24px; right: 20px; }
  .wd-chip { font-size: 11px; padding: 6px 10px 6px 6px; }
  .wd-chip__icon { width: 24px; height: 24px; }
  .wd-chip--a { left: 6px; top: 6%; }
  .wd-chip--b { display: none; }
  .wd-chip--c { right: 6px; bottom: 6%; }
}
@media (max-width: 420px) {
  .wd-hero__features { grid-template-columns: 1fr; }
}

/* ---------- Recognition ---------- */
.wd-recog { position: relative; overflow: hidden; background: linear-gradient(180deg, #0a4a6e 0%, #003654 100%); color: #fff; }
.wd-recog__top { position: relative; padding: 64px 0 120px; }
.wd-recog__shape { position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: block; }
.wd-recog__dots {
  position: absolute; width: 180px; height: 120px; pointer-events: none;
  background-image: radial-gradient(rgba(0, 66, 101, .14) 2px, transparent 2.5px); background-size: 20px 20px;
}
.wd-recog__dots--l { top: 70px; left: 6%; }
.wd-recog__dots--r { top: 40px; right: 6%; }
.wd-recog__head { position: relative; z-index: 1; text-align: center; }
.wd-recog__pill {
  display: inline-flex; align-items: center; gap: 10px; margin: 0 0 18px; padding: 9px 22px;
  border-radius: 999px; background: #fbfde9; border: 1.5px solid #e3ebab;
  font-size: 14px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--wd-primary);
}
.wd-recog__pill svg { color: #a4ba00; fill: #bccf02; }
.wd-recog__title { margin: 0; font-size: clamp(26px, 3.4vw, 44px); font-weight: 800; line-height: 1.15; letter-spacing: -1px; color: #0d2a40; }
.wd-recog__title span {
  background: linear-gradient(90deg, #7a9400 0%, #a4ba00 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.wd-recog__bar {
  display: block; width: 84px; height: 4px; margin: 16px auto 18px; border-radius: 4px;
  background: linear-gradient(90deg, var(--wd-accent) 0 50%, var(--wd-primary) 50% 100%);
}
.wd-recog__text { margin: 0 auto 30px; max-width: 760px; font-size: 17px; line-height: 1.65; color: var(--wd-muted); }
.wd-recog__cards { display: flex; justify-content: center; flex-wrap: wrap; gap: 24px; }
/* GoodFirms / Clutch images are already card-shaped, so no extra frame */
.wd-recog__card {
  display: flex; align-items: center; justify-content: center; height: 80px;
  transition: transform .2s;
}
.wd-recog__card:hover { transform: translateY(-3px); }
.wd-recog__card img { display: block; height: 80px; width: auto; max-width: 100%; filter: drop-shadow(0 12px 22px rgba(0, 42, 68, .16)); }
.wd-recog__card--boxed {
  width: 320px; padding: 10px 22px; border-radius: 12px; background: #fff;
  border: 1px solid var(--wd-border); box-shadow: 0 14px 34px rgba(0, 42, 68, .14);
}
.wd-recog__card--boxed img { height: 58px; filter: none; }

.wd-recog__bottom { position: relative; z-index: 1; padding-top: 8px; padding-bottom: 64px; }
.wd-recog__label {
  display: flex; align-items: center; gap: 24px; margin: 0 auto 34px; max-width: 820px;
  font-size: 13px; font-weight: 600; letter-spacing: .38em; text-transform: uppercase; color: rgba(255, 255, 255, .85);
}
.wd-recog__label::before, .wd-recog__label::after { content: ""; flex: 1; height: 1px; background: rgba(255, 255, 255, .22); }
.wd-recog__label span { white-space: nowrap; }
.wd-recog__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); }
.wd-recog__list li {
  display: flex; flex-direction: column; align-items: center; text-align: center; padding: 0 8px;
  border-left: 1px solid rgba(255, 255, 255, .12);
}
.wd-recog__list li:first-child { border-left: 0; }
.wd-recog__badge { position: relative; display: flex; align-items: center; justify-content: center; width: 150px; max-width: 100%; aspect-ratio: 1; margin-bottom: 10px; }
/* .wd-laurel { position: absolute; inset: 0; width: 100%; height: 100%; } */
.wd-laurel { position: absolute; top: 8%; height: 84%; width: auto; aspect-ratio: 50 / 160; }
.wd-laurel--l { left: 2%; }
.wd-laurel--r { right: 2%; transform: scaleX(-1); }
.wd-recog__badge img { position: relative; width: 62%; height: auto; max-height: 68%; object-fit: contain; transition: transform .25s; }
.wd-recog__list li:hover .wd-recog__badge img { transform: scale(1.06); }
.wd-recog__list strong { font-size: 15px; font-weight: 700; color: #fff; line-height: 1.3; }
.wd-recog__list small { font-size: 14px; color: rgba(255, 255, 255, .75); margin-top: 2px; }

@media (max-width: 1199px) {
  .wd-recog__list { grid-template-columns: repeat(4, minmax(0, 1fr)); row-gap: 32px; }
  .wd-recog__list li:nth-child(4n + 1) { border-left: 0; }
}
@media (max-width: 767px) {
  /* The stretched SVG curve turns into a deep U on narrow screens */
  .wd-recog__shape { display: none; }
  .wd-recog__top {
    padding: 48px 0 56px; background: linear-gradient(180deg, #f3f7fb 0%, #fff 100%);
    border-bottom: 8px solid var(--wd-accent); border-radius: 0 0 50% 50% / 0 0 44px 44px;
  }
  .wd-recog__bottom { padding-top: 40px; }
  .wd-recog__dots { display: none; }
  .wd-recog__pill { font-size: 12px; padding: 7px 16px; }
  .wd-recog__text { font-size: 15px; }
  .wd-recog__cards { flex-direction: column; align-items: center; gap: 14px; }
  .wd-recog__card, .wd-recog__card img { height: 70px; }
  .wd-recog__card--boxed { width: auto; min-width: 280px; }
  .wd-recog__card--boxed img { height: 50px; }
  .wd-recog__label { gap: 12px; font-size: 11px; letter-spacing: .2em; }
  .wd-recog__list { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 28px; }
  .wd-recog__list li:nth-child(odd) { border-left: 0; }
  .wd-recog__list li:nth-child(4n + 1) { border-left: 0; }
  .wd-recog__list li:nth-child(even) { border-left: 1px solid rgba(255, 255, 255, .12); }
  .wd-recog__badge { width: 130px; }
  .wd-recog__list strong { font-size: 14px; }
  .wd-recog__list small { font-size: 13px; }
}

/* ---------- Hide the side "Book Now" / "Clutch Guarantee" tabs and the chat
   bubble on this page only. Scoped with body:has(.wd-page) so the rules stop
   matching as soon as the visitor navigates to any other page (this
   stylesheet can stay in <head> after client-side navigation). ---------- */
body:has(.wd-page) .floating-cta-stack,
body:has(.wd-page) #promptly-widget-root { display: none !important; }

/* ---------- Simpler form header (no floating badge / divider), form starts higher ---------- */
.wd-page .wd-hero__form:has(.wd-hero__form-title--simple) { padding: 28px 32px 26px; }
.wd-hero__form-title--simple { padding-right: 0; font-size: clamp(22px, 1.9vw, 26px); letter-spacing: -.4px; }
/* .wd-hero__form-sub--simple { margin: 6px 0 18px; font-size: 14.5px; line-height: 1.55; } */
.wd-hero__form-sub--simple { margin: 6px 0 18px; font-size: 12px; line-height: 1.5; letter-spacing: -.15px; white-space: nowrap; }
/* Narrow phones can't fit it on one line at a readable size, so let it wrap */
@media (max-width: 480px) { .wd-hero__form-sub--simple { white-space: normal; font-size: 12.5px; } }
@media (min-width: 1200px) and (max-width: 1299px) { .wd-hero__form-sub--simple { font-size: 11.5px; } }
@media (min-width: 1200px) {
  .wd-page .wd-hero__form:has(.wd-hero__form-title--simple) { margin-top: 0; }
}
@media (max-width: 767px) {
  .wd-page .wd-hero__form:has(.wd-hero__form-title--simple) { padding: 24px 18px 22px; }
}
/* Compact one-line privacy note (this page only; shared form markup unchanged) */
.wd-page .wd-hero__form .cf-privacy { display: flex; align-items: center; gap: 10px; padding: 9px 14px; border-radius: 10px; }
.wd-page .wd-hero__form .cf-privacy-icon { flex: 0 0 28px; width: 28px; height: 28px; }
.wd-page .wd-hero__form .cf-privacy-icon svg { width: 16px; height: 16px; }
.wd-page .wd-hero__form .cf-privacy strong { font-size: 13.5px; }
.wd-page .wd-hero__form .cf-privacy small { display: none; }

/* ---------- Hero rating badges (replace the hero stats row) ---------- */
.wd-hero__ratings { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 14px; }
.wd-hero__rating { display: inline-flex; align-items: center; height: 52px; transition: transform .2s; }
.wd-hero__rating:hover { transform: translateY(-3px); }
.wd-hero__rating img { display: block; height: 52px; width: auto; max-width: 100%; filter: drop-shadow(0 10px 20px rgba(0, 20, 34, .3)); }
.wd-hero__rating--boxed { padding: 4px 14px; border-radius: 10px; background: #fff; box-shadow: 0 10px 22px rgba(0, 20, 34, .3); }
.wd-hero__rating--boxed img { height: 40px; filter: none; }
@media (max-width: 767px) {
  .wd-hero__ratings { gap: 10px; justify-content: center; }
  .wd-hero__rating, .wd-hero__rating img { height: 44px; }
  .wd-hero__rating--boxed img { height: 34px; }
}

/* ---------- Trust strip (replaces the recognition section) ---------- */
.wd-trustx { position: relative; padding: 44px 0 40px; background: linear-gradient(180deg, #fff 0%, #f3f6fa 100%); }
.wd-trustx__eyebrow {
  display: flex; align-items: center; gap: 10px; margin: 0 0 16px;
  font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--wd-blue);
}
.wd-trustx__eyebrow::before { content: ""; width: 26px; height: 3px; border-radius: 3px; background: var(--wd-accent); }
.wd-trustx__row {
  display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center;
  padding: 20px 28px; border-radius: 18px; background: #fff;
  border: 1px solid var(--wd-border); box-shadow: 0 14px 34px rgba(0, 42, 68, .07);
}
.wd-trustx__clutch {
  display: grid; grid-template-columns: auto auto; align-items: center; gap: 2px 14px;
  padding-right: 28px; text-decoration: none; color: inherit;
}
.wd-trustx__clutch img { display: block; height: 24px; width: auto; }
.wd-trustx__score { display: flex; align-items: center; gap: 8px; }
.wd-trustx__score strong { font-size: 22px; font-weight: 800; color: #0d2a40; line-height: 1; }
.wd-trustx__score strong small { font-size: 13px; font-weight: 600; color: var(--wd-muted); }
.wd-trustx__stars { font-size: 15px; letter-spacing: 1px; color: #ef4335; }
.wd-trustx__based { grid-column: 1 / -1; font-size: 12.5px; color: var(--wd-muted); }
.wd-trustx__stats {
  list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));
}
.wd-trustx__stats li {
  display: flex; flex-direction: column; align-items: center; text-align: center; padding: 4px 12px;
  border-left: 1px solid var(--wd-border);
}
.wd-trustx__stats strong { font-size: 24px; font-weight: 800; color: var(--wd-primary); line-height: 1.1; }
.wd-trustx__stats small { margin-top: 3px; font-size: 13px; color: var(--wd-muted); }
.wd-trustx__platforms {
  list-style: none; margin: 0; padding: 0 0 0 28px; display: flex; align-items: center; gap: 26px;
  border-left: 1px solid var(--wd-border);
}
.wd-trustx__platforms a { display: block; opacity: .9; transition: opacity .2s, transform .2s; }
.wd-trustx__platforms a:hover { opacity: 1; transform: translateY(-2px); }
.wd-trustx__platforms img { display: block; height: 22px; width: auto; }
.wd-trustx__platforms li:last-child img { height: 38px; }

.wd-trustx__badges {
  list-style: none; margin: 26px 0 0; padding: 0;
  display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 18px;
}
.wd-trustx__badges li { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 8px; }
.wd-trustx__badges img {
  display: block; width: auto; height: 78px; max-width: 100%; object-fit: contain;
  filter: drop-shadow(0 8px 14px rgba(0, 42, 68, .12)); transition: transform .25s;
}
.wd-trustx__badges li:hover img { transform: translateY(-4px) scale(1.04); }
.wd-trustx__badges small { font-size: 12.5px; font-weight: 600; color: #3b4a5e; line-height: 1.3; }

@media (max-width: 1199px) {
  .wd-trustx__row { grid-template-columns: auto minmax(0, 1fr); row-gap: 18px; }
  .wd-trustx__platforms { grid-column: 1 / -1; justify-content: center; padding: 18px 0 0; border-left: 0; border-top: 1px solid var(--wd-border); }
  .wd-trustx__badges { grid-template-columns: repeat(4, minmax(0, 1fr)); row-gap: 24px; }
}
@media (max-width: 767px) {
  .wd-trustx { padding: 36px 0 32px; }
  .wd-trustx__eyebrow { justify-content: center; }
  .wd-trustx__row { grid-template-columns: 1fr; padding: 18px 16px; }
  .wd-trustx__clutch { justify-content: center; justify-items: center; padding: 0 0 16px; border-bottom: 1px solid var(--wd-border); }
  .wd-trustx__based { text-align: center; }
  .wd-trustx__stats li { padding: 2px 6px; }
  .wd-trustx__stats li:first-child { border-left: 0; }
  .wd-trustx__stats strong { font-size: 20px; }
  .wd-trustx__stats small { font-size: 11.5px; }
  .wd-trustx__platforms { gap: 18px; flex-wrap: wrap; }
  .wd-trustx__platforms img { height: 22px; }
  .wd-trustx__platforms li:last-child img { height: 36px; }
  .wd-trustx__badges { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px 10px; }
  .wd-trustx__badges img { height: 60px; }
  .wd-trustx__badges small { font-size: 11px; }
}

/* ---------- Services (illustrated cards) ---------- */
.wd-svc {
  position: relative; overflow: hidden; padding: 40px 0 96px; /* was: padding: 80px 0 96px; */
  background: radial-gradient(900px 500px at 50% 0%, #ffffff 0%, #eef3f8 100%);
}
.wd-svc__shapes { position: absolute; inset: 0; width: 100%; height: 100%; display: block; pointer-events: none; }
.wd-svc__dots {
  position: absolute; width: 130px; height: 120px; pointer-events: none;
  background-image: radial-gradient(rgba(0, 66, 101, .16) 2px, transparent 2.5px); background-size: 20px 20px;
}
.wd-svc__dots--l { top: 34px; left: 2%; }
.wd-svc__dots--r { top: 30px; right: 7%; }
.wd-svc__inner { position: relative; z-index: 1; }

.wd-svc__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; flex-wrap: wrap; margin-bottom: 40px; }
.wd-svc__pill {
  display: inline-flex; align-items: center; gap: 10px; margin: 0 0 14px; padding: 8px 18px;
  border-radius: 999px; background: #fbfde9; border: 1.5px solid #dfe89a;
  font-size: 13px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--wd-primary);
}
.wd-svc__pill span { width: 9px; height: 9px; border-radius: 50%; background: #a4ba00; }
.wd-svc__title { margin: 0 0 10px; font-size: clamp(26px, 3.4vw, 44px); font-weight: 800; line-height: 1.15; letter-spacing: -1px; color: #0d2a40; }
.wd-svc__title span {
  background: linear-gradient(90deg, #8aa400 0%, #b3c800 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.wd-svc__lead { margin: 0; font-size: 17px; line-height: 1.6; color: var(--wd-muted); max-width: 860px; }
.wd-svc__all {
  display: inline-flex; align-items: center; gap: 10px; padding: 6px 6px 6px 26px;
  border-radius: 999px; background: var(--wd-primary); color: #fff; text-decoration: none;
  font-size: 15px; font-weight: 700; box-shadow: 0 12px 26px rgba(0, 66, 101, .25); transition: background .2s;
}
.wd-svc__all:hover { background: var(--wd-primary-dark); color: #fff; }
.wd-svc__all-icon {
  display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; margin-left: 6px;
  border-radius: 50%; background: var(--wd-accent); color: var(--wd-primary-dark); transition: transform .2s;
}
.wd-svc__all:hover .wd-svc__all-icon { transform: translateX(3px); }

.wd-svc__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.wd-svc__card {
  position: relative; overflow: hidden; min-height: 236px; border-radius: 20px;
  background: #fff; border: 1px solid rgba(0, 66, 101, .06);
  box-shadow: 0 18px 40px rgba(0, 42, 68, .1); transition: transform .25s, box-shadow .25s;
}
.wd-svc__card:hover { transform: translateY(-5px); box-shadow: 0 26px 50px rgba(0, 42, 68, .16); }
/* Illustration on the right, fading into the white card on its left edge */
.wd-svc__art {
  position: absolute; top: 0; right: 0; height: 100%; width: 42%; object-fit: cover; object-position: left center;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 28%); mask-image: linear-gradient(90deg, transparent 0%, #000 28%);
  transition: transform .4s;
}
.wd-svc__card:hover .wd-svc__art { transform: scale(1.04); }
.wd-svc .wd-container { max-width: 1380px; }
.wd-svc__body { position: relative; display: flex; gap: 16px; padding: 24px 0 26px 24px; max-width: 64%; }
.wd-svc__icon {
  flex: 0 0 60px; width: 60px; height: 60px; border-radius: 16px;
  display: inline-flex; align-items: center; justify-content: center;
  box-shadow: 0 12px 24px rgba(0, 42, 68, .18);
}
.wd-svc__icon--navy { background: linear-gradient(145deg, #0a5a86, var(--wd-primary)); color: #fff; }
.wd-svc__icon--lime { background: linear-gradient(145deg, #cddd2a, #a9bb00); color: var(--wd-primary-dark); }
.wd-svc__icon svg { width: 26px; height: 26px; }
.wd-svc__name { margin: 4px 0 0; font-size: 19px; font-weight: 800; line-height: 1.25; letter-spacing: -.3px; color: #0d2a40; }
.wd-svc__bar { display: block; width: 38px; height: 4px; margin: 12px 0 14px; border-radius: 4px; background: var(--wd-accent); }
.wd-svc__desc { margin: 0 0 18px; font-size: 14.5px; line-height: 1.6; color: var(--wd-muted); }
.wd-svc__more {
  display: inline-flex; align-items: center; gap: 10px; font-size: 15px; font-weight: 700;
  color: #0d2a40; text-decoration: none;
}
.wd-svc__more:hover { color: var(--wd-primary); }
.wd-svc__more-icon {
  display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px;
  border-radius: 50%; background: var(--wd-primary); color: #fff; transition: transform .2s, background .2s;
}
.wd-svc__more:hover .wd-svc__more-icon { transform: translateX(3px); background: var(--wd-accent); color: var(--wd-primary-dark); }

@media (max-width: 1199px) {
  .wd-svc__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .wd-svc { padding: 32px 0 64px; } /* was: padding: 56px 0 64px; */
  .wd-svc__shapes, .wd-svc__dots { display: none; }
  .wd-svc__pill { font-size: 11px; padding: 7px 14px; }
  .wd-svc__lead { font-size: 15px; }
  .wd-svc__grid { grid-template-columns: 1fr; gap: 18px; }
  .wd-svc__card { min-height: 0; }
  .wd-svc__art { width: 38%; }
  .wd-svc__body { max-width: 68%; gap: 14px; padding: 22px 0 22px 18px; }
  .wd-svc__icon { flex-basis: 56px; width: 56px; height: 56px; border-radius: 14px; }
  .wd-svc__icon svg { width: 24px; height: 24px; }
  .wd-svc__name { font-size: 18px; margin-top: 4px; }
  .wd-svc__desc { font-size: 14px; }
}

/* ---------- Trust bar ---------- */
.wd-trust { padding: 36px 0; border-top: 1px solid var(--wd-border); border-bottom: 1px solid var(--wd-border); background: #fff; }
.wd-trust__row { display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap; }
.wd-trust__stats { display: flex; flex-wrap: wrap; gap: 0; }
.wd-stat { display: flex; flex-direction: column; padding: 0 28px; border-left: 1px solid var(--wd-border); }
.wd-stat:first-child { padding-left: 0; border-left: 0; }
.wd-stat strong { font-size: 26px; font-weight: 800; color: var(--wd-primary); line-height: 1.1; }
.wd-stat span { font-size: 13px; font-weight: 600; color: var(--wd-text); margin-top: 4px; }
.wd-stat small { font-size: 12px; color: var(--wd-muted); }
.wd-trust__badges { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.wd-trust__badges img { display: block; height: 46px; width: auto; }

/* ---------- Services ---------- */
.wd-services { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.wd-service {
  display: flex; gap: 16px; padding: 24px; background: #fff;
  border: 1px solid var(--wd-border); border-radius: var(--wd-radius);
  transition: box-shadow .2s, transform .2s, border-color .2s;
}
.wd-service:hover { box-shadow: var(--wd-shadow); transform: translateY(-3px); border-color: #cfe0ec; }
.wd-service__icon {
  flex: 0 0 48px; width: 48px; height: 48px; border-radius: 12px;
  display: inline-flex; align-items: center; justify-content: center;
  background: #e6f1f8; color: var(--wd-primary);
}
.wd-service__icon--bag, .wd-service__icon--cart { background: #f2f7d6; color: #5d6b00; }
.wd-service__title { margin: 2px 0 6px; font-size: 16px; font-weight: 700; color: var(--wd-text); }
.wd-service__desc { margin: 0 0 10px; font-size: 14px; line-height: 1.6; color: var(--wd-muted); }

/* ---------- Projects ---------- */
.wd-proj {
  position: relative; overflow: hidden; padding: 72px 0 72px;
  background: radial-gradient(1000px 520px at 50% 0%, #ffffff 0%, #f0f4f8 100%);
}
.wd-proj__shapes { position: absolute; inset: 0; width: 100%; height: 100%; display: block; pointer-events: none; }
.wd-proj__dots {
  position: absolute; width: 110px; height: 90px; pointer-events: none;
  background-image: radial-gradient(rgba(188, 207, 2, .75) 2px, transparent 2.5px); background-size: 18px 18px;
}
.wd-proj__dots--l { top: 6px; left: .5%; height: 54px; }
.wd-proj__dots--r { top: 60px; right: 26%; background-image: radial-gradient(rgba(0, 66, 101, .14) 2px, transparent 2.5px); }
.wd-proj__inner { position: relative; z-index: 1; max-width: 1380px; }

.wd-proj__head { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; flex-wrap: wrap; margin-bottom: 36px; }
.wd-proj__eyebrow {
  display: inline-flex; align-items: center; gap: 12px; margin: 0 0 12px;
  font-size: 13px; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; color: var(--wd-primary);
}
.wd-proj__eyebrow span { position: relative; width: 36px; height: 2px; background: #c8d65a; }
.wd-proj__eyebrow span::after { content: ""; position: absolute; right: -4px; top: -4px; width: 10px; height: 10px; border-radius: 50%; background: var(--wd-accent); }
.wd-proj__title { margin: 0 0 12px; font-size: clamp(26px, 3.4vw, 44px); font-weight: 800; line-height: 1.15; letter-spacing: -1px; color: #0d2a40; }
.wd-proj__hl {
  position: relative; display: inline-block;
  background: linear-gradient(90deg, #8aa400 0%, #b3c800 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.wd-proj__hl::after {
  content: ""; position: absolute; left: 4%; right: 2%; bottom: -4px; height: 6px;
  border-bottom: 3px solid var(--wd-accent); border-radius: 0 0 50% 50% / 0 0 100% 100%;
}
.wd-proj__lead { margin: 0; max-width: 780px; font-size: 17px; line-height: 1.6; color: var(--wd-muted); }
.wd-proj__side { display: flex; flex-direction: column; align-items: flex-end; gap: 18px; padding-top: 28px; }
.wd-proj__note {
  position: relative; margin: 0; padding-right: 8px; text-align: right; transform: rotate(-8deg);
  font-family: "Segoe Script", "Bradley Hand", "Brush Script MT", cursive; font-size: 17px; line-height: 1.35; color: var(--wd-primary);
}
.wd-proj__note svg { display: block; margin: 4px 0 0 auto; transform: rotate(8deg); }

/* Carousel */
.wd-carousel { position: relative; }
.wd-carousel__track {
  display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 56px) / 3);
  column-gap: 28px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;
  padding: 26px 6px 24px; margin: -26px -6px 0;
}
.wd-carousel__track::-webkit-scrollbar { display: none; }
.wd-carousel__arrow {
  position: absolute; top: 34%; z-index: 3; width: 58px; height: 58px; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center;
  background: #fff; color: #0d2a40; border: 0; box-shadow: 0 12px 30px rgba(0, 42, 68, .18); cursor: pointer;
  transition: background .2s, color .2s;
}
.wd-carousel__arrow:hover { background: var(--wd-primary); color: #fff; }
.wd-carousel__arrow--prev { left: -30px; }
.wd-carousel__arrow--next { right: -30px; }
.wd-carousel__dots { display: flex; justify-content: center; gap: 10px; margin-top: 18px; }
.wd-carousel__dots button {
  width: 14px; height: 8px; padding: 0; border: 0; border-radius: 8px; cursor: pointer;
  background: #c9d6e2; transition: width .25s, background .25s;
}
.wd-carousel__dots button.is-active { width: 26px; background: var(--wd-accent); }

/* Card */
.wd-project {
  position: relative; scroll-snap-align: start; display: flex; flex-direction: column;
  background: #fff; border-radius: 22px; box-shadow: 0 20px 44px rgba(0, 42, 68, .12);
  transition: transform .25s, box-shadow .25s;
}
.wd-project:hover { transform: translateY(-5px); box-shadow: 0 28px 54px rgba(0, 42, 68, .18); }
.wd-project__img { aspect-ratio: 640 / 408; overflow: hidden; border-radius: 22px 22px 0 0; background: #0d3a55; }
.wd-project__img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.wd-project:hover .wd-project__img img { transform: scale(1.04); }
.wd-project__badge {
  position: absolute; top: -8px; left: -8px; width: 62px; height: 62px; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--wd-accent); color: #0d2a40; border: 4px solid #fff;
  box-shadow: 0 10px 22px rgba(0, 42, 68, .2);
}
.wd-project__body { display: flex; flex-direction: column; flex: 1; padding: 20px 26px 24px; }
.wd-project__industry {
  align-self: flex-start; margin: 0 0 10px; padding: 5px 12px; border-radius: 8px;
  background: #eef3f8; font-size: 13px; font-weight: 500; color: var(--wd-primary);
}
.wd-project__title { margin: 0 0 8px; font-size: 21px; font-weight: 800; letter-spacing: -.3px; color: #0d2a40; }
.wd-project__desc { margin: 0 0 16px; font-size: 15px; line-height: 1.6; color: var(--wd-muted); }
.wd-project__tags { list-style: none; margin: auto 0 18px; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.wd-project__tags li { padding: 6px 14px; border-radius: 8px; background: #eaf2f9; font-size: 13px; font-weight: 500; color: var(--wd-primary); }
.wd-project__foot { display: flex; align-items: center; justify-content: space-between; }
.wd-project__link {
  position: relative; display: inline-flex; align-items: center; gap: 8px; padding-bottom: 6px;
  font-size: 17px; font-weight: 800; color: var(--wd-primary); text-decoration: none;
}
.wd-project__link::after { content: ""; position: absolute; left: 0; bottom: 0; width: 34px; height: 3px; border-radius: 3px; background: var(--wd-accent); transition: width .25s; }
.wd-project__link:hover { color: var(--wd-primary-dark); }
.wd-project__link:hover::after { width: 100%; }
.wd-project__go {
  display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%;
  background: var(--wd-accent); color: #0d2a40; box-shadow: 0 8px 18px rgba(140, 160, 0, .35); transition: transform .2s;
}
.wd-project__go:hover { transform: translateX(3px); color: #0d2a40; }

@media (max-width: 991px) {
  .wd-proj__side { align-items: flex-start; padding-top: 0; }
  .wd-proj__note { display: none; }
}
@media (max-width: 767px) {
  .wd-proj { padding: 52px 0 56px; }
  .wd-proj__shapes, .wd-proj__dots { display: none; }
  .wd-proj__eyebrow { font-size: 11px; letter-spacing: .16em; }
  .wd-proj__lead { font-size: 15px; }
  .wd-project__badge { width: 50px; height: 50px; }
  .wd-project__body { padding: 18px 18px 20px; }
  .wd-project__title { font-size: 19px; }
  .wd-project__desc { font-size: 14px; }
}

/* ---------- Pricing ---------- */
.wd-price {
  position: relative; overflow: hidden; padding: 72px 0 64px;
  background: radial-gradient(1000px 560px at 50% 20%, #ffffff 0%, #eef3f8 100%);
}
.wd-price__shapes { position: absolute; inset: 0; width: 100%; height: 100%; display: block; pointer-events: none; }
.wd-price__inner { position: relative; z-index: 1; max-width: 1280px; }
.wd-price__head { text-align: center; margin-bottom: 44px; }
.wd-price__pill {
  display: inline-flex; align-items: center; gap: 10px; margin: 0 0 16px; padding: 9px 22px;
  border-radius: 999px; background: #fbfde9; border: 1.5px solid #dfe89a;
  font-size: 14px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--wd-primary);
}
.wd-price__title { margin: 0 0 12px; font-size: clamp(26px, 3.4vw, 46px); font-weight: 800; line-height: 1.15; letter-spacing: -1px; color: #0d2a40; }
.wd-price__lead { margin: 0 auto 24px; max-width: 760px; font-size: 17px; line-height: 1.6; color: var(--wd-muted); }
.wd-price__tabs {
  display: inline-flex; gap: 4px; padding: 5px; border-radius: 999px; background: #fff;
  box-shadow: 0 12px 28px rgba(0, 42, 68, .12);
}
.wd-price__tabs button {
  display: inline-flex; align-items: center; gap: 10px; padding: 11px 22px; border: 0; border-radius: 999px;
  background: transparent; font: inherit; font-size: 14px; font-weight: 700; color: #0d2a40; cursor: pointer;
  transition: background .25s, color .25s;
}
.wd-price__tabs button.is-active { background: var(--wd-primary); color: #fff; }
.wd-price__tab-star { color: var(--wd-accent); display: inline-flex; }

.wd-price__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; align-items: center; }
.wd-price__card {
  position: relative; display: flex; flex-direction: column; padding: 32px 30px 30px; min-height: 560px;
  border-radius: 22px; background: #fff; border: 1px solid rgba(0, 66, 101, .06);
  box-shadow: 0 20px 44px rgba(0, 42, 68, .1); overflow: hidden;
  transition: transform .3s, box-shadow .3s;
}
.wd-price__card:hover { transform: translateY(-6px); box-shadow: 0 28px 56px rgba(0, 42, 68, .16); }
.wd-price__card--popular {
  min-height: 610px; color: #fff; border: 0;
  background:
    radial-gradient(420px 300px at 105% 100%, rgba(188, 207, 2, .55) 0%, transparent 60%),
    linear-gradient(160deg, #0a3d5c 0%, #062a40 100%);
  box-shadow: 0 30px 60px rgba(0, 42, 68, .35);
}
.wd-price__card--popular:hover { box-shadow: 0 36px 70px rgba(0, 42, 68, .45); }
.wd-price__badge {
  position: absolute; top: 18px; right: 20px; display: inline-flex; align-items: center; gap: 6px;
  padding: 8px 16px; border-radius: 999px; background: var(--wd-accent); color: #0d2a40;
  font-size: 14px; font-weight: 800; box-shadow: 0 8px 18px rgba(140, 160, 0, .35);
  animation: wd-glow 2.6s ease-in-out infinite;
}
.wd-price__top { display: flex; align-items: center; gap: 18px; margin: 12px 0 22px; }
.wd-price__icon {
  flex: 0 0 66px; width: 66px; height: 66px; border-radius: 16px;
  display: inline-flex; align-items: center; justify-content: center;
  background: #e8f1f8; color: #0d2a40; box-shadow: 0 10px 22px rgba(0, 42, 68, .1);
}
.wd-price__card:nth-child(3) .wd-price__icon { background: #f2f6d3; color: #0d2a40; }
.wd-price__card--popular .wd-price__icon { background: var(--wd-accent); color: #0d2a40; }
.wd-price__card--popular .wd-price__top { margin-top: 40px; }
.wd-price__name { margin: 0 0 4px; font-size: 22px; font-weight: 800; letter-spacing: -.3px; color: #0d2a40; }
.wd-price__tagline { margin: 0; font-size: 15px; line-height: 1.45; color: var(--wd-muted); }
.wd-price__card--popular .wd-price__name { color: #fff; }
.wd-price__card--popular .wd-price__tagline { color: rgba(255, 255, 255, .78); }
.wd-price__amount {
  margin: 0 0 20px; padding-bottom: 20px; border-bottom: 1px solid var(--wd-border);
  font-size: 46px; font-weight: 800; letter-spacing: -1px; line-height: 1; color: #0d2a40;
}
.wd-price__card--popular .wd-price__amount { color: #fff; border-bottom-color: rgba(255, 255, 255, .16); }
.wd-price__features { list-style: none; margin: 0 0 28px; padding: 0; display: grid; gap: 13px; max-width: 72%; position: relative; z-index: 1; }
.wd-price__features li { display: flex; align-items: center; gap: 12px; font-size: 15px; color: #1d3346; }
.wd-price__features svg { flex: 0 0 20px; }
.wd-price__card--popular .wd-price__features li { color: #fff; }
.wd-price__art {
  position: absolute; right: 12px; bottom: 96px; width: 36%; max-width: 180px; height: auto; pointer-events: none;
  -webkit-mask-image: radial-gradient(ellipse 70% 70% at 50% 50%, #000 66%, transparent 100%); mask-image: radial-gradient(ellipse 70% 70% at 50% 50%, #000 66%, transparent 100%);
  animation: wd-bob 5s ease-in-out infinite;
}
.wd-price__card:not(.wd-price__card--popular) .wd-price__art { mix-blend-mode: multiply; }
.wd-price__card:nth-child(2) .wd-price__art { animation-delay: -1.6s; }
.wd-price__card:nth-child(3) .wd-price__art { animation-delay: -3.2s; }
.wd-price__btn {
  position: relative; z-index: 1; margin-top: auto; display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  padding: 15px 22px; border-radius: 10px; border: 2px solid var(--wd-primary);
  background: #fff; color: var(--wd-primary); font-size: 16px; font-weight: 700; text-decoration: none;
  transition: background .25s, color .25s, transform .25s;
}
.wd-price__btn:hover { background: var(--wd-primary); color: #fff; }
.wd-price__btn:hover svg { transform: translateX(3px); }
.wd-price__btn svg { transition: transform .25s; }
.wd-price__card--popular .wd-price__btn, .wd-price__btn--solid {
  border-color: var(--wd-accent); background: linear-gradient(90deg, #c4d60a, #bccf02); color: #0d2a40;
  box-shadow: 0 12px 26px rgba(140, 160, 0, .35);
}
.wd-price__card--popular .wd-price__btn:hover, .wd-price__btn--solid:hover { background: #d3e620; color: #0d2a40; }

.wd-price__custom {
  display: flex; align-items: center; gap: 28px; flex-wrap: wrap; padding: 36px;
  border-radius: 22px; background: #fff; box-shadow: 0 20px 44px rgba(0, 42, 68, .1);
}
.wd-price__custom-body { flex: 1 1 360px; }
.wd-price__custom .wd-price__tagline { margin-bottom: 18px; }
.wd-price__custom .wd-price__features { max-width: none; margin-bottom: 0; }

.wd-price__perks { list-style: none; margin: 48px 0 0; padding: 0; display: flex; justify-content: center; flex-wrap: wrap; }
.wd-price__perks li { display: flex; align-items: center; gap: 14px; padding: 6px 30px; border-left: 1px solid #d5dee8; }
.wd-price__perks li:first-child { border-left: 0; }
.wd-price__perk-icon {
  flex: 0 0 54px; width: 54px; height: 54px; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center;
  background: #fff; color: var(--wd-primary); box-shadow: 0 8px 20px rgba(0, 42, 68, .1);
}
.wd-price__perks strong { display: block; font-size: 15px; font-weight: 700; color: #0d2a40; }
.wd-price__perks small { display: block; font-size: 13px; color: var(--wd-muted); }
@keyframes wd-glow { 0%, 100% { box-shadow: 0 8px 18px rgba(140, 160, 0, .3); } 50% { box-shadow: 0 8px 26px rgba(188, 207, 2, .75); } }

@media (prefers-reduced-motion: reduce) {
  .wd-price__badge, .wd-price__art { animation: none; }
}
@media (max-width: 1099px) {
  .wd-price__grid { grid-template-columns: 1fr; max-width: 520px; margin: 0 auto; }
  .wd-price__card, .wd-price__card--popular { min-height: 0; }
  .wd-price__card--popular { order: -1; }
  .wd-price__perks { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
  .wd-price__perks li { border-left: 0; padding: 0; }
}
@media (max-width: 767px) {
  .wd-price { padding: 52px 0 52px; }
  .wd-price__shapes, .wd-price .wd-proc__dots, .wd-price .wd-proc__ring { display: none; }
  .wd-price__pill { font-size: 11px; padding: 7px 14px; }
  .wd-price__lead { font-size: 15px; }
  .wd-price__tabs button { padding: 10px 14px; font-size: 13px; }
  .wd-price__card { padding: 26px 20px 22px; }
  .wd-price__badge { top: 14px; right: 14px; font-size: 12px; padding: 6px 12px; }
  .wd-price__top { margin-top: 26px; }
  .wd-price__icon { flex-basis: 54px; width: 54px; height: 54px; }
  .wd-price__amount { font-size: 38px; }
  .wd-price__features li { font-size: 14px; }
  .wd-price__art { width: 36%; bottom: 90px; }
  .wd-price__perks { grid-template-columns: 1fr; }
}

/* ---------- Technologies (logo cards) ---------- */
.wd-techx {
  position: relative; overflow: hidden; padding: 36px 0 0; /* was: padding: 72px 0 80px; then 36px 0 80px; then 36px 0 24px; */
  background: radial-gradient(1000px 520px at 50% 20%, #ffffff 0%, #f1f5f9 100%);
}
.wd-techx__shapes { position: absolute; inset: 0; width: 100%; height: 100%; display: block; pointer-events: none; }
.wd-techx__ring { display: none; /* ring under the slider removed with the shorter bottom */ position: absolute; width: 26px; height: 26px; bottom: 50px; right: 22%; border-radius: 50%; border: 3px solid #8bc34a; animation: wd-bob 5s ease-in-out infinite; pointer-events: none; }
.wd-techx__inner { position: relative; z-index: 1; max-width: 1240px; }
.wd-techx .wd-proc__head { margin-bottom: 40px; }
.wd-techx .wd-proc__pill svg { animation: none; }

.wd-techx__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 22px; }
.wd-techx__card {
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px;
  padding: 22px 10px 18px; border-radius: 16px; background: #fff; border: 2px solid;
  box-shadow: 0 12px 28px rgba(0, 42, 68, .08);
  opacity: 0; transform: translateY(24px) scale(.96);
  transition: opacity .5s ease, transform .5s cubic-bezier(.2, .7, .2, 1), box-shadow .3s, border-color .3s;
  transition-delay: calc(var(--wd-i) * 55ms);
}
.wd-techx__card--blue { border-color: #d6e8f7; }
.wd-techx__card--lime { border-color: #eef3bf; }
.wd-techx__grid.is-visible .wd-techx__card { opacity: 1; transform: none; }
.wd-techx__grid.is-visible .wd-techx__card:hover {
  transform: translateY(-6px); transition-delay: 0s;
  box-shadow: 0 20px 40px rgba(0, 42, 68, .15); border-color: var(--wd-accent);
}
.wd-techx__card img { display: block; width: 64px; height: 64px; object-fit: contain; transition: transform .35s; }
.wd-techx__card:hover img { transform: scale(1.12) rotate(-4deg); }
.wd-techx__card span { font-size: 15px; font-weight: 700; color: #0d2a40; text-align: center; }

@media (prefers-reduced-motion: reduce) {
  .wd-techx__card { opacity: 1; transform: none; transition: none; }
  .wd-techx__ring { animation: none; }
}
@media (max-width: 1099px) {
  .wd-techx__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .wd-techx { padding: 30px 0 0; } /* was: padding: 52px 0 56px; then 30px 0 56px; then 30px 0 16px; */
  .wd-techx__shapes, .wd-techx .wd-proc__dots, .wd-techx .wd-proc__ring, .wd-techx__ring { display: none; }
  .wd-techx__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
  .wd-techx__card { padding: 14px 4px 10px; gap: 7px; border-radius: 12px; }
  .wd-techx__card img { width: 38px; height: 38px; }
  .wd-techx__card span { font-size: 11px; line-height: 1.2; overflow-wrap: anywhere; }
}

/* Single-row infinite slider. Each card carries its own right margin (no flex
   gap), so both copies are exactly the same width and -50% loops seamlessly. */
.wd-techx__marquee {
  position: relative; z-index: 1; overflow: hidden; padding: 8px 0 22px; /* was: padding: 8px 0 28px; */
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
}
.wd-techx__track { display: flex; width: max-content; animation: wd-techx-scroll 45s linear infinite; }
.wd-techx__marquee:hover .wd-techx__track { animation-play-state: paused; }
.wd-techx__set { list-style: none; margin: 0; padding: 0; display: flex; flex-shrink: 0; }
.wd-techx__marquee .wd-techx__card {
  flex: 0 0 150px; margin-right: 22px; padding-top: 22px; opacity: 1; transform: none;
  transition: transform .3s, box-shadow .3s, border-color .3s; transition-delay: 0s;
}
.wd-techx__marquee .wd-techx__card:hover {
  transform: translateY(-6px); box-shadow: 0 20px 40px rgba(0, 42, 68, .15); border-color: var(--wd-accent);
}
@keyframes wd-techx-scroll { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) {
  .wd-techx__track { animation: none; }
  .wd-techx__marquee { overflow-x: auto; }
}
@media (max-width: 767px) {
  .wd-techx__marquee { padding-bottom: 16px; }
  .wd-techx__track { animation-duration: 32s; }
  .wd-techx__marquee .wd-techx__card { flex-basis: 116px; margin-right: 12px; padding: 16px 6px 12px; }
  .wd-techx__marquee .wd-techx__card img { width: 44px; height: 44px; }
  .wd-techx__marquee .wd-techx__card span { font-size: 11.5px; overflow-wrap: normal; white-space: nowrap; }
}

/* ---------- Testimonials (Clutch carousel + GoodFirms strip) ---------- */
.wd-rvs {
  position: relative; overflow: hidden; padding: 72px 0 72px;
  background: radial-gradient(1000px 520px at 50% 20%, #ffffff 0%, #f1f5f9 100%);
}
.wd-rvs__inner { position: relative; z-index: 1; max-width: 1340px; }
.wd-rvs .wd-proc__head { margin-bottom: 40px; }
.wd-rvs .wd-proc__pill svg { animation: none; }

.wd-rvc { position: relative; padding: 0 34px; }
.wd-rvc__track { display: grid; grid-template-columns: 1fr 1.15fr 1fr; gap: 24px; align-items: center; }
.wd-rvc__slot { animation: wd-rv-in .55s cubic-bezier(.2, .7, .2, 1) both; }
.wd-rvc__slot--side { opacity: .96; }
@keyframes wd-rv-in { from { opacity: 0; transform: translateY(18px) scale(.97); } to { opacity: 1; transform: none; } }
.wd-rvc__arrow { top: 50%; transform: translateY(-80%); }
.wd-rvc__arrow--prev { left: -12px; }
.wd-rvc__arrow--next { right: -12px; }
.wd-rvc .wd-carousel__dots { margin-top: 26px; }

.wd-rv {
  position: relative; display: flex; flex-direction: column; min-height: 300px; padding: 28px 30px 24px;
  border-radius: 22px; background: #fff; text-decoration: none; color: inherit;
  border: 1px solid rgba(0, 66, 101, .06); box-shadow: 0 18px 40px rgba(0, 42, 68, .1);
  transition: transform .3s, box-shadow .3s;
}
.wd-rv:hover { transform: translateY(-4px); box-shadow: 0 26px 52px rgba(0, 42, 68, .16); color: inherit; }
.wd-rv--featured {
  min-height: 340px; border: 2px solid var(--wd-accent); color: #fff;
  background:
    radial-gradient(380px 260px at 100% 100%, rgba(10, 111, 181, .45) 0%, transparent 65%),
    linear-gradient(150deg, #0a3d5c 0%, #062a40 100%);
  box-shadow: 0 30px 60px rgba(0, 42, 68, .35);
}
.wd-rv--featured:hover { color: #fff; }
.wd-rv__badge {
  position: absolute; top: 18px; right: 18px; display: inline-flex; align-items: center; gap: 6px;
  padding: 7px 14px; border-radius: 999px; background: var(--wd-accent); color: #0d2a40; font-size: 13px; font-weight: 800;
}
.wd-rv__top { display: flex; align-items: center; gap: 14px; margin-bottom: 16px; }
.wd-rv__quote {
  flex: 0 0 64px; width: 64px; height: 64px; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center; padding-top: 18px;
  font-family: Georgia, serif; font-size: 58px; font-weight: 700; line-height: 1;
  background: #e5f0f9; color: #1d6fd1;
}
.wd-rvc__slot:last-child .wd-rv__quote { background: #f2f6d3; color: #8aa400; }
.wd-rv--featured .wd-rv__quote { background: var(--wd-accent); color: #0d2a40; }
.wd-rv__stars { color: #f5b301; font-size: 22px; letter-spacing: 2px; line-height: 1; }
.wd-rv__score { font-size: 18px; font-weight: 700; color: #0d2a40; }
.wd-rv--featured .wd-rv__score { color: #fff; }
.wd-rv__text { flex: 1; margin: 0 0 20px; padding-left: 78px; font-size: 17px; line-height: 1.6; color: #2b3d4f; }
.wd-rv--featured .wd-rv__text { font-size: 18px; color: #fff; }
.wd-rv__author { position: relative; display: flex; align-items: center; gap: 14px; padding-top: 18px; border-top: 1px solid var(--wd-border); }
.wd-rv--featured .wd-rv__author { border-top-color: rgba(255, 255, 255, .16); }
.wd-rv__icon {
  flex: 0 0 52px; width: 52px; height: 52px; border-radius: 14px;
  display: inline-flex; align-items: center; justify-content: center; background: #eef4f9; color: var(--wd-primary);
}
.wd-rv--featured .wd-rv__icon { background: var(--wd-accent); color: #0d2a40; }
.wd-rv__author strong { display: block; font-size: 16px; font-weight: 800; color: #0d2a40; }
.wd-rv__author small { display: block; font-size: 13px; color: var(--wd-muted); }
.wd-rv--featured .wd-rv__author strong { color: #fff; }
.wd-rv--featured .wd-rv__author small { color: rgba(255, 255, 255, .72); }
.wd-rv__mark {
  margin-left: auto; font-family: Georgia, serif; font-size: 84px; font-weight: 700; line-height: .6;
  color: #cfe2f3; transform: translateY(14px);
}
.wd-rv--featured .wd-rv__mark { color: rgba(255, 255, 255, .22); }

/* GoodFirms strip */
.wd-gf {
  display: flex; align-items: center; gap: 0; margin-top: 40px; padding: 22px 26px;
  border-radius: 20px; background: #fff; border: 1px solid rgba(0, 66, 101, .06); box-shadow: 0 16px 36px rgba(0, 42, 68, .08);
}
.wd-gf > a { padding: 0 22px; }
.wd-gf__list {
  padding: 0 0 0 22px; margin-right: 22px !important;
  -webkit-mask-image: linear-gradient(90deg, #000 86%, transparent); mask-image: linear-gradient(90deg, #000 86%, transparent);
}
.wd-gf > * + * { border-left: 1px solid var(--wd-border); }
.wd-gf__summary { flex: 0 0 auto; display: flex; flex-direction: column; align-items: center; gap: 4px; text-decoration: none; text-align: center; }
.wd-gf__summary strong { font-size: 20px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; color: #0d2a40; }
.wd-gf__summary small { font-size: 14px; color: #4b5b6b; }
.wd-gf__logo { flex: 0 0 auto; display: flex; align-items: center; align-self: stretch; }
.wd-gf__logo img { display: block; height: 30px; width: auto; }
.wd-gf__list {
  flex: 1 1 auto; min-width: 0; list-style: none; margin: 0;
  display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 32px) / 3); gap: 16px;
  overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;
}
.wd-gf__list::-webkit-scrollbar { display: none; }
.wd-gf__list li { scroll-snap-align: start; min-width: 0; }
.wd-gf__list a { display: block; text-decoration: none; color: inherit; }
.wd-gf__meta { display: flex; align-items: center; gap: 10px; margin-bottom: 6px; }
.wd-gf__meta .wd-rv__stars { font-size: 16px; }
.wd-gf__meta time { font-size: 12px; color: var(--wd-muted); }
.wd-gf__list strong { display: block; font-size: 14px; font-weight: 700; color: #0d2a40; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin-bottom: 4px; }
.wd-gf__text { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; font-size: 13px; line-height: 1.5; color: var(--wd-muted); }
.wd-gf__powered { flex: 0 0 auto; display: flex; flex-direction: column; align-items: center; gap: 4px; text-decoration: none; }
.wd-gf__powered small { font-size: 13px; color: var(--wd-muted); }
.wd-gf__powered img { display: block; height: 26px; width: auto; }

@media (prefers-reduced-motion: reduce) { .wd-rvc__slot { animation: none; } }
@media (max-width: 1199px) {
  .wd-rvc__track { grid-template-columns: 1fr 1fr; }
  .wd-rvc__slot:first-child { display: none; }
  .wd-gf { flex-wrap: wrap; row-gap: 18px; }
  .wd-gf__list { order: 5; flex-basis: 100%; padding: 18px 0 0 !important; border-left: 0 !important; border-top: 1px solid var(--wd-border); grid-auto-columns: calc((100% - 16px) / 2); }
}
@media (max-width: 767px) {
  .wd-rvs { padding: 52px 0 56px; }
  .wd-rvs .wd-techx__shapes, .wd-rvs .wd-proc__dots, .wd-rvs .wd-proc__ring { display: none; }
  .wd-rvc { padding: 0; }
  .wd-rvc__track { grid-template-columns: 1fr; }
  .wd-rvc__slot:last-child { display: none; }
  .wd-rvc .wd-rvc__arrow { display: inline-flex; width: 40px; height: 40px; top: auto; bottom: -10px; transform: none; }
  .wd-rvc__arrow--prev { left: 0; }
  .wd-rvc__arrow--next { right: 0; }
  .wd-rv { padding: 22px 18px 20px; min-height: 0; }
  .wd-rv--featured { padding-top: 56px; }
  .wd-rv__quote { flex-basis: 48px; width: 48px; height: 48px; font-size: 44px; padding-top: 14px; }
  .wd-rv__stars { font-size: 18px; }
  .wd-rv__text, .wd-rv--featured .wd-rv__text { padding-left: 0; font-size: 15px; }
  .wd-rv__mark { font-size: 64px; }
  .wd-rvc .wd-carousel__dots { margin-top: 22px; padding: 0 48px; flex-wrap: wrap; gap: 6px; }
  .wd-gf { flex-direction: column; align-items: stretch; padding: 20px 16px; }
  .wd-gf > * + * { border-left: 0; }
  .wd-gf > a { padding: 0; justify-content: center; }
  .wd-gf__logo { align-self: center; }
  .wd-gf__list { padding: 16px 0 0 !important; grid-auto-columns: 86%; }
}

/* ---------- FAQ (searchable accordion) ---------- */
.wd-faqx {
  position: relative; overflow: hidden; padding: 72px 0 64px;
  background: radial-gradient(1000px 560px at 50% 20%, #ffffff 0%, #f1f5f9 100%);
}
.wd-faqx__dots {
  position: absolute; top: 80px; left: 1%; width: 140px; height: 150px; pointer-events: none;
  background-image: radial-gradient(rgba(0, 66, 101, .14) 2.2px, transparent 2.7px); background-size: 22px 22px;
}
.wd-faqx__inner { position: relative; z-index: 1; max-width: 1380px; }
.wd-faqx .wd-proc__head { margin-bottom: 30px; }
.wd-faqx__qmark {
  display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; border-radius: 50%;
  background: var(--wd-primary); color: #fff; font-size: 13px; font-weight: 800;
}
.wd-faqx__layout { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 36px; align-items: start; }
.wd-faqx__art { position: sticky; top: 110px; padding-top: 30px; }
.wd-faqx__art img {
  display: block; width: 100%; height: auto; mix-blend-mode: multiply;
  -webkit-mask-image: radial-gradient(ellipse 58% 60% at 50% 48%, #000 50%, transparent 100%); mask-image: radial-gradient(ellipse 58% 60% at 50% 48%, #000 50%, transparent 100%);
  animation: wd-bob 6s ease-in-out infinite;
}

.wd-faqx__tools { display: flex; justify-content: flex-end; gap: 14px; margin-bottom: 22px; }
.wd-faqx__search {
  display: flex; align-items: center; gap: 12px; width: min(380px, 100%); margin: 0; padding: 0 20px;
  border-radius: 999px; background: #fff; border: 1px solid var(--wd-border); box-shadow: 0 10px 24px rgba(0, 42, 68, .06);
  color: var(--wd-primary); transition: border-color .2s, box-shadow .2s;
}
.wd-faqx__search:focus-within { border-color: var(--wd-accent); box-shadow: 0 10px 28px rgba(140, 160, 0, .18); }
.wd-faqx__search input { flex: 1; min-width: 0; height: 52px; border: 0; outline: 0; background: transparent; font: inherit; font-size: 15px; color: #0d2a40; }
.wd-faqx__ask {
  display: inline-flex; align-items: center; gap: 10px; padding: 0 24px; height: 54px; border-radius: 12px;
  background: var(--wd-primary); color: #fff; font-size: 15px; font-weight: 700; text-decoration: none; white-space: nowrap;
  box-shadow: 0 12px 26px rgba(0, 66, 101, .25); transition: background .2s;
}
.wd-faqx__ask:hover { background: var(--wd-primary-dark); color: #fff; }
.wd-faqx__empty { padding: 26px; border-radius: 16px; background: #fff; text-align: center; color: var(--wd-muted); }
.wd-faqx__empty a { color: var(--wd-primary); font-weight: 700; }

.wd-faqx__cols { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 26px; align-items: start; }
.wd-faqx__col { display: grid; gap: 16px; }
.wd-fq {
  border-radius: 16px; background: #fff; border: 1px solid rgba(0, 66, 101, .06);
  box-shadow: 0 10px 26px rgba(0, 42, 68, .07); overflow: hidden; transition: box-shadow .3s;
}
.wd-fq:hover { box-shadow: 0 16px 34px rgba(0, 42, 68, .12); }
.wd-fq__q {
  display: flex; align-items: center; gap: 16px; width: 100%; padding: 14px 18px 14px 14px; border: 0;
  background: transparent; text-align: left; font: inherit; cursor: pointer; transition: background .3s;
}
.wd-fq__num {
  flex: 0 0 46px; width: 46px; height: 46px; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center;
  background: #eef3f8; font-size: 16px; font-weight: 700; color: #0d2a40; transition: background .3s, color .3s;
}
.wd-fq__icon {
  flex: 0 0 52px; width: 52px; height: 52px; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center;
  background: #e5f0f9; color: var(--wd-primary); transition: background .3s, color .3s, transform .3s;
}
.wd-fq--lime .wd-fq__icon { background: #f0f5d0; }
.wd-fq__text { flex: 1; font-size: 17px; font-weight: 700; line-height: 1.35; color: #0d2a40; transition: color .3s; }
.wd-fq__chev { flex: 0 0 auto; display: inline-flex; color: var(--wd-primary); transition: transform .35s, color .3s; }
.wd-fq__q:hover .wd-fq__icon { transform: scale(1.06); }
.wd-fq.is-open .wd-fq__q { background: linear-gradient(90deg, #0a3d5c 0%, #004265 100%); }
.wd-fq.is-open .wd-fq__num { background: rgba(255, 255, 255, .12); color: #fff; }
.wd-fq.is-open .wd-fq__icon { background: #fff; color: var(--wd-primary); }
.wd-fq.is-open .wd-fq__text { color: #fff; }
.wd-fq.is-open .wd-fq__chev { color: #fff; transform: rotate(180deg); }
/* Smooth height animation: answer row grows from 0fr to 1fr */
.wd-fq__a { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .4s ease; }
.wd-fq__a > div { overflow: hidden; }
.wd-fq.is-open .wd-fq__a { grid-template-rows: 1fr; }
.wd-fq__a p { margin: 0; padding: 16px 26px 20px 78px; font-size: 15px; line-height: 1.7; color: var(--wd-muted); }

.wd-faqx__help { margin-top: 44px; }

@media (prefers-reduced-motion: reduce) {
  .wd-fq__a, .wd-fq__chev { transition: none; }
  .wd-faqx__art img { animation: none; }
}
@media (max-width: 1199px) {
  .wd-faqx__layout { grid-template-columns: 1fr; }
  .wd-faqx__art { display: none; }
}
@media (max-width: 1099px) {
  .wd-faqx__help { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
  .wd-faqx__help li { border-left: 0; padding: 0; }
}
@media (max-width: 767px) {
  .wd-faqx { padding: 52px 0 52px; }
  .wd-faqx .wd-techx__shapes, .wd-faqx .wd-proc__dots, .wd-faqx__dots { display: none; }
  .wd-faqx__tools { flex-direction: column; align-items: stretch; }
  .wd-faqx__search { width: 100%; }
  .wd-faqx__ask { justify-content: center; }
  /* one list in question order (01-08) instead of two stacked columns */
  .wd-faqx__cols { display: flex; flex-direction: column; gap: 14px; }
  .wd-faqx__col { display: contents; }
  .wd-fq__q { gap: 10px; padding: 12px 14px 12px 10px; }
  .wd-fq__num { flex-basis: 36px; width: 36px; height: 36px; font-size: 13px; }
  .wd-fq__icon { flex-basis: 40px; width: 40px; height: 40px; }
  .wd-fq__icon svg { width: 18px; height: 18px; }
  .wd-fq__text { font-size: 15px; }
  .wd-fq__a p { padding: 14px 18px 18px; font-size: 14px; }
  .wd-faqx__help { grid-template-columns: 1fr; }
}

/* ---------- CTA banner ---------- */
/* .wd-cta-wrap { padding-top: 56px; } (was overridden by the older .wd-cta-wrap rule below) */
.wd-page .wd-cta-wrap { padding: 84px 0 36px; }
/* .wd-ctax__container { max-width: 1340px; } */
.wd-ctax__container { max-width: 1480px; }
.wd-ctax {
  position: relative; overflow: hidden; display: flex; align-items: center; justify-content: space-between; gap: 40px;
  padding: 58px 64px; border-radius: 26px; color: #fff;
  background: radial-gradient(700px 320px at 15% 30%, #0b4f78 0%, transparent 70%), linear-gradient(120deg, #0a3d5c 0%, #04324d 55%, #062a40 100%);
  box-shadow: 0 30px 60px rgba(0, 42, 68, .22);
}
.wd-ctax__bg { position: absolute; inset: 0; width: 100%; height: 100%; display: block; pointer-events: none; }
.wd-ctax__dots {
  position: absolute; right: 30px; bottom: 26px; width: 100px; height: 120px; pointer-events: none;
  background-image: radial-gradient(rgba(188, 207, 2, .7) 2px, transparent 2.5px); background-size: 24px 24px;
}
.wd-ctax__content, .wd-ctax__actions { position: relative; z-index: 1; }
.wd-ctax__eyebrow {
  display: inline-flex; align-items: center; gap: 10px; margin: 0 0 14px;
  font-size: 14px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: rgba(255, 255, 255, .9);
}
.wd-ctax__eyebrow span { width: 9px; height: 9px; border-radius: 50%; background: var(--wd-accent); }
.wd-ctax__title { margin: 0 0 14px; max-width: 760px; font-size: clamp(26px, 3.3vw, 46px); font-weight: 800; line-height: 1.15; letter-spacing: -1px; color: #fff; }
.wd-ctax__title span { display: block; color: var(--wd-accent); }
.wd-ctax__text { margin: 0; font-size: 18px; line-height: 1.6; color: rgba(255, 255, 255, .85); }
.wd-ctax__actions { flex: 0 0 auto; display: flex; flex-direction: column; align-items: center; gap: 22px; }
.wd-ctax__primary {
  display: inline-flex; align-items: center; gap: 14px; padding: 22px 34px; border-radius: 14px;
  background: linear-gradient(90deg, #c8da1c 0%, #dbe94a 100%); color: #0d2a40;
  font-size: 18px; font-weight: 800; text-decoration: none; white-space: nowrap;
  box-shadow: 0 16px 34px rgba(140, 160, 0, .4); transition: transform .25s, box-shadow .25s;
}
.wd-ctax__primary:hover { color: #0d2a40; transform: translateY(-2px); box-shadow: 0 22px 42px rgba(140, 160, 0, .5); }
.wd-ctax__arrow, .wd-bookcall__arrow { transition: transform .25s; }
.wd-ctax__primary:hover .wd-ctax__arrow, .wd-ctax__call:hover .wd-bookcall__arrow { transform: translateX(4px); }
/* Previous plain underlined Book a Call:
.wd-ctax__call {
  display: inline-flex; align-items: center; gap: 12px; padding: 4px 6px; border: 0; background: transparent;
  font: inherit; font-size: 17px; font-weight: 700; color: #fff; cursor: pointer;
}
.wd-ctax__call .wd-bookcall__label { padding-bottom: 3px; border-bottom: 2px solid rgba(255, 255, 255, .7); transition: border-color .25s, color .25s; }
.wd-ctax__call:hover .wd-bookcall__label { border-color: var(--wd-accent); color: var(--wd-accent); }
*/
.wd-ctax__call {
  position: relative; display: inline-flex; align-items: center; gap: 12px; padding: 13px 26px;
  border: 2px solid var(--wd-accent); border-radius: 999px; background: rgba(188, 207, 2, .1);
  font: inherit; font-size: 17px; font-weight: 700; color: #fff; cursor: pointer;
  animation: wd-call-blink 1.8s ease-in-out infinite;
  transition: background .25s, color .25s, transform .25s;
}
/* expanding ring that keeps pulsing out of the button */
.wd-ctax__call::before {
  content: ""; position: absolute; inset: -2px; border-radius: inherit; border: 2px solid var(--wd-accent);
  pointer-events: none; animation: wd-call-ring 1.8s ease-out infinite;
}
.wd-ctax__call > svg:first-child { color: var(--wd-accent); transform-origin: 50% 20%; animation: wd-call-shake 1.8s ease-in-out infinite; }
.wd-ctax__call .wd-bookcall__label { position: relative; }
.wd-ctax__call:hover { background: var(--wd-accent); color: #0d2a40; transform: translateY(-2px); animation-play-state: paused; }
.wd-ctax__call:hover > svg:first-child { color: #0d2a40; }
@keyframes wd-call-blink {
  0%, 100% { box-shadow: 0 0 0 0 rgba(188, 207, 2, 0); background: rgba(188, 207, 2, .1); }
  50% { box-shadow: 0 0 22px 4px rgba(188, 207, 2, .55); background: rgba(188, 207, 2, .26); }
}
@keyframes wd-call-ring { 0% { transform: scale(1); opacity: .85; } 100% { transform: scale(1.18, 1.45); opacity: 0; } }
@keyframes wd-call-shake {
  0%, 55%, 100% { transform: rotate(0); }
  60% { transform: rotate(-14deg); } 65% { transform: rotate(12deg); } 70% { transform: rotate(-10deg); } 75% { transform: rotate(8deg); } 80% { transform: rotate(0); }
}
@media (prefers-reduced-motion: reduce) {
  .wd-ctax__call, .wd-ctax__call::before, .wd-ctax__call > svg:first-child { animation: none; }
}

@media (max-width: 991px) {
  .wd-ctax { flex-direction: column; align-items: flex-start; padding: 44px 36px; }
  .wd-ctax__actions { align-items: flex-start; }
}
@media (max-width: 767px) {
  .wd-page .wd-cta-wrap { padding: 56px 0 24px; }
  .wd-ctax { padding: 34px 22px; border-radius: 20px; gap: 26px; }
  .wd-ctax__eyebrow { font-size: 11px; letter-spacing: .12em; }
  .wd-ctax__text { font-size: 15px; }
  .wd-ctax__actions { width: 100%; align-items: stretch; }
  .wd-ctax__primary { justify-content: center; padding: 17px 18px; font-size: 16px; white-space: normal; text-align: center; }
  .wd-ctax__call { justify-content: center; }
  .wd-ctax__dots { display: none; }
}

/* ---------- Process (animated steps) ---------- */
.wd-proc {
  position: relative; overflow: hidden; padding: 76px 0 84px;
  background: radial-gradient(1000px 520px at 50% 10%, #ffffff 0%, #f1f5f9 100%);
}
.wd-proc__shapes { position: absolute; inset: 0; width: 100%; height: 100%; display: block; pointer-events: none; }
.wd-proc__dots {
  position: absolute; width: 220px; height: 130px; pointer-events: none;
  background-image: radial-gradient(rgba(0, 66, 101, .13) 2.2px, transparent 2.7px); background-size: 20px 20px;
}
.wd-proc__dots--r { top: 22px; right: 3%; }
.wd-proc__dots--l { bottom: 24px; left: 0; width: 120px; }
.wd-proc__ring { position: absolute; border-radius: 50%; border: 3px solid var(--wd-accent); pointer-events: none; animation: wd-bob 6s ease-in-out infinite; }
.wd-proc__ring--a { width: 30px; height: 30px; top: 190px; right: 9%; }
.wd-proc__ring--b { width: 16px; height: 16px; top: 70px; right: 19%; border-width: 2px; animation-delay: -3s; }
.wd-proc__inner { position: relative; z-index: 1; max-width: 1380px; }

.wd-proc__head { text-align: center; margin-bottom: 18px; }
.wd-proc__pill {
  display: inline-flex; align-items: center; gap: 10px; margin: 0 0 16px; padding: 9px 22px;
  border-radius: 999px; background: #fbfde9; border: 1.5px solid #dfe89a;
  font-size: 14px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--wd-primary);
}
.wd-proc__pill svg { animation: wd-spin 8s linear infinite; }
.wd-proc__title { margin: 0; font-size: clamp(26px, 3.4vw, 46px); font-weight: 800; line-height: 1.15; letter-spacing: -1px; color: #0d2a40; }
.wd-proc__title span {
  background: linear-gradient(90deg, #8aa400 0%, #b3c800 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.wd-proc__lead { margin: 0 auto; max-width: 820px; font-size: 17px; line-height: 1.6; color: var(--wd-muted); }

/* Steps */
.wd-steps { position: relative; }
.wd-steps__line { position: absolute; top: 0; left: 0; width: 100%; height: 120px; overflow: visible; pointer-events: none; }
.wd-steps__path {
  fill: none; stroke: var(--wd-accent); stroke-width: 3; stroke-linecap: round;
  stroke-dasharray: 1; stroke-dashoffset: 1; transition: stroke-dashoffset 2.4s ease .2s;
}
.wd-steps.is-visible .wd-steps__path { stroke-dashoffset: 0; }
.wd-steps__peak { fill: var(--wd-accent); stroke: #fff; stroke-width: 3; transform-box: fill-box; transform-origin: center; transform: scale(0); transition: transform .4s ease; }
.wd-steps.is-visible .wd-steps__peak { transform: scale(1); transition-delay: 1.4s; }
.wd-steps__runner { fill: #fff; stroke: var(--wd-primary); stroke-width: 3; opacity: 0; transition: opacity .4s 2.4s; }
.wd-steps.is-visible .wd-steps__runner { opacity: 1; }

.wd-steps__list { list-style: none; margin: 0; padding: 70px 0 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 20px; align-items: start; }
.wd-step {
  position: relative; display: flex; flex-direction: column; padding: 36px 22px 24px;
  border-radius: 22px; border: 1px solid rgba(0, 66, 101, .06);
  box-shadow: 0 16px 36px rgba(0, 42, 68, .09);
  opacity: 0; transform: translateY(40px);
  transition: opacity .6s ease, transform .6s cubic-bezier(.2, .7, .2, 1), box-shadow .35s;
  transition-delay: calc(var(--wd-i) * 130ms + .3s);
}
.wd-step--navy { background: linear-gradient(180deg, #f2f7fc 0%, #ffffff 60%); }
.wd-step--lime { background: linear-gradient(180deg, #f6f9e0 0%, #ffffff 60%); }
.wd-step:nth-child(even) { margin-top: 16px; }
.wd-steps.is-visible .wd-step { opacity: 1; transform: translateY(0); }
.wd-steps.is-visible .wd-step.is-active { transform: translateY(-10px); box-shadow: 0 26px 50px rgba(0, 42, 68, .17); transition-delay: 0s; }

.wd-step__num {
  position: absolute; top: -26px; left: 2px; z-index: 1; width: 64px; height: 64px; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center;
  font-size: 22px; font-weight: 800; border: 5px solid #fff; box-shadow: 0 10px 22px rgba(0, 42, 68, .2);
  transition: transform .35s;
}
.wd-step--navy .wd-step__num { background: var(--wd-primary); color: #fff; }
.wd-step--lime .wd-step__num { background: var(--wd-accent); color: #0d2a40; }
.wd-step__num::after {
  content: ""; position: absolute; inset: -9px; border-radius: 50%; border: 2px solid var(--wd-accent); opacity: 0;
}
.wd-step.is-active .wd-step__num { transform: scale(1.08); }
.wd-step.is-active .wd-step__num::after { animation: wd-ping 1.6s ease-out infinite; }

.wd-step__art { display: flex; align-items: center; justify-content: center; height: 130px; margin-bottom: 16px; }
.wd-step__art img {
  display: block; max-width: 100%; max-height: 100%; width: auto; height: auto; mix-blend-mode: multiply;
  -webkit-mask-image: radial-gradient(ellipse 72% 70% at 50% 50%, #000 62%, transparent 100%); mask-image: radial-gradient(ellipse 72% 70% at 50% 50%, #000 62%, transparent 100%);
  animation: wd-bob 4.5s ease-in-out infinite; animation-delay: calc(var(--wd-i) * -.7s);
}
.wd-step__title { margin: 0 0 10px; font-size: 18px; font-weight: 800; line-height: 1.3; letter-spacing: -.2px; color: #0d2a40; }
.wd-step__desc { margin: 0 0 18px; font-size: 14.5px; line-height: 1.6; color: var(--wd-muted); }
.wd-step__bar { display: block; width: 52px; height: 4px; margin-top: auto; border-radius: 4px; transition: width .5s ease; }
.wd-step--navy .wd-step__bar { background: #1767b3; }
.wd-step--lime .wd-step__bar { background: var(--wd-accent); }
.wd-step.is-active .wd-step__bar { width: 100%; }

@keyframes wd-bob { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }
@keyframes wd-spin { to { transform: rotate(360deg); } }
@keyframes wd-ping { 0% { transform: scale(.85); opacity: .9; } 100% { transform: scale(1.35); opacity: 0; } }

@media (prefers-reduced-motion: reduce) {
  .wd-step, .wd-steps__path, .wd-steps__peak { transition: none; }
  .wd-step { opacity: 1; transform: none; }
  .wd-steps__path { stroke-dashoffset: 0; }
  .wd-steps__peak { transform: scale(1); }
  .wd-step__art img, .wd-proc__ring, .wd-proc__pill svg, .wd-step.is-active .wd-step__num::after { animation: none; }
  .wd-steps__runner { display: none; }
}
@media (max-width: 1199px) {
  .wd-steps__line { display: none; }
  .wd-steps__list { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 52px; padding-top: 40px; }
  .wd-step:nth-child(even) { margin-top: 0; }
}
@media (max-width: 767px) {
  .wd-proc { padding: 56px 0 60px; }
  .wd-proc__shapes, .wd-proc__dots, .wd-proc__ring { display: none; }
  .wd-proc__pill { font-size: 11px; padding: 7px 14px; }
  .wd-proc__lead { font-size: 15px; }
  .wd-steps__list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 44px 14px; }
  .wd-step { padding: 34px 14px 18px; }
  .wd-step__num { width: 52px; height: 52px; font-size: 18px; top: -22px; }
  .wd-step__art { height: 96px; }
  .wd-step__title { font-size: 15px; }
  .wd-step__desc { font-size: 13px; }
}
@media (max-width: 420px) {
  .wd-steps__list { grid-template-columns: 1fr; }
}

/* ---------- Process ---------- */
.wd-process { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 20px; position: relative; }
.wd-process::before { content: ""; position: absolute; top: 22px; left: 22px; right: 22px; height: 2px; background: linear-gradient(90deg, var(--wd-primary), var(--wd-accent)); }
.wd-process__step { position: relative; }
.wd-process__num {
  position: relative; z-index: 1; width: 44px; height: 44px; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center; margin-bottom: 16px;
  background: var(--wd-primary); color: #fff; font-size: 14px; font-weight: 700;
  box-shadow: 0 0 0 6px #fff;
}
.wd-process__step h3 { margin: 0 0 6px; font-size: 15px; font-weight: 700; color: var(--wd-text); }
.wd-process__step p { margin: 0; font-size: 13px; line-height: 1.6; color: var(--wd-muted); }

/* ---------- Pricing ---------- */
.wd-tabs { display: inline-flex; padding: 4px; border-radius: 10px; background: #fff; border: 1px solid var(--wd-border); }
.wd-tabs button {
  padding: 9px 16px; border: 0; border-radius: 7px; background: transparent;
  font: inherit; font-size: 13px; font-weight: 600; color: var(--wd-muted); cursor: pointer;
}
.wd-tabs button.is-active { background: var(--wd-primary); color: #fff; }

.wd-pricing { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; align-items: stretch; }
.wd-plan {
  position: relative; display: flex; flex-direction: column; padding: 28px;
  background: #fff; border: 1px solid var(--wd-border); border-radius: 16px;
}
.wd-plan--popular { border: 2px solid var(--wd-primary); box-shadow: 0 18px 40px rgba(0, 66, 101, 0.14); }
.wd-plan__badge {
  position: absolute; top: 18px; right: 18px; padding: 5px 12px; border-radius: 999px;
  background: var(--wd-accent); color: var(--wd-primary-dark); font-size: 12px; font-weight: 700;
}
.wd-plan__name { margin: 0 0 4px; font-size: 18px; font-weight: 700; color: var(--wd-text); }
.wd-plan__tagline { margin: 0 0 18px; font-size: 13px; color: var(--wd-muted); }
.wd-plan__price { margin: 0 0 20px; font-size: 36px; font-weight: 800; color: var(--wd-primary); line-height: 1; }
.wd-plan__features { list-style: none; margin: 0 0 24px; padding: 0; display: grid; gap: 10px; flex: 1; }
.wd-plan__features li { display: flex; align-items: center; gap: 10px; font-size: 14px; color: var(--wd-text); }
.wd-plan__features svg { flex: 0 0 16px; }
.wd-custom {
  display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap;
  padding: 36px; background: #fff; border: 2px solid var(--wd-primary); border-radius: 16px;
}
.wd-custom .wd-lead { margin-bottom: 18px; }
.wd-custom .wd-plan__features { margin-bottom: 0; }

/* ---------- Technologies ---------- */
.wd-tech { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(11, minmax(0, 1fr)); gap: 16px; }
.wd-tech li { display: flex; flex-direction: column; align-items: center; gap: 10px; text-align: center; }
.wd-tech__logo {
  width: 64px; height: 64px; border-radius: 16px; border: 1.5px solid;
  display: inline-flex; align-items: center; justify-content: center;
  background: #fff; font-size: 16px; font-weight: 800; box-shadow: 0 6px 18px rgba(0, 0, 0, .05);
  transition: transform .2s;
}
.wd-tech li:hover .wd-tech__logo { transform: translateY(-3px); }
.wd-tech__name { font-size: 12px; font-weight: 600; color: var(--wd-muted); }

/* ---------- Reviews ---------- */
.wd-reviews { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.wd-review {
  display: flex; flex-direction: column; margin: 0; padding: 26px;
  background: #fff; border: 1px solid var(--wd-border); border-radius: var(--wd-radius);
}
.wd-review__stars { color: #f5a623; font-size: 18px; letter-spacing: 2px; margin-bottom: 10px; }
.wd-review__title { margin: 0 0 8px; font-size: 15px; font-weight: 700; color: var(--wd-text); }
.wd-review blockquote { margin: 0 0 20px; flex: 1; font-size: 14px; line-height: 1.7; color: var(--wd-muted); }
.wd-review figcaption { display: flex; align-items: center; gap: 12px; }
.wd-review figcaption strong { display: block; font-size: 14px; color: var(--wd-text); }
.wd-review figcaption small { font-size: 12px; color: var(--wd-muted); }
.wd-review__avatar {
  flex: 0 0 42px; width: 42px; height: 42px; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--wd-primary); color: var(--wd-accent); font-weight: 700;
}

/* ---------- FAQ ---------- */
.wd-faq { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 24px; align-items: start; }
.wd-faq__item { background: #fff; border: 1px solid var(--wd-border); border-radius: 10px; }
.wd-faq__item summary {
  position: relative; list-style: none; cursor: pointer;
  padding: 16px 48px 16px 18px; font-size: 15px; font-weight: 600; color: var(--wd-text);
}
.wd-faq__item summary::-webkit-details-marker { display: none; }
.wd-faq__item summary::after {
  content: ""; position: absolute; right: 20px; top: 50%; width: 8px; height: 8px;
  border-right: 2px solid var(--wd-primary); border-bottom: 2px solid var(--wd-primary);
  transform: translateY(-70%) rotate(45deg); transition: transform .2s;
}
.wd-faq__item[open] summary::after { transform: translateY(-30%) rotate(-135deg); }
.wd-faq__item[open] { border-color: #cfe0ec; box-shadow: var(--wd-shadow); }
.wd-faq__item p { margin: 0; padding: 0 18px 18px; font-size: 14px; line-height: 1.7; color: var(--wd-muted); }

/* ---------- CTA ---------- */
.wd-cta-wrap { padding: 0 0 72px; }
.wd-cta {
  display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap;
  padding: 44px 48px; border-radius: 20px; color: #fff;
  background: radial-gradient(600px 300px at 100% 0%, rgba(188, 207, 2, .18), transparent 60%), linear-gradient(135deg, var(--wd-primary) 0%, var(--wd-primary-dark) 100%);
}
.wd-cta__title { margin: 0 0 10px; font-size: clamp(22px, 3vw, 32px); font-weight: 800; line-height: 1.2; color: #fff; max-width: 560px; }
.wd-cta__text { margin: 0; font-size: 15px; color: rgba(255, 255, 255, .8); }
.wd-cta__actions { display: flex; flex-direction: column; gap: 12px; min-width: 260px; }

/* ---------- Responsive ---------- */
@media (max-width: 1199px) {
  .wd-tech { grid-template-columns: repeat(6, minmax(0, 1fr)); row-gap: 24px; }
  .wd-process { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 32px; }
  .wd-process::before { display: none; }
}

@media (max-width: 991px) {
  .wd-services, .wd-pricing, .wd-reviews { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wd-carousel__track { grid-auto-columns: calc((100% - 28px) / 2); }
  .wd-carousel__arrow--prev { left: -8px; }
  .wd-carousel__arrow--next { right: -8px; }
  .wd-trust__row { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 767px) {
  .wd-container { padding: 0 16px; }
  .wd-section { padding: 52px 0; }
  .wd-services, .wd-pricing, .wd-reviews, .wd-faq { grid-template-columns: 1fr; }
  .wd-carousel__track { grid-auto-columns: 85%; }
  .wd-carousel__arrow { display: none; }
  .wd-process { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wd-tech { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .wd-tech__logo { width: 54px; height: 54px; font-size: 14px; }
  .wd-trust__stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; width: 100%; }
  .wd-stat, .wd-stat:first-child { padding: 0; border-left: 0; }
  .wd-trust__badges img { height: 38px; }
  .wd-plan--popular { order: -1; }
  .wd-custom, .wd-cta { padding: 28px 22px; }
  .wd-cta__actions { width: 100%; min-width: 0; }
  .wd-section__head--row { align-items: flex-start; }
}

/* ---------- Section joins ----------
   Each section draws its own navy/lime corner shapes, so where two sections
   meet the shapes were cut off by a hard horizontal line. Fading the shapes
   (and the section background tint) out at the top and bottom edges makes
   one section flow into the next while the shapes themselves stay the same. */
.wd-svc__shapes, .wd-proc__shapes, .wd-price__shapes, .wd-techx__shapes {
  -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 110px, #000 calc(100% - 110px), transparent 100%);
  mask-image: linear-gradient(180deg, transparent 0, #000 110px, #000 calc(100% - 110px), transparent 100%);
}
.wd-svc, .wd-proc, .wd-price, .wd-techx, .wd-rvs, .wd-faqx { background: #f3f6fa; }
.wd-svc::before, .wd-proc::before, .wd-price::before, .wd-techx::before, .wd-rvs::before, .wd-faqx::before {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(900px 480px at 50% 30%, rgba(255, 255, 255, .95) 0%, rgba(255, 255, 255, 0) 70%);
}

/* ---------- Tighter section spacing ----------
   Overrides the top/bottom padding of every section below the hero so the
   page reads as one continuous flow (original values above are untouched;
   delete this block to restore them). */
.wd-page .wd-trustx { padding: 32px 0 28px; }
.wd-page .wd-techx { padding: 28px 0 0; }
.wd-page .wd-svc { padding: 36px 0 40px; }
.wd-page .wd-proc { padding: 40px 0 40px; }
.wd-page .wd-price { padding: 40px 0 40px; }
.wd-page .wd-rvs { padding: 40px 0 40px; }
.wd-page .wd-faqx { padding: 40px 0 40px; }
.wd-page .wd-cta-wrap { padding: 40px 0 32px; }
@media (max-width: 767px) {
  .wd-page .wd-trustx { padding: 28px 0 24px; }
  .wd-page .wd-techx { padding: 24px 0 0; }
  .wd-page .wd-svc, .wd-page .wd-proc, .wd-page .wd-price,
  .wd-page .wd-rvs, .wd-page .wd-faqx { padding: 32px 0 32px; }
  .wd-page .wd-cta-wrap { padding: 32px 0 24px; }
}

/* CTA "Book a Call" jumps to the hero form: smooth scroll on this page only */
html:has(.wd-page) { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html:has(.wd-page) { scroll-behavior: auto; } }
.wd-page a.wd-ctax__call { text-decoration: none; }
/* In-page jumps (hero "View Pricing Plans") stop below the sticky header */
.wd-page section[id] { scroll-margin-top: 90px; }

/* ---------- Featured Projects (re-enabled with real client screenshots) ----------
   Screenshots are wide (about 2.25:1), so the image area follows their shape
   and shows the top of the page instead of cropping the sides. Spacing and
   edge fades match the other sections. */
.wd-page .wd-project__img { aspect-ratio: 1200 / 560; background: #eef3f8; }
.wd-page .wd-project__img img { object-position: center top; }
.wd-page .wd-proj { padding: 40px 0 40px; background: #f3f6fa; }
.wd-proj__shapes {
  -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 110px, #000 calc(100% - 110px), transparent 100%);
  mask-image: linear-gradient(180deg, transparent 0, #000 110px, #000 calc(100% - 110px), transparent 100%);
}
@media (max-width: 767px) {
  .wd-page .wd-proj { padding: 32px 0 32px; }
}
/* Projects slider: arrows sit in a row under the cards (prev - dots - next)
   instead of floating over them. Reviews slider keeps its own arrows. */
.wd-proj .wd-carousel { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; column-gap: 18px; }
.wd-proj .wd-carousel__track { flex: 0 0 calc(100% + 12px); order: 0; }
.wd-proj .wd-carousel__arrow {
  position: static; order: 1; display: inline-flex; width: 46px; height: 46px; margin-top: 14px;
  box-shadow: 0 8px 20px rgba(0, 42, 68, .14);
}
.wd-proj .wd-carousel__dots { order: 2; margin-top: 14px; }
.wd-proj .wd-carousel__arrow--next { order: 3; }
@media (max-width: 767px) {
  .wd-proj .wd-carousel { column-gap: 12px; }
  .wd-proj .wd-carousel__arrow { width: 40px; height: 40px; }
  .wd-proj .wd-carousel__dots { gap: 6px; }
}
/* Project cards with square corners (were rounded 22px) */
.wd-page .wd-project, .wd-page .wd-project__img { border-radius: 0; }
