.elementor-2231 .elementor-element.elementor-element-1030dff6{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}.elementor-2231 .elementor-element.elementor-element-1030dff6:not(.elementor-motion-effects-element-type-background), .elementor-2231 .elementor-element.elementor-element-1030dff6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}/* Start custom CSS for html, class: .elementor-element-5d07e15d */#pbtest-tsm {
    --b900: #03153A;
    --b800: #0B2361;
    --b700: #1333A0;
    --b600: #1A44C2;
    --b500: #2563EB;
    --b400: #3B82F6;
    --b300: #93C5FD;
    --b200: #BFDBFE;
    --b100: #DBEAFE;
    --b50: #EFF6FF;
    --b25: #F5F9FF;
    --ink: #0A1628;
    --ink2: #1E2D48;
    --muted: #4B5E7A;
    --soft: #8FA3BF;
    --border: #DDE6F3;
    --white: #FFFFFF;
    --star: #F59E0B;
    --fh: 'Manrope', sans-serif;
    --fb: 'Plus Jakarta Sans', sans-serif;
    --r: 20px;
    font-family: var(--fb) !important;
    padding: 52px 10px 50px !important;
    overflow: hidden !important;
    position: relative !important;
  }

  #pbtest-tsm,
  #pbtest-tsm * { box-sizing: border-box !important; }

  .pbtest-ww {
    max-width: 1240px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
  }

  /* ── Header ── */
  .pbtest-headerm {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 32px !important;
    margin-bottom: 8px !important;
    flex-wrap: nowrap !important;
  }

  .pbtest-headerm-left {
    flex: 1 !important;
    min-width: 0 !important;
  }

  .pbtest-pill {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    background: var(--b50) !important;
    border: 1px solid var(--b200) !important;
    border-radius: 8px !important;
    padding: 4px 13px 4px 8px !important;
    margin-bottom: 12px !important;
  }

  .pbtest-pill .dot {
    width: 6px !important;
    height: 6px !important;
    border-radius: 50% !important;
    background: var(--b500) !important;
    animation: pbtestBlink 2.4s ease-in-out infinite !important;
  }

  @keyframes pbtestBlink {
    0%, 100% { opacity: 1; transform: scale(1); }
    50%       { opacity: .3; transform: scale(.75); }
  }

  .pbtest-pill span {
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: .09em !important;
    text-transform: uppercase !important;
    color: var(--b600) !important;
  }

  .pbtest-h2 {
    font-family: var(--fh) !important;
    font-size: clamp(26px, 2.6vw, 38px) !important;
    font-weight: 800 !important;
    line-height: 1.16 !important;
    color: var(--ink) !important;
    margin: 0 !important;
  }

  .pbtest-h2 .hl { color: var(--b500) !important; }

  .pbtest-sub {
    font-size: 14px !important;
    line-height: 1.6 !important;
    color: var(--soft) !important;
    font-weight: 400 !important;
    margin-top: 10px !important;
  }

  .pbtest-headerm-right {
    flex-shrink: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
  }

  .pbtest-gimg {
    height: 200px !important;
    width: auto !important;
    max-width: 380px !important;
    object-fit: contain !important;
    display: block !important;
  }

  .pbtest-gfallback {
    display: none !important;
    align-items: center !important;
    gap: 10px !important;
    background: var(--b50) !important;
    border: 1.5px solid var(--b200) !important;
    border-radius: 12px !important;
    padding: 12px 20px !important;
  }

  .pbtest-gfallback .gstars { font-size: 22px !important; color: var(--star) !important; }
  .pbtest-gfallback .gnum  { font-family: var(--fh) !important; font-size: 22px !important; font-weight: 800 !important; color: var(--ink) !important; line-height: 1 !important; }
  .pbtest-gfallback .glbl  { font-size: 11px !important; color: var(--soft) !important; text-transform: uppercase !important; letter-spacing: .06em !important; }

  /* ── Main Card ── */
  .pbtest-card {
    background: var(--white) !important;
    border: 1px solid var(--border) !important;
    border-radius: var(--r) !important;
    display: grid !important;
    grid-template-columns: 1fr 300px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 4px rgba(37,99,235,.04), 0 8px 8px rgba(37,99,235,.08) !important;
    position: relative !important;
    transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease !important;
  }

  .pbtest-card:hover {
    transform: translateY(-4px) !important;
    border-color: rgba(37,99,235,.25) !important;
    box-shadow: 0 18px 46px rgba(37,99,235,.12), 0 4px 12px rgba(10,22,40,.05) !important;
  }

  /* ── Left ── */
  .pbtest-left {
    padding: 30px 44px 24px !important;
    display: flex !important;
    flex-direction: column !important;
    position: relative !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }



  .pbtest-tag {
    display: inline-flex !important;
    align-items: center !important;
    background: var(--b600) !important;
    border: 1px solid var(--b200) !important;
    border-radius: 8px !important;
    padding: 6px 12px !important;
    font-size: 10.5px !important;
    font-weight: 700 !important;
    color: #fff !important;
    letter-spacing: .07em !important;
    text-transform: uppercase !important;
    align-self: flex-start !important;
    margin-bottom: 14px !important;
    position: relative !important;
    z-index: 2 !important;
    transition: opacity .35s ease, transform .35s ease !important;
  }

  .pbtest-stars {
    display: flex !important;
    gap: 3px !important;
    margin-bottom: 12px !important;
    position: relative !important;
    z-index: 2 !important;
    transition: opacity .35s ease, transform .35s ease !important;
  }

  .pbtest-stars span { font-size: 15px !important; color: var(--star) !important; }

  .pbtest-quote {
    font-family: var(--fb) !important;
    font-size: 15.5px !important;
    line-height: 1.7 !important;
    color: var(--muted) !important;
    font-weight: 400 !important;
    font-style: italic !important;
    position: relative !important;
    z-index: 2 !important;
    overflow: hidden !important;
    margin: 0 !important;
    transition: opacity .35s ease, transform .35s ease !important;
  }

  .pbtest-quote strong { font-style: normal !important; font-weight: 700 !important; color: var(--ink2) !important; }

  .pbtest-author {
    display: flex !important;
    align-items: center !important;
    gap: 13px !important;
    margin-top: 16px !important;
    padding-top: 16px !important;
    border-top: 1px solid #EBF1FB !important;
    position: relative !important;
    z-index: 2 !important;
    transition: opacity .35s ease, transform .35s ease !important;
  }

  .pbtest-av {
    width: 48px !important;
    height: 48px !important;
    border-radius: 12px !important;
    background: var(--white) !important;
    border: 1.5px solid var(--b200) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    padding: 7px !important;
    box-shadow: 0 6px 14px rgba(37,99,235,.08) !important;
  }

  .pbtest-av img { max-width: 30px !important; max-height: 30px !important; width: auto !important; height: auto !important; object-fit: contain !important; display: block !important; }

  .pbtest-a-name { font-family: var(--fh) !important; font-size: 14px !important; font-weight: 700 !important; color: var(--ink) !important; line-height: 1 !important; margin-bottom: 5px !important; }

  .pbtest-a-meta {
    font-size: 12px !important;
    color: var(--soft) !important;
    font-weight: 400 !important;
    display: flex !important;
    align-items: center !important;
    gap: 5px !important;
    flex-wrap: wrap !important;
  }

  .pbtest-a-meta .role { color: var(--muted) !important; font-weight: 500 !important; }
  .pbtest-a-meta .sep  { color: var(--border) !important; }
  .pbtest-a-meta .co   { color: var(--b500) !important; font-weight: 600 !important; }

  /* ── Nav ── */
  .pbtest-nav {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin-top: 16px !important;
    position: relative !important;
    z-index: 2 !important;
  }

  .pbtest-nbtn {
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    border: 1.5px solid var(--border) !important;
    background: var(--white) !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--ink2) !important;
    transition: background .2s, border-color .2s, color .2s, transform .2s !important;
    padding: 0 !important;
  }

  .pbtest-nbtn:hover { background: var(--b500) !important; border-color: var(--b500) !important; color: #fff !important; transform: scale(1.09) !important; }
  .pbtest-nbtn svg  { width: 14px !important; height: 14px !important; }

  .pbtest-dots { display: flex !important; gap: 6px !important; align-items: center !important; margin-left: 4px !important; }

  .pbtest-dot {
    width: 7px !important;
    height: 7px !important;
    border-radius: 50% !important;
    background: var(--b200) !important;
    border: none !important;
    cursor: pointer !important;
    padding: 0 !important;
    transition: all .3s cubic-bezier(.4,0,.2,1) !important;
  }

  .pbtest-dot.on { background: var(--b500) !important; width: 22px !important; border-radius: 4px !important; }

  /* ── Right Panel ── */
  .pbtest-right {
    position: relative !important;
    overflow: hidden !important;
    background: radial-gradient(circle at 20% 18%, rgba(37,99,235,.12), transparent 32%),
                radial-gradient(circle at 85% 75%, rgba(147,197,253,.32), transparent 35%),
                linear-gradient(180deg, var(--b25), var(--b50)) !important;
    border-left: 1px solid #EBF1FB !important;
    display: flex !important;
    align-items: stretch !important;
    justify-content: center !important;
  }

  .pbtest-logo-panel {
    width: 100% !important;
    padding: 24px 20px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    position: relative !important;
    z-index: 2 !important;
  }

  .pbtest-main-logo-card {
    background: rgba(255,255,255,.82) !important;
    border: 1px solid rgba(37,99,235,.14) !important;
    border-radius: 20px !important;
    box-shadow: 0 14px 32px rgba(37,99,235,.10), inset 0 1px 0 rgba(255,255,255,.7) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    padding: 20px 18px !important;
    position: relative !important;
    overflow: hidden !important;
    transition: transform .35s ease, box-shadow .35s ease !important;
    flex: 1 !important;
  }

  .pbtest-main-logo-card::before {
    content: "" !important;
    position: absolute !important;
    top: -70% !important; left: -40% !important;
    width: 80% !important; height: 220% !important;
    background: linear-gradient(100deg, transparent, rgba(255,255,255,.9), transparent) !important;
    transform: rotate(18deg) !important;
    transition: left .8s ease !important;
    opacity: .8 !important;
  }

  .pbtest-card:hover .pbtest-main-logo-card::before { left: 120% !important; }

  .pbtest-main-logo-frame {
    width: 150px !important;
    height: 52px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    overflow: hidden !important;
    position: relative !important;
    z-index: 2 !important;
  }

  .pbtest-main-logo {
    max-width: 130px !important; max-height: 44px !important;
    width: auto !important; height: auto !important;
    object-fit: contain !important; display: block !important;
    transition: opacity .35s ease, transform .35s ease, filter .35s ease !important;
  }

  .pbtest-logo-name {
    font-family: var(--fh) !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    color: var(--ink) !important;
    text-align: center !important;
    line-height: 1.2 !important;
    position: relative !important;
    z-index: 2 !important;
    transition: opacity .35s ease, transform .35s ease !important;
  }

  .pbtest-logo-sector {
    font-size: 11px !important;
    font-weight: 700 !important;
    color: var(--b500) !important;
    background: var(--b50) !important;
    border: 1px solid var(--b200) !important;
    border-radius: 999px !important;
    padding: 5px 12px !important;
    position: relative !important;
    z-index: 2 !important;
    transition: opacity .35s ease, transform .35s ease !important;
  }

  /* ── Logo Carousel ── */
  .pbtest-logo-carousel-wrap {
    position: relative !important;
    margin-top: 14px !important;
    overflow: hidden !important;
    z-index: 3 !important;
    flex-shrink: 0 !important;
  }

  .pbtest-logo-carousel-wrap::before,
  .pbtest-logo-carousel-wrap::after {
    content: "" !important;
    position: absolute !important;
    top: 0 !important; bottom: 0 !important;
    width: 28px !important;
    z-index: 5 !important;
    pointer-events: none !important;
  }

  .pbtest-logo-carousel-wrap::before { left: 0 !important; background: linear-gradient(to right, var(--b25) 30%, transparent) !important; }
  .pbtest-logo-carousel-wrap::after  { right: 0 !important; background: linear-gradient(to left, var(--b50) 30%, transparent) !important; }

  .pbtest-logo-track {
    display: flex !important;
    gap: 9px !important;
    width: max-content !important;
    animation: pbLogoScroll 18s linear infinite !important;
  }

  .pbtest-logo-track:hover { animation-play-state: paused !important; }

  @keyframes pbLogoScroll {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-50%); }
  }

  .pbtest-logo-thumb {
    flex-shrink: 0 !important;
    width: 58px !important; height: 44px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(37,99,235,.12) !important;
    background: rgba(255,255,255,.82) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 7px !important;
    cursor: pointer !important;
    overflow: hidden !important;
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease, opacity .25s ease !important;
    opacity: .65 !important;
  }

  .pbtest-logo-thumb img { max-width: 40px !important; max-height: 24px !important; width: auto !important; height: auto !important; object-fit: contain !important; display: block !important; }

  .pbtest-logo-thumb:hover { opacity: 1 !important; transform: translateY(-2px) !important; background: #fff !important; border-color: var(--b300) !important; box-shadow: 0 8px 18px rgba(37,99,235,.13) !important; }
  .pbtest-logo-thumb.on    { opacity: 1 !important; background: #fff !important; border-color: var(--b500) !important; box-shadow: 0 8px 20px rgba(37,99,235,.18), 0 0 0 3px rgba(37,99,235,.08) !important; }

  /* ── Transition States ── */
  .pbtest-left.transitioning .pbtest-tag,
  .pbtest-left.transitioning .pbtest-stars,
  .pbtest-left.transitioning .pbtest-quote,
  .pbtest-left.transitioning .pbtest-author { opacity: 0 !important; transform: translateY(10px) !important; }

  .pbtest-right.transitioning .pbtest-main-logo,
  .pbtest-right.transitioning .pbtest-logo-name,
  .pbtest-right.transitioning .pbtest-logo-sector { opacity: 0 !important; transform: translateY(8px) scale(.98) !important; }

  /* ================================================================
     RESPONSIVE
  ================================================================ */

  /* ── Tablet (≤960px) ── */
  @media (max-width: 960px) {
    .pbtest-card {
      grid-template-columns: 1fr !important;
    }

    .pbtest-right {
      border-left: none !important;
      border-top: 1px solid #EBF1FB !important;
      min-height: 240px !important;
    }

    .pbtest-logo-panel {
      flex-direction: row !important;
      gap: 16px !important;
      align-items: center !important;
      padding: 20px !important;
    }

    .pbtest-main-logo-card {
      flex: 0 0 160px !important;
      min-height: 130px !important;
    }

    .pbtest-logo-carousel-wrap {
      flex: 1 !important;
      margin-top: 0 !important;
    }

    .pbtest-logo-track {
      animation-duration: 14s !important;
    }
  }

  /* ── Mobile (≤720px) ── */
  @media (max-width: 720px) {
    #pbtest-tsm {
      padding: 36px 0 40px !important;
    }

    .pbtest-ww {
      padding: 0 16px !important;
    }

   @media (max-width: 720px) {

  /* Hide Google review image on mobile */
  .pbtest-headerm-right {
    display: none !important;
  }

  /* Center the header text */
  .pbtest-headerm {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 0 !important;
    margin-bottom: 1px !important;
  }

  .pbtest-headerm-left {
    width: 100% !important;
    text-align: center !important;
  }

  /* rest of your existing 720px rules below... */
}
    .pbtest-h2 {
      font-size: clamp(22px, 6vw, 30px) !important;
    }

    .pbtest-sub {
      font-size: 13.5px !important;
    }

    /* Card left */
    .pbtest-left {
      padding: 24px 18px 20px !important;
    }

    .pbtest-qmark {
      font-size: 90px !important;
      top: 38px !important;
      left: 10px !important;
    }

    .pbtest-quote {
      font-size: 14px !important;
      line-height: 1.65 !important;
    }

    /* Card right: stack logo card + carousel vertically */
    .pbtest-right {
      min-height: auto !important;
    }

    .pbtest-logo-panel {
      flex-direction: column !important;
      gap: 14px !important;
      padding: 18px 16px !important;
    }

    .pbtest-main-logo-card {
      flex: none !important;
      width: 100% !important;
      min-height: auto !important;
      padding: 16px !important;
    }

    .pbtest-logo-carousel-wrap {
      margin-top: 0 !important;
      width: 100% !important;
    }

    /* Dots — hide excess dots on small screens to avoid overflow */
    .pbtest-dots {
      gap: 5px !important;
      flex-wrap: nowrap !important;
      overflow: hidden !important;
      max-width: calc(100% - 90px) !important;
    }

    .pbtest-dot {
      flex-shrink: 0 !important;
    }
  }

  /* ── Small phones (≤480px) ── */
  @media (max-width: 480px) {
    #pbtest-tsm {
      padding: 28px 0 32px !important;
    }
     .pbtest-headerm-right {
    display: none !important;
  }

    .pbtest-ww {
      padding: 0 14px !important;
    }

    .pbtest-h2 {
      font-size: clamp(20px, 7vw, 26px) !important;
      line-height: 1.2 !important;
    }

    .pbtest-h2 br {
      display: none !important;
    }

    .pbtest-sub {
      font-size: 13px !important;
    }

    .pbtest-gimg {
      height: 66px !important;
      max-width: 230px !important;
    }

    .pbtest-left {
      padding: 20px 14px 18px !important;
    }

    .pbtest-qmark {
      font-size: 72px !important;
      top: 28px !important;
      left: 8px !important;
      opacity: 0.7 !important;
    }

    .pbtest-tag {
      font-size: 9.5px !important;
      padding: 5px 10px !important;
      margin-bottom: 10px !important;
    }

    .pbtest-stars span {
      font-size: 13px !important;
    }

    .pbtest-quote {
      font-size: 13.5px !important;
      line-height: 1.62 !important;
    }

    .pbtest-author {
      gap: 10px !important;
      margin-top: 14px !important;
      padding-top: 14px !important;
    }

    .pbtest-av {
      width: 40px !important;
      height: 40px !important;
      padding: 6px !important;
    }

    .pbtest-a-name {
      font-size: 13px !important;
    }

    .pbtest-a-meta {
      font-size: 11px !important;
      gap: 4px !important;
    }

    .pbtest-nav {
      margin-top: 14px !important;
      gap: 8px !important;
    }

    .pbtest-nbtn {
      width: 32px !important;
      height: 32px !important;
    }

    .pbtest-nbtn svg {
      width: 12px !important;
      height: 12px !important;
    }

    .pbtest-logo-panel {
      padding: 14px 12px !important;
      gap: 12px !important;
    }

    .pbtest-main-logo-card {
      padding: 14px !important;
      border-radius: 14px !important;
      gap: 8px !important;
    }

    .pbtest-main-logo-frame {
      width: 120px !important;
      height: 42px !important;
    }

    .pbtest-main-logo {
      max-width: 100px !important;
      max-height: 36px !important;
    }

    .pbtest-logo-name {
      font-size: 13px !important;
    }

    .pbtest-logo-sector {
      font-size: 10px !important;
      padding: 4px 10px !important;
    }

    .pbtest-logo-thumb {
      width: 50px !important;
      height: 38px !important;
    }

    .pbtest-logo-thumb img {
      max-width: 34px !important;
      max-height: 20px !important;
    }

    /* Dots overflow guard */
    .pbtest-dots {
      max-width: calc(100% - 80px) !important;
    }
  }

  /* ── Reduced motion ── */
  @media (prefers-reduced-motion: reduce) {
    .pbtest-logo-track { animation: none !important; }
    .pbtest-pill .dot  { animation: none !important; }
  }/* End custom CSS */
/* Start custom CSS */:root {
  --navy: #050B18;
  --midnight: #08111F;
  --card-navy: #0D1728;
  /*--cyan: #00C8FF;*/
  --cyan: #2c74ff;
  --purple: #7A5CFF;
  --mint: #26F4B8;
  --gold: #F5C76B;
  --ice: #F5F7FA;
  --cool-grey: #AAB4C3;
  --muted-grey: #748096;
  --border: #1C2B40;
  --gradient: linear-gradient(135deg, #00C8FF 0%, #7A5CFF 58%, #26F4B8 100%);
}
body{
    overflow-x: hidden;
}

.pb-neural-dots {
  position: absolute;
  inset: 0;
  background-color: #050B18;
  background-image: radial-gradient(
    circle,
    rgba(0, 200, 255, 0.45) 1px,
    transparent 1px
  );
  background-size: 32px 32px;
  animation: pbDotDrift 8s linear infinite;
}

.pb-neural-dots::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse at 20% 30%, rgba(0,200,255,0.08), transparent 45%),
    radial-gradient(ellipse at 80% 15%, rgba(122,92,255,0.10), transparent 20%),
    radial-gradient(ellipse at 55% 85%, rgba(38,244,184,0.10), transparent 20%);
}

.pb-neural-dots::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(5, 11, 24, 0) 20%,
    rgba(5, 11, 24, 0.55) 100%
  );
}

@keyframes pbDotDrift {
  from { background-position: 0 0; }
  to   { background-position: 32px 32px; }
}/* End custom CSS */