.elementor-39763 .elementor-element.elementor-element-25c3c51{overflow:visible;}.elementor-39763 .elementor-element.elementor-element-5bab736{overflow:visible;}.elementor-39763 .elementor-element.elementor-element-38be221{overflow:visible;}.elementor-39763 .elementor-element.elementor-element-a45a2c0{overflow:visible;}.elementor-39763 .elementor-element.elementor-element-0e346cc{overflow:visible;}.elementor-39763 .elementor-element.elementor-element-f855a75{overflow:visible;}.elementor-39763 .elementor-element.elementor-element-69605d8{overflow:visible;}.elementor-39763 .elementor-element.elementor-element-7641724{overflow:visible;}.elementor-39763 .elementor-element.elementor-element-38e9858{overflow:visible;}.elementor-39763 .elementor-element.elementor-element-6a50ef5{overflow:visible;}.elementor-39763 .elementor-element.elementor-element-df08490{overflow:visible;}.elementor-39763 .elementor-element.elementor-element-ef1c145 > .elementor-container{min-height:0px;}.elementor-39763 .elementor-element.elementor-element-ef1c145{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;overflow:visible;}.elementor-39763 .elementor-element.elementor-element-a3784fb{overflow:visible;}/* Start custom CSS for html, class: .elementor-element-ebddbe6 */.om-static-strip {
  position: relative;
  padding: 90px 20px;
  background: #ffffff; /* PURE WHITE */
  font-family: Inter, system-ui, Segoe UI;
  overflow: hidden;
}

/* Floating bubbles container */
.bubble-bg {
  position: absolute;
  inset: 0;
  overflow: hidden;
  z-index: 0;
}

.bubble {
  position: absolute;
  width: 70px;
  height: 70px;
  background: rgba(255, 122, 0, 0.1);
  border-radius: 50%;
  animation: float 12s linear infinite;
  filter: blur(2px);
}

.bubble:nth-child(1) { top: 80%; left: 15%; width: 60px; height: 60px; animation-duration: 14s; }
.bubble:nth-child(2) { top: 90%; left: 50%; width: 90px; height: 90px; animation-duration: 18s; }
.bubble:nth-child(3) { top: 85%; left: 75%; width: 70px; height: 70px; animation-duration: 12s; }
.bubble:nth-child(4) { top: 92%; left: 30%; width: 50px; height: 50px; animation-duration: 20s; }
.bubble:nth-child(5) { top: 95%; left: 60%; width: 80px; height: 80px; animation-duration: 16s; }

@keyframes float {
  from { transform: translateY(0) scale(1); opacity: .8; }
  to   { transform: translateY(-140vh) scale(1.4); opacity: 0; }
}

/* HEADING */
.om-static-strip h2 {
  position: relative;
  z-index: 2;
  text-align: center;
  font-size: clamp(38px, 6vw, 58px);  /* Bigger */
  font-weight: 900;
  margin-bottom: 55px;
  color: #222222;
  letter-spacing: -1px;
}

/* SERVICES IN ONE LINE */
.strip-row {
  position: relative;
  z-index: 2;
  max-width: 1300px;
  margin: auto;
  display: flex;
  justify-content: space-between;
  gap: 22px;
}

/* BOXES */
.strip-box {
  flex: 1;
  background: #ffffff;
  border-radius: 20px;
  padding: 32px 20px;
  text-align: center;
  border: 1px solid rgba(0,0,0,0.08);
  box-shadow: 0 16px 32px rgba(0,0,0,0.08);
  cursor: pointer;
  transition: 0.35s ease;
}

.strip-box:hover {
  transform: translateY(-8px) scale(1.03);
  box-shadow: 0 24px 40px rgba(0,0,0,0.12);
  border-color: #ff7a00;
}

/* ICON */
.strip-box .icon {
  display: block;
  font-size: 42px; /* Bigger */
  margin-bottom: 12px;
}

/* TITLE */
.strip-box h3 {
  font-size: 22px; /* Bigger */
  font-weight: 800;
  margin-bottom: 6px;
  color: #ff7a00;
}

/* DESC */
.strip-box p {
  font-size: 15px; /* Slight bigger */
  color: #444;
  opacity: 0.9;
}

/* =========================
   RESPONSIVE (TABLET & MOBILE)
   ========================= */

/* Tablet: thoda gap kam, padding adjust */
@media (max-width: 1024px) {
  .om-static-strip {
    padding: 70px 16px;
  }

  .strip-row {
    gap: 16px;
  }

  .strip-box {
    padding: 26px 18px;
  }

  .strip-box h3 {
    font-size: 20px;
  }

  .strip-box p {
    font-size: 14px;
  }
}

/* Mobile: boxes stack, center align, font sizes thode chhote */
@media (max-width: 768px) {
  .om-static-strip {
    padding: 60px 14px;
  }

  .om-static-strip h2 {
    font-size: 26px;
    margin-bottom: 28px;
  }

  .strip-row {
    flex-direction: column;
    align-items: stretch;
    max-width: 100%;
  }

  .strip-box {
    max-width: 420px;
    margin: 0 auto;
    padding: 22px 18px;
    box-shadow: 0 10px 24px rgba(0,0,0,0.06);
  }

  .strip-box .icon {
    font-size: 34px;
    margin-bottom: 10px;
  }

  .strip-box h3 {
    font-size: 18px;
  }

  .strip-box p {
    font-size: 14px;
  }

  /* Bubbles thode subtle for mobile */
  .bubble {
    filter: blur(3px);
    opacity: 0.7;
  }
}

/* Extra small screens */
@media (max-width: 480px) {
  .om-static-strip {
    padding: 50px 12px;
  }

  .strip-box {
    border-radius: 16px;
    padding: 20px 16px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-765c74e *//* ------------------------------
   OUTREACH MONKS THEME + PREMIUM LAYOUT
   FULL + FINAL UPDATED CSS
--------------------------------*/

.om-process{
  --bg:#0B0F19;
  --card:#111827;
  --text:#ffffff;
  --muted:#C8D0E0;
  --soft:#F5F7FA;

  --accent1:#F97316; /* Orange */
  --accent2:#FACC15; /* Yellow */
  --accent3:#FDBA74; /* Warm orange */

  background: radial-gradient(1200px 600px at 80% 0%, #111827 0%, #0B0F19 60%);
  color: var(--text);
  padding: 130px 28px 140px; /* Bigger open layout */
  position: relative;
  overflow: hidden;
}

/* glowing brand blobs */
.om-process::before,
.om-process::after{
  content:""; position:absolute;
  width:520px;height:520px;
  border-radius:50%;
  filter: blur(78px);
  opacity:.14;
  pointer-events:none;
}
.om-process::before{ background:#F97316; top:-160px; left:-120px; }
.om-process::after{  background:#FACC15; bottom:-220px; right:-120px; }

.om-wrap{
  max-width: 1250px;
  margin: 0 auto;
}

/* -----------------------------------
   UPGRADED BIG HEADING + UNDERLINE
-----------------------------------*/

.om-title{
  position: relative;
  text-align: center;
  margin: 0 0 24px;
  font-weight: 900;
  letter-spacing: .3px;
  font-size: clamp(40px, 5vw, 64px); /* BIGGER */
  line-height: 1.12;
  background: linear-gradient(90deg,#ffffff,#FFE6B0);
  -webkit-background-clip:text; background-clip:text; color: transparent;
}

.om-title-underline{
  position:absolute;
  left:50%; transform:translateX(-50%);
  bottom:-16px;
  height:10px;
  width:280px; /* bigger */
  border-radius:999px;
  background: linear-gradient(90deg, var(--accent1), var(--accent3), var(--accent2));
  filter: blur(1px);
  animation: sweep 2.6s ease-in-out infinite;
}

@keyframes sweep{
  0%{ width:90px; opacity:.6 }
  40%{ width:280px; opacity:1 }
  100%{ width:90px; opacity:.6 }
}

.om-sub{
  text-align:center;
  max-width: 820px;
  margin: 0 auto 60px;
  color: var(--muted);
  font-size: clamp(17px, 1.6vw, 21px);
  line-height: 1.85;
}

/* -----------------------------------
   SVG TIMELINE - BIGGER AREA
-----------------------------------*/

.om-timeline{
  position: relative;
  min-height: 760px; /* more vertical space */
}

.om-flow{
  width:100%;
  height: clamp(520px, 62vw, 760px); /* bigger */
  display:block;
}

/* -----------------------------------
   CARDS
-----------------------------------*/

.om-grid{
  position:absolute;
  inset:0;
  pointer-events:none;
}

.om-card{
  position:absolute;
  width:min(380px,92vw);
  background: rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.10);
  backdrop-filter: blur(12px);
  border-radius: 20px;
  padding: 30px 28px;
  box-shadow:0 16px 46px rgba(0,0,0,.55),
             inset 0 1px 0 rgba(255,255,255,.06);
  transform: translate3d(0,18px,0) scale(.97);
  opacity:0;
  transition: transform .6s cubic-bezier(.2,.7,.2,1), opacity .6s;
  pointer-events:auto;
}

/* fancy step badge */
.om-card::before{
  content: attr(data-step);
  position: absolute;
  top:-18px; left:-18px;
  height:52px; width:52px;
  display:grid; place-items:center;
  border-radius: 14px;
  font-weight: 900;
  font-size: 15px;
  letter-spacing: 1px;
  color:#0B0F19;
  background: conic-gradient(from 180deg, var(--accent1), var(--accent2), var(--accent3));
  box-shadow: 0 8px 26px rgba(0,0,0,.5);
}

/* readable text */
.om-card h3{
  font-size: 25px;
  margin: 4px 0 10px;
  font-weight: 800;
}
.om-card p{
  font-size: 18.5px;
  line-height: 1.78;
  color: var(--soft);
}

/* Hover lift */
.om-card:hover{
  transform: translate3d(0,-4px,0) scale(1.03);
}

/* -----------------------------------
   DESKTOP POSITIONS (fixed 05 & 06)
-----------------------------------*/
@media (min-width: 920px){
  .om-card:nth-child(1){ top: 62%; left: 3%;   z-index: 12; }
  .om-card:nth-child(2){ top: 24%; left: 18%;  z-index: 22; }
  .om-card:nth-child(3){ top: 5%;  left: 46%;  z-index: 32; }
  .om-card:nth-child(4){ top: 40%; left: 62%;  z-index: 42; }
  .om-card:nth-child(5){ top: 79%; left: 68%;  z-index: 20; } /* moved down/right */
  .om-card:nth-child(6){ top: 60%; left: 36%;  z-index: 34; } /* no longer overlap */
}

/* -----------------------------------
   TABLET POSITIONS
-----------------------------------*/
@media (min-width: 600px) and (max-width: 919px){
  .om-card{ width:48vw; }
  .om-card:nth-child(1){ top: 70%; left: 3%;  }
  .om-card:nth-child(2){ top: 26%; left: 8%;  }
  .om-card:nth-child(3){ top: 10%; left: 54%; }
  .om-card:nth-child(4){ top: 44%; left: 52%; }
  .om-card:nth-child(5){ top: 82%; left: 52%; }
  .om-card:nth-child(6){ top: 58%; left: 12%; }
}

/* -----------------------------------
   MOBILE STACK
-----------------------------------*/
@media (max-width: 599px){
  .om-flow{ height: 420px; }
  .om-grid{
    position:relative;
    padding-top:18px;
  }
  .om-card{
    position:relative;
    width:100%;
    margin:16px 0;
    transform: translate3d(0,10px,0);
  }
}

/* -----------------------------------
   ANIMATIONS (scroll reveal + float)
-----------------------------------*/
.om-card.is-in{
  opacity:1;
  transform: translate3d(0,0,0) scale(1);
}

.om-card.float{
  animation: floaty 6s ease-in-out infinite;
}

@keyframes floaty{
  0%,100%{ transform: translate3d(0,0,0) }
  50%{ transform: translate3d(0,-8px,0) }
}
/* More vertical room so bottom cards don't clip */
.om-timeline { min-height: 820px; }
.om-flow     { height: clamp(560px, 65vw, 820px); }

/* --- DESKTOP: bring #05 in front + reposition a bit --- */
@media (min-width: 920px){
  /* 04 stays above 03, but below 05 */
  .om-card:nth-child(4){ z-index: 40; top: 38%; left: 63%; }

  /* 05: make clearly visible (top-most among bottom row) */
  .om-card:nth-child(5){
    top: 82%;
    left: 73%;
    z-index: 70;         /* highest so it won’t hide */
    transform: translate3d(0,0,0) scale(1); /* ensure visible state */
  }

  /* 06: keep left so it doesn't cover 05 */
  .om-card:nth-child(6){ top: 58%; left: 37%; z-index: 50; }
}

/* --- TABLET: same idea --- */
@media (min-width: 600px) and (max-width: 919px){
  .om-card:nth-child(5){
    top: 84%;
    left: 54%;
    z-index: 70;
  }
  .om-card:nth-child(6){
    top: 60%;
    left: 14%;
    z-index: 50;
  }
}

/* MOBILE VERSION: Hide entire SVG timeline + background blobs,
   only show clean stacked steps */
@media (max-width: 599px) {

  /* Hide animated SVG timeline completely */
  .om-flow,
  .om-process::before,
  .om-process::after {
    display: none !important;
  }

  /* Remove timeline container height */
  .om-timeline {
    min-height: auto !important;
    height: auto !important;
    padding: 0;
  }

  /* Mobile: simple vertical list of cards */
  .om-grid {
    position: relative;
    inset: unset;
    padding: 0;
    margin-top: 10px;
  }

  .om-card {
    position: relative !important;
    width: 100% !important;
    margin: 18px 0 !important;
    transform: none !important;
  }

  /* Remove floating animation on mobile for smooth UX */
  .om-card.float {
    animation: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6d22216 *//* ===== Case Studies – BLACK THEME ===== */
.om-cases-dark{
  --om:#ff6b00;
  --bg:#000;
  --panel:#0b0b0e;
  --line:#1e1f24;
  --ink:#fff;
  --muted:#a9b0c2;

  background:var(--bg); color:var(--ink);
  font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;
  padding:90px 0 110px;
}
.om-cases-dark .omcd-wrap{ width:min(1240px,94%); margin:auto; }
.om-cases-dark .omcd-head{ text-align:center; margin-bottom:18px; }
.om-cases-dark h2{ margin:0 0 6px; font-size:clamp(34px,5vw,54px); font-weight:900; letter-spacing:-.02em; }
.om-cases-dark .omcd-head p{ margin:0; color:var(--muted); font-size:16px; }

/* switcher */
.om-cases-dark .omcd-switch{ display:flex; gap:10px; flex-wrap:wrap; margin:18px 0 20px; }
.om-cases-dark .csw{
  background:#121217; color:#d8deea; border:1px solid var(--line);
  padding:8px 12px; border-radius:999px; font-weight:800; font-size:13px; cursor:pointer;
}
.om-cases-dark .csw.active{ background:var(--om); border-color:var(--om); color:#fff; }

/* grid */
.om-cases-dark .omcd-grid{
  display:grid; grid-template-columns: 1.05fr 1.25fr; gap:24px; align-items:stretch;
}
@media (max-width:980px){ .om-cases-dark .omcd-grid{ grid-template-columns:1fr; } }

/* left */
.om-cases-dark .omcd-left{ padding:6px 4px; }
.om-cases-dark .c-title{ margin:0 0 8px; font-size:clamp(22px,3vw,28px); font-weight:900; }
.om-cases-dark .c-title .om{ color:var(--om); }
.om-cases-dark .c-headline{ margin:0 0 8px; font-size:clamp(20px,3vw,26px); font-weight:900; }
.om-cases-dark .c-meta{ margin:0 0 6px; color:#8f97aa; font-weight:700; }
.om-cases-dark .c-desc{ margin:0 0 16px; color:var(--muted); line-height:1.7; }

.om-cases-dark .c-kpis{
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:16px 0 18px;
}
.om-cases-dark .kpi{
  background:#0f0f14; border:1px solid var(--line); border-radius:12px; padding:14px;
  box-shadow:0 14px 30px rgba(0,0,0,.6);
}
.om-cases-dark .k-big{ font-size:24px; font-weight:900; color:var(--om); }
.om-cases-dark .k-lbl{ font-size:12px; color:#b7bed0; }
.om-cases-dark .k-lbl span{ color:#8e97aa; }

.om-cases-dark .c-btn{
  display:inline-flex; align-items:center; gap:8px; text-decoration:none;
  background:var(--om); color:#fff; padding:12px 16px; border-radius:10px; font-weight:900;
  box-shadow:0 10px 28px rgba(255,107,0,.35);
}

/* right / chart card */
.om-cases-dark .chart-card{
  background:var(--panel); border:1px solid var(--line); border-radius:16px; padding:14px;
  box-shadow:0 22px 50px rgba(0,0,0,.7);
}
.om-cases-dark .card-head{ display:flex; align-items:flex-start; justify-content:space-between; gap:10px; padding:6px 6px 8px; }
.om-cases-dark .ch-title{ font-weight:900; font-size:15px; }
.om-cases-dark .ch-note{ font-size:12px; color:#8f97aa; }
.om-cases-dark .ch-legend{ font-size:12px; color:#9aa2b8; display:flex; align-items:center; gap:8px; white-space:nowrap; }
.om-cases-dark .ch-legend span{ width:10px; height:10px; background:var(--om); border-radius:50%; box-shadow:0 0 0 6px rgba(255,107,0,.14); }

.om-cases-dark .chart-area{ width:100%; height:auto; padding:4px 0 0; }
.om-cases-dark .chart-svg{ width:100%; height:340px; display:block; }
.om-cases-dark .chart-svg .line{
  fill:none; stroke:var(--om); stroke-width:3.5; stroke-linecap:round;
  filter:drop-shadow(0 0 14px rgba(255,107,0,.55));
  stroke-dasharray:1200; stroke-dashoffset:1200; transition:stroke-dashoffset .9s ease;
}
.om-cases-dark .chart-svg .area{ fill:url(#omcdFill); }
.om-cases-dark .chart-svg .grid-x line,
.om-cases-dark .chart-svg .grid-y line{ stroke:#1f222a; stroke-width:1; }
.om-cases-dark .chart-svg .dots circle{ fill:#000; stroke:var(--om); stroke-width:2.5; }

/* foot */
.om-cases-dark .card-foot{ display:flex; gap:12px; align-items:center; padding:10px 6px 4px; flex-wrap:wrap; }
.om-cases-dark .foot-label{ font-weight:900; }
.om-cases-dark .foot-tags{ color:#9aa2b8; font-size:13px; }

/* bottom summary cards */
.om-cases-dark .omcd-sum{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:18px; }
@media (max-width:760px){ .om-cases-dark .omcd-sum{ grid-template-columns:1fr; } }
.om-cases-dark .s-card{
  background:#0f0f14; border:1px solid var(--line); border-radius:14px; padding:16px; text-align:center;
  box-shadow:0 14px 34px rgba(0,0,0,.7);
}
.om-cases-dark .s-title{ color:#9aa2b8; font-weight:900; font-size:13px; }
.om-cases-dark .s-val{ color:var(--om); font-weight:900; font-size:28px; margin:6px 0; }
.om-cases-dark .s-sub{ color:#7f889e; font-size:12px; }
/* ============================
   CASE STUDY TEXT SIZE UPGRADE
   ============================ */

/* left side description */
.om-cases-dark .c-desc {
  font-size: 15.5px !important;
  line-height: 1.75 !important;
}

/* meta line under headline */
.om-cases-dark .c-meta {
  font-size: 15px !important;
}

/* KPI small labels */
.om-cases-dark .k-lbl {
  font-size: 13.5px !important;
}

/* bottom summary card subtitle */
.om-cases-dark .s-sub {
  font-size: 13.5px !important;
}

/* bottom summary card title */
.om-cases-dark .s-title {
  font-size: 14.5px !important;
}

/* bottom summary main number */
.om-cases-dark .s-val {
  font-size: 30px !important;
}

/* chart note text */
.om-cases-dark .ch-note {
  font-size: 13.5px !important;
}

/* chart legend */
.om-cases-dark .ch-legend {
  font-size: 13.5px !important;
}

/* growth summary label */
.om-cases-dark .foot-label {
  font-size: 15px !important;
}

/* growth summary details */
.om-cases-dark .foot-tags {
  font-size: 14.5px !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5cc0eba *//* HERO + MOSAIC SECTION (dark orange theme) */
:root{
  --bg:#0b0b0b;
  --text:#f7f7f9;
  --muted:rgba(255,255,255,0.75);
  --accent1:#ff8a1a;
  --accent2:#f7a546;
  --tile-bg:rgba(255,255,255,0.03);
}

/* base reset for h2 so spacing same as h1 */
h2 { margin:0; padding:0; }

/* layout */
.hero-mosaic {
  background:var(--bg);
  color:var(--text);
  padding:60px 28px 90px;
  font-family:Inter, Poppins, system-ui, sans-serif;
}

.hero-inner {
  max-width:1200px;
  margin:0 auto;
  display:flex;
  gap:36px;
  align-items:center;
  justify-content:space-between;
}

/* left */
.hero-left {
  flex:1 1 52%;
  min-width:280px;
  display:flex;
  flex-direction:column;
}

.hero-left h2 {
  font-size:52px;
  line-height:1.05;
  margin:0 0 16px !important;
  font-weight:800;
}

.hero-left h2 span {
  background:linear-gradient(90deg,var(--accent1),var(--accent2));
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

.hero-left .sub {
  color:var(--muted);
  font-size:17px;
  margin-bottom:18px;
  max-width:700px;
  font-weight:500;
  transform:translateY(12px);
}

.hero-bullets {
  list-style:none;
  padding:0;
  margin:14px 0 18px;
  display:grid;
  gap:12px;
  transform:translateY(12px);
}

.hero-bullets li {
  color:var(--muted);
  font-size:15px;
  padding-left:26px;
  position:relative;
}

.hero-bullets li::before {
  content:"";
  position:absolute;
  left:0;
  top:6px;
  width:16px;
  height:16px;
  border-radius:4px;
  background:linear-gradient(90deg,var(--accent1),var(--accent2));
  box-shadow:0 6px 18px rgba(255,138,26,0.12);
}

/* CTA buttons row → UPDATED GAP */
.hero-ctas {
  margin-top:28px;  
  display:flex;
  gap:14px;
  align-items:center;
  flex-wrap:wrap;
  transform:translateY(12px);
}

/* BUTTONS */
.btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 18px;
  border-radius:999px;
  text-decoration:none;
  font-weight:800;
  cursor:pointer;
  transition:background .2s ease, box-shadow .2s ease, transform .2s ease, color .2s ease, border-color .2s ease;
}

/* primary button */
.btn-primary {
  background:linear-gradient(90deg,var(--accent1),var(--accent2));
  color:#111;
  box-shadow:0 18px 45px rgba(247,165,70,0.12);
  border:0;
}

.btn-primary:hover {
  box-shadow:0 22px 60px rgba(247,165,70,0.20);
  transform:translateY(-1px);
  color:#111;
  text-decoration:none;
}

/* outline button (Talk to an Expert) */
.btn-outline {
  background:transparent;
  color:var(--text);
  border:1px solid rgba(255,255,255,0.35);
}

/* FIX: stop turning black on hover */
.hero-mosaic .btn-outline:hover {
  background:rgba(255,255,255,0.10);
  border-color:rgba(255,255,255,0.75);
  color:var(--text);           /* force text to stay white */
  text-decoration:none;
}

/* extra safety in case theme sets a:hover globally */
.hero-mosaic .btn:hover {
  text-decoration:none;
}

/* right mosaic */
.hero-right {
  flex:0 0 520px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}

.mosaic-heading {
  font-weight:800;
  font-size:20px;
  letter-spacing:.5px;
  color:var(--accent2);
  margin-bottom:10px;
  text-transform:uppercase;
  text-align:center;
}

.mosaic-viewport {
  width:100%;
  height:520px;
  border-radius:14px;
  overflow:hidden;
  position:relative;
  background:linear-gradient(180deg, rgba(255,255,255,0.01), rgba(255,255,255,0.005));
  border:1px solid rgba(255,255,255,0.03);
}

.mosaic-grid {
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-rows: 160px;
  gap:14px;
  padding:18px;
  animation: mosaicShift 14s linear infinite;
}

/* TILE */
.m-tile {
  background:var(--tile-bg);
  border-radius:12px;
  border:1px solid rgba(255,255,255,0.03);
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  transition: transform .35s cubic-bezier(.2,.9,.2,1), box-shadow .35s ease;
}

/* clickable tile */
.tile-link {
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  text-decoration:none;
  color:inherit;
}

.tile-inner {
  text-align:center;
  padding:12px;
  color:var(--text);
  display:flex;
  flex-direction:column;
  gap:8px;
  align-items:center;
  justify-content:center;
}

.tile-icon {
  font-size:36px;
  filter:drop-shadow(0 8px 18px rgba(247,165,70,0.12));
}

.tile-label {
  font-weight:700;
  font-size:15px;
  color:var(--muted);
  text-transform:capitalize;
}

.m-tile:hover {
  transform: translateY(-8px) scale(1.03);
  box-shadow: 0 26px 60px rgba(255,138,26,0.08);
}

.m-tile:hover .tile-label {
  color:#fff;
}

@keyframes mosaicShift {
  0%{transform:translateY(0);}
  50%{transform:translateY(-18px);}
  100%{transform:translateY(0);}
}

/* mobile responsiveness */
@media (max-width:980px){
  .hero-inner {
    flex-direction:column-reverse;
    gap:22px;
    align-items:flex-start;
  }

  .hero-right {
    width:100%;
  }

  .mosaic-viewport {
    height:360px;
  }

  .mosaic-grid {
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows:140px;
  }
}

@media (max-width:520px){
  .hero-left h2 {
    font-size:30px;
  }

  .hero-left .sub {
    font-size:15px;
    transform:none;
  }

  .hero-bullets,
  .hero-ctas {
    transform:none;
  }

  .hero-ctas {
    margin-top:22px;
    flex-direction:column;
    align-items:flex-start;
  }

  .mosaic-grid {
    grid-template-columns:1fr;
    grid-auto-rows:150px;
    gap:16px;
    padding:14px;
    animation:none;
  }

  .mosaic-viewport {
    height:auto;
    padding-bottom:10px;
  }

  .tile-icon {
    font-size:44px;
  }

  .tile-label {
    font-size:16px;
  }
}
/* FORCE VISIBLE "Talk to an Expert" BUTTON  */
.hero-mosaic a.btn-outline,
.hero-mosaic .btn-outline {
  background: transparent !important;
  color: #f7f7f9 !important; /* white text */
  border: 1px solid rgba(255,255,255,0.6) !important;
}

/* All link states same color (no black text) */
.hero-mosaic a.btn-outline:link,
.hero-mosaic a.btn-outline:visited,
.hero-mosaic a.btn-outline:active {
  color: #f7f7f9 !important;
}

/* Hover state – thoda glow + same white text */
.hero-mosaic a.btn-outline:hover,
.hero-mosaic .btn-outline:hover {
  background: rgba(255,255,255,0.10) !important;
  border-color: rgba(255,255,255,0.85) !important;
  color: #f7f7f9 !important;
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-789d04e *//* ===============================================
   OUTREACH MONKS – FULL REVIEWS SECTION CSS
=============================================== */

.om-reviews{
  --bg:#ffffff;
  --ink:#0e1933;
  --muted:#7183a2;
  --line:#e9eef6;
  --gap:18px;

  background:var(--bg);
  color:var(--ink);
  padding:80px 0 50px;
  font-family:Inter, sans-serif;
}

.om-reviews .omr-wrap{
  width:min(1240px,94%);
  margin:auto;
}

/* HEADER */
.om-reviews .omr-head{text-align:center;margin-bottom:34px;}
.om-reviews h2{margin:0;font-size:clamp(38px,5vw,56px);font-weight:800;}
.om-reviews .omr-sub{margin:0;color:#8a98b2;font-size:18px;}

/* METRICS */
.om-reviews .omr-metrics{
  display:grid;grid-template-columns:1fr 1.2fr 1fr;
  gap:24px;align-items:center;margin-top:20px;
}

.om-reviews .left .big{font-size:clamp(50px,6vw,85px);font-weight:900;}
.om-reviews .left p{color:#5b6477;}

.om-reviews .mcol.center{text-align:center;position:relative;}
.om-reviews .overall{margin:10px 0;color:#7d8798;}

.om-reviews .stars{display:flex;gap:8px;justify-content:center;}
.om-reviews .star{width:34px;height:34px;fill:#000;}

.om-reviews .squiggle{position:absolute;top:-10px;width:200px;height:80px;}
.om-reviews .squiggle.l{left:4%;transform:rotate(6deg);}
.om-reviews .squiggle.r{right:4%;transform:rotate(-6deg);}
.om-reviews .squiggle path{fill:none;stroke:#cfd6e3;stroke-width:3;stroke-dasharray:4 6;}

.om-reviews .score{text-align:right;font-size:clamp(42px,5vw,64px);font-weight:900;}

.om-reviews .bars{list-style:none;padding:0;margin:8px 0 0;}
.om-reviews .bars li{
  display:grid;grid-template-columns:70px 1fr;
  gap:10px;margin:6px 0;color:#6c7790;font-size:14px;
}
.om-reviews .bar{background:#eef2f8;height:10px;border-radius:50px;overflow:hidden;}
.om-reviews .bar b{background:#000;height:100%;display:block;}

/* ============================================
   CONTINUOUS MARQUEE – THE MAGIC
============================================ */
.om-reviews .omr-marquee{
  overflow:hidden;
  width:100%;
  margin-top:40px;
}

.om-reviews .omr-flow{
  display:flex;
  width:max-content;
  animation:om-marquee 28s linear infinite;
}

.om-reviews .strip{
  display:flex;
  gap:var(--gap);
  flex-wrap:nowrap;
}

.om-reviews .strip + .strip{
  margin-left:var(--gap);
}

/* cards never shrink */
.om-reviews .card{
  flex:0 0 auto;
  width:340px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:16px;
  padding:20px;
  box-shadow:0 10px 24px rgba(0,0,0,.06);
  transition:.25s ease;
}
@media (min-width:1200px){
  .om-reviews .card{width:360px;}
}

.om-reviews .card:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 36px rgba(0,0,0,.12);
}

.om-reviews .rating{color:#ff9500;font-size:20px;font-weight:900;margin-bottom:10px;}
.om-reviews .card p{color:#566173;line-height:1.6;font-size:15px;}
.om-reviews .author{margin-top:12px;color:#162033;font-weight:700;font-size:14px;}

@keyframes om-marquee{
  0%{transform:translateX(0);}
  100%{transform:translateX(-50%);} /* seamless continuous */
}

/* CTA */
.om-reviews .omr-cta{text-align:center;margin-top:30px;}
.om-reviews .btn{
  padding:14px 26px;border-radius:999px;
  border:2px solid #000;color:#000;background:#fff;
  font-weight:700;text-decoration:none;transition:.2s;
}
.om-reviews .btn:hover{background:#000;color:#fff;}/* End custom CSS */