

/* ── SHIMMER CTA BUTTON ── */
.get-in-touch-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 28px;
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(45deg, #06d6a0, #059669);
  border: none;
  border-radius: 9999px;
  cursor: pointer;
  overflow: hidden;
  letter-spacing: .5px;
  animation: lseo-bounce 3s ease-in-out infinite;
  transition: transform .3s ease;
  box-shadow: 0 6px 28px rgba(6,214,160,.38);
  text-decoration: none;
}
.get-in-touch-btn::before {
  content: '';
  position: absolute;
  top: 0; left: -50%;
  width: 50%; height: 100%;
  background: linear-gradient(120deg, transparent 0%, rgba(255,255,255,.38) 50%, transparent 100%);
  transform: skewX(-20deg);
  animation: lseo-shimmer 3s linear infinite;
  pointer-events: none;
  z-index: 2;
}
.get-in-touch-btn:hover { transform: scale(1.06); animation: none; }
@keyframes lseo-bounce { 0%,100%{transform:translateY(0) scale(1);} 50%{transform:translateY(-7px) scale(1.04);} }
@keyframes lseo-shimmer { 0%{left:-50%;} 100%{left:160%;} }

/* ── STAT BAR ── */
.lseo-stat-bar { background:#fff; border-top:1px solid #e8edf8; border-bottom:1px solid #e8edf8; }
.lseo-stat-grid { display:grid; grid-template-columns:repeat(4,1fr); }
.lseo-stat-item { padding:28px 20px; text-align:center; border-right:1px solid #e8edf8; transition:background .2s; }
.lseo-stat-item:last-child { border-right:none; }
.lseo-stat-item:hover { background:#f6f9ff; }
.lseo-stat-num { font-family:'Bricolage Grotesque',system-ui,sans-serif; font-size:clamp(1.5rem,3vw,2.2rem); font-weight:800; color:#059669; line-height:1; margin-bottom:7px; }
.lseo-stat-lbl { font-family:'DM Mono',monospace; font-size:10.5px; letter-spacing:.07em; text-transform:uppercase; color:rgba(27,26,26,.9); }
@media(max-width:640px){.lseo-stat-grid{grid-template-columns:repeat(2,1fr);}.lseo-stat-item:nth-child(2){border-right:none;}.lseo-stat-item{border-bottom:1px solid #e8edf8;}}

/* ── CAROUSELS (mirrors google-ranking-services pattern) ── */
.lseo-cw { position:relative; }
.fade-l,.fade-r { position:absolute; top:0; width:60px; height:100%; z-index:5; pointer-events:none; }
.fade-l { left:0; background:linear-gradient(to right,#f7f9fc,transparent); }
.fade-r { right:0; background:linear-gradient(to left,#f7f9fc,transparent); }
.fade-l--w { background:linear-gradient(to right,#fff,transparent); }
.fade-r--w { background:linear-gradient(to left,#fff,transparent); }

.lseo-cs {
  position:relative; height:400px; perspective:1200px;
  display:flex; align-items:center; justify-content:center;
  margin-top:30px;
}
@media(max-width:768px){.lseo-cs{height:260px;}}
.lseo-slide {
  position:absolute; width:100%; max-width:620px; height:370px;
  border-radius:18px; overflow:hidden;
  will-change:transform,filter;
  transition:transform .55s cubic-bezier(.4,0,.2,1),filter .55s ease,opacity .55s ease,box-shadow .55s ease;
  cursor:pointer; background:#0f1a2e;
}
@media(max-width:768px){.lseo-slide{height:230px;max-width:88%;}}
.lseo-slide img { width:100%; height:100%; object-fit:cover; object-position:top center; display:block; pointer-events:none; transition:transform .6s ease; }
.lseo-slide::before { content:''; position:absolute; inset:0; border-radius:18px; border:1px solid rgba(0,0,0,.09); z-index:3; pointer-events:none; transition:border-color .4s; }
.lseo-slide[data-pos="0"]  { transform:translateX(0) scale(1); z-index:10; box-shadow:0 20px 60px rgba(0,0,0,.2),0 0 0 2.5px rgba(6,214,160,.65),0 0 40px rgba(6,214,160,.16); }
.lseo-slide[data-pos="0"]::before { border-color:rgba(6,214,160,.65); }
.lseo-slide[data-pos="0"] img { transform:scale(1.04); }
.lseo-slide[data-pos="1"]  { transform:translateX(272px) translateZ(-190px) rotateY(-14deg) scale(.86); z-index:7; filter:brightness(.64) saturate(.58) grayscale(.18); box-shadow:0 6px 22px rgba(0,0,0,.14); }
.lseo-slide[data-pos="-1"] { transform:translateX(-272px) translateZ(-190px) rotateY(14deg) scale(.86); z-index:7; filter:brightness(.64) saturate(.58) grayscale(.18); box-shadow:0 6px 22px rgba(0,0,0,.14); }
.lseo-slide[data-pos="2"]  { transform:translateX(484px) translateZ(-360px) rotateY(-24deg) scale(.68); z-index:4; filter:brightness(.44) saturate(.3) grayscale(.34); }
.lseo-slide[data-pos="-2"] { transform:translateX(-484px) translateZ(-360px) rotateY(24deg) scale(.68); z-index:4; filter:brightness(.44) saturate(.3) grayscale(.34); }
.lseo-slide[data-pos="3"]  { transform:translateX(645px) translateZ(-475px) rotateY(-30deg) scale(.52); z-index:2; filter:brightness(.28) saturate(.2) grayscale(.5); opacity:.52; }
.lseo-slide[data-pos="-3"] { transform:translateX(-645px) translateZ(-475px) rotateY(30deg) scale(.52); z-index:2; filter:brightness(.28) saturate(.2) grayscale(.5); opacity:.52; }
.lseo-slide[data-pos="hidden"] { transform:translateX(0) translateZ(-700px) scale(.4); opacity:0; pointer-events:none; z-index:0; }
.lseo-slide[data-pos="1"]:hover,.lseo-slide[data-pos="-1"]:hover { filter:brightness(.82) saturate(.72) grayscale(.1); }

.nav-arrow { position:absolute; top:50%; transform:translateY(-50%); width:44px; height:44px; background:var(--neon); border:none; border-radius:50%; display:flex; align-items:center; justify-content:center; cursor:pointer; z-index:30; box-shadow:0 4px 18px rgba(6,214,160,.38); transition:all var(--t); }
.nav-arrow:hover { box-shadow:0 6px 28px rgba(6,214,160,.65); transform:translateY(-50%) scale(1.1); }
.nav-arrow svg { width:17px; height:17px; stroke:#060c1a; fill:none; stroke-width:2.5; stroke-linecap:round; }
.nav-prev { left:0; }
.nav-next { right:0; }
.carousel-footer { display:flex; flex-direction:column; align-items:center; gap:10px; margin-top:28px; }
.dots { display:flex; align-items:center; gap:7px; }
.dot { width:8px; height:8px; background:#d1d5db; border-radius:4px; border:none; padding:0; cursor:pointer; transition:width .32s,background .32s; }
.dot.active { width:22px; background:var(--neon); }
.lseo-ctr { font-size:12px; font-weight:600; color:#9ca3af; letter-spacing:.06em; }
.lseo-ctr strong { color:#059669; }

/* ── ALGO CHECK LIST ──*/
.lseo-algo-item { display:flex; align-items:flex-start; gap:16px; padding:18px 20px; background:#fff; border:1px solid #e5eaf2; border-radius:12px; margin-bottom:12px; transition:border-color .2s,transform .2s; }
.lseo-algo-item:hover { border-color:rgba(6,214,160,.35); transform:translateX(4px); }
.lseo-algo-icon { font-size:22px; flex-shrink:0; line-height:1; margin-top:2px; }
.lseo-algo-label { font-size:15px; font-weight:700; color:#0b1221; margin-bottom:3px; }
.lseo-algo-desc { font-size:13.5px; color:#6b7280; line-height:1.55; }
.lseo-algo-check { margin-left:auto; font-size:17px; color:#059669; flex-shrink:0; font-weight:800; }
.lseo-algo-item--soft { background:#f7f9fc; }

/* Grid layout with responsive rows */
.lseo-algo-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
  gap: 16px;
}

/* Individual card */
.lseo-algo-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 20px;
  background: #fff;
  border: 1px solid #e5eaf2;
  border-radius: 12px;
  transition: border-color 0.2s, transform 0.2s;
}

.lseo-algo-card:hover {
  border-color: rgba(6, 214, 160, 0.35);
  transform: translateY(-2px);
}

.lseo-algo-label {
  font-size: 15px;
  font-weight: 700;
  color: #0b1221;
  margin-top: 8px;
  margin-bottom: 6px;
}

.lseo-algo-desc {
  font-size: 13.5px;
  color: #6b7280;
  line-height: 1.55;
  margin-bottom: 8px;
}

.lseo-algo-check {
  font-size: 17px;
  color: #059669;
  font-weight: 800;
}

/* Full‑width card (3rd row) */
.lseo-algo-card-full {
  grid-column: 1 / -1; /* full width */
}

/* Mobile: always 1 column, icon on top, centered */
@media (max-width: 768px) {
  .lseo-algo-grid {
    grid-template-columns: 1fr;
  }
  .lseo-algo-card {
    padding: 16px;
  }
}
/* KEEP ALL YOUR EXISTING CSS ABOVE, ADD ONLY THESE */
/* ══════════════════════════════════════════════════════════════
   CTA FORM  [ink]
   ══════════════════════════════════════════════════════════════ */
.cta-section{background:var(--ink);padding-block:var(--sp-80);position:relative;overflow:hidden}
.cta-section::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 80% at 50% 50%,rgba(6,214,160,.07) 0%,transparent 70%);pointer-events:none}
.cta-inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,88px);align-items:center}
.cta-text h2{color:var(--white);margin:var(--sp-16) 0 var(--sp-20);font-size:40px;text-align:left}
.cta-text p{color:rgba(255,255,255,.65);line-height:1.72;font-size:1rem;margin-bottom:var(--sp-28)}
.cta-bullets{list-style:none;display:flex;flex-direction:column;gap:var(--sp-10)}
.cta-bullets li{display:flex;align-items:center;gap:var(--sp-10);color:rgba(255,255,255,.7);font-size:.9375rem}
.cta-bullets li::before{content:'✓';color:var(--c-signal-d);font-weight:900;font-size:.9375rem}
.cta-form{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:var(--r-20);padding:clamp(28px,3vw,40px)}
.cta-form h5{color:var(--white);font-size:18px;font-weight:700;margin-bottom:var(--sp-24)}
.form-field{margin-bottom:var(--sp-16)}
.form-field label{display:block;font-size:11px;font-weight:700;color:rgba(255,255,255,.5);margin-bottom:7px;text-transform:uppercase;letter-spacing:.07em}
.form-field input,.form-field select{width:100%;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:var(--r-8);padding:13px 16px;color:var(--white);font-family:var(--ff-d);font-size:.875rem;outline:none;transition:border-color .2s}
.form-field input::placeholder{color:rgba(255,255,255,.28)}
.form-field input:focus,.form-field select:focus{border-color:var(--c-signal-d)}
.form-field select option{background:#0f1525;color:var(--white)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-16)}
.form-note{font-size:.75rem;color:rgba(255,255,255,.4);text-align:center;margin-top:var(--sp-12)}

/* ── POPUP ── */
.popup-overlay { position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,.7); display:none; align-items:center; justify-content:center; z-index:9999; }
.popup-box { background:#fff; padding:36px 32px; border-radius:14px; max-width:400px; width:90%; text-align:center; position:relative; box-shadow:0 24px 80px rgba(0,0,0,.25); }
.popup-box h5 { font-family:'Bricolage Grotesque',system-ui,sans-serif; font-size:1.3rem; font-weight:800; color:#0b1221; margin-bottom:8px; }
.popup-close { position:absolute; top:12px; right:16px; background:none; border:none; font-size:22px; cursor:pointer; color:#6b7280; }
