
[data-anim]{ opacity:0; transform:translateY(20px); transition:opacity .6s ease, transform .6s ease; }
[data-anim].ll-in-view{ opacity:1; transform:translateY(0); }

.ll-subhead{ color:#6b7280; font-size:1.05rem; font-weight:500; line-height:1.6; max-width:760px; margin:0 auto 6px; }
.ll-footer-cta .ll-subhead{ color:#b9c6ef; }

/* SECTION-1 */
.ll-hero{ background:linear-gradient(180deg,#f5f8ff 0%,#ffffff 100%); padding:30px 0; overflow:hidden; }
.ll-hero .row{ align-items:flex-start; }
.ll-hero-text{ margin-top:-6px; }
.ll-hero-title{ font-size:2.6rem; font-weight:800; line-height:1.2; margin-bottom:20px; background:linear-gradient(90deg,#0b3d91,#2f6bff); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.ll-hero-sub{ font-size:1.1rem; color:#4a4a4a; margin-bottom:28px; max-width:540px; }
.ll-hero-ctas{ display:flex; flex-wrap:wrap; gap:14px; margin-bottom:30px; }
.ll-btn-primary{ background:linear-gradient(90deg,#0b3d91,#2f6bff); color:#fff; padding:13px 26px; border-radius:50px; font-weight:600; text-decoration:none; box-shadow:0 8px 20px rgba(47,107,255,0.3); transition:transform .3s ease, box-shadow .3s ease; display:inline-block; }
.ll-btn-primary:hover{ transform:translateY(-3px); box-shadow:0 12px 26px rgba(47,107,255,0.4); color:#fff; text-decoration:none; }
.ll-btn-outline{ border:2px solid #0b3d91; color:#0b3d91; padding:11px 26px; border-radius:50px; font-weight:600; text-decoration:none; transition:all .3s ease; display:inline-block; }
.ll-btn-outline:hover{ background:#0b3d91; color:#fff; text-decoration:none; }
.ll-hero-badges{ display:flex; flex-wrap:wrap; gap:18px; margin:0; padding:0; }
.ll-hero-badges li{ display:flex; align-items:center; gap:6px; font-size:0.85rem; color:#333; font-weight:500; }
.ll-flow{ background:#0a1128; border-radius:20px; padding:40px 30px; position:relative; }
.ll-flow-step{ display:flex; align-items:center; gap:16px; background:#12193d; border-radius:14px; padding:16px 18px; margin-bottom:0; transition:transform .3s ease, box-shadow .3s ease; }
.ll-flow-step:hover{ transform:translateY(-4px); box-shadow:0 10px 25px rgba(47,107,255,0.25); }
.ll-flow-icon{ width:44px; height:44px; min-width:44px; border-radius:10px; background:linear-gradient(135deg,#0b3d91,#2f6bff); display:flex; align-items:center; justify-content:center; }
.ll-flow-body h3{ color:#fff; font-size:0.95rem; font-weight:700; margin:0 0 4px; }
.ll-flow-body p{ color:#9aa5c9; font-size:0.78rem; margin:0; }
.ll-flow-line{ width:2px; height:26px; background:linear-gradient(180deg,#2f6bff,transparent); margin-left:38px; }
.ll-flow-final .ll-flow-icon{ background:linear-gradient(135deg,#2f6bff,#5eead4); }
@media(max-width:991px){ .ll-hero-title{ font-size:2rem; } .ll-hero-visual{ margin-top:40px; } }
@media(max-width:575px){ .ll-flow{ padding:26px 16px; } .ll-hero-ctas{ flex-direction:column; } .ll-btn-primary,.ll-btn-outline{ text-align:center; } }

/* SECTION-2 */
.ll-trust{ background:#f7f9fc; padding:30px 0; }
.ll-section-title{ font-size:2rem; font-weight:800; background:linear-gradient(90deg,#0b3d91,#2f6bff); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; margin-bottom:8px; }
.ll-subtitle{ font-size:1.4rem; font-weight:700; background:linear-gradient(90deg,#0b3d91,#2f6bff); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.ll-trust-note{ color:#6b7280; font-size:0.9rem; }
.ll-logo-row{ display:flex; flex-wrap:wrap; justify-content:center; gap:24px; }
.ll-logo-box{ width:150px; height:70px; background:#fff; border:1px solid #e5e9f2; border-radius:10px; display:flex; align-items:center; justify-content:center; color:#9aa0ac; font-weight:600; font-size:0.85rem; transition:transform .3s ease, box-shadow .3s ease; }
.ll-logo-box:hover{ transform:translateY(-4px); box-shadow:0 10px 20px rgba(11,61,145,0.1); }
/* .ll-stat-card: fade handled by the [data-anim] rule on its column wrapper */
.ll-stat-card{ background:#0a1128; border-radius:16px; padding:28px 16px; text-align:center; height:100%; transition:transform .3s ease, box-shadow .3s ease; }
.ll-stat-card:hover{ transform:translateY(-6px); box-shadow:0 14px 28px rgba(11,61,145,0.25); }
.ll-stat-icon{ width:48px; height:48px; border-radius:50%; background:linear-gradient(135deg,#0b3d91,#2f6bff); display:flex; align-items:center; justify-content:center; margin:0 auto 14px; }
.ll-stat-value{ color:#fff; font-size:1.5rem; font-weight:800; margin-bottom:6px; }
.ll-stat-label{ color:#9aa5c9; font-size:0.82rem; margin:0; }
@media(max-width:575px){ .ll-logo-box{ width:110px; height:56px; font-size:0.75rem; } }
.sg-logos{
  position:relative;
  overflow:hidden;
  padding: 26px 0;
  background: #07080b;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.sg-logos::before,
.sg-logos::after{
  content:"";
  position:absolute;
  top:0; bottom:0;
  width:100px;
  z-index:2;
  pointer-events:none;
}
.sg-logos::before{ left:0;  background:linear-gradient(90deg, #07080b, transparent); }
.sg-logos::after { right:0; background:linear-gradient(270deg, #07080b, transparent); }
.sg-logos__track {
    background: #07080b;
  display: flex;
  gap: 42px;
  align-items: center;
  width: max-content;
  animation: 42s linear infinite sg-logos-marq;
}
@keyframes sg-logos-marq {
  to {
    transform: translateX(-50%);
  }
}
.sg-logos__item {
  height: 56px;
  min-width: 150px;
  padding: 12px 22px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.025);
  display: flex;
  align-items: center;
  justify-content: center;
}
.sg-logos__item:hover {
  transform: translateY(-2px);
  border-color: var(--line-2);
}
.sg-logos {
  min-height: 108px;
  contain: layout style;
}
.sg-logos__item img {
  width: 118px;
  height: 34px;
  max-width: 118px;
  max-height: 34px;
  object-fit: contain;
  display: block;
  aspect-ratio: 118/34;
}

/* SECTION-3 */
.ll-intro{ background:#ffffff; padding:30px 0; }
.ll-intro-text{ color:#4a4a4a; font-size:1rem; line-height:1.75; margin-bottom:18px; }
/* .ll-intro-flow: fade handled by the [data-anim] rule on its column wrapper */
.ll-intro-flow{ background:#f5f8ff; border-radius:18px; padding:36px 28px; }
.ll-intro-step{ display:flex; align-items:center; gap:18px; background:#fff; border-radius:14px; padding:18px; box-shadow:0 6px 18px rgba(11,61,145,0.08); transition:transform .3s ease, box-shadow .3s ease; }
.ll-intro-step:hover{ transform:translateY(-4px); box-shadow:0 12px 26px rgba(11,61,145,0.15); }
.ll-intro-badge{ width:42px; height:42px; min-width:42px; border-radius:50%; background:linear-gradient(135deg,#0b3d91,#2f6bff); color:#fff; font-weight:800; display:flex; align-items:center; justify-content:center; }
.ll-intro-step h3{ font-size:1rem; font-weight:700; color:#0a0a0a; margin:0 0 4px; }
.ll-intro-step p{ font-size:0.85rem; color:#6b7280; margin:0; }
.ll-intro-arrow{ display:flex; justify-content:center; padding:6px 0; animation:llFloatArrow 2s ease-in-out infinite; }
@keyframes llFloatArrow{ 0%,100%{ transform:translateY(0);} 50%{ transform:translateY(5px);} }
@media(max-width:991px){ .ll-intro-flow{ margin-top:30px; } }
@media(max-width:575px){ .ll-intro-flow{ padding:24px 16px; } .ll-intro-step{ padding:14px; } }

/* SECTION-4 */
.ll-problems{ background:#f7f9fc; padding:30px 0; }
.ll-problems-note{ color:#6b7280; font-size:1rem; max-width:640px; margin:0 auto; }
/* .ll-problem-card: fade handled by the [data-anim] rule on its column wrapper */
.ll-problem-card{ background:#0a1128; border-radius:16px; padding:26px 22px; height:100%; transition:transform .3s ease, box-shadow .3s ease; }
.ll-problem-card:hover{ transform:translateY(-6px); box-shadow:0 14px 30px rgba(11,61,145,0.25); }
.ll-problem-icon{ width:46px; height:46px; border-radius:12px; background:linear-gradient(135deg,#0b3d91,#2f6bff); display:flex; align-items:center; justify-content:center; margin-bottom:16px; }
.ll-problem-card h3{ color:#fff; font-size:1.05rem; font-weight:700; margin-bottom:10px; }
.ll-problem-card p{ color:#9aa5c9; font-size:0.85rem; line-height:1.55; margin:0; }

/* SECTION-5 */
.ll-solution{ background:#ffffff; padding:30px 0; }
.ll-solution-note{ color:#6b7280; font-size:1rem; max-width:700px; margin:0 auto; }
/* .ll-service-card: fade handled by the [data-anim] rule on its column wrapper */
.ll-service-card{ background:#0a1128; border:1px solid #0a1128; border-radius:16px; padding:26px 22px; height:100%; transition:transform .3s ease, box-shadow .3s ease, background .4s ease, border-color .3s ease; }
.ll-service-card:hover{ transform:translateY(-6px); box-shadow:0 16px 34px rgba(11,61,145,0.35); border-color:#2f6bff; background:linear-gradient(135deg,#0b3d91,#2f6bff); }
.ll-service-icon{ width:44px; height:44px; border-radius:10px; background:#12193d; border:1px solid rgba(255,255,255,0.12); display:flex; align-items:center; justify-content:center; margin-bottom:16px; transition:transform .45s ease, background .3s ease; }
.ll-service-card:hover .ll-service-icon{ transform:rotate(-8deg) scale(1.12); background:rgba(255,255,255,0.18); }
.ll-service-card h3{ font-size:1rem; font-weight:700; color:#fff; margin-bottom:8px; }
.ll-service-card p{ color:#9aa5c9; font-size:0.85rem; line-height:1.55; margin:0; transition:color .3s ease; }
.ll-service-card:hover p{ color:#e4eaff; }

/* SECTION-6 */
.ll-approaches{ background:#f7f9fc; padding:30px 0; }
.ll-approaches-note{ color:#6b7280; font-size:1rem; max-width:750px; margin:0 auto; }
.ll-rflow{ }
.ll-rflow-track{ display:flex; align-items:stretch; overflow-x:auto; gap:20px; padding:10px 4px 26px; scroll-snap-type:x mandatory; scrollbar-color:#2f6bff #e5edff; scrollbar-width:thin; }
.ll-rcard{ flex:0 0 calc((100% - 2*40px - 4*20px)/3); min-width:250px; background:#0a1128; border-radius:16px; padding:22px 20px; transition:transform .3s ease, box-shadow .3s ease; scroll-snap-align:start; }
.ll-rcard:hover{ transform:translateY(-6px); box-shadow:0 14px 30px rgba(11,61,145,0.25); }
.ll-rcard-head{ display:flex; align-items:center; gap:10px; margin-bottom:10px; }
.ll-rnum{ width:30px; height:30px; border-radius:50%; background:linear-gradient(135deg,#0b3d91,#2f6bff); color:#fff; font-weight:800; font-size:0.85rem; display:flex; align-items:center; justify-content:center; }
.ll-rcard-head h3{ color:#fff; font-size:1.05rem; font-weight:700; margin:0; }
.ll-rwhen{ color:#9aa5c9; font-size:0.82rem; line-height:1.5; margin-bottom:14px; min-height:60px; }
.ll-rmeta{ display:flex; justify-content:space-between; gap:8px; border-top:1px solid rgba(255,255,255,0.08); padding:8px 0; }
.ll-rmeta span{ color:#6b7de0; font-size:0.72rem; text-transform:uppercase; letter-spacing:0.5px; }
.ll-rmeta strong{ color:#fff; font-size:0.78rem; font-weight:600; text-align:right; max-width:130px; }
.ll-rarrow{ display:flex; align-items:center; justify-content:center; flex:0 0 40px; width:40px; animation:llArrowPulse 1.6s ease-in-out infinite; }
@keyframes llArrowPulse{ 0%,100%{ opacity:0.5; } 50%{ opacity:1; } }
.ll-scroll-hint{ text-align:center; color:#9aa0ac; font-size:0.8rem; margin-top:-6px; }
/* colorful, animated scrollbar for the strategy track (webkit browsers) */
.ll-rflow-track::-webkit-scrollbar{ height:8px; }
.ll-rflow-track::-webkit-scrollbar-track{ background:#e5edff; border-radius:10px; }
.ll-rflow-track::-webkit-scrollbar-thumb{ border-radius:10px; background:linear-gradient(90deg,#0b3d91,#2f6bff,#5eead4,#2f6bff,#0b3d91); background-size:300% 100%; animation:llScrollbarShift 4s linear infinite; }
@keyframes llScrollbarShift{ 0%{ background-position:0% 50%; } 100%{ background-position:300% 50%; } }
@media(max-width:991px){ .ll-rcard{ flex:0 0 calc((100% - 40px)/2); min-width:230px; } }
@media(max-width:575px){ .ll-rcard{ flex:0 0 85%; min-width:200px; padding:18px 16px; } }

/* SECTION-7 */
.ll-process{ background:#ffffff; padding:30px 0; }
.ll-process-note{ color:#6b7280; font-size:1rem; max-width:750px; margin:0 auto; }
.ll-pflow{ position:relative; max-width:820px; margin:0 auto; padding-left:34px; }
.ll-pline{ position:absolute; left:15px; top:6px; bottom:6px; width:2px; background:linear-gradient(180deg,#2f6bff,#0b3d91); }
.ll-pstep{ position:relative; margin-bottom:30px; transform:translateX(-20px); }
.ll-pstep.ll-in-view{ transform:translateX(0); }
.ll-pdot{ position:absolute; left:-34px; top:6px; width:32px; height:32px; border-radius:50%; background:linear-gradient(135deg,#0b3d91,#2f6bff); color:#fff; font-weight:800; font-size:0.85rem; display:flex; align-items:center; justify-content:center; box-shadow:0 0 0 5px #ffffff; }
.ll-pcard{ background:#0a1128; border-radius:14px; padding:18px 22px; transition:transform .3s ease, box-shadow .3s ease, background .4s ease; }
.ll-pcard:hover{ transform:translateY(-4px); box-shadow:0 14px 28px rgba(11,61,145,0.3); background:linear-gradient(135deg,#0b3d91,#2f6bff); }
.ll-pcard h3{ font-size:1.05rem; font-weight:700; color:#fff; margin-bottom:6px; }
.ll-pcard p{ color:#9aa5c9; font-size:0.88rem; margin:0; line-height:1.6; transition:color .3s ease; }
.ll-pcard:hover p{ color:#e4eaff; }
@media(max-width:575px){ .ll-pflow{ padding-left:28px; } .ll-pdot{ left:-28px; width:28px; height:28px; font-size:0.75rem; } .ll-pcard{ padding:14px 16px; } }

/* SECTION-8 */
.ll-tech{ background:#f7f9fc; padding:30px 0; }
/* .ll-tech-card: fade handled by the [data-anim] rule on its column wrapper */
.ll-tech-card{ background:#0a1128; border-radius:16px; padding:28px 24px; height:100%; transition:transform .3s ease, box-shadow .3s ease; }
.ll-tech-card:hover{ transform:translateY(-6px); box-shadow:0 14px 30px rgba(11,61,145,0.25); }
.ll-tech-icon{ width:46px; height:46px; border-radius:12px; background:linear-gradient(135deg,#0b3d91,#2f6bff); display:flex; align-items:center; justify-content:center; margin-bottom:16px; }
.ll-tech-card h3{ color:#fff; font-size:1.05rem; font-weight:700; margin-bottom:14px; }
.ll-tag-wrap{ display:flex; flex-wrap:wrap; gap:10px; }
.ll-tag{ display:inline-flex; align-items:center; gap:7px; background:rgba(47,107,255,0.15); color:#a9c1ff; border:1px solid rgba(47,107,255,0.3); border-radius:20px; padding:5px 12px 5px 6px; font-size:0.78rem; font-weight:500; transition:background .3s ease, transform .3s ease; }
.ll-tag:hover{ background:rgba(47,107,255,0.3); transform:translateY(-2px); }
.ll-tag img{ width:20px; height:20px; border-radius:6px; display:block; }
.ll-tech-footnote{ color:#6b7280; font-size:0.95rem; max-width:800px; margin:30px auto 0; }

/* SECTION-9 */
.ll-cloud{ background:#ffffff; padding:30px 0; }
.ll-cloud-note{ color:#6b7280; font-size:1rem; }
/* .ll-cloud-card: fade handled by the [data-anim] rule on its column wrapper */
.ll-cloud-card{ background:#0a1128; border:1px solid #0a1128; border-radius:14px; padding:22px; height:100%; transition:transform .3s ease, box-shadow .3s ease, background .3s ease; }
.ll-cloud-card:hover{ transform:translateY(-5px); box-shadow:0 14px 28px rgba(11,61,145,0.3); background:#12193d; }
.ll-cloud-card h3{ display:flex; align-items:center; gap:10px; font-size:1.05rem; font-weight:700; color:#fff; margin-bottom:8px; }
.ll-cloud-card h3 img{ width:26px; height:26px; border-radius:6px; }
.ll-cloud-card p{ color:#9aa5c9; font-size:0.88rem; margin:0; line-height:1.55; }
.ll-cloud-desc{ color:#4a4a4a; font-size:1rem; line-height:1.75; }
.ll-migflow{ background:#0a1128; border-radius:18px; padding:30px 26px; }
.ll-migstep{ display:flex; align-items:center; gap:14px; background:#12193d; border-radius:12px; padding:14px 18px; color:#e5e9f2; font-size:0.9rem; font-weight:500; transition:transform .3s ease; }
.ll-migstep:hover{ transform:translateX(6px); }
.ll-migstep span{ width:28px; height:28px; min-width:28px; border-radius:50%; background:linear-gradient(135deg,#0b3d91,#2f6bff); color:#fff; font-weight:800; font-size:0.8rem; display:flex; align-items:center; justify-content:center; }
.ll-migarrow{ width:2px; height:22px; background:linear-gradient(180deg,#2f6bff,transparent); margin-left:32px; }
.ll-migstep-final{ background:linear-gradient(135deg,#0b3d91,#2f6bff); color:#fff; }

/* SECTION-10 */
.ll-enterprise{ background:#f7f9fc; padding:30px 0; }
.ll-enterprise-note{ color:#6b7280; font-size:1rem; }
.ll-ent-grid{ display:flex; flex-wrap:wrap; justify-content:center; gap:14px; margin-bottom:40px; }
.ll-ent-pill{ background:linear-gradient(90deg,#0b3d91,#2f6bff); border:1px solid transparent; color:#fff; font-weight:600; font-size:0.9rem; padding:10px 20px; border-radius:30px; transition:transform .3s ease, box-shadow .3s ease, background .3s ease, color .3s ease, border-color .3s ease; }
.ll-ent-pill:hover{ background:#fff; border-color:#d9e4ff; color:#0b3d91; transform:translateY(-4px); box-shadow:0 10px 22px rgba(47,107,255,0.2); }
.ll-enterprise-desc{ color:#4a4a4a; font-size:1rem; max-width:820px; margin:0 auto; line-height:1.75; }

/* SECTION-11 */
.ll-industries{ background:#ffffff; padding:30px 0; }
.ll-industries-note{ color:#6b7280; font-size:1rem; max-width:800px; margin:0 auto; }
/* .ll-ind-card: fade handled by the [data-anim] rule on its column wrapper */
.ll-ind-card{ background:linear-gradient(135deg,#0b3d91,#2f6bff); border:1px solid transparent; border-radius:12px; padding:18px 10px; text-align:center; height:100%; display:flex; align-items:center; justify-content:center; transition:box-shadow .3s ease, background .3s ease, transform .3s ease; }
.ll-ind-card:hover{ background:#f5f8ff; border-color:#e5edff; transform:translateY(-5px); box-shadow:0 12px 24px rgba(47,107,255,0.15); }
.ll-ind-card h3{ margin:0; font-weight:600; font-size:0.88rem; }
.ll-ind-card h3 a{ color:#fff; text-decoration:none; transition:color .3s ease; }
.ll-ind-card:hover h3 a{ color:#0b3d91; }

/* SECTION-12 */
.ll-benefits{ background:#f7f9fc; padding:30px 0; }
/* .ll-benefit-card: fade handled by the [data-anim] rule on its column wrapper */
.ll-benefit-card{ background:#0a1128; border-radius:14px; padding:22px 20px; height:100%; display:flex; flex-direction:column; transition:transform .3s ease, box-shadow .3s ease; }
.ll-benefit-card:hover{ transform:translateY(-5px); box-shadow:0 12px 26px rgba(11,61,145,0.25); }
.ll-benefit-icon{ width:38px; height:38px; border-radius:9px; background:linear-gradient(135deg,#0b3d91,#2f6bff); display:flex; align-items:center; justify-content:center; margin-bottom:12px; }
.ll-benefit-card h3{ color:#fff; font-size:0.98rem; font-weight:700; margin-bottom:6px; }
.ll-benefit-card p{ color:#9aa5c9; font-size:0.83rem; margin:0; line-height:1.5; }

/* SECTION-13 */
.ll-baftr{ background:#ffffff; padding:30px 0; }
/* .ll-baftr-table: fade handled by the [data-anim] rule on its .table-responsive wrapper */
/* No horizontal slider: the wrapper never scrolls, the table just stays a real table at every size */
.ll-baftr .table-responsive{ overflow-x:visible; }
.ll-baftr-table{ width:100%; margin-bottom:0; border-collapse:separate; border-spacing:0 10px; }
.ll-baftr-table thead th{ border:none; font-size:0.85rem; text-transform:uppercase; letter-spacing:0.5px; color:#0b3d91; font-weight:700; padding:12px 18px; }
.ll-baftr-table tbody tr td{ border:none; padding:16px 18px; font-size:0.9rem; vertical-align:middle; word-wrap:break-word; }
.ll-baftr-table tbody tr td:first-child{ font-weight:700; color:#0a0a0a; background:#f5f8ff; border-radius:10px 0 0 10px; }
.ll-baftr-table .ll-col-legacy{ background:#fdf2f2; color:#8a4a4a; border-radius:0; }
.ll-baftr-table .ll-col-modern{ background:#eef7f2; color:#1e6b4a; font-weight:500; border-radius:0 10px 10px 0; }
.ll-baftr-table tbody tr{ transition:transform .3s ease; }
.ll-baftr-table tbody tr:hover{ transform:translateX(4px); }
@media(max-width:767px){
  .ll-baftr-table thead th{ font-size:0.72rem; padding:8px 10px; }
  .ll-baftr-table tbody tr td{ padding:10px 12px; font-size:0.8rem; line-height:1.4; }
}
@media(max-width:575px){
  .ll-baftr-table thead th:first-child, .ll-baftr-table tbody tr td:first-child{ display:none; }
}

/* SECTION-14 */
.ll-whychoose{ background:#ffffff; padding:30px 0; }
/* Tabbed layout: a row of tab buttons + a single dark panel that swaps content */
.ll-why-tabs{ }
.ll-why-tablist{ display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin-bottom:28px; }
.ll-why-tab{ background:#f5f8ff; border:1px solid #e5edff; color:#0b3d91; font-weight:600; font-size:0.85rem; padding:10px 18px; border-radius:30px; cursor:pointer; transition:background .3s ease, color .3s ease, transform .3s ease, box-shadow .3s ease; }
.ll-why-tab:hover{ transform:translateY(-3px); box-shadow:0 8px 18px rgba(47,107,255,0.15); }
.ll-why-tab.ll-active{ background:linear-gradient(90deg,#0b3d91,#2f6bff); color:#fff; border-color:transparent; box-shadow:0 8px 18px rgba(47,107,255,0.25); }
.ll-why-panels{ position:relative; }
.ll-why-panel{ display:none; background:#0a1128; border-radius:16px; padding:36px 34px; align-items:flex-start; gap:20px; animation:llWhyFade .4s ease; }
.ll-why-panel.ll-active{ display:flex; }
@keyframes llWhyFade{ from{ opacity:0; transform:translateY(10px); } to{ opacity:1; transform:translateY(0); } }
.ll-why-icon{ width:52px; height:52px; min-width:52px; border-radius:12px; background:#12193d; border:1px solid rgba(255,255,255,0.12); display:flex; align-items:center; justify-content:center; }
.ll-why-panel h3{ font-size:1.15rem; font-weight:700; color:#fff; margin-bottom:8px; }
.ll-why-panel p{ color:#9aa5c9; font-size:0.92rem; margin:0; line-height:1.65; }
@media(max-width:575px){ .ll-why-panel{ flex-direction:column; padding:26px 22px; } }

/* SECTION-15 */
.ll-outcomes{ background:#f7f9fc; padding:30px 0; }
/* .ll-outcome-card: fade handled by the [data-anim] rule on its column wrapper */
.ll-outcome-card{ background:linear-gradient(135deg,#0b3d91,#2f6bff); border-radius:14px; padding:24px 16px; text-align:center; height:100%; display:flex; flex-direction:column; align-items:center; gap:12px; transition:transform .3s ease, box-shadow .3s ease; }
.ll-outcome-card:hover{ transform:translateY(-6px); box-shadow:0 16px 30px rgba(47,107,255,0.3); }
.ll-outcome-card p{ color:#fff; font-size:0.85rem; font-weight:600; margin:0; line-height:1.4; }

/* SECTION-16 */
 #CaseStudies {
    background: #07080B;
    padding: 30px 0;
    position: relative;
    overflow: hidden;
    color: #F3F4F6;
  }

  #CaseStudies::before {
    content: "";
    position: absolute;
    top: -200px;
    left: 50%;
    transform: translateX(-50%);
    width: 900px;
    height: 600px;
    background: radial-gradient(circle, rgba(34,211,238,0.10) 0%, rgba(139,92,246,0.06) 45%, transparent 70%);
    filter: blur(60px);
    pointer-events: none;
  }

  #CaseStudies::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
      linear-gradient(rgba(255,255,255,0.025) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255,255,255,0.025) 1px, transparent 1px);
    background-size: 48px 48px;
    pointer-events: none;
  }

  #CaseStudies .cs-container {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 32px;
    position: relative;
    z-index: 2;
  }

  #CaseStudies .client-title {
    font-size: 36px;
    font-weight: 700;
    line-height: 1.05;
    letter-spacing: -0.02em;
    text-align: center;
    margin: 0 0 16px 0;
    color: #F3F4F6;
  }



  #CaseStudies .cs-subtext {
    text-align: center;
    max-width: 620px;
    margin: 0 auto 64px auto;
    font-size: 18px;
    font-weight: 300;
    line-height: 1.55;
    color: #8A8F9B;
  }

  /* ===== VIEWPORT (shows exactly one card) ===== */
  #CaseStudies .cs-viewport {
    position: relative;
    max-width: 1140px;
    margin: 0 auto;
    overflow: hidden;
  }

  #CaseStudies .casestudies_slider {
    position: relative;
    overflow: hidden;
  }

  #CaseStudies .slider-casestudies {
    display: flex;
    transition: transform 0.6s cubic-bezier(0.65, 0, 0.35, 1);
    will-change: transform;
  }

  #CaseStudies .caseStudiesSliderBox {
    flex: 0 0 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 6px;
  }

  /* ===== CARD ===== */
  #CaseStudies .case_box {
    position: relative;
    display: flex;
    align-items: center;
    gap: 36px;
    background: #0F1219;
    border-radius: 24px;
    overflow: hidden;
    padding: 40px;
    transition: transform 0.35s ease, background 0.35s ease;
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    z-index: 0;
  }

  /* static border */
  #CaseStudies .case_box::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 24px;
    padding: 1px;
    background: rgba(255,255,255,0.07);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    transition: opacity 0.35s ease;
    z-index: 1;
  }

  /* animated gradient border on hover */
  #CaseStudies .case_box::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 24px;
    padding: 1.5px;
    background: conic-gradient(from var(--angle, 0deg), #22D3EE, #8B5CF6, #5EE6E0, #22D3EE);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.35s ease;
    animation: cs-rotate 3s linear infinite;
    z-index: 2;
  }

  @property --angle {
    syntax: '<angle>';
    initial-value: 0deg;
    inherits: false;
  }

  @keyframes cs-rotate {
    to { --angle: 360deg; }
  }

  #CaseStudies .case_box:hover {
    transform: translateY(-6px);
    background: rgba(15, 18, 25, 0.92);
    box-shadow: 0 24px 60px -20px rgba(56,189,248,0.25), 0 0 40px rgba(56,189,248,0.08);
  }

  #CaseStudies .case_box:hover::before { opacity: 0; }
  #CaseStudies .case_box:hover::after { opacity: 1; }

  #CaseStudies .case_box__image {
    flex: 0 0 420px;
    width: 420px;
    height: 300px;
    position: relative;
    overflow: hidden;
    /* background: #0C0E14; */
    /* border-radius: 16px;
    border: 1px solid rgba(255,255,255,0.07); */
    display: flex;
    align-items: center;
    justify-content: center;
  }

  #CaseStudies .case_box__image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    display: block;
  }

  #CaseStudies .case_box__content {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
  }

  #CaseStudies .case_box__content h4 {
    font-size: 28px;
    font-weight: 600;
    letter-spacing: -0.02em;
    margin: 0 0 14px 0;
    color: #F3F4F6;
  }

  #CaseStudies .case_box__content p {
    font-size: 14px;
    font-weight: 300;
    line-height: 1.6;
    color: #C7CAD1;
    margin: 0 0 20px 0;
  }

  #CaseStudies .case_box__points {
    list-style: none;
    margin: 0 0 28px 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
  }

  #CaseStudies .case_box__points li {
    position: relative;
    padding-left: 22px;
    font-size: 13px;
    font-weight: 400;
    color: #8A8F9B;
    line-height: 1.4;
  }

  #CaseStudies .case_box__points li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: linear-gradient(135deg, #22D3EE, #8B5CF6);
  }

  #CaseStudies .viewCaseStudies {
    margin-top: auto;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: fit-content;
    padding: 14px 22px;
    border-radius: 999px;
    background: #F3F4F6;
    color: #07080B;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    transition: transform 0.3s ease, background 0.3s ease, gap 0.3s ease;
  }

  #CaseStudies .viewCaseStudies i {
    font-style: normal;
    transition: transform 0.3s ease;
  }

  #CaseStudies .viewCaseStudies::after {
    content: "\2192";
    transition: transform 0.3s ease;
  }

  #CaseStudies .viewCaseStudies i {
    display: none; /* font-awesome glyph not loaded, use unicode arrow above */
  }

  #CaseStudies .viewCaseStudies:hover {
    transform: translateY(-3px);
    background: #22D3EE;
  }

  #CaseStudies .viewCaseStudies:hover::after {
    transform: translateX(4px);
  }

  /* ===== DOTS / PROGRESS ===== */
  #CaseStudies .cs-dots {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: 32px;
    flex-wrap: wrap;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
  }

  #CaseStudies .cs-dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: rgba(255,255,255,0.12);
    border: none;
    cursor: pointer;
    transition: width 0.35s ease, background 0.35s ease;
    padding: 0;
  }

  #CaseStudies .cs-dot.active {
    width: 26px;
    background: linear-gradient(90deg, #22D3EE, #8B5CF6);
  }

  /* ===== ARROWS ===== */
  #CaseStudies .caseStudiesBottomArrows {
    display: flex;
    justify-content: center;
    gap: 14px;
    margin-top: 36px;
  }

  #CaseStudies .caseStudiesBottomArrows button {
    width: 48px;
    height: 48px;
    border-radius: 999px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.07);
    color: #F3F4F6;
    font-size: 16px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: border-color 0.3s ease, background 0.3s ease, transform 0.3s ease;
  }

  #CaseStudies .caseStudiesBottomArrows button:hover {
    border-color: rgba(56,189,248,0.55);
    background: rgba(56,189,248,0.08);
    transform: translateY(-2px);
  }

  #CaseStudies .caseStudiesBottomArrows i {
    font-style: normal;
  }

  #CaseStudies .caseStudiesBottomArrows .fa-arrow-left::before { content: "\2190"; }
  #CaseStudies .caseStudiesBottomArrows .fa-arrow-right::before { content: "\2192"; }

  /* ===== RESPONSIVE ===== */
  @media (max-width: 991px) {
    #CaseStudies { padding: 90px 0; }
    #CaseStudies .client-title { font-size: 40px; }
    #CaseStudies .case_box { flex-direction: column; padding: 32px; gap: 24px; }
    #CaseStudies .case_box__image { width: 100%; max-width: 360px; height: 260px; flex: 0 0 260px; }
    #CaseStudies .case_box__content { align-items: center; text-align: center; }
    #CaseStudies .case_box__content h4 { font-size: 24px; }
    #CaseStudies .case_box__points { align-items: flex-start; }
  }

  @media (max-width: 575px) {
    #CaseStudies { padding: 30px 0; }
    #CaseStudies .cs-container { padding: 0 20px; }
    #CaseStudies .client-title { font-size: 30px; }
    #CaseStudies .cs-subtext { font-size: 15px; margin-bottom: 40px; }
    #CaseStudies .case_box { padding: 24px; }
    #CaseStudies .case_box__image { width: 100%; max-width: 280px; height: 220px; flex: 0 0 220px; }
    #CaseStudies .case_box__content h4 { font-size: 21px; }
    #CaseStudies .case_box__points li { font-size: 12px; }
    #CaseStudies .caseStudiesBottomArrows button { width: 42px; height: 42px; }
  }
.tr-gradient-text{
    background: linear-gradient(90deg, #22D3EE, #8B5CF6, #FFFFFF);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
   display:inline-block;
    padding-bottom:6px;
    line-height:inherit;
}


/* SECTION-17 */
.ll-testimonials{ background:#f7f9fc; padding:30px 0; }
/* .ll-testi-card: fade handled by the [data-anim] rule on its column wrapper */
.ll-testi-card{ background:#fff; border:1px solid #e5edff; border-radius:16px; padding:28px 24px; height:100%; transition:transform .3s ease, box-shadow .3s ease; }
.ll-testi-card:hover{ transform:translateY(-6px); box-shadow:0 16px 30px rgba(47,107,255,0.12); }
.ll-testi-avatar{ width:50px; height:50px; border-radius:50%; object-fit:cover; margin-bottom:16px; box-shadow:0 6px 16px rgba(11,61,145,0.15); }
.ll-testi-stars{ color:#2f6bff; font-size:1.1rem; letter-spacing:2px; margin-bottom:12px; }
.ll-testi-card h3{ font-size:1.05rem; font-weight:700; color:#0a0a0a; margin-bottom:12px; }
.ll-testi-card p{ color:#6b7280; font-size:0.87rem; line-height:1.6; margin-bottom:16px; }
.ll-testi-author{ font-weight:600; color:#0b3d91; font-size:0.85rem; }

/* SECTION-18 */
.ll-footer-cta{ background:#0a1128; padding:30px 0; position:relative; overflow:hidden; }
.ll-footer-cta::before{ content:''; position:absolute; top:-60px; right:-60px; width:220px; height:220px; border-radius:50%; background:radial-gradient(circle,rgba(47,107,255,0.25),transparent 70%); animation:llGlowFloat 5s ease-in-out infinite; }
.ll-footer-cta::after{ content:''; position:absolute; bottom:-60px; left:-60px; width:220px; height:220px; border-radius:50%; background:radial-gradient(circle,rgba(47,107,255,0.15),transparent 70%); animation:llGlowFloat 6s ease-in-out infinite reverse; }
@keyframes llGlowFloat{ 0%,100%{ transform:translateY(0);} 50%{ transform:translateY(20px);} }
/* .ll-cta-title: fade handled by the [data-anim] rule on its container wrapper */
.ll-cta-title{ font-size:2rem; font-weight:800; color:#fff; margin-bottom:26px; position:relative; z-index:1; }
.ll-cta-btn{ background:linear-gradient(90deg,#0b3d91,#2f6bff); color:#fff; padding:15px 34px; border-radius:50px; font-weight:700; text-decoration:none; display:inline-block; box-shadow:0 10px 24px rgba(47,107,255,0.35); transition:transform .3s ease, box-shadow .3s ease; position:relative; z-index:1; }
.ll-cta-btn:hover{ transform:translateY(-4px); box-shadow:0 16px 32px rgba(47,107,255,0.45); color:#fff; text-decoration:none; }

/* SECTION-19 */
.ll-faq{ background:#ffffff; padding:30px 0; }
.ll-faq-list{ max-width:850px; margin:0 auto; }
.ll-faq-item{ border:1px solid #e5edff; border-radius:12px; margin-bottom:14px; overflow:hidden; transition:box-shadow .3s ease, border-color .3s ease; }
.ll-faq-item:hover{ box-shadow:0 8px 20px rgba(47,107,255,0.08); border-color:#c9daff; }
.ll-faq-q{ width:100%; background:#f5f8ff; border:none; padding:18px 20px; display:flex; align-items:center; justify-content:space-between; text-align:left; cursor:pointer; gap:14px; }
.ll-faq-q h3{ font-size:0.98rem; font-weight:700; color:#0a0a0a; margin:0; }
.ll-faq-icon{ transition:transform .3s ease; flex:0 0 auto; }
.ll-faq-item.ll-open .ll-faq-icon{ transform:rotate(180deg); }
.ll-faq-a{ max-height:0; overflow:hidden; transition:max-height .4s ease, padding .4s ease; padding:0 20px; background:#fff; }
.ll-faq-item.ll-open .ll-faq-a{ max-height:400px; padding:16px 20px; }
.ll-faq-a p{ color:#6b7280; font-size:0.88rem; line-height:1.65; margin:0; }