/* page inline 01 */
.mn-directory-layout section
      {
         background-color:transparent !important;
      }
section
      {
         background-color:transparent;
      }

.headingred {
         color: #ee4865;
      }
     #global-accreditations {
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
  max-height: 130px;
  transition: opacity 0.3s ease;
}

#global-accreditations.carousel-ready,
#global-accreditations.owl-loaded {
  opacity: 1;
  visibility: visible;
   max-height: fit-content;
}

/* page inline 02 */

      body.op-blur-active .modal-backdrop {
    /* backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important; */
    background-color:rgb(66 70 87 / 52%) !important;
    opacity: 1 !important;
    transition: backdrop-filter 0.6s cubic-bezier(0.16, 1, 0.3, 1), background-color 0.6s ease !important;
  }

  /* Premium transition overrides for the Bootstrap modal overlay */
  #optimarPromoModal.fade .modal-dialog {
    transform: rotateX(10deg) translateY(50px) scale(0.95);
    opacity: 0;
    transform-style: preserve-3d;
    backface-visibility: hidden;
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.5s cubic-bezier(0.16, 1, 0.3, 1);
  }

  #optimarPromoModal.show .modal-dialog {
    transform: rotateX(0deg) translateY(0) scale(1) !important;
    opacity: 1 !important;
  }

  /* Custom sizing for the compact dialog to avoid full-screen / empty spaces */
  .op-modal-dialog {
    max-width: 580px;
    width: 92%;
    margin: 1.75rem auto;
  }

  /* Centered, high-density compact card layout */
  .op-card {
    background: #ffffff;
    border-radius: 24px !important;
    border: none !important;
    box-shadow: 
      0 0 0 1px rgba(255, 255, 255, 0.8) inset,
      0 20px 50px -10px rgba(10, 17, 40, 0.3),
      0 0 40px -5px rgba(0, 181, 216, 0.15) !important;
    overflow: hidden;
    position: relative;
    padding: 36px 30px;
    text-align: center;
  }

  /* Subtle background ambient mesh glow */
  .op-card::before {
    content: '';
    position: absolute;
    top: -10%;
    left: -10%;
    width: 120%;
    height: 120%;
    background: radial-gradient(circle at 50% 10%, rgba(0, 181, 216, 0.05) 0%, rgba(227, 30, 36, 0.03) 50%, transparent 100%);
    pointer-events: none;
    z-index: 0;
  }

  /* Close interaction cross with dynamic rotate transition */
  .op-close-btn {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #F1F5F9;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    z-index: 10;
  }

  .op-close-btn svg {
    width: 14px;
    height: 14px;
    fill: #475569;
    transition: fill 0.3s ease, transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  }

  .op-close-btn:hover {
    background: #1C2541;
    transform: rotate(90deg) scale(1.05);
  }

  .op-close-btn:hover svg {
    fill: #ffffff;
  }

  /* Partner Branding Row */
  .op-brands {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 20px;
    position: relative;
    z-index: 1;
  }

  .op-logo-txt {
    
    font-size: 14px;
    font-weight: 800;
    letter-spacing: -0.2px;
  }

  .op-logo-txt.softlabs { color: #0A1128; }
  .op-logo-txt.softlabs span { color: #E31E24; }
  .op-logo-txt.ainfinite { color: #1C2541; display: flex; align-items: center; gap: 3px; }

  .op-divider {
    width: 1px;
    height: 16px;
    background-color: #CBD5E1;
  }

  /* Copy & Hooks */
  .op-copy-box {
    margin-bottom: 24px;
    position: relative;
    z-index: 1;
  }

  .op-title {
    
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.25;
    color:#0A1128;
    margin: 0 0 6px 0 !important;
    letter-spacing: -0.5px;
  }

  .op-subtitle {
   
    font-size: 16px;
    font-weight: 650;
    color: #475569;
    margin: 0 !important;
  }

  /* 3D Perspective Device Wrapper centered inside the single column */
  .op-device-scene {
    width: 100%;
    perspective: 1200px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 24px;
    position: relative;
    z-index: 1;
  }

  /* The actual browser container with accelerated transition reset */
  .op-browser-frame {
    width: 100%;
    max-width: 440px;
    /* background: rgba(15, 23, 42, 0.03);
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 14px;
    box-shadow: 
      0 15px 35px -10px rgba(10, 17, 40, 0.15),
      0 0 20px rgba(0, 181, 216, 0.05); */
    overflow: hidden;
    transform: rotateX(8deg) rotateY(-5deg);
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.4s ease;
    transform-style: preserve-3d;
    will-change: transform;
  }

  /* .op-browser-frame:hover {
    box-shadow: 
      0 20px 40px -5px rgba(10, 17, 40, 0.25),
      0 0 25px rgba(0, 181, 216, 0.1);
  } */

  /* Browser Header Chrome */
  .op-browser-header {
    height: 24px;
    background: #E2E8F0;
    display: flex;
    align-items: center;
    padding: 0 10px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  }

  .op-browser-dots {
    display: flex;
    gap: 5px;
  }

  .op-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
  }
  .op-dot.red { background-color: #EF4444; }
  .op-dot.yellow { background-color: #F59E0B; }
  .op-dot.green { background-color: #10B981; }

  .op-browser-bar {
    flex-grow: 1;
    height: 12px;
    background: rgba(255, 255, 255, 0.6);
    border-radius: 3px;
    margin-left: 12px;
    max-width: 180px;
  }

  /* Dashboard Image Box */
  /* .op-dashboard-img-container {
    position: relative;
    padding: 0;
    overflow: hidden;
    background: #020617;
  } */

  .op-dashboard-img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1), filter 0.6s ease;
    filter: brightness(0.98) contrast(1.02);
  }

  .op-browser-frame:hover .op-dashboard-img {
    transform: scale(1.02);
    filter: brightness(1.02) contrast(1.02);
  }

  /* OptimAR Platform Brand Block */
  .op-product-block {
    background: #F8FAFC;
    border-top: 3px solid #00B5D8;
    padding: 10px 14px;
    border-radius: 8px;
    margin-bottom: 16px;
    display: inline-block;
    position: relative;
    z-index: 1;
  }

  .op-product-name {
   
    display: flex;
    justify-content: center;
  }

  .op-product-name span {
    color: #00B5D8;
    position: relative;
  }

  .op-product-name span::after {
    content: '↗';
    font-size: 13px;
    position: absolute;
    top: -2px;
    right: -11px;
  }

  .op-product-tagline {
    display: block;
    
    font-size: 14px;
    font-weight: 700;
    color: #475569;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-top: 2px;
  }

  .op-description {
  
    font-size: 13.5px;
    line-height: 1.5;
    color: #475569;
    margin: 0 auto 24px auto !important;
    max-width: 460px;
    position: relative;
    z-index: 1;
  }

  /* Conversion Actions Container */
  .op-actions {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
    position: relative;
    z-index: 1;
  }

  .op-cta {
    background-color: #ee4865;
    color: #ffffff !important;
    
    font-size: 15px;
    font-weight: 700;
    text-align: center;
    padding: 13px 36px;
    border-radius: 10px;
    text-decoration: none !important;
    display: inline-block;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    box-shadow: 0 8px 20px -4px rgba(227, 30, 36, 0.35);
    position: relative;
    overflow: hidden;
    animation: opCtaGlow 3.5s infinite alternate;
  }

  /* Sliding glare sweep animation */
  .op-cta::before {
    content: '';
    position: absolute;
    top: 0;
    left: -150%;
    width: 100%;
    height: 100%;
    background: linear-gradient(
      90deg,
      transparent,
      rgba(255, 255, 255, 0.25),
      transparent
    );
    transform: skewX(-20deg);
    animation: opSweeper 4.5s infinite ease-in-out;
  }

  @keyframes opSweeper {
    0% { left: -150%; }
    15% { left: 150%; }
    100% { left: 150%; }
  }

  @keyframes opCtaGlow {
    0% { box-shadow: 0 8px 20px -4px rgba(227, 30, 36, 0.35); }
    50% { box-shadow: 0 8px 24px 2px rgba(227, 30, 36, 0.5); }
    100% { box-shadow: 0 8px 20px -4px rgba(227, 30, 36, 0.35); }
  }

  .op-cta:hover {
    background-color: #c9161b;
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 12px 28px -4px rgba(227, 30, 36, 0.5);
  }

  .op-cta:active {
    transform: translateY(0.5px) scale(0.99);
  }

  .op-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 13px;
    color: #94A3B8;
  }

  .op-footer-dot {
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background-color: #E31E24;
  }
  .op-footer-dot.cyan { background-color: #00B5D8; }

  .op-footer a {
    color: #00B5D8!important;
    font-weight: 700;
    text-decoration: none !important;
    position: relative;
    padding-bottom: 1px;
    transition: color 0.25s ease;
  }

  .op-footer a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1.5px;
    background-color: #00B5D8;
    transform: scaleX(0);
    transform-origin: right;
    transition: transform 0.3s ease;
  }

  .op-footer a:hover::after {
    transform: scaleX(1);
    transform-origin: left;
  }

  /* Fluid staggered entrance triggered by the .show class */
  .op-brands,
  .op-copy-box,
  .op-device-scene,
  .op-product-block,
  .op-description,
  .op-actions {
    opacity: 0;
    transform: translateY(15px);
    will-change: transform, opacity;
    transition: 
      transform 0.7s cubic-bezier(0.16, 1, 0.3, 1), 
      opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1);
  }

  /* Sequential delays linked to the Bootstrap .show state */
  #optimarPromoModal.show .op-brands {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.1s;
  }

  #optimarPromoModal.show .op-copy-box {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.16s;
  }

  #optimarPromoModal.show .op-device-scene {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.22s;
  }

  #optimarPromoModal.show .op-product-block {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.28s;
  }

  #optimarPromoModal.show .op-description {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.34s;
  }

  #optimarPromoModal.show .op-actions {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.4s;
  }

  /* Responsive tweaks */
    @media (max-width: 768px) {
 .op-logo-txt.ainfinite,
 .op-logo-txt.softlabs
 {
   width:200px;
   height:auto;
 }
    }
  @media (max-width: 480px) {
    .op-modal-dialog {
      width: 94%;
    }
    .op-card {
      padding: 30px 20px;
      padding-top:50px
    }
    .op-title {
      font-size: 20px;
    }
    .op-device-scene {
      margin-bottom: 18px;
    }
    .op-browser-frame {
      transform: none !important; /* Disable dynamic perspective on mobile to protect responsiveness */
    }
  }
   
   
/* Hero copy css */
/* Scoped spacing and wrapping for the approved homepage banner. */
#softlabs-homepage #home .banner-text { flex: 0 1 100%; max-width: 1200px; }
#softlabs-homepage #home h1 { text-wrap: balance; line-height: 1.1; }
/* The legacy desktop breakpoint uses !important on .subHeading. Keep this override hero-only. */
#softlabs-homepage #home .subHeading { font-size: 26px !important; font-weight: 400; line-height: 1.3; max-width: 1040px; margin-left: auto; margin-right: auto; text-wrap: balance; }
#softlabs-homepage #home .banner-text .home-banner-desc { max-width: 1000px; padding: 0; margin-left: auto; margin-right: auto; font-weight: 400; line-height: 1.55; }
@media (max-width: 768px) {
  #softlabs-homepage #home .subHeading { font-size: 21px !important; text-wrap: pretty; }
}
#home { content-visibility: visible; height: auto; min-height: 0; padding-top: 180px; padding-bottom: 56px; }
@media (max-width: 991px) { #home { padding-top: 168px; padding-bottom: 48px; } }
#home .home-banner-trust { color: #fff; font-size: 14px; line-height: 1.6; margin: 18px 0 0; }
#home .home-banner-btn-div { display: flex; justify-content: center; gap: 20px; flex-wrap: wrap; margin-top: 26px; }
#home .home-banner-btn-div a { margin: 0; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; white-space: nowrap; }
#home .home-banner-btn-div a:focus-visible { outline: 2px solid #fff; outline-offset: 5px; }
/* Primary case-study CTA only; the white discussion CTA is unchanged. */
#softlabs-homepage #home .home-banner-btn { background:#ee4865; color:#fff; }
#softlabs-homepage #home .home-banner-btn .text { color:#fff; }
#softlabs-homepage #home .home-banner-btn:is(:hover,:focus-visible) { background:#28497b; color:#fff; }

#quote-form-bottom, #case-explorer { scroll-margin-top: 130px; }
@media (max-width: 768px) {
  #home .home-banner-btn-div { justify-content: center; gap: 14px; }
  #home .home-banner-trust { font-size: 14px; }
}

/* Static supporting tools, centred on the same axis as the hero buttons. */
#softlabs-homepage #home .hero-tech-strip {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  width: fit-content;
  max-width: 100%;
  margin: 60px auto 0;
  color: #f5f7fb;
  text-align: center;
}
#softlabs-homepage #home .hero-tech-label {
  flex: 0 0 auto;
  padding-right: 24px;
  border-right: 1px solid rgba(255, 255, 255, .28);
  color: #d5dce7;
  font-size: 15px;
  font-weight: 400;
  line-height: 26px;
  white-space: nowrap;
}
#softlabs-homepage #home .hero-tech-logos {
  display: flex;
  flex-wrap: wrap;
  max-width: 100%;
  align-items: center;
  justify-content: center;
  gap: 26px;
  margin: 0;
  padding: 0;
  list-style: none;
}
#softlabs-homepage #home .hero-tech-logos li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  color: inherit;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.2;
  min-height: 44px;
  white-space: nowrap;
}
#softlabs-homepage #home .hero-tech-logos img {
  display: block;
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  max-width: none;
  margin: 0;
  object-fit: contain;
}
@media (max-width: 1199px) {
  #softlabs-homepage #home .hero-tech-strip { flex-direction: column; gap: 12px; }
  #softlabs-homepage #home .hero-tech-label { border: 0; padding: 0; line-height: 22px; }
}
@media (max-width: 640px) {
  #softlabs-homepage #home .hero-tech-strip { flex-direction: column; gap: 12px; margin-top: 40px; }
  #softlabs-homepage #home .hero-tech-label { border: 0; padding: 0; font-size: 14px; line-height: 20px; }
  #softlabs-homepage #home .hero-tech-logos { gap: 12px 20px; max-width: 350px; }
  #softlabs-homepage #home .hero-tech-logos li { gap: 7px; font-size: 16px; }
  #softlabs-homepage #home .hero-tech-logos img { flex-basis: 32px; width: 32px; height: 32px; }
}
/* Full supplied light ADAM artwork, matte removed; hero only. */
#softlabs-homepage #home .hero-tech-logos .hero-tech-adam img { flex: 0 0 auto; width: 176px; height: auto; }
/* Supplied transparent white-letter CORE artwork, hero only. */
#softlabs-homepage #home .hero-tech-logos li.hero-tech-core { padding: 0; background: transparent; }
#softlabs-homepage #home .hero-tech-logos .hero-tech-core img { flex: 0 0 auto; width: 110px; height: auto; }
@media (max-width: 640px) {
  #softlabs-homepage #home .hero-tech-logos .hero-tech-core img { width: 96px; height: auto; }
}
@media (min-width: 641px) and (max-width: 767px) {
  #softlabs-homepage #home .hero-tech-logos { gap: 12px 16px; max-width: 430px; }
}
@media (max-width: 575px) {
  #softlabs-homepage #home .hero-tech-logos { display: flex; flex-wrap: wrap; gap: 12px 20px; justify-content: center; align-items: center; }
}
@media (min-width: 768px) and (max-width: 991px) {
  #softlabs-homepage #home .hero-tech-logos { gap: 14px; }
}
@media (max-width: 360px) {
  #softlabs-homepage #home .hero-tech-logos .hero-tech-adam img { width: 164px; }
  #softlabs-homepage #home .hero-tech-logos { gap: 10px 12px; }
  #softlabs-homepage #home .hero-tech-logos li { gap: 6px; font-size: 15px; }
  #softlabs-homepage #home .hero-tech-logos img { flex-basis: 28px; width: 28px; height: 28px; }
}


/* service index */
/* Approved vertical service index, isolated from legacy page styles. */
#homepage-services{all:revert;display:block;font-family:RefinedServices,Arial,sans-serif;color:#101d30;background:#fff;line-height:normal;scroll-margin-top:20px}
#homepage-services :where(*){all:revert;box-sizing:border-box;font-family:inherit}
#homepage-services :where(*)::before,#homepage-services :where(*)::after{content:none}
@font-face{font-family:RefinedServices;src:url("../assets/fonts/Lexend-Regular-d12bc92.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:RefinedServices;src:url("../assets/fonts/Lexend-SemiBold-8486b64.ttf") format("truetype");font-weight:600;font-display:swap}
#homepage-services{font-family:RefinedServices,Arial,sans-serif;color:#101d30;background:#fff;font-synthesis:none;--ink:#101d30;--muted:#4b5665;--line:#dce1e7;--coral:#ee4865}
#homepage-services *{box-sizing:border-box}
#homepage-services{margin:0}
#homepage-services h2,#homepage-services h3,#homepage-services h4,#homepage-services p{margin:0}
#homepage-services a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}
#homepage-services a:focus-visible{outline:3px solid var(--coral);outline-offset:-4px;position:relative;z-index:1}
#homepage-services a:active .item-arrow{transform:translate(1px,-1px)}
#homepage-services .wrap{width:calc(100% - 80px);max-width:1296px;margin:auto}
#homepage-services{padding:52px 0 55px}
#homepage-services .services-heading{margin-bottom:34px}
#homepage-services .services-heading h2{font-size:44px;font-weight:600;letter-spacing:-1.5px;line-height:1.24}
#homepage-services .services-heading h2 span{font-weight:inherit}
#homepage-services .services-heading>p{font-size:16px;line-height:1.65;color:var(--muted);margin-top:14px;max-width:780px}
#homepage-services .service-item{min-width:0;position:relative;display:grid;grid-template-columns:35px minmax(0,1fr) 30px;grid-template-rows:auto 1fr;gap:16px 14px;align-items:start}
#homepage-services .item-icon{grid-column:1;grid-row:1;display:flex;align-items:center;justify-content:center;padding-top:1px}
#homepage-services .item-icon img{width:35px;height:35px;object-fit:contain;display:block}
#homepage-services .item-arrow{grid-column:3;grid-row:1;display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid #cfd6df;border-radius:50%;font-size:19px;line-height:1;color:var(--ink);margin-top:1px}
#homepage-services .item-copy{display:contents}
#homepage-services .item-copy h3,#homepage-services .item-copy h4{grid-column:2;grid-row:1;font-size:19px;font-weight:600;line-height:1.42;letter-spacing:-.35px}
#homepage-services .item-copy p{grid-column:1/-1;grid-row:2;font-size:15px;line-height:1.7;color:var(--muted)}
#homepage-services .service-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}
#homepage-services .service-item{padding:26px 25px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
#homepage-services .service-item:nth-child(3n){border-right:0}
#homepage-services .service-item:nth-last-child(-n/**/+3){border-bottom:0}
#homepage-services .services-heading{max-width:1040px}
#homepage-services .service-item:focus-visible{background:#fff8f9}
#homepage-services .service-family{display:grid;gap:21px}
@supports(grid-template-rows:subgrid){#homepage-services .service-index .service-item{grid-row:span 2;grid-template-rows:subgrid}}
@media(hover:hover) and (pointer:fine){#homepage-services .service-item:hover{background:#fff8f9}
#homepage-services .service-item:hover .item-arrow{background:var(--ink);border-color:var(--ink);color:#fff}
#homepage-services .service-item:hover h3,#homepage-services .service-item:hover h4{text-decoration:underline;text-decoration-color:var(--coral);text-decoration-thickness:1px;text-underline-offset:5px}}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){#homepage-services .item-arrow{transition:transform 170ms cubic-bezier(.23,1,.32,1)}
#homepage-services .service-item:hover .item-arrow{transform:translate(2px,-2px)}}
@media(max-width:1150px){#homepage-services .wrap{width:calc(100% - 56px)}
#homepage-services .services-heading h2{font-size:40px}
#homepage-services .service-item{padding:23px 20px;gap:15px 11px;grid-template-columns:31px minmax(0,1fr) 27px}
#homepage-services .item-icon img{width:31px;height:31px}
#homepage-services .item-arrow{width:27px;height:27px;font-size:18px}
#homepage-services .item-copy h3{font-size:18px}}
@media(max-width:850px){#homepage-services .service-index{grid-template-columns:repeat(2,minmax(0,1fr))}
#homepage-services .service-item:nth-child(3n){border-right:1px solid var(--line)}
#homepage-services .service-item:nth-child(2n){border-right:0}
#homepage-services .service-item:nth-last-child(-n/**/+3){border-bottom:1px solid var(--line)}
#homepage-services .service-item:last-child{border-bottom:0;grid-column:1/-1;grid-template-columns:31px minmax(0,1fr) 27px}
#homepage-services .service-item:last-child .item-copy p{max-width:580px}
#homepage-services .services-heading h2{font-size:36px}}
@media(max-width:600px){#homepage-services .wrap{width:calc(100% - 36px)}
#homepage-services{padding:34px 0 38px}
#homepage-services .services-heading{margin-bottom:28px}
#homepage-services .services-heading h2{font-size:31px;line-height:1.22;letter-spacing:-1px;max-width:520px}
#homepage-services .services-heading>p{font-size:15px;line-height:1.6;max-width:38ch;margin-top:13px}
#homepage-services .service-index{grid-template-columns:1fr;border-radius:9px}
#homepage-services .service-item,#homepage-services .service-item:last-child{grid-template-columns:31px minmax(0,1fr) 27px;gap:14px 11px;padding:22px 19px;border-right:0!important;border-bottom:1px solid var(--line)}
#homepage-services .service-item:last-child{border-bottom:0}
#homepage-services .item-copy h3{font-size:18px;line-height:1.4}
#homepage-services .item-copy p{font-size:15px;line-height:1.65}
#homepage-services .service-family{gap:8px}}
@media(max-width:350px){#homepage-services .wrap{width:calc(100% - 32px)}
#homepage-services .services-heading h2{font-size:28px}
#homepage-services .services-heading>p{font-size:14.5px}
#homepage-services .service-item,#homepage-services .service-item:last-child{padding:20px 15px;gap:12px 10px}
#homepage-services .item-copy h3{font-size:17px}}
#homepage-services{padding-top:49px;padding-bottom:50px}
#homepage-services .services-heading{margin-bottom:31px;max-width:none}
#homepage-services .services-heading h2{font-size:44px;font-weight:600;line-height:1.22;letter-spacing:-1.55px}
#homepage-services .services-heading>p{font-size:16px;line-height:1.65;margin-top:13px;color:#546172}
#homepage-services .service-index{display:block;border:0;border-top:1px solid #cbd4df;border-radius:0;overflow:visible;background:transparent}
#homepage-services .service-index>.service-item{display:grid;grid-template-columns:52px minmax(300px,360px) minmax(0,1fr) 36px;grid-template-rows:auto;grid-row:auto;grid-column:auto;align-items:center;column-gap:24px;row-gap:0;padding:19px 12px;border:0;border-bottom:1px solid #e0e5eb;border-radius:0;min-height:92px;background:transparent}
#homepage-services .service-index>.service-item:last-child{border-bottom:1px solid #cbd4df}
#homepage-services .service-index>.service-item .item-icon{grid-column:1;grid-row:1;width:52px;height:52px;padding:0;background:#fff3f5;border-radius:11px}
#homepage-services .service-index>.service-item .item-icon img{width:37px;height:37px}
#homepage-services .service-index>.service-item .item-copy{display:contents}
#homepage-services .service-index>.service-item h3{grid-column:2;grid-row:1;font-size:20px;line-height:1.45;font-weight:600;letter-spacing:-.4px}
#homepage-services .service-index>.service-item p{grid-column:3;grid-row:1;font-size:15px;line-height:1.7;color:#546172;max-width:none}
#homepage-services .service-index>.service-item .item-arrow{grid-column:4;grid-row:1;width:36px;height:36px;margin:0;border:1px solid #f0c1ca;color:#ee4865;background:transparent;font-size:22px;transform:none}
#homepage-services .service-index>.service-item:focus-visible{outline:2px solid #ee4865;outline-offset:3px;background:#fcf6f7}
#homepage-services .service-index>.service-item:focus-visible .item-arrow{background:#ee4865;border-color:#ee4865;color:#101d30;transition:none}
@media(hover:hover) and (pointer:fine){#homepage-services .service-index>.service-item:hover{background:#f8fafc}
#homepage-services .service-index>.service-item:hover h3{text-decoration:none;color:#101d30}
#homepage-services .service-index>.service-item:hover .item-arrow{background:#ee4865;border-color:#ee4865;color:#101d30}}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){#homepage-services .service-index>.service-item .item-arrow{transition:transform 170ms cubic-bezier(.23,1,.32,1)}
#homepage-services .service-index>.service-item:hover .item-arrow{transform:translate(2px,-2px)}}
@media(max-width:1150px){#homepage-services .services-heading h2{font-size:40px}
#homepage-services .service-index>.service-item{grid-template-columns:46px minmax(260px,min(330px,36%)) minmax(0,1fr) 34px;gap:18px;padding:18px 8px}
#homepage-services .service-index>.service-item .item-icon{width:46px;height:46px;border-radius:9px}
#homepage-services .service-index>.service-item .item-icon img{width:34px;height:34px}
#homepage-services .service-index>.service-item .item-arrow{width:34px;height:34px}
#homepage-services .service-index>.service-item h3{font-size:19px}}
@media(max-width:850px){#homepage-services .services-heading h2{font-size:36px}
#homepage-services .service-index>.service-item{grid-template-columns:44px minmax(225px,.95fr) minmax(0,1.15fr) 30px;gap:15px;padding:18px 4px}
#homepage-services .service-index>.service-item .item-icon{width:44px;height:44px}
#homepage-services .service-index>.service-item .item-icon img{width:32px;height:32px}
#homepage-services .service-index>.service-item h3{font-size:18px}
#homepage-services .service-index>.service-item p{font-size:14.5px}
#homepage-services .service-index>.service-item .item-arrow{width:30px;height:30px;font-size:20px}}
@media(max-width:700px){#homepage-services .wrap{width:calc(100% - 36px)}
#homepage-services{padding-top:34px;padding-bottom:35px}
#homepage-services .services-heading{margin-bottom:26px}
#homepage-services .services-heading h2{font-size:31px;line-height:1.24;letter-spacing:-1px}
#homepage-services .services-heading>p{font-size:15px;line-height:1.6}
#homepage-services .service-index>.service-item{grid-template-columns:44px minmax(0,1fr) 32px;grid-template-rows:auto auto;gap:13px 13px;padding:20px 0;min-height:0}
#homepage-services .service-index>.service-item h3{grid-column:2;grid-row:1;font-size:18px;line-height:1.4}
#homepage-services .service-index>.service-item p{grid-column:1/-1;grid-row:2;font-size:15px;line-height:1.65}
#homepage-services .service-index>.service-item .item-arrow{grid-column:3;grid-row:1;width:32px;height:32px}}
@media(max-width:350px){#homepage-services .wrap{width:calc(100% - 32px)}
#homepage-services .services-heading h2{font-size:28px}
#homepage-services .service-index>.service-item{gap:13px 10px}
#homepage-services .service-index>.service-item h3{font-size:17px}}
#homepage-services h2,#homepage-services h3{font-family:RefinedServices,Arial,sans-serif!important}

/* client review */
/* Two complete client stories. No tabs, hidden panels or carousel. */
@font-face{font-family:SLReviewLexend;src:url('../assets/fonts/Lexend-Regular-d12bc92.ttf');font-weight:400}
@font-face{font-family:SLReviewLexend;src:url('../assets/fonts/Lexend-SemiBold-8486b64.ttf');font-weight:600}
#client-reviews :where(*:not(.pfont):not(.headingred):not(.review-heading-rule):not(.reviews-container)){all:revert;box-sizing:border-box}
#client-reviews{--brand-navy:#101d30;--brand-coral:#ee4865;margin:0;padding:64px 0 60px;max-width:none;background:#fff;color:var(--brand-navy);font:400 16px/1.5 SLReviewLexend,Arial,sans-serif;text-align:left;letter-spacing:normal;text-transform:none;scroll-margin-top:145px;-webkit-font-smoothing:antialiased}
#client-reviews,#client-reviews *{box-sizing:border-box}
/* Keep the site's container widths; remove its inner horizontal padding. */
#client-reviews .reviews-container{padding-left:0;padding-right:0}
#client-reviews .section-heading{text-align:center;margin:0 0 38px}
#client-reviews .section-heading h2{letter-spacing:normal;color:#212529}
#client-reviews .review-heading-rule{box-sizing:content-box}
#client-reviews .review-stage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:64px;padding:0}
#client-reviews .review-panel{display:grid;grid-template-rows:subgrid;grid-row:span 5;row-gap:0;min-width:0;margin:0;padding:0;border-top:3px solid var(--brand-coral)}
#client-reviews .review-client{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:0 0 25px;padding:24px 0 0}
#client-reviews .review-identity{min-width:0}
#client-reviews .review-type{display:inline-block;color:#a92d46;font-size:11px;line-height:1.4;font-weight:600;letter-spacing:.035em;margin:0 0 9px;text-transform:uppercase}
#client-reviews .review-identity h3{margin:0 0 5px;font-size:23px;line-height:1.2;font-weight:600;color:var(--brand-navy);letter-spacing:-.5px}
#client-reviews .client-context{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;margin:10px 0 0;font-size:13px;color:#65717e;line-height:1.5}
#client-reviews .review-country{display:inline-flex;align-items:center;gap:9px;flex:none;white-space:nowrap}
#client-reviews .review-country-flag{display:block;flex:none;width:auto;height:30px;max-width:60px;object-fit:contain;border:0;outline:1px solid #101d3026;outline-offset:0}
#client-reviews .review-sector{display:inline-block}
@media(max-width:575px){#client-reviews .review-country-flag{height:26px;max-width:52px}#client-reviews .review-country{gap:8px}}
#client-reviews .review-brand{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;flex:none;gap:6px}
#client-reviews .review-brand img{display:block;object-fit:contain;width:88px;height:auto;max-width:100%;margin:0}
#client-reviews .review-brand.parent img{width:155px}
#client-reviews .review-brand small{font-size:10px;color:#65717e;line-height:1.4;text-align:right}
#client-reviews blockquote{margin:0;padding:0;text-align:left;border:0}
#client-reviews blockquote p{margin:0;font-size:27px;line-height:1.5;font-weight:400;letter-spacing:-.45px;color:var(--brand-navy)}
#client-reviews .keep-together{white-space:nowrap;font-weight:600;color:var(--brand-coral)}
#client-reviews .attribution{display:flex;flex-direction:column;gap:4px;margin:22px 0 0;padding:0;text-align:left;align-self:start}
#client-reviews .attribution strong{font-size:14px;font-weight:600;line-height:1.4}
#client-reviews .attribution span{font-size:12px;line-height:1.5;color:#596978}
#client-reviews .attribution small{font-size:11px;line-height:1.5;color:#65717e}
#client-reviews .supporting-proof{display:flex;align-items:center;margin:24px 0 0;padding:22px 0;border-top:1px solid #dce2e9;border-bottom:1px solid #dce2e9;min-width:0}
#client-reviews .short-quote{margin:0;max-width:510px;font-size:20px;font-weight:600;line-height:1.5;color:var(--brand-navy);letter-spacing:-.2px}
#client-reviews .client-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:18px;list-style:none;margin:0;padding:0}
#client-reviews .client-metrics li{display:flex;flex-direction:column;gap:7px;min-width:0;padding:0;margin:0}
#client-reviews .client-metrics strong{font-size:34px;line-height:1.15;letter-spacing:-1px;white-space:nowrap;font-weight:600;color:var(--brand-coral)}
#client-reviews .client-metrics span{font-size:12px;line-height:1.5;color:#596978}
#client-reviews .review-bottom{padding:14px 0 0;margin:0;text-align:left}
#client-reviews .review-links{display:flex;flex-wrap:wrap;align-items:center;gap:0 24px}
#client-reviews .review-links a{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin:0;color:var(--brand-navy);font-size:13px;line-height:1.4;font-weight:600;text-decoration:underline;text-decoration-color:#ee486580;text-underline-offset:5px}
#client-reviews .review-links a span{color:var(--brand-coral);font-size:19px}
#client-reviews .review-links a:hover{text-decoration-color:var(--brand-coral)}
#client-reviews .review-links a:focus-visible{outline:2px solid var(--brand-coral);outline-offset:4px}
#client-reviews .scope{font-size:11px;line-height:1.5;color:#65717e;margin:6px 0 0;padding:0}
@media(max-width:1199px){
 #client-reviews .review-stage{column-gap:40px}
 #client-reviews blockquote p{font-size:23px}
 #client-reviews .review-identity h3{font-size:21px}
 #client-reviews .review-brand.parent img{width:130px}
 #client-reviews .review-brand img{width:75px}
 #client-reviews .client-metrics strong{font-size:30px}
}
@media(min-width:768px) and (max-width:991px){
 #client-reviews .review-stage{column-gap:32px}
 #client-reviews .review-client{align-items:flex-start;flex-wrap:wrap;gap:16px}
 #client-reviews .review-brand{align-items:flex-start;min-height:70px}
 #client-reviews .review-brand small{text-align:left}
 #client-reviews .review-identity{width:100%}
 #client-reviews blockquote p{font-size:21px}
 #client-reviews .short-quote{font-size:18px}
 #client-reviews .client-metrics{gap:10px}
 #client-reviews .client-metrics strong{font-size:25px}
}
@media(max-width:767px){
 #client-reviews{padding:44px 0}
 #client-reviews .section-heading{margin-bottom:30px}
 #client-reviews .review-stage{grid-template-columns:minmax(0,1fr);row-gap:38px}
 #client-reviews .review-panel{display:block;grid-row:auto}
 #client-reviews .review-client{margin-bottom:20px;padding-top:20px}
 #client-reviews blockquote p{font-size:23px;line-height:1.5;letter-spacing:-.3px}
 #client-reviews .supporting-proof{margin-top:22px;padding:20px 0}
 #client-reviews .short-quote{font-size:19px}
}
@media(max-width:575px){
 /* Outside gutters only: no left/right padding inside the container or stories. */
 #client-reviews .reviews-container{width:calc(100% - 36px);margin-left:auto;margin-right:auto}
 #client-reviews .review-client{gap:12px}
 #client-reviews .review-identity h3{font-size:20px}
 #client-reviews .review-type{font-size:10px}
 #client-reviews .client-context{font-size:12px}
 #client-reviews .review-brand.parent img{width:118px}
 #client-reviews .review-brand img{width:68px}
 #client-reviews .review-brand small{font-size:9px;max-width:118px}
 #client-reviews .client-metrics strong{font-size:28px}
 #client-reviews .client-metrics{gap:12px}
}
@media(max-width:359px){
 #client-reviews .review-client{flex-wrap:wrap}
 #client-reviews .review-brand{align-items:flex-start}
 #client-reviews .review-brand small{text-align:left}
 #client-reviews .client-metrics strong{font-size:23px}
 #client-reviews .client-metrics span{font-size:11px}
}

/* Approved Editorial split. Scope stays inside this homepage section. */
#client-reviews .reviews-container{width:calc(100% - 48px);max-width:1320px;margin:auto;padding:0}
#client-reviews .headingred{color:#ee4865}
#client-reviews hr.review-heading-rule{width:60px;height:2px;border:0;background:#ee4865;margin:18px auto 0}
#client-reviews{padding:46px 0 54px}
#client-reviews .section-heading{margin-bottom:44px}
#client-reviews .review-stage{column-gap:112px;position:relative}
#client-reviews .review-panel{padding-left:0;padding-right:0}
#client-reviews .review-client{gap:15px}
#client-reviews .review-brand.parent img{width:140px}
#client-reviews .review-identity h3{font-size:23px}
#client-reviews blockquote p{font-size:25px;line-height:1.48}
#client-reviews .client-metrics strong{font-size:31px}
#client-reviews .review-links{gap:0 20px}
@media (max-width:1100px){#client-reviews .review-stage{column-gap:64px}
#client-reviews blockquote p{font-size:23px}
#client-reviews .review-client{flex-wrap:wrap}
#client-reviews .client-metrics strong{font-size:26px}}
@media (max-width:900px){#client-reviews .review-stage{grid-template-columns:1fr;row-gap:48px}
#client-reviews .review-panel{display:block;grid-row:auto}
#client-reviews .review-client{flex-wrap:nowrap}
#client-reviews .review-identity{width:auto}
#client-reviews .review-brand{min-height:0}
#client-reviews .review-stage::before{display:none}
#client-reviews .review-stage{column-gap:0}}
@media (max-width:575px){#client-reviews .reviews-container,#client-reviews .reviews-container{width:calc(100% - 36px)}
#client-reviews{padding:32px 0 40px}
#client-reviews .section-heading{margin-bottom:32px}
#client-reviews .review-identity h3{font-size:20px}
#client-reviews blockquote p{font-size:22px}
#client-reviews .review-brand.parent img{width:116px}
#client-reviews .client-metrics strong{font-size:27px}}
@media (max-width:359px){#client-reviews .review-client{flex-wrap:wrap}
#client-reviews .client-metrics strong{font-size:23px}}
#client-reviews .review-stage::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:#dce2e9}
#client-reviews .review-panel{border-top:0}
#client-reviews .review-client{padding-top:0;padding-bottom:22px;border-bottom:1px solid #dce2e9;margin-bottom:24px}
#client-reviews .review-type{color:#101d30;background:#fff0f3;padding:4px 7px;text-transform:none;letter-spacing:0;font-size:11px;margin-bottom:9px}
#client-reviews blockquote p{font-size:27px}
#client-reviews .supporting-proof{border:0;border-top:2px solid #101d30;padding-top:20px}
#client-reviews .review-bottom{border-top:1px solid #dce2e9}
@media (max-width:1100px){#client-reviews blockquote p{font-size:23px}}
@media (max-width:900px){#client-reviews .review-stage::before{display:none}
#client-reviews .review-panel+.review-panel{border-top:1px solid #dce2e9;padding-top:32px}}

