b, strong {
	font-weight: 500;
}
/* Cancel the bg white for dark mode */
body[data-theme-style="dark"].bg-white {
	background: var(--body-bg) !important;
}

.modal-header {
	padding: 1rem;
	border-bottom: 0;
}

.modal-subheader {
	padding: 0 1rem;
	border-bottom: 0;
	margin: 0;
}

.modal-content {
	padding: 1rem;
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
}

/* Forms */
.input-group-text {
	font-size: 0.9rem;
}

/* Footer */
.footer {
	margin: 3rem 0 0 0;
	padding-top: 3rem;
	padding-bottom: 3rem;
	background: var(--white);
	border-top: 2px solid var(--gray-200);
}

.footer {
	color: var(--gray);
}

.footer a:not(.dropdown-item), .footer a:hover:not(.dropdown-item) {
	color: var(--gray);
}

.footer a.icon {
	color: var(--gray);
}

.footer button, .footer button:hover {
	color: var(--gray) !important;
}

.footer-logo {
	max-height: 2.5rem;
	height: 2.5rem;
}

/* Filters */
.filters-dropdown {
	width: 18rem;
	max-height: 30rem;
	overflow-y: auto;
}

/* Custom breadcrumbs */
.custom-breadcrumbs {
	list-style: none;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}

.custom-breadcrumbs > li {
	margin-right: .5rem;
}

.custom-breadcrumbs > li > a {
	color: var(--gray);
}

.custom-breadcrumbs > li > svg {
	color: var(--gray-400);
	margin-left: .5rem;
}

.custom-breadcrumbs > li.active {
}

/* Helper classes */
.list-style-none {
	list-style: none;
	padding: 0;
}

.clickable {
	cursor: pointer;
}

.no-underline, .no-underline:hover{
	text-decoration: none;
}

.icon-favicon {
	width: 1rem;
	height: 1rem;
}

/* Index navbar */
.navbar-index {
	min-height: 0 !important;
	background: transparent;
}

.navbar-index .navbar-nav > li {
	padding: .5rem 0 !important;
}

@media (min-width: 992px) {
	.navbar-index .navbar-nav > li {
		padding: .5rem !important;
	}
}

/* Navbar custom menu */
.dropdown-item svg {
	color: var(--gray-600);
}

.dropdown-item:active svg {
	color: var(--white);
}

.navbar-main {
	min-height: 0 !important;
	background: var(--white);
	border-bottom: 2px solid var(--gray-200);
}

.navbar-main .navbar-nav > li {
	padding: .5rem 0 !important;
}

@media (min-width: 992px) {
	.navbar-main .navbar-nav > li {
		padding: .5rem !important;
	}
}

.navbar-logo {
	max-height: 2.5rem;
	height: 2.5rem;
}

.navbar-avatar {
	width: 20px;
	height: 20px;
	border-radius: 50%;
}

.navbar-custom-toggler {
	padding: 0.5rem .8rem;
	font-size: 1.25rem;
	line-height: 1;
	background-color: transparent;
	border-radius: .25rem;

	color: var(--gray-700);
	border-color: var(--gray-300);
}

.navbar-dark .navbar-nav .nav-link {
	color: rgba(255,255,255,.85);
}

.chart-container {
	position: relative;
	margin: auto;
	height: 250px;
	width: 100%;
}

/* Dropdown */
.dropdown-toggle-simple::after {
	display:none;
}

/* Index */
.index-container {
	width: 100%;
	padding: 0 0 4rem 0;
	background: linear-gradient(125.95deg, #DEFFFF 10.95%, #38B2AC 100%), linear-gradient(341.1deg, #DFF 7.52%, #38B2AC 77.98%), linear-gradient(222.34deg, #38B2AC 12.99%, #00FFE0 87.21%), linear-gradient(130.22deg, #615D63 18.02%, #5A31FF 100%);
	background-blend-mode: screen, color-dodge, color-dodge, normal;
}

[data-theme-style="dark"] .index-container {
	background: linear-gradient(130deg, #ad90c1 0%, rgb(3, 0, 84) 100%), linear-gradient(130deg, #09007b 0%, rgba(15, 0, 66, 0) 30%), linear-gradient(129.96deg, rgb(255, 47, 47) 10.43%, rgb(0, 4, 96) 92.78%), radial-gradient(100% 246.94% at 100% 0%, rgb(255, 255, 255) 0%, rgba(37, 0, 66, 0.8) 100%), linear-gradient(121.18deg, rgb(20, 0, 255) 0.45%, rgb(27, 0, 62) 100%), linear-gradient(154.03deg, rgb(206, 0, 0) 0%, rgb(255, 0, 61) 74.04%), linear-gradient(341.1deg, rgb(178, 91, 186) 7.52%, rgb(16, 0, 119) 77.98%), linear-gradient(222.34deg, rgb(169, 0, 0) 12.99%, rgb(0, 255, 224) 87.21%), linear-gradient(150.76deg, rgb(183, 213, 0) 15.35%, rgb(34, 0, 170) 89.57%);
	background-blend-mode: overlay, normal, overlay, color-burn, screen, overlay, difference, difference, normal;
}

@media (min-width: 768px) {
}

@media (min-width: 992px) {
	.index-container {
		padding: 0 0 8rem 0;
	}
}

.index-image {
	width: 100%;
	height: auto;
	position: absolute;
	top: -5rem;
}

@media (min-width: 1375px) {
	.index-image {
		width: 115%;
		top: -6.5rem;
	}
}

.index-header {
	font-size: 4rem;
	font-weight: bold;
	color: var(--black);
}

.index-subheader {
	font-size: 1.35rem;
	color: var(--gray-700);
}

.index-button {
	padding: 1rem 1.7rem;
	font-size: 1rem;
	letter-spacing: 0.15rem;
	font-weight: bold;
	text-transform: uppercase;
	transition: all .3s ease-in-out;
}

.index-background-one {
	background: linear-gradient(125deg, #2bcdc1 0%, #2bcdc1 40%, #2bcdc1 calc(40% + 1px), #2bcdc1 60%, #2bcdc1 calc(60% + 1px), #2bcdc1 72%, #2bcdc1 calc(72% + 1px), #2bcdc1 100%);
	background-size: cover;
}

[data-theme-style="dark"] .index-background-one {
	background: linear-gradient(115deg, #000000 0%, #00C508 55%, #000000 100%), linear-gradient(115deg, #0057FF 0%, #020077 100%), conic-gradient(from 110deg at -5% 35%, #000000 0deg, #FAFF00 360deg), conic-gradient(from 220deg at 30% 30%, #FF0000 0deg, #0000FF 220deg, #240060 360deg), conic-gradient(from 235deg at 60% 35%, #0089D7 0deg, #0000FF 180deg, #240060 360deg);
	background-blend-mode: soft-light, soft-light, overlay, screen, normal;
}

.user-avatar {
	border-radius: 50%;
	max-width: 80px;
	max-height: 80px;
}

/* Basic wrapper */
.basic-wrapper-body {
	background: linear-gradient(#2bcdc1 0%, #2bcdc1 100%), radial-gradient(60.91% 100% at 50% 0%, #2bcdc1 0%, #260000 100%), linear-gradient(238.72deg, #2bcdc1 0%, #720066 100%), linear-gradient(127.43deg, #0FF 0%, #F44 100%), radial-gradient(100.22% 100% at 70.57% 0%, #6EF5FF 0%, #00FFE0 100%), linear-gradient(127.43deg, #83F0D8 0%, #30F 100%);
	background-blend-mode: screen, overlay, hard-light, color-burn, color-dodge, normal;
	background-attachment: fixed;
}

[data-theme-style="dark"].basic-wrapper-body {
	background: linear-gradient(320.54deg, #00069F 0%, #120010 72.37%), linear-gradient(58.72deg, #69D200 0%, #970091 100%), linear-gradient(121.28deg, #8CFF18 0%, #6C0075 100%), linear-gradient(121.28deg, #8000FF 0%, #000000 100%), linear-gradient(180deg, #00FF19 0%, #24FF00 0.01%, #2400FF 100%), linear-gradient(52.23deg, #0500FF 0%, #FF0000 100%), linear-gradient(121.28deg, #32003A 0%, #FF4040 100%), radial-gradient(50% 72.12% at 50% 50%, #EB00FF 0%, #110055 100%);
	background-blend-mode: screen, color-dodge, color-burn, screen, overlay, difference, color-dodge, normal;
	background-attachment: fixed;
}

/* Link Settings page */
.link-background-type-preset {
	width: 100%;
	height: 4rem;
	border-radius: .25rem;
	opacity: .75;
	transition: .3s opacity;
}

.link-background-type-preset:hover {
	cursor: pointer;
}

input[type="radio"]:checked ~ .link-background-type-preset {
	opacity: 1;
}

.link-background-type-image {
	border-radius: .25rem;
	margin-bottom: .5rem;
}

/* Biolink theme */
.link-biolink-theme {
	opacity: .75;
	transition: .3s opacity;
}

.link-biolink-theme:hover {
	cursor: pointer;
}

input[type="radio"]:checked ~ .link-biolink-theme {
	opacity: 1;
}

/* Biolink preview iframe */
.biolink-preview-container {

}

.biolink-preview {
	position: relative;
	margin: 0 auto;
	height: auto;
	width: auto;
	display: inline-block;
	text-align: left;
	border-radius: 4rem;
	padding: .7rem;
	background: linear-gradient(45deg,#444,#111);
	box-shadow: 0 0px 30px rgba(0,0,0,0.20);
	border: .3rem solid #444546;
}

@media (min-width: 768px) {
	.biolink-preview {
		position: sticky;
		top: .5rem;
	}
}

.biolink-preview-iframe-container {
	overflow: hidden;
	width: 300px;
	height: 625px;
	border-radius: 3rem;
	position: relative;
}

@media (min-width: 768px) {
	.biolink-preview-iframe-container {
		width: 375px;
		height: 825px;
	}
}

.biolink-preview-iframe {
	width: 100%;
	height: 100%;
	border: 0;
	margin: 0;
	padding: 0;
}


/* Others */
.container-disabled {
	pointer-events: none;
	opacity: .5;
}

.container-disabled-simple {
	pointer-events: none;
}

/* Custom dropdown */
.dropdown .dropdown-menu {
	border: 2px solid var(--gray-200);
	box-shadow: none;
}

.dropdown-divider {
	border-top: 2px solid var(--gray-200);
}

/* Animate dropdown menu */
.dropdown .dropdown-menu {
	animation-name: opacityIn;
	animation-duration: 0.3s;
}
@keyframes opacityIn {
	from {
		opacity: .3;
	}
	to {
		opacity: 1;
	}
}

/* Custom row */
.custom-row {
	border-radius: .25rem;
	padding: .75rem;
	position: relative;
	border: 2px solid var(--gray-200);
	background: var(--white);
}

@media (min-width: 992px) {
	.custom-row {
		padding: 1.5rem;
	}
}

.custom-row-inactive {
	background: var(--gray-200);
}

.custom-row-side-controller {
	right: 100%;
	top: 25%;
	font-size: 1.2em;
	padding: .2em .2em;
}

[dir="rtl"] .custom-row-side-controller {
	right: initial;
	left: 100%;
}

@media (min-width: 992px) {
	.custom-row-side-controller {
		position: absolute;
		padding: .4em .8em;
	}
}

.custom-row-side-controller-grab {
	cursor: grab;
}


/* Tables */
.table-custom-container {
	/*box-shadow: 0 .125rem .25rem rgba(0,0,0,.075) !important;*/
	border-radius: .25rem;
	border: 2px solid var(--gray-200);
}

.table-custom {
	margin-bottom: 0;
}

.table-custom thead th {
	border-top: 0;
	border-bottom: 0;
	background: var(--gray-100);
	color: var(--gray-900)
}

.table-custom th {
	padding: 1.25rem 1rem;
}

.table-custom td {
	padding: 1.75rem 1rem;
	background: var(--white);
	vertical-align: middle;
}

.table-custom tbody tr {
	transition: all .3s ease-in-out;
}

.table-custom tbody tr:hover td {
	background: var(--gray-100);
}

/* Helpers */
.appearance-none {
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
}
.select-custom-altum {
	background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%232D3748' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;
	padding: .375rem 1.75rem .375rem .75rem;
	background-color: var(--gray-200);
}

[data-theme-style="dark"] .select-custom-altum {
	background-color: var(--gray-100);
}

/* Highlight color pickers */
.pickr .pcr-button {
	border: 1px solid var(--gray-300)
}

/* Pricing */
.pricing-plan {
	border: 2px solid var(--gray-300);
	height: 100%;
	display: flex;
	flex-direction: column;
}

.pricing-header {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 2.2rem 2.2rem 0 2.2rem;
	border-bottom: 1px solid var(--gray-200);
}

[data-theme-style="dark"] .pricing-header {
	border-color: var(--gray-100);
}

.pricing-name {
	background: var(--primary-200);
	padding: .15rem 1.25rem;
	color: var(--primary-600);
	font-size: .85rem;
	font-weight: 600;
	text-transform: uppercase;
	border-radius: 5rem;
}

.pricing-price {
	margin: 1rem 0;
}

.pricing-price-amount {
	font-size: 3.3rem;
	font-weight: bold;
}

.pricing-price-currency {
	font-size: .9rem;
	color: var(--gray);
}

.pricing-details {
	text-align: center;
	font-size: .85rem;
	color: var(--primary-800);
	margin-bottom: 1.5rem;
}

.pricing-body {
	padding: 0 2.2rem 2.2rem 2.2rem;
	background: var(--white);
	height: 100%;
}

.pricing-features {
	margin: 3rem 0;
	list-style: none;
	padding: 0;
}

.pricing-features li {
	display: flex;
	justify-content: space-between;
	align-items: center;

	margin: 1rem 0;
}

/* Custom Radio Boxes */
.custom-radio-box {
	cursor: pointer;
}

.custom-radio-box .custom-radio-box-main-text {
	font-size: 2.25rem;
}

.custom-radio-box .custom-radio-box-main-icon {
	font-size: 2.5rem;
}

.custom-radio-box input[type="radio"] + div {
	transition: all .3s ease-in-out;
	border: 2px solid var(--gray-200);
	background: var(--white);
}

.custom-radio-box input[type="radio"]:checked + div {
	border: 2px solid var(--primary);
}

/* Projects */
.project-avatar {
	width: 45px;
	height: 45px;
}

/* QR Codes */
.qr-code {
	width: 100rem;
}

.qr-code-loading {
	animation: opacity-loading 3s infinite ease-in-out;
}

@keyframes opacity-loading {
	0% { opacity: 1; }
	50% { opacity: 0.5; }
	100% { opacity: 1; }
}

.qr-code-avatar {
	width: 65px;
	height: 65px;
	border-radius: .25rem;
	padding: .25rem;
	border: 2px solid var(--gray-200);
}

/* Round circles */
.round-circle-md {
	width: 2.5rem;
	height: 2.5rem;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
}

.round-circle-lg {
	width: 4.5rem;
	height: 4.5rem;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
}

/* Badge colors */
.badge-primary {
	color: hsl(211, 100%, 35%);
	background-color: hsl(211, 100%, 85%);
}

[data-theme-style="dark"] .badge-primary {
	background-color: hsl(211, 100%, 35%);
	color: hsl(211, 100%, 85%);
}

.badge-secondary {
	color: hsl(208, 7%, 35%);
	background-color: hsl(208, 7%, 85%);
}

[data-theme-style="dark"] .badge-secondary {
	background-color: hsl(208, 7%, 35%);
	color: hsl(208, 7%, 85%);
}

.badge-success {
	color: hsla(134, 50%, 30%, 1);
	background-color: hsla(134, 50%, 85%, 1);
}

[data-theme-style="dark"] .badge-success {
	background-color: hsla(134, 50%, 30%, 1);
	color: hsla(134, 50%, 85%, 1);
}

.badge-danger {
	color: hsla(354, 70%, 35%, 1);
	background-color: hsla(354, 70%, 85%, 1);
}

[data-theme-style="dark"] .badge-danger {
	background-color: hsla(354, 70%, 35%, 1);
	color: hsla(354, 70%, 85%, 1);
}

.badge-warning {
	background-color: hsla(45, 100%, 85%, 1);
	color: hsla(40, 80%, 30%, 1);
}

[data-theme-style="dark"] .badge-warning {
	background-color: hsla(50, 10%, 20%, 1);
	color: hsla(45, 100%, 85%, 1);
}

.badge-info {
	color: hsla(188, 60%, 30%, 1);
	background-color: hsla(188, 78%, 85%, 1);
}

[data-theme-style="dark"] .badge-info {
	background-color: hsla(188, 60%, 30%, 1);
	color: hsla(188, 78%, 85%, 1);
}

.badge-light {
	color: hsla(210, 15%, 35%, 1);
	background-color: hsl(210, 17%, 95%);
}

[data-theme-style="dark"] .badge-light {
	background-color: hsla(210, 15%, 35%, 1);
	color: hsl(210, 17%, 95%);
}

.badge-dark {
	color: hsla(210, 10%, 90%, 1);
	background-color: hsla(210, 10%, 20%, 1);
}

[data-theme-style="dark"] .badge-dark {
	background-color: hsla(210, 10%, 90%, 1);
	color: hsla(210, 10%, 20%, 1);
}

/* Invoice css */
.invoice-table th {
	border-top: 0 !important;
}

@media print {
	.invoice-logo {
		filter: grayscale(100%);
	}
}

/* App sub menu */
.account-header-navbar {
	display: none;
}

@media (min-width: 992px) {
	.account-header-navbar {
		width: 100%;
		display: flex;
		flex-direction: row;
		padding-left: 0;
		list-style: none;
		margin: 0 0 1.5rem 0;
		flex-wrap: wrap;
		justify-content: space-between;
	}
}

.account-header-navbar .nav-item {
	margin-bottom: .5rem;
	min-width: fit-content;
}

.account-header-navbar .nav-link {
	padding: .5rem 1.5rem;
	color: var(--gray);
	border-radius: .25rem;
	border: 2px solid var(--gray-200);
	font-size: .9rem;
	background: var(--white);
}

.account-header-navbar .nav-link:hover {
	color: var(--gray);
	border: 2px solid var(--gray);
}

.account-header-navbar .nav-link.active {
	color: var(--primary);
	border: 2px solid var(--primary);
}

/* =========================================================
 * LinkSocialDO Landing V2
 * Scoped under .ls-landing so application/dashboard styles remain untouched.
 * ========================================================= */
.ls-landing {
    --ls-ink: #0d1f24;
    --ls-muted: #5f6f73;
    --ls-primary: #20b8ad;
    --ls-primary-dark: #087f79;
    --ls-primary-soft: #e8faf8;
    --ls-surface: #ffffff;
    --ls-soft: #f5f9f8;
    --ls-line: rgba(13, 31, 36, .10);
    --ls-shadow: 0 24px 70px rgba(11, 55, 59, .12);
    color: var(--ls-ink);
    overflow: hidden;
}

.ls-landing .container { max-width: 1180px; }
.ls-hero-shell {
    position: relative;
    background:
        radial-gradient(circle at 78% 18%, rgba(32, 184, 173, .16), transparent 30%),
        radial-gradient(circle at 5% 60%, rgba(43, 196, 183, .09), transparent 26%),
        linear-gradient(180deg, #f8fffe 0%, #ffffff 100%);
}
.ls-hero-shell:before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .34;
    background-image: radial-gradient(rgba(13,31,36,.14) .65px, transparent .65px);
    background-size: 22px 22px;
    mask-image: linear-gradient(to bottom, #000 0%, transparent 76%);
}

/* Landing navigation */
.ls-hero-shell .navbar-index {
    position: relative;
    z-index: 20;
    padding: 1.1rem 0;
    background: transparent !important;
}
.ls-hero-shell .navbar-brand { display: flex; align-items: center; }
.ls-hero-shell .navbar-logo { max-height: 38px; width: auto; }
.ls-hero-shell .navbar-nav { align-items: center; gap: .35rem; }
.ls-hero-shell .navbar-nav .nav-link {
    color: #254247 !important;
    font-weight: 600;
    padding: .65rem .8rem !important;
}
.ls-hero-shell .navbar-nav .nav-link:hover { color: var(--ls-primary-dark) !important; }
.ls-hero-shell .navbar .btn-primary,
.ls-hero-shell .navbar .btn-light {
    border-radius: 999px;
    padding: .62rem 1rem;
    font-weight: 700;
}

/* Hero */
.ls-hero { position: relative; z-index: 2; padding: 5.4rem 0 7.4rem; }
.ls-eyebrow,
.ls-section-kicker {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    color: var(--ls-primary-dark);
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .09em;
    text-transform: uppercase;
}
.ls-eyebrow span { width: 24px; height: 2px; border-radius: 4px; background: var(--ls-primary); }
.ls-display {
    margin: 1.1rem 0 1.35rem;
    max-width: 720px;
    color: var(--ls-ink);
    font-size: clamp(3rem, 5.3vw, 5.2rem);
    line-height: .98;
    letter-spacing: -.055em;
    font-weight: 800;
}
.ls-hero-copy {
    max-width: 600px;
    margin: 0;
    color: var(--ls-muted);
    font-size: 1.16rem;
    line-height: 1.75;
}
.ls-hero-actions { display: flex; flex-wrap: wrap; gap: .85rem; margin-top: 2rem; }
.ls-btn-primary,
.ls-btn-ghost,
.ls-btn-white,
.ls-price-button {
    border-radius: 12px;
    padding: .92rem 1.25rem;
    font-weight: 800;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.ls-btn-primary {
    background: var(--ls-primary);
    border-color: var(--ls-primary);
    color: #fff;
    box-shadow: 0 12px 30px rgba(32, 184, 173, .23);
}
.ls-btn-primary:hover { color: #fff; transform: translateY(-2px); background: #179f96; border-color: #179f96; }
.ls-btn-ghost { background: rgba(255,255,255,.75); border: 1px solid var(--ls-line); color: var(--ls-ink); }
.ls-btn-ghost:hover { color: var(--ls-primary-dark); transform: translateY(-2px); box-shadow: 0 10px 28px rgba(13,31,36,.08); }
.ls-hero-points { display: flex; flex-wrap: wrap; gap: 1.15rem; margin-top: 1.8rem; color: #557074; font-size: .88rem; }
.ls-hero-points span { display: inline-flex; align-items: center; gap: .42rem; }
.ls-hero-points i { color: var(--ls-primary); }

/* Product mockup */
.ls-product-stage {
    position: relative;
    min-height: 545px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.ls-orbit { position: absolute; border-radius: 50%; border: 1px solid rgba(32,184,173,.18); }
.ls-orbit-one { width: 470px; height: 470px; }
.ls-orbit-two { width: 365px; height: 365px; border-style: dashed; }
.ls-phone {
    position: relative;
    z-index: 5;
    width: 255px;
    height: 515px;
    padding: 9px;
    border-radius: 38px;
    background: #0b1518;
    box-shadow: 0 34px 80px rgba(12,48,52,.23);
    transform: rotate(2deg);
}
.ls-phone-notch { position: absolute; z-index: 4; top: 15px; left: 50%; transform: translateX(-50%); width: 72px; height: 18px; border-radius: 999px; background: #081013; }
.ls-phone-screen { position: relative; height: 100%; overflow: hidden; border-radius: 30px; background: #f9fbfb; text-align: center; }
.ls-profile-cover { height: 92px; background: linear-gradient(135deg, #1ec4b7, #0d746f); }
.ls-avatar { width: 72px; height: 72px; margin: -38px auto 8px; border: 5px solid #fff; border-radius: 50%; display: grid; place-items: center; background: #e6f7f5; color: #087f79; font-weight: 900; }
.ls-profile-name { font-size: 1.05rem; font-weight: 800; color: #10272b; }
.ls-profile-role { margin-top: 2px; font-size: .76rem; color: #718084; }
.ls-save-contact { margin: 14px 17px 12px; width: calc(100% - 34px); border: 0; border-radius: 10px; padding: 9px; background: #1eb7ab; color: white; font-size: .75rem; font-weight: 800; }
.ls-contact-actions { display: grid; grid-template-columns: repeat(4, 1fr); gap: 7px; padding: 0 17px 13px; }
.ls-contact-actions span { height: 34px; border: 1px solid rgba(10,50,55,.08); border-radius: 9px; display: grid; place-items: center; color: #15978f; background: #fff; box-shadow: 0 4px 12px rgba(15,54,58,.04); }
.ls-phone-link { margin: 0 17px 8px; padding: 9px 10px; border-radius: 10px; display: grid; grid-template-columns: 18px 1fr 12px; align-items: center; gap: 7px; background: #fff; color: #354b4f; text-align: left; font-size: .68rem; box-shadow: 0 5px 16px rgba(15,54,58,.05); }
.ls-phone-link > i:first-child { color: #1aaca2; }
.ls-phone-link > i:last-child { font-size: .48rem; color: #a6b1b3; }
.ls-business-card {
    position: absolute;
    z-index: 7;
    left: -6px;
    bottom: 52px;
    width: 245px;
    height: 148px;
    border-radius: 18px;
    padding: 17px;
    color: white;
    background: linear-gradient(135deg, #10282c 0%, #0b4547 100%);
    box-shadow: var(--ls-shadow);
    transform: rotate(-8deg);
}
.ls-card-topline { display: flex; align-items: center; gap: 7px; font-size: .75rem; }
.ls-brand-dot { width: 9px; height: 9px; border-radius: 50%; background: #32d8ca; box-shadow: 0 0 0 5px rgba(50,216,202,.12); }
.ls-card-copy { position: absolute; left: 17px; bottom: 17px; display: flex; flex-direction: column; }
.ls-card-copy small { color: #84b7b8; font-size: .55rem; text-transform: uppercase; letter-spacing: .08em; }
.ls-card-copy strong { margin-top: 3px; font-size: .84rem; }
.ls-card-copy span { font-size: .58rem; color: #b8d5d5; }
.ls-card-qr { position: absolute; right: 15px; bottom: 15px; width: 62px; height: 62px; padding: 4px; border-radius: 8px; background: white; }
.ls-scan-pill,
.ls-update-pill { position: absolute; z-index: 8; display: flex; align-items: center; gap: 8px; padding: 10px 13px; border-radius: 999px; background: white; color: #254247; font-size: .72rem; font-weight: 800; box-shadow: 0 15px 35px rgba(13,31,36,.12); }
.ls-scan-pill { top: 72px; right: 0; }
.ls-update-pill { right: 3px; bottom: 78px; }
.ls-scan-pill i, .ls-update-pill i { color: var(--ls-primary); }

/* Proof */
.ls-proof-strip { border-top: 1px solid rgba(13,31,36,.06); border-bottom: 1px solid rgba(13,31,36,.07); background: #fff; }
.ls-proof-item { min-height: 118px; display: flex; align-items: center; gap: 15px; padding: 22px 10px; }
.ls-proof-item > i { width: 42px; height: 42px; flex: 0 0 42px; border-radius: 12px; display: grid; place-items: center; color: var(--ls-primary-dark); background: var(--ls-primary-soft); }
.ls-proof-item div { display: flex; flex-direction: column; gap: 2px; }
.ls-proof-item strong { font-size: .92rem; }
.ls-proof-item span { color: var(--ls-muted); font-size: .78rem; }

/* Generic sections */
.ls-section { padding: 7rem 0; }
.ls-soft-section { background: var(--ls-soft); }
.ls-section-heading { max-width: 710px; }
.ls-section-title { margin: .8rem 0 1rem; font-size: clamp(2.15rem, 3.8vw, 3.65rem); line-height: 1.06; letter-spacing: -.045em; font-weight: 800; color: var(--ls-ink); }
.ls-section-copy { color: var(--ls-muted); font-size: 1.04rem; line-height: 1.78; }

/* Demo */
.ls-demo-section { background: #fff; }
.ls-demo-hints { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 1.8rem; }
.ls-demo-hints span { display: inline-flex; align-items: center; gap: 7px; padding: .65rem .8rem; border-radius: 10px; background: #f7fafa; color: #436066; font-size: .76rem; font-weight: 700; }
.ls-demo-hints i { color: var(--ls-primary); }
.ls-demo-card { position: relative; display: grid; place-items: center; min-height: 350px; }
.ls-demo-card-inner { position: relative; z-index: 2; width: 290px; min-height: 320px; padding: 28px; border-radius: 28px; display: flex; flex-direction: column; align-items: center; justify-content: center; background: #fff; box-shadow: var(--ls-shadow); border: 1px solid var(--ls-line); }
.ls-demo-card-shadow { position: absolute; z-index: 1; width: 300px; height: 300px; border-radius: 32px; background: #c8f2ee; transform: rotate(9deg); }
.ls-demo-badge { margin-bottom: 15px; padding: 5px 9px; border-radius: 999px; background: var(--ls-primary-soft); color: var(--ls-primary-dark); font-size: .66rem; font-weight: 900; text-transform: uppercase; letter-spacing: .06em; }
.ls-demo-qr { width: 155px; height: 155px; margin-bottom: 14px; }
.ls-demo-card-inner strong { font-size: 1rem; }
.ls-demo-card-inner span { color: var(--ls-muted); font-size: .76rem; margin-top: 3px; }

/* Steps */
.ls-step-card { position: relative; height: 100%; min-height: 285px; padding: 31px; border-radius: 22px; background: #fff; border: 1px solid rgba(13,31,36,.07); box-shadow: 0 14px 38px rgba(12,56,59,.06); }
.ls-step-number { position: absolute; right: 24px; top: 21px; color: rgba(13,31,36,.12); font-size: 2.3rem; font-weight: 900; }
.ls-step-icon { width: 52px; height: 52px; border-radius: 15px; display: grid; place-items: center; margin-bottom: 28px; color: var(--ls-primary-dark); background: var(--ls-primary-soft); font-size: 1.15rem; }
.ls-step-card h3 { font-size: 1.25rem; font-weight: 800; }
.ls-step-card p { color: var(--ls-muted); line-height: 1.7; font-size: .91rem; }

/* Update concept */
.ls-check-list { list-style: none; padding: 0; margin: 1.8rem 0 0; }
.ls-check-list li { display: flex; align-items: flex-start; gap: 10px; margin: 12px 0; color: #365157; }
.ls-check-list i { width: 23px; height: 23px; flex: 0 0 23px; border-radius: 50%; display: grid; place-items: center; background: var(--ls-primary-soft); color: var(--ls-primary-dark); font-size: .62rem; }
.ls-update-demo { position: relative; min-height: 390px; padding: 50px 20px 90px; display: flex; align-items: center; justify-content: center; gap: 22px; border-radius: 32px; background: linear-gradient(145deg, #effaf8, #f9fdfc); border: 1px solid rgba(13,31,36,.06); }
.ls-update-panel { width: 190px; padding: 22px; border-radius: 18px; background: #fff; box-shadow: 0 15px 38px rgba(12,56,59,.09); display: flex; flex-direction: column; gap: 4px; }
.ls-update-panel span { font-size: .63rem; color: #93a0a3; text-transform: uppercase; letter-spacing: .08em; font-weight: 800; }
.ls-update-panel strong { font-size: 1.18rem; color: #1a3136; }
.ls-update-panel small { color: #7c8b8f; }
.ls-update-after { border: 2px solid rgba(32,184,173,.35); }
.ls-update-arrow { display: flex; flex-direction: column; align-items: center; gap: 7px; color: var(--ls-primary-dark); font-size: .67rem; font-weight: 800; }
.ls-qr-stays { position: absolute; bottom: 24px; display: flex; align-items: center; gap: 10px; padding: 11px 16px; border-radius: 999px; background: #102c30; color: white; font-size: .74rem; }
.ls-qr-stays i { color: #41d5c9; }

/* Business/team */
.ls-business-section { background: #fff; }
.ls-team-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; transform: rotate(-1deg); }
.ls-team-card { position: relative; min-height: 190px; padding: 22px; border-radius: 20px; background: #fff; border: 1px solid var(--ls-line); box-shadow: 0 16px 45px rgba(12,56,59,.08); display: flex; flex-direction: column; }
.ls-team-card:nth-child(2), .ls-team-card:nth-child(3) { transform: translateY(20px); }
.ls-team-avatar { width: 48px; height: 48px; border-radius: 15px; margin-bottom: 18px; display: grid; place-items: center; background: linear-gradient(145deg, #1ebcb0, #0e807a); color: white; font-weight: 900; }
.ls-team-card strong { font-size: .92rem; }
.ls-team-card span { color: var(--ls-muted); font-size: .73rem; }
.ls-team-qr { position: absolute; right: 18px; bottom: 18px; width: 42px; height: 42px; border-radius: 9px; display: grid; place-items: center; background: #eef9f7; color: #0d8b84; font-size: 1.3rem; }

/* Use cases */
.ls-usecase-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.ls-usecase-card { padding: 24px; border-radius: 18px; background: #fff; border: 1px solid rgba(13,31,36,.06); display: grid; grid-template-columns: 46px 1fr; grid-template-rows: auto auto; column-gap: 14px; align-items: center; }
.ls-usecase-icon { grid-row: 1 / 3; width: 46px; height: 46px; border-radius: 14px; display: grid; place-items: center; color: var(--ls-primary-dark); background: var(--ls-primary-soft); }
.ls-usecase-card strong { font-size: .91rem; }
.ls-usecase-card span { color: var(--ls-muted); font-size: .72rem; line-height: 1.45; }

/* More features */
.ls-feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.ls-feature-card { min-height: 220px; padding: 27px; border: 1px solid var(--ls-line); border-radius: 20px; background: #fff; transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.ls-feature-card:hover { transform: translateY(-4px); border-color: rgba(32,184,173,.25); box-shadow: 0 16px 42px rgba(13,31,36,.07); }
.ls-feature-icon { width: 46px; height: 46px; margin-bottom: 30px; border-radius: 13px; display: grid; place-items: center; background: #f0f8f7; color: var(--ls-primary-dark); }
.ls-feature-card h3 { font-size: 1.06rem; font-weight: 800; }
.ls-feature-card p { margin: 0; color: var(--ls-muted); font-size: .82rem; line-height: 1.65; }

/* Comparison */
.ls-compare-section { background: linear-gradient(135deg, #0d2428 0%, #123a3d 72%, #0d5957 100%); }
.ls-kicker-light { color: #60ded3; }
.ls-copy-light { color: #b8cdcf; }
.ls-compare-table { overflow: hidden; border: 1px solid rgba(255,255,255,.11); border-radius: 20px; background: rgba(255,255,255,.05); backdrop-filter: blur(8px); }
.ls-compare-row { display: grid; grid-template-columns: 1.7fr .65fr .8fr; align-items: center; min-height: 56px; padding: 0 18px; border-bottom: 1px solid rgba(255,255,255,.08); color: #d7e5e6; font-size: .82rem; }
.ls-compare-row:last-child { border-bottom: 0; }
.ls-compare-row > :nth-child(2), .ls-compare-row > :nth-child(3) { text-align: center; }
.ls-compare-head { color: #fff; font-weight: 800; background: rgba(255,255,255,.045); }
.ls-compare-row .fa-times { color: #859b9e; }
.ls-compare-row .fa-check { width: 24px; height: 24px; border-radius: 50%; display: inline-grid; place-items: center; background: rgba(73,219,205,.16); color: #4ce0d3; font-size: .65rem; }

/* Pricing */
.ls-pricing-section { background: #f8fbfa; }
.ls-frequency-switch { width: fit-content; max-width: 100%; margin: 0 auto 32px; padding: 5px; display: flex; flex-wrap: wrap; justify-content: center; gap: 4px; border-radius: 13px; background: #eaf1f0; }
.ls-frequency-switch button { border: 0; border-radius: 9px; padding: 8px 16px; color: #607477; background: transparent; font-size: .78rem; font-weight: 800; cursor: pointer; }
.ls-frequency-switch button.active { background: #fff; color: #17363a; box-shadow: 0 4px 12px rgba(13,31,36,.07); }
.ls-price-card { position: relative; height: 100%; padding: 30px; border-radius: 22px; background: #fff; border: 1px solid rgba(13,31,36,.09); display: flex; flex-direction: column; box-shadow: 0 12px 36px rgba(13,31,36,.04); }
.ls-price-card.is-featured { border: 2px solid rgba(32,184,173,.72); box-shadow: 0 22px 55px rgba(32,184,173,.11); }
.ls-featured-badge { position: absolute; top: -12px; right: 22px; padding: 6px 10px; border-radius: 999px; background: #102c30; color: #fff; font-size: .64rem; font-weight: 900; text-transform: uppercase; letter-spacing: .05em; }
.ls-price-label { display: block; margin-bottom: 12px; color: #29474c; font-weight: 800; }
.ls-price-value { min-height: 58px; display: flex; align-items: baseline; gap: 6px; }
.ls-price-value strong { color: #102b2f; font-size: 2.7rem; line-height: 1; letter-spacing: -.04em; }
.ls-price-value small { color: #829093; font-weight: 700; }
.ls-price-top p { min-height: 42px; color: var(--ls-muted); font-size: .8rem; }
.ls-price-features { list-style: none; padding: 0; margin: 20px 0 26px; flex: 1; }
.ls-price-features li { display: flex; gap: 9px; margin: 11px 0; color: #38545a; font-size: .8rem; }
.ls-price-features i { margin-top: 3px; color: var(--ls-primary); font-size: .66rem; }
.ls-price-features .is-muted { color: #9aa7a9; }
.ls-price-features .is-muted i { color: #aeb8ba; }
.ls-price-button { width: 100%; background: #102e32; color: #fff; border: 1px solid #102e32; }
.ls-price-card.is-featured .ls-price-button { background: var(--ls-primary); border-color: var(--ls-primary); }
.ls-price-button:hover { color: #fff; transform: translateY(-1px); opacity: .93; }

/* FAQ */
.ls-faq-section { background: #fff; }
.ls-faq .card { margin-bottom: 10px; border: 1px solid var(--ls-line); border-radius: 14px !important; overflow: hidden; box-shadow: none; }
.ls-faq .card-header { padding: 0; border: 0; background: #fff; }
.ls-faq .btn-link { width: 100%; padding: 18px 20px; display: flex; align-items: center; justify-content: space-between; gap: 20px; color: var(--ls-ink); text-decoration: none !important; text-align: left; font-weight: 800; }
.ls-faq .btn-link i { color: var(--ls-primary); transition: transform .2s ease; }
.ls-faq .btn-link:not(.collapsed) i { transform: rotate(45deg); }
.ls-faq .card-body { padding: 0 20px 20px; color: var(--ls-muted); font-size: .9rem; line-height: 1.7; }

/* Final CTA */
.ls-final-cta { padding: 1rem 0 7rem; }
.ls-final-box { position: relative; overflow: hidden; min-height: 360px; padding: 55px; border-radius: 32px; display: grid; grid-template-columns: 1.5fr .6fr; align-items: center; gap: 45px; color: white; background: linear-gradient(135deg, #0d282c, #0e7773); }
.ls-final-box:before { content: ''; position: absolute; width: 420px; height: 420px; right: -130px; top: -180px; border-radius: 50%; border: 1px solid rgba(255,255,255,.13); }
.ls-final-box h2 { max-width: 690px; margin: 10px 0 12px; font-size: clamp(2.3rem, 4vw, 4rem); line-height: 1.02; letter-spacing: -.045em; font-weight: 800; }
.ls-final-box p { max-width: 620px; color: #c2dada; font-size: 1rem; }
.ls-btn-white { margin-top: 12px; background: #fff; border-color: #fff; color: #12363a; }
.ls-btn-white:hover { color: #12363a; transform: translateY(-2px); }
.ls-final-visual { position: relative; z-index: 2; justify-self: center; width: 185px; padding: 20px; border-radius: 24px; display: flex; flex-direction: column; align-items: center; gap: 9px; background: #fff; color: #163b3f; box-shadow: 0 24px 55px rgba(0,0,0,.2); transform: rotate(5deg); }
.ls-final-visual img { width: 142px; height: 142px; }
.ls-final-visual span { font-size: .72rem; font-weight: 800; }

@media (max-width: 991.98px) {
    .ls-hero { padding: 3.5rem 0 5rem; }
    .ls-product-stage { min-height: 520px; transform: scale(.94); }
    .ls-hero-shell .navbar-collapse { margin-top: .8rem; padding: 1rem; border-radius: 16px; background: #fff; box-shadow: 0 14px 35px rgba(13,31,36,.1); }
    .ls-hero-shell .navbar-nav { align-items: stretch; }
    .ls-usecase-grid, .ls-feature-grid { grid-template-columns: repeat(2, 1fr); }
    .ls-final-box { grid-template-columns: 1fr; }
    .ls-final-visual { justify-self: start; }
}

@media (max-width: 767.98px) {
    .ls-section { padding: 5rem 0; }
    .ls-display { font-size: clamp(2.75rem, 12vw, 4rem); }
    .ls-hero-copy, .ls-section-copy { font-size: .96rem; }
    .ls-product-stage { min-height: 485px; transform: scale(.82); margin: -35px -50px; }
    .ls-proof-item { min-height: auto; padding: 14px 4px; }
    .ls-proof-strip { padding: 18px 0; }
    .ls-usecase-grid, .ls-feature-grid { grid-template-columns: 1fr; }
    .ls-team-grid { gap: 10px; }
    .ls-team-card { min-height: 170px; padding: 16px; }
    .ls-update-demo { padding: 35px 12px 85px; gap: 8px; }
    .ls-update-panel { width: 145px; padding: 16px 12px; }
    .ls-update-panel strong { font-size: .9rem; }
    .ls-update-arrow span { display: none; }
    .ls-final-box { padding: 38px 26px; border-radius: 24px; }
    .ls-compare-row { grid-template-columns: 1.45fr .55fr .7fr; padding: 0 10px; font-size: .72rem; }
}

@media (max-width: 450px) {
    .ls-product-stage { transform: scale(.72); margin: -55px -88px; }
    .ls-hero-actions .btn { width: 100%; }
    .ls-hero-points { flex-direction: column; gap: .6rem; }
    .ls-team-grid { grid-template-columns: 1fr 1fr; }
    .ls-team-card:nth-child(2), .ls-team-card:nth-child(3) { transform: none; }
}
