/* ==========================================================================
   LeaderSol — interior pages (page-head, prose, process, about, contact form).
   Brand tokens from base.css. Strict palette: cyan/gold/white/near-black.
   ========================================================================== */
/* ---- Page banner (premium) ---- */
.ls-pagehead{
	position:relative;
	overflow:hidden;
	text-align:center;
	padding:56px 0 48px;
	background:
		radial-gradient(ellipse 55% 60% at 88% 8%, rgba(0,204,247,.16) 0%, transparent 58%),
		radial-gradient(ellipse 45% 50% at 8% 92%, rgba(253,208,0,.12) 0%, transparent 55%),
		radial-gradient(ellipse 50% 40% at 50% -20%, rgba(0,204,247,.08) 0%, transparent 60%),
		linear-gradient(165deg, #ffffff 0%, #f4fbfe 48%, #eaf6fb 100%);
	border-bottom:none;
}
.ls-pagehead__glow{
	position:absolute;
	border-radius:50%;
	pointer-events:none;
	filter:blur(2px);
}
.ls-pagehead__glow--a{
	width:480px; height:480px;
	top:-180px; right:-120px;
	background:radial-gradient(circle, rgba(0,204,247,.22) 0%, transparent 70%);
}
.ls-pagehead__glow--b{
	width:360px; height:360px;
	bottom:-160px; left:-100px;
	background:radial-gradient(circle, rgba(253,208,0,.18) 0%, transparent 70%);
}
.ls-pagehead__mesh{
	position:absolute;
	inset:0;
	pointer-events:none;
	opacity:.42;
	background-image:
		radial-gradient(rgba(0,204,247,.1) 1px, transparent 1.2px),
		linear-gradient(rgba(0,204,247,.04) 1px, transparent 1px),
		linear-gradient(90deg, rgba(0,204,247,.04) 1px, transparent 1px);
	background-size:20px 20px, 56px 56px, 56px 56px;
	mask-image:radial-gradient(ellipse 72% 70% at 50% 40%, #000 18%, transparent 78%);
}
.ls-pagehead__ring{
	position:absolute;
	border-radius:50%;
	pointer-events:none;
	border:1px solid rgba(0,204,247,.16);
}
.ls-pagehead__ring--a{
	width:420px; height:420px;
	top:-140px; right:-80px;
	box-shadow:0 0 0 22px rgba(0,204,247,.04), inset 0 0 60px rgba(0,204,247,.05);
}
.ls-pagehead__ring--b{
	width:200px; height:200px;
	bottom:-40px; left:6%;
	border-color:rgba(253,208,0,.28);
	box-shadow:0 0 0 14px rgba(253,208,0,.05);
}
.ls-pagehead__inner{ position:relative; z-index:1; max-width:820px; margin:0 auto; }
.ls-pagehead__kicker{
	display:inline-flex;
	align-items:center;
	gap:9px;
	margin-bottom:14px;
	padding:0;
	border-radius:0;
	background:transparent;
	border:none;
}
.ls-pagehead__kicker::before,
.ls-pagehead__kicker::after{
	content:"";
	width:24px;
	height:3px;
	border-radius:3px;
	background:#FDD000;
}
.ls-pagehead__kicker span{
	font-family:'Sora',sans-serif;
	font-weight:700;
	font-size:12px;
	letter-spacing:.18em;
	text-transform:uppercase;
	color:#00ccf7;
}
.ls-pagehead__title{
	margin:0;
	font-family:'Sora',sans-serif;
	font-weight:800;
	font-size:clamp(30px, 4vw, 46px);
	line-height:1.12;
	letter-spacing:-.03em;
	color:var(--ls-ink);
}
.ls-pagehead__sub{
	margin:16px auto 0;
	max-width:620px;
	font-size:16.5px;
	line-height:1.7;
	color:#5a6472;
	font-weight:500;
}
.ls-crumb{
	display:inline-flex;
	align-items:center;
	flex-wrap:wrap;
	justify-content:center;
	gap:0;
	margin-top:22px;
	padding:8px 16px;
	border-radius:999px;
	background:rgba(255,255,255,.72);
	border:1px solid rgba(0,204,247,.16);
	box-shadow:0 10px 24px -18px rgba(11,22,48,.25);
	font-size:13px;
	font-weight:600;
	color:#8a94a6;
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
}
.ls-crumb a{
	color:#00ccf7;
	text-decoration:none;
	transition:color .18s;
}
.ls-crumb a:hover{ color:#0b1630; text-decoration:none; }
.ls-crumb .sep{ margin:0 8px; color:#c5ced8; font-weight:500; }
.ls-crumb__here{ color:#0b1630; }
.ls-pagehead__edge{
	position:absolute;
	left:0; right:0; bottom:0;
	height:3px;
	background:linear-gradient(90deg, #00ccf7 0%, #00ccf7 42%, #FDD000 42%, #FDD000 100%);
	pointer-events:none;
}

/* generic prose */
.ls-prose{ max-width:820px; margin:0 auto; padding:48px 20px; font-size:16px; line-height:1.8; color:#3f4650; }
.ls-prose h2{ font-family:'Sora',sans-serif; font-weight:800; font-size:28px; color:var(--ls-ink); margin:1.6em 0 .5em; }
.ls-prose h3{ font-family:'Sora',sans-serif; font-weight:700; font-size:21px; color:var(--ls-ink); margin:1.4em 0 .4em; }
.ls-prose a{ color:var(--ls-cyan); } .ls-prose ul,.ls-prose ol{ padding-left:1.2em; }
.ls-prose li{ margin:.4em 0; }
.ls-prose img{ border-radius:14px; }

/* section wrapper reused on interior pages (mirrors .ls-sec) */
.lsp-sec{ padding:64px 0; }
.lsp-sec--tint{ background:#fafcfe; }
.lsp-head{ max-width:720px; margin:0 auto 48px; text-align:center; }
.lsp-head__k{ display:inline-flex; align-items:center; gap:9px; margin-bottom:12px; }
.lsp-head__k::before,.lsp-head__k::after{ content:""; width:24px; height:3px; border-radius:3px; background:var(--ls-gold); }
.lsp-head__k span{ font-family:'Sora',sans-serif; font-weight:700; font-size:12px; letter-spacing:.18em; text-transform:uppercase; color:var(--ls-cyan); }
.lsp-head__t{ margin:0; font-family:'Sora',sans-serif; font-weight:800; font-size:34px; letter-spacing:-.02em; color:var(--ls-ink); line-height:1.15; }
.lsp-head__s{ margin:14px 0 0; font-size:15.5px; line-height:1.7; color:var(--ls-muted); }

/* ---- Process steps (services page) ---- */
.lsproc__grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.lsproc__step{ position:relative; text-align:center; padding:8px 8px 0; overflow:visible; }
.lsproc__step:not(:last-child)::after{ content:""; position:absolute; top:56px; left:calc(50% + 56px); right:calc(-50% + 56px); height:2px;
	background:repeating-linear-gradient(90deg,#cfe9f2 0 8px,transparent 8px 16px); }
.lsproc__ic{ position:relative; z-index:1; width:100px; height:100px; border-radius:24px; margin:0 auto 20px; display:grid; place-items:center;
	background:#fff; border:2px solid var(--ls-cyan); box-shadow:0 14px 30px -16px rgba(0,204,247,.5); overflow:visible; }
.lsproc__ic i{ display:block; line-height:1; font-size:52px; overflow:visible; }
.lsproc__ic i::before{ font-family:'flaticon'!important; font-size:52px!important; line-height:1; display:block;
	background:linear-gradient(135deg,#00ccf7 0 60%,#FDD000 60% 100%); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.lsproc__n{ position:absolute; top:-6px; right:-6px; width:28px; height:28px; border-radius:50%; background:var(--ls-gold); color:var(--ls-ink);
	font-family:'Sora',sans-serif; font-weight:800; font-size:12px; display:grid; place-items:center; z-index:2; }
.lsproc__t{ margin:0 0 6px; font-family:'Sora',sans-serif; font-weight:700; font-size:18px; color:var(--ls-ink); }
.lsproc__b{ margin:0; font-size:14px; line-height:1.6; color:var(--ls-muted); }

/* ---- About story (2-col) ---- */
.lsabout{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; }
.lsabout__media{ position:relative; border-radius:20px; overflow:hidden; aspect-ratio:5/4;
	background:linear-gradient(150deg,#00ccf7,#0092bd); display:grid; place-items:center; box-shadow:0 40px 80px -50px rgba(0,150,190,.7); }
.lsabout__media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.lsabout__media .ph{ font-family:'flaticon'; font-size:96px; color:rgba(255,255,255,.9); }
.lsabout__badge{ position:absolute; bottom:22px; left:22px; z-index:2; background:#fff; border-radius:14px; padding:14px 20px; box-shadow:0 20px 40px -18px rgba(0,60,80,.4); }
.lsabout__badge b{ font-family:'Sora',sans-serif; font-size:26px; color:var(--ls-cyan); display:block; line-height:1; }
.lsabout__badge span{ font-size:12.5px; color:var(--ls-muted); }
.lsabout__k{ margin-bottom:12px; } /* uses lsp-head__k inline */
.lsabout h2{ font-family:'Sora',sans-serif; font-weight:800; font-size:33px; letter-spacing:-.02em; color:var(--ls-ink); margin:0 0 16px; line-height:1.18; }
.lsabout p{ font-size:15.5px; line-height:1.8; color:#4b535d; margin:0 0 16px; }
.lsabout__list{ list-style:none; margin:8px 0 26px; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:12px 20px; }
.lsabout__list li{ position:relative; padding-left:28px; font-weight:600; font-size:14.5px; color:var(--ls-ink); }
.lsabout__list li::before{ content:"\2713"; position:absolute; left:0; top:0; width:19px; height:19px; border-radius:50%; background:var(--ls-cyan); color:#fff; font-size:11px; display:grid; place-items:center; }

/* ---- Contact ---- */
.lsc2{ display:grid; grid-template-columns:0.85fr 1.15fr; gap:40px; align-items:start; }
.lsc2__info{ background:linear-gradient(155deg,#00ccf7,#0090bd); border-radius:20px; padding:38px 34px; color:#fff; box-shadow:0 40px 80px -50px rgba(0,150,190,.8); }
.lsc2__info h3{ font-family:'Sora',sans-serif; font-weight:800; font-size:24px; margin:0 0 8px; color:#fff; }
.lsc2__info>p{ font-size:14.5px; line-height:1.7; color:rgba(255,255,255,.92); margin:0 0 26px; }
.lsc2__row{ display:flex; gap:15px; align-items:flex-start; margin-bottom:20px; }
.lsc2__ic{
	width:58px; height:58px; border-radius:14px;
	background:rgba(255,255,255,.2);
	display:grid; place-items:center; flex-shrink:0;
	color:#fff; font-size:28px; line-height:1;
}
.lsc2__ic i,
.lsc2__ic [class^="flaticon-"],
.lsc2__ic [class*=" flaticon-"],
.lsc2__ic .fas,
.lsc2__ic .far,
.lsc2__ic .fab{
	font-size:28px!important;
	line-height:1;
	color:#fff!important;
	-webkit-text-fill-color:#fff;
	display:block;
}
.lsc2__ic i::before,
.lsc2__ic [class^="flaticon-"]::before,
.lsc2__ic [class*=" flaticon-"]::before{
	font-size:28px!important;
	line-height:1;
	color:#fff!important;
	-webkit-text-fill-color:#fff;
	background:none!important;
}
.lsc2__row b{ display:block; font-family:'Sora',sans-serif; font-size:14px; letter-spacing:.02em; }
.lsc2__row span{ font-size:14px; color:rgba(255,255,255,.9); line-height:1.5; }
.lsc2__row a{ color:#fff; text-decoration:none; } .lsc2__row a:hover{ color:#fff; text-decoration:none; opacity:.92; }
.lsc2__form{ background:#fff; border:1px solid var(--ls-line); border-radius:20px; padding:38px 36px; box-shadow:0 30px 70px -50px rgba(0,120,150,.4); }

/* Quote page — brand cyan + gold panel, larger icons */
.lsc2--quote{ align-items:start; }
.lsc2__info--quote{
	position:relative; overflow:hidden;
	display:flex; flex-direction:column;
	height:auto;
	background:
		radial-gradient(120% 90% at 100% 0%, rgba(253,208,0,.28) 0%, transparent 52%),
		linear-gradient(155deg, #00ccf7 0%, #00b8e0 48%, #00a0c8 100%);
	padding:36px 32px 32px;
	box-shadow:0 40px 80px -48px rgba(0,150,190,.7);
}
.lsc2__accent{
	position:absolute; left:0; right:0; top:0; height:4px;
	background:linear-gradient(90deg, #FDD000 0 48%, #fff 48% 52%, #FDD000 52% 100%);
}
.lsc2__kicker{
	display:inline-flex; align-self:flex-start;
	margin:4px 0 14px; padding:5px 12px;
	font-family:'Sora',sans-serif; font-size:11px; font-weight:800;
	letter-spacing:.1em; text-transform:uppercase;
	color:#0b1630; background:#FDD000; border-radius:999px;
}
.lsc2__info--quote h3{ font-size:26px; margin:0 0 10px; letter-spacing:-.02em; color:#fff; }
.lsc2__info--quote > p{ margin:0 0 20px; font-size:15px; line-height:1.7; color:rgba(255,255,255,.95); }
.lsc2__benefits{ display:flex; flex-direction:column; gap:12px; margin-top:0; }
.lsc2__benefit{
	display:grid; grid-template-columns:90px minmax(0,1fr); gap:16px; align-items:center;
	padding:14px 16px; border-radius:16px;
	background:rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.28);
	backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);
}
.lsc2__ic--lg{
	width:90px; height:90px; border-radius:24px;
	background:#FDD000; color:#0b1630;
	box-shadow:0 12px 24px -10px rgba(253,208,0,.55), inset 0 1px 0 rgba(255,255,255,.35);
}
.lsc2__ic--lg i,
.lsc2__ic--lg [class^="flaticon-"],
.lsc2__ic--lg [class*=" flaticon-"]{
	font-size:42px!important; color:#0b1630!important; -webkit-text-fill-color:#0b1630;
}
.lsc2__ic--lg i::before,
.lsc2__ic--lg [class^="flaticon-"]::before,
.lsc2__ic--lg [class*=" flaticon-"]::before{
	font-size:42px!important; color:#0b1630!important; -webkit-text-fill-color:#0b1630; background:none!important;
}
.lsc2__benefit-body{ display:flex; flex-direction:column; gap:3px; min-width:0; }
.lsc2__benefit-body strong{
	font-family:'Sora',sans-serif; font-size:15.5px; font-weight:800; color:#fff; line-height:1.25;
}
.lsc2__benefit-body span{ font-size:13.5px; color:rgba(255,255,255,.92); line-height:1.45; }
.lsform__btn--gold,
button.lsform__btn.lsform__btn--gold{
	background:#FDD000!important; color:#0b1630!important; -webkit-text-fill-color:#0b1630;
	box-shadow:0 14px 28px -10px rgba(253,208,0,.55);
}
.lsform__btn--gold:hover,
button.lsform__btn.lsform__btn--gold:hover{
	background:#f0c400!important; color:#0b1630!important; -webkit-text-fill-color:#0b1630;
}
.lsform__btn--gold i,
.lsform__btn--gold [class^="flaticon-"],
.lsform__btn--gold [class*=" flaticon-"],
.lsform__btn--gold i::before,
.lsform__btn--gold [class^="flaticon-"]::before{
	color:#0b1630!important; -webkit-text-fill-color:#0b1630;
}
.lsform__grid{ display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.lsform__field{ display:flex; flex-direction:column; gap:7px; }
.lsform__field--full{ grid-column:1 / -1; }
.lsform label{ font-family:'Sora',sans-serif; font-weight:600; font-size:13px; color:var(--ls-ink); }
.lsform input,.lsform select,.lsform textarea{ font-family:'Quicksand',sans-serif; font-size:15px; color:var(--ls-ink); background:#f8fbfd;
	border:1.5px solid #e4ebf1; border-radius:10px; padding:13px 15px; transition:border-color .2s, box-shadow .2s; width:100%; }
.lsform input:focus,.lsform select:focus,.lsform textarea:focus{ outline:none; border-color:var(--ls-cyan); box-shadow:0 0 0 4px rgba(0,204,247,.14); background:#fff; }
.lsform textarea{ resize:vertical; min-height:130px; }
.lsform__hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.lsform__btn{ margin-top:22px; display:inline-flex; align-items:center; gap:10px; height:52px; padding:0 32px; border:none; cursor:pointer;
	background:#00ccf7; color:#fff; font-family:'Quicksand',sans-serif; font-weight:700; font-size:15px; border-radius:10px;
	box-shadow:0 14px 28px -10px rgba(0,204,247,.6); transition:transform .2s, box-shadow .2s; text-decoration:none; }
.lsform__btn:hover{ transform:translateY(-2px); box-shadow:0 20px 34px -10px rgba(0,204,247,.7); color:#fff; text-decoration:none; }
.lsform__note{ display:block; margin-top:14px; font-size:13px; color:var(--ls-muted); }
.lsform__msg{ border-radius:12px; padding:16px 18px; margin-bottom:22px; font-weight:600; font-size:14.5px; }
.lsform__msg--ok{ background:rgba(0,204,247,.1); color:#046a86; border:1px solid rgba(0,204,247,.35); }
.lsform__msg--err{ background:#fff4f4; color:#b4232a; border:1px solid #f3c9cb; }

/* ---- FREE audit lead magnet ---- */
.ls-magnet{
	position:relative; margin-top:22px; padding:18px 18px 16px 20px;
	background:linear-gradient(135deg,#f7fcfe 0%,#fff 55%,#fffdf5 100%);
	border:1.5px solid rgba(0,204,247,.28); border-radius:14px;
	box-shadow:0 10px 28px -18px rgba(11,22,48,.18);
}
.ls-magnet::before{
	content:""; position:absolute; left:0; top:12px; bottom:12px; width:4px;
	border-radius:0 4px 4px 0; background:linear-gradient(180deg,#FDD000 0%,#00ccf7 100%);
}
.ls-magnet__badge{
	display:inline-block; margin-bottom:8px; padding:3px 10px;
	background:#00ccf7; color:#fff; font-family:'Sora',sans-serif; font-size:11px; font-weight:800;
	letter-spacing:.08em; border-radius:6px; vertical-align:middle;
}
.ls-magnet__title{
	display:inline; margin-left:6px; font-family:'Sora',sans-serif; font-size:15px; font-weight:700;
	color:var(--ls-ink,#0b1630); vertical-align:middle; line-height:1.35;
}
.ls-magnet__body{
	margin:10px 0 14px; font-family:'Quicksand',sans-serif; font-size:14px; line-height:1.55;
	color:var(--ls-muted,#5a6578);
}
.ls-magnet__check{
	display:flex; align-items:flex-start; gap:10px; cursor:pointer;
	font-family:'Quicksand',sans-serif; font-size:14.5px; font-weight:650; color:var(--ls-ink,#0b1630);
}
.ls-magnet__check input{
	flex-shrink:0; width:18px; height:18px; margin-top:2px; accent-color:#00ccf7; cursor:pointer;
}
.ls-magnet__check span{ line-height:1.4; }

/* ---- responsive ---- */
@media (max-width:991px){
	.ls-pagehead{ padding:42px 0 38px; }
	.ls-pagehead__title{ font-size:34px; }
	.lsp-sec{ padding:52px 0; } .lsp-head__t{ font-size:28px; }
	.lsproc__grid{ grid-template-columns:1fr 1fr; gap:40px 24px; } .lsproc__step::after{ display:none; }
	.lsabout{ grid-template-columns:1fr; gap:36px; } .lsabout__media{ max-width:520px; }
	.lsc2{ grid-template-columns:1fr; gap:28px; }
	.lsc2__benefit{ grid-template-columns:78px minmax(0,1fr); gap:14px; }
	.lsc2__ic--lg{ width:78px; height:78px; border-radius:20px; }
	.lsc2__ic--lg i,
	.lsc2__ic--lg [class^="flaticon-"],
	.lsc2__ic--lg [class*=" flaticon-"],
	.lsc2__ic--lg i::before,
	.lsc2__ic--lg [class^="flaticon-"]::before{ font-size:36px!important; }
}
@media (max-width:600px){
	.ls-pagehead{ padding:32px 0 30px; }
	.ls-pagehead__title{ font-size:27px; }
	.ls-pagehead__ring--a{ width:280px; height:280px; }
	.lsproc__grid{ grid-template-columns:1fr; } .lsproc__step::after{ display:none; }
	.lsform__grid{ grid-template-columns:1fr; } .lsabout__list{ grid-template-columns:1fr; }
	.lsc2__info,.lsc2__form{ padding:28px 22px; }
}

/* ==========================================================================
   Blog listing (index / archive)
   ========================================================================== */
.ls-blog{ padding:52px 20px 64px; }
.ls-blog__grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
.ls-card{ display:flex; flex-direction:column; background:#fff; border:1px solid var(--ls-line); border-radius:18px;
	overflow:hidden; transition:transform .25s, box-shadow .25s, border-color .25s; }
.ls-card:hover{ transform:translateY(-6px); box-shadow:0 30px 60px -34px rgba(0,110,140,.45); border-color:#cdeaf4; }
.ls-card__thumb{ display:block; aspect-ratio:16/10; overflow:hidden; background:#eef4f8; }
.ls-card__thumb img{ width:100%; height:100%; object-fit:cover; transition:transform .4s; }
.ls-card:hover .ls-card__thumb img{ transform:scale(1.05); }
.ls-card__ph{ display:block; width:100%; height:100%; background:linear-gradient(150deg,#00ccf7,#0092bd); position:relative; }
.ls-card__ph::after{ content:"\f1c9"; font-family:'flaticon'; }
.ls-card__body{ display:flex; flex-direction:column; flex:1; padding:24px 24px 26px; }
.ls-card__meta{ font-family:'Sora',sans-serif; font-size:12.5px; font-weight:600; letter-spacing:.02em; color:var(--ls-cyan); text-transform:uppercase; margin-bottom:10px; }
.ls-card__title{ font-family:'Sora',sans-serif; font-weight:700; font-size:19px; line-height:1.35; margin:0 0 10px; }
.ls-card__title a{ color:var(--ls-ink); text-decoration:none; }
.ls-card__title a:hover{ color:var(--ls-cyan); }
.ls-card__excerpt{ font-size:14.5px; line-height:1.7; color:var(--ls-muted); margin:0 0 18px; }
.ls-card__more{ margin-top:auto; align-self:flex-start; font-family:'Sora',sans-serif; font-weight:700; font-size:13.5px; color:var(--ls-cyan); text-decoration:none; }
.ls-card__more span{ transition:transform .2s; display:inline-block; }
.ls-card__more:hover span{ transform:translateX(4px); }
.ls-empty{ text-align:center; color:var(--ls-muted); font-size:16px; padding:60px 0; }

/* pagination (shared: blog + archives) */
.ls-pagination{ margin-top:52px; }
.ls-pagination .nav-links{ display:flex; justify-content:center; flex-wrap:wrap; gap:8px; }
.ls-pagination .page-numbers{ min-width:44px; height:44px; padding:0 14px; display:inline-flex; align-items:center; justify-content:center;
	border:1px solid var(--ls-line); border-radius:11px; font-family:'Sora',sans-serif; font-weight:600; font-size:14.5px; color:var(--ls-ink);
	text-decoration:none; transition:background .2s, color .2s, border-color .2s; }
.ls-pagination .page-numbers:hover{ border-color:var(--ls-cyan); color:var(--ls-cyan); }
.ls-pagination .page-numbers.current{ background:var(--ls-cyan); border-color:var(--ls-cyan); color:#fff; }
.ls-pagination .page-numbers.dots{ border-color:transparent; }

/* ==========================================================================
   Single post + generic page body
   ========================================================================== */
.ls-post__thumb{ max-width:900px; margin:0 auto 40px; border-radius:18px; overflow:hidden; }
.ls-post__thumb img{ width:100%; height:auto; display:block; }
.ls-post__meta{ max-width:820px; margin:36px auto 0; padding-top:22px; border-top:1px solid var(--ls-line); }
.ls-post__cats{ font-size:13.5px; color:var(--ls-muted); }
.ls-post__cats a{ display:inline-block; margin:0 4px 4px 0; padding:5px 12px; background:#eef7fb; border-radius:20px; color:#046a86; font-weight:600; font-size:12.5px; text-decoration:none; }
.ls-post__cats a:hover{ background:var(--ls-cyan); color:#fff; }
.ls-page{ display:block; }

/* blockquotes / code inside prose */
.ls-prose blockquote{ margin:1.6em 0; padding:14px 22px; border-left:4px solid var(--ls-cyan); background:#f5fbfd; border-radius:0 10px 10px 0; color:#334; font-style:italic; }
.ls-prose pre{ background:#0b1630; color:#e6edf3; padding:18px 20px; border-radius:12px; overflow-x:auto; font-size:14px; }
.ls-prose code{ background:#eef4f8; padding:2px 6px; border-radius:5px; font-size:.92em; }
.ls-prose pre code{ background:none; padding:0; }
.ls-prose table{ width:100%; border-collapse:collapse; margin:1.4em 0; }
.ls-prose th,.ls-prose td{ border:1px solid var(--ls-line); padding:10px 12px; text-align:left; font-size:14.5px; }
.ls-prose th{ background:#f5fbfd; font-family:'Sora',sans-serif; }

/* ==========================================================================
   404
   ========================================================================== */
.ls-404{ text-align:center; padding:96px 20px 110px; }
.ls-404__code{ font-family:'Sora',sans-serif; font-weight:800; line-height:1; margin:0;
	font-size:clamp(90px,18vw,180px); letter-spacing:-.04em;
	background:linear-gradient(135deg,#00ccf7 0 55%,#FDD000 55% 100%); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.ls-404__msg{ font-family:'Sora',sans-serif; font-weight:700; font-size:22px; color:var(--ls-ink); margin:6px 0 26px; }
.ls-404 .lstx-cta{ margin-bottom:34px; }
.ls-404 form,.ls-404 .search-form{ max-width:440px; margin:0 auto; display:flex; gap:10px; }
.ls-404 input[type="search"]{ flex:1; height:50px; padding:0 16px; border:1.5px solid #e4ebf1; border-radius:11px; background:#f8fbfd; font-family:'Quicksand',sans-serif; font-size:15px; }
.ls-404 input[type="search"]:focus{ outline:none; border-color:var(--ls-cyan); box-shadow:0 0 0 4px rgba(0,204,247,.14); }
.ls-404 input[type="submit"],.ls-404 button[type="submit"]{ height:50px; padding:0 24px; border:none; cursor:pointer; background:var(--ls-cyan); color:#fff;
	font-family:'Sora',sans-serif; font-weight:700; border-radius:11px; }

/* ---- responsive: blog / post / 404 ---- */
@media (max-width:991px){
	.ls-blog__grid{ grid-template-columns:repeat(2,1fr); gap:24px; }
}
@media (max-width:600px){
	.ls-blog{ padding:52px 20px 64px; }
	.ls-blog__grid{ grid-template-columns:1fr; gap:22px; }
	.ls-404 form,.ls-404 .search-form{ flex-direction:column; }
	.ls-404 input[type="submit"],.ls-404 button[type="submit"]{ width:100%; }
}

/* ==========================================================================
   FAQs (native <details> accordion — zero JS)
   ========================================================================== */
.lsfaq{ max-width:880px; }
.lsfaq__group{ margin-bottom:40px; }
.lsfaq__group:last-of-type{ margin-bottom:0; }
.lsfaq__gtitle{ font-family:'Sora',sans-serif; font-weight:800; font-size:20px; color:var(--ls-ink); margin:0 0 18px;
	padding-left:14px; border-left:4px solid var(--ls-gold); }
.lsfaq__list{ display:flex; flex-direction:column; gap:14px; }
.lsfaq__item{ border:1px solid var(--ls-line); border-radius:14px; background:#fff; overflow:hidden; transition:border-color .2s, box-shadow .2s; }
.lsfaq__item[open]{ border-color:#bfe9f5; box-shadow:0 20px 44px -30px rgba(0,120,150,.4); }
.lsfaq__q{ list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:16px;
	padding:20px 22px; font-family:'Sora',sans-serif; font-weight:700; font-size:16px; color:var(--ls-ink); }
.lsfaq__q::-webkit-details-marker{ display:none; }
.lsfaq__q:hover{ color:var(--ls-cyan); }
.lsfaq__icon{ position:relative; flex-shrink:0; width:24px; height:24px; border-radius:50%; background:#eef7fb; }
.lsfaq__icon::before,.lsfaq__icon::after{ content:""; position:absolute; top:50%; left:50%; width:11px; height:2.4px; border-radius:2px;
	background:var(--ls-cyan); transform:translate(-50%,-50%); transition:transform .25s; }
.lsfaq__icon::after{ transform:translate(-50%,-50%) rotate(90deg); }
.lsfaq__item[open] .lsfaq__icon{ background:var(--ls-cyan); }
.lsfaq__item[open] .lsfaq__icon::before,.lsfaq__item[open] .lsfaq__icon::after{ background:#fff; }
.lsfaq__item[open] .lsfaq__icon::after{ transform:translate(-50%,-50%) rotate(0); }
.lsfaq__a{ padding:0 22px 22px; font-size:15px; line-height:1.75; color:#4b535d; }
.lsfaq__a p{ margin:0; } .lsfaq__a a{ color:var(--ls-cyan); }
.lsfaq__cta{ text-align:center; margin-top:52px; padding:44px 24px; background:#f5fbfd; border:1px dashed #bfe4ef; border-radius:18px; }
.lsfaq__cta h3{ font-family:'Sora',sans-serif; font-weight:800; font-size:22px; color:var(--ls-ink); margin:0 0 8px; }
.lsfaq__cta p{ color:var(--ls-muted); margin:0 0 20px; }

/* ==========================================================================
   Careers — open positions
   ========================================================================== */
.lsjobs__list{ max-width:900px; margin:0 auto; display:flex; flex-direction:column; gap:16px; }
.lsjobs__card{ display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap;
	background:#fff; border:1px solid var(--ls-line); border-radius:16px; padding:24px 26px; transition:transform .2s, box-shadow .2s, border-color .2s; }
.lsjobs__card:hover{ transform:translateY(-3px); border-color:#cdeaf4; box-shadow:0 26px 54px -34px rgba(0,110,140,.4); }
.lsjobs__title{ font-family:'Sora',sans-serif; font-weight:700; font-size:18px; color:var(--ls-ink); margin:0 0 6px; }
.lsjobs__type{ font-size:13.5px; color:var(--ls-muted); margin:0 0 12px; }
.lsjobs__type i::before{ color:var(--ls-cyan); margin-right:6px; }
.lsjobs__tags{ display:flex; flex-wrap:wrap; gap:8px; }
.lsjobs__tag{ font-size:12.5px; font-weight:600; color:#046a86; background:#eef7fb; border-radius:20px; padding:5px 12px; }
.lsjobs__apply{ flex-shrink:0; display:inline-flex; align-items:center; gap:8px; height:46px; padding:0 22px; border-radius:10px;
	background:var(--ls-cyan); color:#fff; font-family:'Sora',sans-serif; font-weight:700; font-size:14px; text-decoration:none;
	box-shadow:0 14px 28px -12px rgba(0,204,247,.6); transition:transform .2s, box-shadow .2s; }
.lsjobs__apply:hover{ transform:translateY(-2px); color:#fff; text-decoration:none; box-shadow:0 20px 34px -12px rgba(0,204,247,.7); }
.lsjobs__apply i::before{ color:#fff; }

/* ==========================================================================
   Portfolio page CTA band
   ========================================================================== */
.lspf-cta{ text-align:center; max-width:680px; margin-left:auto; margin-right:auto; }
.lspf-cta h2{ font-family:'Sora',sans-serif; font-weight:800; font-size:30px; letter-spacing:-.02em; color:var(--ls-ink); margin:0 0 12px; }
.lspf-cta p{ color:var(--ls-muted); font-size:15.5px; line-height:1.7; margin:0 0 24px; }

/* single project meta */
.lsproj__meta{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin:0 0 36px; padding:22px 24px;
	background:#f5fbfd; border:1px solid var(--ls-line); border-radius:16px; }
.lsproj__mi{ display:flex; flex-direction:column; gap:4px; }
.lsproj__mi span{ font-size:12px; text-transform:uppercase; letter-spacing:.08em; color:var(--ls-muted); font-weight:600; }
.lsproj__mi strong{ font-family:'Sora',sans-serif; font-size:15px; color:var(--ls-ink); }
.lsproj__mi a{ color:var(--ls-cyan); text-decoration:none; }
.lsproj__back{ margin-top:20px; }
.lsproj__back a{ color:var(--ls-muted); font-weight:600; font-size:14px; text-decoration:none; }
.lsproj__back a:hover{ color:var(--ls-cyan); }
@media (max-width:700px){ .lsproj__meta{ grid-template-columns:1fr 1fr; } }

@media (max-width:600px){
	.lsjobs__card{ flex-direction:column; align-items:flex-start; }
	.lsjobs__apply{ width:100%; justify-content:center; }
	.lsfaq__q{ font-size:15px; padding:17px 18px; }
	.lspf-cta h2{ font-size:24px; }
}

/* ---- Service detail (/services/{slug}/) ---- */
.lssvd{
	padding:48px 0 72px;
	background:
		radial-gradient(ellipse 40% 50% at 100% 0%, rgba(0,204,247,.06), transparent 55%),
		#fff;
}
.lssvd__grid{
	display:grid;
	grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);
	gap:40px 48px;
	align-items:start;
}
.lssvd__main{ min-width:0; }
.lssvd__intro{
	display:flex;
	align-items:center;
	gap:18px;
	margin:0 0 22px;
}
.lssvd__ico{
	width:72px; height:72px; border-radius:18px; flex-shrink:0;
	display:inline-flex; align-items:center; justify-content:center;
	background:rgba(0,204,247,.1);
	border:1px solid rgba(0,204,247,.22);
	box-shadow:0 12px 28px -18px rgba(0,140,180,.45);
	color:#00ccf7;
	font-size:36px;
	line-height:1;
}
.lssvd__ico i,
.lssvd__ico [class^="flaticon-"],
.lssvd__ico [class*=" flaticon-"]{
	font-family:flaticon!important;
	font-size:36px!important;
	line-height:1;
	color:#00ccf7;
}
.lssvd__ico i::before,
.lssvd__ico [class^="flaticon-"]::before,
.lssvd__ico [class*=" flaticon-"]::before{
	font-family:flaticon!important;
	font-size:36px!important;
	background:linear-gradient(135deg,#00ccf7 0 58%,#FDD000 58% 100%);
	-webkit-background-clip:text; background-clip:text;
	-webkit-text-fill-color:transparent; color:transparent;
}
.lssvd__eyebrow{
	display:inline-block;
	font-family:'Sora',sans-serif;
	font-weight:700;
	font-size:12px;
	letter-spacing:.16em;
	text-transform:uppercase;
	color:#00ccf7;
	margin-bottom:6px;
}
.lssvd__heading{
	margin:0;
	font-family:'Sora',sans-serif;
	font-weight:800;
	font-size:clamp(24px, 2.6vw, 32px);
	line-height:1.2;
	letter-spacing:-.02em;
	color:var(--ls-ink);
}
.lssvd__body{
	font-size:16.5px;
	line-height:1.75;
	color:#4b535d;
	margin:0 0 14px;
	max-width:640px;
}
.lssvd__block{ margin:28px 0 0; }
.lssvd__h{
	margin:0 0 14px;
	font-family:'Sora',sans-serif;
	font-weight:700;
	font-size:18px;
	color:var(--ls-ink);
	letter-spacing:-.01em;
}
.lssvd__list{
	list-style:none; margin:0; padding:0;
	display:grid; gap:11px;
}
.lssvd__list li{
	position:relative;
	padding:12px 14px 12px 44px;
	font-weight:600;
	font-size:14.5px;
	color:var(--ls-ink);
	background:#f7fbfd;
	border:1px solid #e6eef4;
	border-radius:12px;
}
.lssvd__list li::before{
	content:"\2713";
	position:absolute; left:14px; top:50%; transform:translateY(-50%);
	width:22px; height:22px; border-radius:50%;
	background:#00ccf7; color:#fff; font-size:11px;
	display:grid; place-items:center;
}
.lssvd__cards{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:14px;
}
.lssvd__mini{
	background:#fff;
	border:1px solid #e6eef4;
	border-radius:14px;
	padding:18px 16px;
	box-shadow:0 10px 24px -20px rgba(11,22,48,.35);
}
.lssvd__mini strong{
	display:block;
	font-family:'Sora',sans-serif;
	font-size:14.5px;
	font-weight:700;
	color:var(--ls-ink);
	margin:0 0 8px;
}
.lssvd__mini p{
	margin:0;
	font-size:13.5px;
	line-height:1.55;
	color:#5a6472;
}
.lssvd__steps{
	list-style:none; margin:0; padding:0;
	display:grid; gap:12px;
}
.lssvd__steps li{
	display:flex; gap:14px; align-items:flex-start;
	padding:16px 16px;
	border:1px solid #e6eef4;
	border-radius:14px;
	background:#fff;
}
.lssvd__step-n{
	flex-shrink:0;
	width:42px; height:42px; border-radius:12px;
	display:inline-flex; align-items:center; justify-content:center;
	background:#FDD000;
	color:#0b1630;
	font-family:'Sora',sans-serif;
	font-weight:800;
	font-size:13px;
}
.lssvd__steps strong{
	display:block;
	font-family:'Sora',sans-serif;
	font-size:15px;
	font-weight:700;
	color:var(--ls-ink);
	margin:0 0 4px;
}
.lssvd__steps p{
	margin:0;
	font-size:13.5px;
	line-height:1.55;
	color:#5a6472;
}
.lssvd__fit{
	list-style:none; margin:0; padding:0;
	display:grid; gap:10px;
}
.lssvd__fit li{
	position:relative;
	padding-left:18px;
	font-size:14.5px;
	font-weight:600;
	color:#3f4650;
	line-height:1.45;
}
.lssvd__fit li::before{
	content:"";
	position:absolute; left:0; top:.55em;
	width:8px; height:8px; border-radius:50%;
	background:#00ccf7;
	box-shadow:0 0 0 3px rgba(0,204,247,.18);
}
.lssvd__actions{
	display:flex; flex-wrap:wrap; align-items:center; gap:14px 18px;
	margin-top:32px;
	padding-top:24px;
	border-top:1px solid #e8eef3;
}
.lssvd__actions .lsform__btn{ margin-top:0; }
.lssvd__shop{ font-weight:700; color:#00ccf7; text-decoration:none; font-size:14.5px; }
.lssvd__shop:hover{ color:#0b1630; text-decoration:none; }

.lssvd__aside{
	display:flex; flex-direction:column; gap:18px;
	position:sticky; top:100px;
}
.lssvd__card{
	background:linear-gradient(155deg,#00ccf7 0%,#05a9d6 55%,#0090bd 100%);
	color:#fff;
	border-radius:20px;
	padding:28px 24px;
	box-shadow:0 28px 50px -28px rgba(0,140,180,.55);
}
.lssvd__card h2{
	font-family:'Sora',sans-serif; font-weight:800; font-size:22px;
	color:#fff; margin:0 0 10px;
}
.lssvd__card p{
	margin:0 0 20px; font-size:14.5px; line-height:1.65; color:rgba(255,255,255,.92);
}
.lssvd__card-bonus{
	margin:0 0 18px!important; padding:12px 14px;
	background:rgba(253,208,0,.18); border:1px solid rgba(253,208,0,.45);
	border-radius:12px; font-size:13.5px!important; line-height:1.5!important;
	color:#fff!important;
}
.lssvd__card-bonus strong{ color:#FDD000; font-weight:800; }
.lssvd__card .lsform__btn{
	width:100%; justify-content:center; margin-top:0;
	background:#FDD000!important; color:#0b1630!important;
	-webkit-text-fill-color:#0b1630;
	box-shadow:0 12px 24px -10px rgba(253,208,0,.55);
}
.lssvd__card .lsform__btn:hover{
	background:#f0c400!important; color:#0b1630!important; -webkit-text-fill-color:#0b1630;
}
.lssvd__link{
	display:block; margin-top:14px; text-align:center;
	color:#fff; font-weight:700; font-size:14px; text-decoration:none;
}
.lssvd__link:hover{ color:#0099be; text-decoration:none; }
.lssvd__more{
	background:#fff;
	border:1px solid #e6eef4;
	border-radius:18px;
	padding:22px 20px;
	box-shadow:0 14px 30px -24px rgba(11,22,48,.3);
}
.lssvd__more h3{
	font-family:'Sora',sans-serif; font-weight:700; font-size:15px;
	margin:0 0 12px; color:var(--ls-ink);
}
.lssvd__more ul{ list-style:none; margin:0 0 12px; padding:0; }
.lssvd__more li{ margin:0; border-bottom:1px solid #eef2f6; }
.lssvd__more li:last-child{ border-bottom:0; }
.lssvd__more a{
	display:flex; align-items:center; justify-content:space-between; gap:10px;
	padding:11px 2px; color:#3f4650; text-decoration:none; font-weight:600; font-size:14px;
}
.lssvd__more a i{ font-size:11px; color:#00ccf7; opacity:.7; transition:transform .18s, opacity .18s; }
.lssvd__more a:hover{ color:#00ccf7; }
.lssvd__more a:hover i{ transform:translateX(3px); opacity:1; }
.lssvd__all{
	display:inline-block; margin-top:4px;
	font-size:13.5px; font-weight:700; color:#00ccf7; text-decoration:none;
}
.lssvd__all:hover{ color:#0b1630; }

@media (max-width:980px){
	.lssvd{ padding:36px 0 56px; }
	.lssvd__grid{ grid-template-columns:1fr; gap:28px; }
	.lssvd__aside{ position:static; }
	.lssvd__cards{ grid-template-columns:1fr; }
}
@media (max-width:600px){
	.lssvd__intro{ align-items:flex-start; }
	.lssvd__actions{ flex-direction:column; align-items:stretch; }
	.lssvd__actions .lsform__btn,
	.lssvd__shop{ width:100%; text-align:center; justify-content:center; }
}



/* =========================================================================
   Phase 8 — Pricing · Industries · Technology · Team · Locations
   ========================================================================= */
.ls-sechead--left{ text-align:left; margin-left:0; max-width:760px; }
.ls-sechead--left .ls-kicker{ justify-content:flex-start; }
.ls-sechead--left .ls-sechead__sub{ margin-left:0; }

/* Shared interior card icons — cyan chip, white glyph */
.lstech__ic,
.lsind__ic{
	width:70px; height:70px; border-radius:18px; display:grid; place-items:center; flex-shrink:0;
	font-size:30px; line-height:1; color:#fff;
	background:linear-gradient(145deg,#00ccf7 0%,#00a8d4 100%);
	box-shadow:0 12px 24px -12px rgba(0,204,247,.55);
}
.lstech__ic i,
.lsind__ic i,
.lstech__ic [class^="flaticon-"],
.lsind__ic [class^="flaticon-"]{
	font-size:30px!important; line-height:1; color:#fff!important;
	-webkit-text-fill-color:#fff; display:block;
}
.lstech__ic i::before,
.lsind__ic i::before,
.lstech__ic [class^="flaticon-"]::before,
.lsind__ic [class^="flaticon-"]::before{
	font-size:30px!important; line-height:1; color:#fff!important;
	-webkit-text-fill-color:#fff; background:none!important;
}

/* ---- Pricing ---- */
.lsprice{ background:#fff; }
.lsprice__group{ margin-bottom:64px; padding-bottom:8px; }
.lsprice__group:last-of-type{ margin-bottom:0; }
.lsprice__grid{
	display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; align-items:stretch;
}
.lsprice__card{
	position:relative; display:flex; flex-direction:column; gap:14px;
	padding:32px 28px 28px; background:#fff; border:1.5px solid var(--line);
	border-radius:20px; box-shadow:0 18px 40px -32px rgba(11,22,48,.35);
	transition:transform .28s, box-shadow .28s, border-color .28s;
}
.lsprice__card:hover{ transform:translateY(-6px); border-color:rgba(0,204,247,.45); box-shadow:0 28px 54px -28px rgba(0,140,170,.42); }
.lsprice__card.is-featured{
	border-color:var(--cy); border-width:2px;
	box-shadow:0 30px 64px -28px rgba(0,140,170,.55);
	transform:translateY(-4px);
}
.lsprice__card.is-featured:hover{ transform:translateY(-8px); }
.lsprice__badge{
	position:absolute; top:-13px; left:28px; padding:5px 14px; border-radius:999px;
	font-family:'Sora',sans-serif; font-weight:700; font-size:11px; letter-spacing:.06em; text-transform:uppercase;
	color:#04121f; background:linear-gradient(135deg,var(--gold),#f5c800);
	box-shadow:0 8px 18px -8px rgba(253,208,0,.55);
}
.lsprice__name{ font-family:'Sora',sans-serif; font-weight:700; font-size:19px; color:var(--ink); margin:6px 0 0; }
.lsprice__amount{
	font-family:'Sora',sans-serif; font-weight:800; font-size:32px; color:var(--ink); line-height:1.1;
	padding-bottom:14px; border-bottom:1px solid var(--line);
}
.lsprice__amount .woocommerce-Price-amount{ color:var(--cy); }
.lsprice__amount del{ font-size:17px; color:#9aa7b6; font-weight:600; margin-right:6px; }
.lsprice__amount ins{ text-decoration:none; }
.lsprice__blurb{ color:var(--body); font-size:14.5px; margin:0; line-height:1.55; }
.lsprice__feat{ list-style:none; margin:4px 0 0; padding:0; display:flex; flex-direction:column; gap:10px; flex:1; }
.lsprice__feat li{ position:relative; padding-left:26px; font-size:14.5px; color:#3a4452; line-height:1.5; }
.lsprice__feat li::before{
	content:""; position:absolute; left:0; top:5px; width:16px; height:16px; border-radius:50%;
	background:rgba(0,204,247,.12); border:1.5px solid rgba(0,204,247,.35);
}
.lsprice__feat li::after{
	content:"\2713"; position:absolute; left:4px; top:5px; font-size:10px; color:var(--cy); font-weight:800; line-height:16px;
}
.lsprice__actions{ display:flex; flex-direction:column; gap:10px; margin-top:10px; }
.lsprice__buy{ width:100%; justify-content:center; }
.lsprice__quote{ text-align:center; font-size:13.5px; color:var(--body); font-weight:600; text-decoration:none; }
.lsprice__quote:hover{ color:var(--cy); text-decoration:none; }
.lsprice__note{
	display:flex; gap:18px; align-items:flex-start; margin-top:48px; padding:26px 30px;
	background:linear-gradient(120deg, rgba(0,204,247,.08), rgba(253,208,0,.07));
	border:1px solid rgba(0,204,247,.2); border-radius:18px;
}
.lsprice__note-ic{
	flex-shrink:0; width:52px; height:52px; border-radius:14px; display:grid; place-items:center;
	font-size:22px; color:#fff; background:linear-gradient(135deg,var(--cy),#00a9cf);
	box-shadow:0 12px 24px -12px rgba(0,204,247,.5);
}
.lsprice__note-ic i::before{ color:#fff!important; -webkit-text-fill-color:#fff; background:none!important; }
.lsprice__note h3{ margin:0 0 6px; font-family:'Sora',sans-serif; font-size:17px; color:var(--ink); }
.lsprice__note p{ margin:0; color:var(--body); font-size:14.5px; line-height:1.65; }
.lsprice__empty{ text-align:center; color:var(--body); font-size:16px; padding:40px 20px; }
.lsprice-faq{ background:linear-gradient(180deg,#f8fbfd 0%,#fff 100%); }
.lsfaq--tight{ max-width:820px; margin:0 auto; }

/* ---- Industries ---- */
.lsind{ background:#fff; }
.lsind__grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.lsind__card{
	display:flex; flex-direction:column; gap:12px; padding:28px 26px; background:#fff;
	border:1.5px solid var(--line); border-radius:20px;
	box-shadow:0 18px 40px -32px rgba(11,22,48,.35);
	transition:transform .28s, box-shadow .28s, border-color .28s; color:inherit; text-decoration:none;
}
a.lsind__card:hover{
	transform:translateY(-6px); border-color:rgba(0,204,247,.45);
	box-shadow:0 28px 54px -28px rgba(0,140,170,.42); text-decoration:none;
}
.lsind__name{ font-family:'Sora',sans-serif; font-weight:700; font-size:18px; color:var(--ink); margin:0; line-height:1.3; }
.lsind__text{ color:var(--body); font-size:14.5px; line-height:1.65; margin:0; flex:1; }
.lsind__link{
	font-family:'Sora',sans-serif; font-weight:600; font-size:13.5px; color:var(--cy);
	display:inline-flex; align-items:center; gap:7px; margin-top:4px;
}
.lsind__link i{ font-size:11px; transition:transform .2s; }
a.lsind__card:hover .lsind__link i{ transform:translateX(4px); }
.lsind__card--static{
	cursor:default; background:linear-gradient(160deg,#fff 0%,#f8fcfe 100%);
	border-color:rgba(0,204,247,.18);
}
.lsind__card--static:hover{ transform:none; box-shadow:0 18px 40px -32px rgba(11,22,48,.35); border-color:rgba(0,204,247,.18); }

/* ---- Technology + Team disciplines ---- */
.lstech{ background:#fff; }
.lsteam-vals{ background:linear-gradient(180deg,#f7fcfe 0%,#fff 55%); }
.lsteam-vals__grid{
	display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px;
	max-width:980px; margin:0 auto;
}
.lsteam-vals__card{
	position:relative; display:flex; flex-direction:column; align-items:flex-start; gap:14px;
	padding:28px 26px 26px; background:#fff; border:1.5px solid rgba(0,204,247,.2);
	border-radius:20px; overflow:hidden;
	box-shadow:0 18px 40px -30px rgba(0,140,170,.28);
	transition:transform .24s, box-shadow .24s, border-color .24s;
}
.lsteam-vals__card::before{
	content:""; position:absolute; left:0; right:0; top:0; height:4px;
	background:linear-gradient(90deg, #00ccf7 0 52%, #FDD000 52% 100%);
}
.lsteam-vals__card:hover{
	transform:translateY(-4px); border-color:rgba(0,204,247,.4);
	box-shadow:0 24px 48px -28px rgba(0,140,170,.4);
}
.lsteam-vals__ic{
	width:90px; height:90px; border-radius:24px; display:grid; place-items:center; flex-shrink:0;
	font-size:42px; line-height:1; color:#fff;
	background:linear-gradient(145deg, #00ccf7 0%, #00a8d4 100%);
	box-shadow:0 14px 28px -12px rgba(0,204,247,.55), inset 0 1px 0 rgba(255,255,255,.28);
}
.lsteam-vals__ic i,
.lsteam-vals__ic [class^="flaticon-"],
.lsteam-vals__ic [class*=" flaticon-"]{
	font-size:42px!important; line-height:1; color:#fff!important;
	-webkit-text-fill-color:#fff; display:block;
}
.lsteam-vals__ic i::before,
.lsteam-vals__ic [class^="flaticon-"]::before,
.lsteam-vals__ic [class*=" flaticon-"]::before{
	font-size:42px!important; line-height:1; color:#fff!important;
	-webkit-text-fill-color:#fff; background:none!important;
}
.lsteam-vals__name{
	font-family:'Sora',sans-serif; font-weight:800; font-size:19px; color:var(--ink);
	margin:0; line-height:1.3; letter-spacing:-.01em;
}
.lsteam-vals__text{
	color:var(--body); font-size:15px; line-height:1.7; margin:0;
}
.lstech__grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.lstech__card{
	display:flex; flex-direction:column; gap:12px; padding:28px 26px; background:#fff;
	border:1.5px solid var(--line); border-radius:20px;
	box-shadow:0 18px 40px -32px rgba(11,22,48,.35);
	transition:transform .28s, box-shadow .28s, border-color .28s;
}
.lstech__card:hover{
	transform:translateY(-5px); border-color:rgba(0,204,247,.4);
	box-shadow:0 26px 50px -28px rgba(0,140,170,.38);
}
.lstech__title{ font-family:'Sora',sans-serif; font-weight:700; font-size:18px; color:var(--ink); margin:0; line-height:1.3; }
.lstech__text{ color:var(--body); font-size:14.5px; line-height:1.65; margin:0; }
.lstech__list{ list-style:none; margin:6px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:8px; }
.lstech__list li{
	padding:6px 13px; border-radius:999px; font-size:12.5px; font-weight:600; color:#1e3a4a;
	background:#eef8fc; border:1px solid rgba(0,204,247,.2);
	transition:background .2s, border-color .2s;
}
.lstech__card:hover .lstech__list li{ border-color:rgba(0,204,247,.35); }

/* Visual craft cards — photo + overlay + large icon (Team + Technologies) */
.lstech__card--viz{
	position:relative; justify-content:flex-end; gap:0;
	min-height:340px; padding:28px 24px 26px; overflow:hidden; isolation:isolate;
	border:1px solid rgba(11,22,48,.08); color:#fff;
	box-shadow:0 18px 40px -28px rgba(11,22,48,.45);
}
.lstech__card--viz:hover{
	transform:translateY(-6px); border-color:rgba(11,22,48,.12);
	box-shadow:0 28px 52px -26px rgba(11,22,48,.55);
	color:#fff;
}
.lstech__media{ position:absolute; inset:0; z-index:0; }
.lstech__media img{
	width:100%; height:100%; object-fit:cover; display:block;
	transform:scale(1.03); transition:transform .45s ease;
}
.lstech__card--viz:hover .lstech__media img{ transform:scale(1.1); }
.lstech__shade{
	position:absolute; inset:0; z-index:1; pointer-events:none;
	background:
		linear-gradient(180deg, rgba(11,22,48,.25) 0%, rgba(11,22,48,.55) 45%, rgba(11,22,48,.92) 100%),
		linear-gradient(135deg, rgba(0,204,247,.28) 0%, transparent 50%);
}
.lstech__body{
	position:relative; z-index:2;
	display:flex; flex-direction:column; align-items:flex-start; gap:12px;
}
.lstech__card--viz .lstech__ic{
	width:72px; height:72px; border-radius:18px; font-size:34px;
	background:linear-gradient(145deg, #00ccf7 0%, #0099be 100%);
	box-shadow:0 12px 24px -10px rgba(0,204,247,.55), inset 0 1px 0 rgba(255,255,255,.28);
	margin-bottom:2px;
}
.lstech__card--viz .lstech__ic i,
.lstech__card--viz .lstech__ic [class^="flaticon-"]{
	font-size:34px!important;
}
.lstech__card--viz .lstech__ic i::before,
.lstech__card--viz .lstech__ic [class^="flaticon-"]::before{
	font-size:34px!important;
}
.lstech__card--viz .lstech__title{
	color:#fff; font-weight:800; font-size:20px; letter-spacing:-.01em;
	text-shadow:0 2px 14px rgba(0,0,0,.35);
}
.lstech__card--viz .lstech__text{
	color:rgba(255,255,255,.88); font-size:14.5px; line-height:1.65;
	max-width:36em;
}
.lstech__card--viz .lstech__list{ margin-top:4px; gap:8px; }
.lstech__card--viz .lstech__list li{
	color:#fff; background:rgba(255,255,255,.14);
	border:1px solid rgba(255,255,255,.22);
	backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);
}
.lstech__card--viz:hover .lstech__list li{
	border-color:rgba(0,204,247,.55); background:rgba(0,204,247,.22);
}

/* ---- Location landing ---- */
.lsloc{ background:#fff; }
.lsloc__intro{ display:grid; grid-template-columns:1.55fr 1fr; gap:40px; align-items:stretch; }
.lsloc__lead{
	display:flex; flex-direction:column; min-width:0; height:100%;
}
.lsloc__text{
	font-size:17.5px; line-height:1.78; color:#3a4452; margin:0 0 24px;
	padding-left:18px; border-left:3px solid var(--cy);
}
.lsloc__points{ list-style:none; margin:0 0 22px; padding:0; display:flex; flex-direction:column; gap:14px; }
.lsloc__points li{
	display:flex; align-items:center; gap:14px; font-size:15px; color:var(--ink); font-weight:500;
	padding:12px 14px; background:#f8fbfd; border:1px solid var(--line); border-radius:12px;
}
.lsloc__points i{
	flex-shrink:0; width:40px; height:40px; border-radius:12px; margin-top:0;
	display:grid; place-items:center; font-size:19px; color:#fff;
	background:linear-gradient(135deg,var(--cy),#00a8d4);
}
.lsloc__points i::before{ color:#fff!important; -webkit-text-fill-color:#fff; background:none!important; }
.lsloc__cta{
	display:flex; flex-wrap:wrap; gap:14px; align-items:center;
	margin-top:auto; padding-top:6px;
}
.lsloc__cta .lsform__btn{
	margin-top:0!important;
	height:52px; min-height:52px; padding:0 28px;
	box-sizing:border-box;
}
.lsloc__wa{
	display:inline-flex; align-items:center; justify-content:center; gap:9px;
	height:52px; min-height:52px; padding:0 20px; box-sizing:border-box;
	font-family:'Sora',sans-serif; font-weight:700; font-size:14px; line-height:1.2; color:#128c7e;
	background:rgba(18,140,126,.08); border:1.5px solid rgba(18,140,126,.28); border-radius:10px; text-decoration:none;
}
.lsloc__wa:hover{ background:rgba(18,140,126,.14); text-decoration:none; color:#0d6b60; }
.lsloc__wa i{ font-size:18px; line-height:1; }
.lsloc__wa--phone{ color:var(--cy); background:rgba(0,204,247,.08); border-color:rgba(0,204,247,.25); }
.lsloc__wa--phone:hover{ color:#0099be; background:rgba(0,204,247,.14); }
.lsloc__facts{
	position:relative; display:flex; flex-direction:column;
	padding:28px 26px 24px; background:#fff; border:1.5px solid var(--line);
	border-radius:20px; box-shadow:0 22px 48px -32px rgba(11,22,48,.4); overflow:hidden;
	height:100%; box-sizing:border-box;
}
.lsloc__facts::before{
	content:""; position:absolute; left:0; right:0; top:0; height:4px;
	background:linear-gradient(90deg,var(--cy) 0 55%,var(--gold) 55% 100%);
}
.lsloc__facts h2{ font-family:'Sora',sans-serif; font-size:18px; font-weight:800; color:var(--ink); margin:0 0 16px; }
.lsloc__facts dl{ margin:0; flex:1; }
.lsloc__facts dl > div{
	display:flex; justify-content:space-between; align-items:flex-start; gap:14px; padding:12px 0; border-bottom:1px solid var(--line);
}
.lsloc__facts dl > div:last-of-type{ border-bottom:0; }
.lsloc__facts dt{ color:var(--body); font-size:13.5px; flex-shrink:0; }
.lsloc__facts dd{ margin:0; text-align:right; font-weight:600; font-size:13.5px; color:var(--ink); line-height:1.4; }
.lsloc__facts-link{
	display:inline-flex; align-items:center; gap:6px; margin-top:auto; padding-top:18px;
	font-family:'Sora',sans-serif; font-weight:700; font-size:13.5px; color:var(--cy); text-decoration:none;
}
.lsloc__facts-link:hover{ color:#0099be; text-decoration:none; }
.lsloc-svc{ background:linear-gradient(180deg,#f8fbfd 0%,#fff 100%); }
.lsloc-svc .ls-ico{ width:96px; height:96px; border-radius:22px; }
.lsloc-svc .ls-ico i{ font-size:52px; }
.lsloc-svc .ls-ico i::before{ font-size:52px!important; }

/* ---- Locations hub ---- */
.lslochub{ background:#fff; }
.lslochub__stats{
	display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-bottom:48px;
}
.lslochub__stat{
	text-align:center; padding:22px 18px; background:linear-gradient(145deg,#f7fcfe,#fff);
	border:1.5px solid rgba(0,204,247,.2); border-radius:16px;
	box-shadow:0 14px 32px -24px rgba(0,140,170,.35);
}
.lslochub__stat strong{
	display:block; font-family:'Sora',sans-serif; font-weight:800; font-size:28px; color:var(--cy); line-height:1.1;
}
.lslochub__stat span{ display:block; margin-top:6px; font-size:13.5px; font-weight:600; color:var(--body); }
.lslochub__group{ margin-bottom:44px; }
.lslochub__group:last-of-type{ margin-bottom:0; }
.lslochub__region{
	display:flex; align-items:center; gap:12px;
	font-family:'Sora',sans-serif; font-size:14px; text-transform:uppercase; letter-spacing:.1em;
	color:var(--cy); margin:0 0 18px; font-weight:700;
}
.lslochub__region::after{
	content:""; flex:1; height:1px;
	background:linear-gradient(90deg, rgba(0,204,247,.35), transparent);
}
.lslochub__grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.lslochub__card{
	position:relative; display:flex; flex-direction:column; justify-content:flex-end;
	min-height:300px; padding:28px 24px 24px; overflow:hidden;
	border-radius:20px; border:1px solid rgba(11,22,48,.08);
	color:#fff; text-decoration:none; isolation:isolate;
	box-shadow:0 18px 40px -28px rgba(11,22,48,.45);
	transition:transform .28s ease, box-shadow .28s ease;
}
.lslochub__card:hover{
	transform:translateY(-6px);
	box-shadow:0 28px 52px -26px rgba(11,22,48,.55);
	text-decoration:none; color:#fff;
}
.lslochub__media{
	position:absolute; inset:0; z-index:0;
}
.lslochub__media img{
	width:100%; height:100%; object-fit:cover; display:block;
	transform:scale(1.03); transition:transform .45s ease;
}
.lslochub__card:hover .lslochub__media img{ transform:scale(1.1); }
.lslochub__shade{
	position:absolute; inset:0; z-index:1; pointer-events:none;
	background:
		linear-gradient(180deg, rgba(11,22,48,.18) 0%, rgba(11,22,48,.45) 42%, rgba(11,22,48,.88) 100%),
		linear-gradient(135deg, rgba(0,204,247,.22) 0%, transparent 48%);
}
.lslochub__body{
	position:relative; z-index:2;
	display:flex; flex-direction:column; align-items:flex-start; gap:10px;
}
.lslochub__pin{
	width:86px; height:86px; border-radius:22px;
	display:grid; place-items:center; font-size:40px; color:#fff; line-height:1;
	background:linear-gradient(145deg, #00ccf7 0%, #0099be 100%);
	box-shadow:0 14px 28px -12px rgba(0,204,247,.65), inset 0 1px 0 rgba(255,255,255,.28);
	margin-bottom:4px;
}
.lslochub__pin i{ display:block; line-height:1; }
.lslochub__pin i::before{
	color:#fff!important; -webkit-text-fill-color:#fff; background:none!important;
	font-size:40px!important; line-height:1;
}
.lslochub__name{
	font-family:'Sora',sans-serif; font-weight:800; font-size:20px; color:#fff;
	line-height:1.2; letter-spacing:-.01em; text-shadow:0 2px 14px rgba(0,0,0,.35);
	padding-right:36px;
}
.lslochub__meta{
	font-size:13.5px; font-weight:500; color:rgba(255,255,255,.86);
	line-height:1.45; max-width:92%;
}
.lslochub__go{
	position:absolute; right:18px; bottom:22px; z-index:2;
	width:36px; height:36px; border-radius:50%;
	display:grid; place-items:center;
	background:rgba(255,255,255,.16); backdrop-filter:blur(6px);
	color:#fff; font-size:13px;
	border:1px solid rgba(255,255,255,.28);
	transition:transform .22s ease, background .22s ease;
}
.lslochub__card:hover .lslochub__go{
	transform:translateX(4px);
	background:rgba(0,204,247,.92); border-color:transparent;
}
.lslochub__note{
	text-align:center; color:var(--body); margin-top:36px; padding-top:28px;
	border-top:1px solid var(--line); font-size:15px;
}
.lslochub__note a, .lsprice__empty a{ color:var(--cy); font-weight:700; text-decoration:none; }
.lslochub__note a:hover, .lsprice__empty a:hover{ color:#0099be; text-decoration:none; }

/* ---- Case-study tech chips ---- */
.lsproj__chips{ display:flex; flex-wrap:wrap; gap:9px; margin:6px 0 8px; }
.lsproj__chip{ padding:6px 13px; border-radius:999px; font-size:13px; font-weight:600; color:#233; background:#eef6fb; border:1px solid var(--line); }

/* ---- Responsive ---- */
@media (max-width:991px){
	.lsprice__grid, .lsind__grid, .lstech__grid, .lslochub__grid{ grid-template-columns:repeat(2,1fr); }
	.lsloc__intro{ grid-template-columns:1fr; }
	.lsprice__card.is-featured{ transform:none; }
	.lslochub__card{ min-height:280px; }
	.lstech__card--viz{ min-height:300px; }
	.lsteam-vals__grid{ max-width:none; }
}
@media (max-width:600px){
	.lsprice__grid, .lsind__grid, .lstech__grid, .lslochub__grid, .lslochub__stats{ grid-template-columns:1fr; }
	.lsprice__note{ flex-direction:column; gap:12px; }
	.lsloc__cta{ flex-direction:column; align-items:stretch; }
	.lsloc__cta .lsform__btn{ width:100%; justify-content:center; }
	.lslochub__card{ min-height:260px; }
	.lslochub__pin{ width:78px; height:78px; border-radius:20px; font-size:36px; }
	.lslochub__pin i::before{ font-size:36px!important; }
	.lstech__card--viz{ min-height:280px; }
	.lstech__card--viz .lstech__ic{ width:72px; height:72px; border-radius:18px; font-size:34px; }
	.lstech__card--viz .lstech__ic i,
	.lstech__card--viz .lstech__ic [class^="flaticon-"],
	.lstech__card--viz .lstech__ic i::before,
	.lstech__card--viz .lstech__ic [class^="flaticon-"]::before{ font-size:34px!important; }
	.lsteam-vals__grid{ grid-template-columns:1fr; }
	.lsteam-vals__ic{ width:80px; height:80px; border-radius:20px; font-size:38px; }
	.lsteam-vals__ic i,
	.lsteam-vals__ic [class^="flaticon-"],
	.lsteam-vals__ic i::before,
	.lsteam-vals__ic [class^="flaticon-"]::before{ font-size:38px!important; }
}

/* =========================================================================
   Service detail — platforms + platform-by-region (e-commerce)
   ========================================================================= */
.lssvd__block-sub{ margin: -4px 0 18px; color: var(--body); font-size: 15px; line-height: 1.6; }

/* Platform cards */
.lssvd__plat{ display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; }
.lssvd__plat-item{
	position: relative; padding: 18px 20px 18px 22px; background: #fff;
	border: 1px solid var(--line); border-radius: 14px;
	box-shadow: 0 14px 32px -28px rgba(11,22,48,.4);
	transition: transform .22s, box-shadow .22s, border-color .22s;
}
.lssvd__plat-item::before{
	content: ""; position: absolute; left: 0; top: 14px; bottom: 14px; width: 3px;
	border-radius: 3px; background: linear-gradient(180deg, var(--cy), var(--gold));
}
.lssvd__plat-item:hover{ transform: translateY(-3px); border-color: rgba(0,204,247,.4); box-shadow: 0 22px 40px -26px rgba(0,140,170,.45); }
.lssvd__plat-item strong{ display: block; font-family: 'Sora', system-ui, sans-serif; font-weight: 700; font-size: 15.5px; color: var(--ink); margin-bottom: 5px; }
.lssvd__plat-item p{ margin: 0; font-size: 14px; line-height: 1.55; color: var(--body); }

/* Region recommendations */
.lssvd__region{ display: flex; flex-direction: column; gap: 12px; }
.lssvd__region-row{
	display: grid; grid-template-columns: 240px 1fr; gap: 8px 22px; align-items: start;
	padding: 18px 20px; background: #f8fbfd; border: 1px solid var(--line);
	border-radius: 14px; border-left: 3px solid var(--cy);
}
.lssvd__region-head{ display: flex; align-items: center; gap: 11px; }
.lssvd__region-ic{
	flex-shrink: 0; width: 34px; height: 34px; border-radius: 9px; display: grid; place-items: center;
	background: rgba(0,204,247,.12); color: var(--cy); font-size: 15px;
}
.lssvd__region-name{ font-family: 'Sora', system-ui, sans-serif; font-weight: 700; font-size: 14.5px; color: var(--ink); line-height: 1.3; }
.lssvd__region-body{ min-width: 0; }
.lssvd__region-tags{ display: inline-block; font-family: 'Sora', system-ui, sans-serif; font-weight: 600; font-size: 14px; color: #0a97c4; margin-bottom: 4px; }
.lssvd__region-note{ margin: 0; font-size: 13.5px; line-height: 1.55; color: var(--body); }

@media (max-width: 620px){
	.lssvd__plat{ grid-template-columns: 1fr; }
	.lssvd__region-row{ grid-template-columns: 1fr; gap: 8px; }
}
