/* WEB-INFOX v2.9 — Landing Pages / OnePage service page. */
.landing-service {
  --lp-accent: #12b6e9;
  --lp-accent-2: #0b7de8;
  --lp-deep: #071d34;
  --lp-green: #12aa76;
}

.landing-service .lp-hero {
  position: relative;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 93% 8%, rgba(49, 113, 244, .20) 0 150px, transparent 151px),
    radial-gradient(circle at 8% 72%, rgba(18, 182, 233, .12) 0 110px, transparent 111px),
    linear-gradient(120deg, #061a30 0%, #082c49 52%, #063f56 100%);
}

.landing-service .lp-hero .wrap {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
  gap: 64px;
  align-items: center;
  min-height: 540px;
  padding-top: 64px;
  padding-bottom: 64px;
}

.landing-service .lp-hero .breadcrumbs,
.landing-service .lp-hero .breadcrumbs a { color: #a9c7de; }
.landing-service .lp-hero h1 { color: #fff; font-size: clamp(2.7rem, 5vw, 4.7rem); line-height: 1.02; }
.landing-service .lp-hero h1 span { color: #43d0ff; }
.landing-service .lp-hero p { max-width: 720px; color: #d6e8f4; font-size: 1.06rem; line-height: 1.8; }
.landing-service .lp-hero .eyebrow { color: #7fdfff; }

.lp-preview {
  position: relative;
  padding: 26px;
  border: 1px solid rgba(135, 211, 255, .22);
  border-radius: 24px;
  background: linear-gradient(145deg, rgba(17, 68, 115, .74), rgba(5, 36, 66, .85));
  box-shadow: 0 30px 70px rgba(0, 9, 25, .34);
}
.lp-preview-top { display:flex; justify-content:space-between; align-items:center; margin-bottom:20px; color:#9edcf4; font-size:.75rem; }
.lp-preview-window { overflow:hidden; border-radius:18px; background:#fff; color:#17293d; }
.lp-preview-bar { display:flex; gap:6px; padding:12px 14px; background:#eef5fb; }
.lp-preview-bar i { width:8px; height:8px; border-radius:50%; background:#a9bed0; }
.lp-preview-body { padding:28px; }
.lp-preview-tag { display:inline-flex; padding:6px 9px; border-radius:999px; background:#e9f7ff; color:#0875ce; font-size:.66rem; font-weight:800; letter-spacing:.08em; }
.lp-preview-body h2 { margin:16px 0 12px; font-size:1.65rem; line-height:1.1; }
.lp-preview-body p { color:#65798d !important; font-size:.86rem !important; line-height:1.55 !important; }
.lp-preview-cta { display:inline-flex; margin-top:10px; padding:10px 14px; border-radius:10px; background:#0b7de8; color:#fff; font-size:.78rem; font-weight:800; }
.lp-float { position:absolute; padding:7px 10px; border-radius:999px; background:#fff; color:#0b5b9d; box-shadow:0 8px 24px rgba(0,0,0,.14); font-size:.68rem; font-weight:800; }
.lp-float.one { top:56px; right:-18px; }
.lp-float.two { bottom:72px; left:-24px; }

.lp-band { background:#06172b; color:#fff; }
.lp-band .wrap { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.lp-band span { padding:24px 18px; border-right:1px solid rgba(255,255,255,.10); text-align:center; color:#abc0d3; font-size:.82rem; }
.lp-band span:last-child { border-right:0; }
.lp-band strong { display:block; margin-bottom:5px; color:#41ccff; font-size:.95rem; }

.lp-center-heading { max-width:780px; margin:0 auto 44px; text-align:center; }
.lp-center-heading .eyebrow { margin-inline:auto; }
.lp-center-heading p { max-width:650px; margin-inline:auto; }
.lp-soft { background:#f5f8fb; }
.lp-blue-soft { background:#eef6ff; }

.lp-professions { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.lp-profession { padding:22px; border:1px solid #e0e8f0; border-radius:16px; background:#fff; }
.lp-profession strong { display:block; margin-bottom:6px; color:#1b2e46; }
.lp-profession span { color:#6a7c90; font-size:.85rem; line-height:1.55; }

.lp-compare { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:54px; align-items:center; }
.lp-checks { display:grid; gap:12px; margin:24px 0 0; padding:0; list-style:none; }
.lp-checks li { position:relative; padding-left:34px; color:#44576b; }
.lp-checks li::before { content:'✓'; position:absolute; left:0; top:-2px; display:grid; place-items:center; width:23px; height:23px; border-radius:8px; background:#e5f8f2; color:#078d60; font-weight:900; }
.lp-comparison-card { overflow:hidden; border:1px solid #dfe8f1; border-radius:18px; background:#fff; box-shadow:0 16px 40px rgba(13,51,90,.08); }
.lp-comparison-card header { padding:16px 20px; background:linear-gradient(135deg,#0b7de8,#12b6e9); color:#fff; font-weight:800; text-align:center; }
.lp-comparison-row { display:grid; grid-template-columns:1.15fr .85fr .85fr; gap:10px; padding:13px 18px; border-top:1px solid #edf1f5; font-size:.8rem; }
.lp-comparison-row span:nth-child(2){ color:#0a9d69; font-weight:700; }
.lp-comparison-row span:nth-child(3){ color:#d15d62; }
.lp-comparison-row.head { background:#f7f9fc; color:#6b7d90; font-size:.68rem; font-weight:800; letter-spacing:.05em; }

.lp-features { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.lp-feature { min-height:190px; padding:24px; border:1px solid #e0e7ef; border-radius:16px; background:#fff; }
.lp-feature b { display:grid; place-items:center; width:42px; height:42px; margin-bottom:18px; border-radius:12px; background:#eaf5ff; color:#0b7de8; }
.lp-feature h3 { font-size:1rem; }
.lp-feature p { font-size:.84rem; line-height:1.6; }

.lp-process { background:linear-gradient(180deg,#eef6ff 0%,#f8fbff 100%); }
.lp-process-grid { position:relative; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.lp-process-grid::before { content:''; position:absolute; top:35px; left:11%; right:11%; height:2px; background:#cce5ff; }
.lp-step { position:relative; z-index:1; padding:28px 22px; border:1px solid #dce8f5; border-radius:16px; background:#fff; text-align:center; }
.lp-step .n { display:grid; place-items:center; width:42px; height:42px; margin:0 auto 18px; border-radius:50%; background:linear-gradient(135deg,#0d8df2,#0b6cd0); color:#fff; font-size:.78rem; font-weight:900; box-shadow:0 9px 22px rgba(9,117,218,.22); }
.lp-step h3 { font-size:1rem; }
.lp-step p { font-size:.82rem; line-height:1.55; }

.lp-packages { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; align-items:stretch; }
.lp-package { position:relative; display:flex; flex-direction:column; padding:30px; border:1px solid #dde6ef; border-radius:18px; background:#fff; }
.lp-package.featured { transform:translateY(-10px); border-color:#3169d6; background:linear-gradient(160deg,#0c1f61,#17116b); color:#fff; box-shadow:0 24px 52px rgba(20,28,102,.20); }
.lp-package.featured h3, .lp-package.featured p, .lp-package.featured li { color:#fff; }
.lp-package .label { color:#0a7cf0; font-size:.68rem; font-weight:900; letter-spacing:.09em; }
.lp-package.featured .label { color:#7bdbff; }
.lp-package ul { display:grid; gap:10px; margin:20px 0 28px; padding:0; list-style:none; }
.lp-package li { position:relative; padding-left:22px; color:#4f6074; font-size:.86rem; }
.lp-package li::before { content:'●'; position:absolute; left:0; color:#11b87a; font-size:.65rem; }
.lp-package .btn { margin-top:auto; }

.lp-faq .faq-layout { grid-template-columns:minmax(230px,.6fr) minmax(0,1.4fr); }
.lp-final { position:relative; overflow:hidden; background:linear-gradient(120deg,#11133f,#17205c 55%,#14345e); color:#fff; text-align:center; }
.lp-final::after { content:''; position:absolute; width:250px; height:250px; top:-120px; right:-70px; border-radius:50%; background:rgba(76,110,220,.18); }
.lp-final h2 { color:#fff; }
.lp-final p { max-width:680px; margin-inline:auto; color:#c9d7e7; }
.home-v29 #services .service-card .service-tone-8{grid-column: span 2 !important;}

@media (max-width:1023px){
  .landing-service .lp-hero .wrap, .lp-compare { grid-template-columns:1fr; }
  .lp-professions, .lp-features, .lp-process-grid, .lp-band .wrap { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lp-process-grid::before { display:none; }
  .lp-packages { grid-template-columns:1fr; }
  .lp-package.featured { transform:none; }
  .lp-faq .faq-layout { grid-template-columns:1fr; }
}
@media (max-width:767px){
  .landing-service .lp-hero .wrap { min-height:auto; padding-top:42px; padding-bottom:48px; }
  .lp-professions, .lp-features, .lp-process-grid, .lp-band .wrap { grid-template-columns:1fr; }
  .lp-band span { border-right:0; border-bottom:1px solid rgba(255,255,255,.10); }
  .lp-comparison-row { grid-template-columns:1fr .8fr .8fr; padding:12px; font-size:.72rem; }
  .lp-float { display:none; }
}
