/**
 * Pointalize homepage landing (Custom HTML block: #pointalize-landing-final)
 * Loaded on front page only — keeps WP block editor overrides with !important.
 */

#pointalize-landing-final {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
	color: #1a1a1a !important;
	line-height: 1.5 !important;
	width: 100% !important;
	max-width: 1100px !important;
	margin: 0 auto !important;
	background-color: #ffffff !important;
	box-sizing: border-box !important;
	overflow-x: hidden !important;
}

.pal-mobile-pad {
	padding: 20px 20px !important;
}

.pal-hover-lift {
	transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.pal-hover-lift:hover {
	transform: translateY(-3px) !important;
	box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1) !important;
}

.pal-hero-section {
	padding: 40px 20px !important;
	background: linear-gradient(180deg, #f0fdfa 0%, #ffffff 100%) !important;
}

.pal-hero-row {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 30px !important;
	min-height: 420px !important;
}

.pal-hero-content {
	flex: 1 1 auto !important;
	max-width: 520px !important;
	padding-right: 20px !important;
	min-height: 320px !important;
	contain: layout !important;
}

.pal-hero-title {
	font-size: clamp(2rem, 4vw, 3.2rem) !important;
	font-weight: 900 !important;
	line-height: 1.1 !important;
	margin: 0 0 16px 0 !important;
	color: #000 !important;
}

.pal-gradient-text {
	color: #0f766e !important;
	background: linear-gradient(135deg, #0f766e 0%, #14b8a6 100%) !important;
	-webkit-background-clip: text !important;
	background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
}

.pal-hero-desc {
	font-size: 1.05rem !important;
	color: #525252 !important;
	margin: 0 0 24px 0 !important;
	line-height: 1.6 !important;
}

.pal-eyebrow {
	font-size: 0.75rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	color: #0f766e !important;
	margin: 0 0 10px 0 !important;
}

.pal-tab-strip {
	display: flex !important;
	gap: 8px !important;
	flex-wrap: wrap !important;
	margin: 0 0 20px 0 !important;
	min-height: 32px !important;
}

.pal-tab-pill {
	padding: 6px 14px !important;
	border-radius: 999px !important;
	font-size: 0.8rem !important;
	font-weight: 700 !important;
	background: #e0f2fe !important;
	color: #0e7490 !important;
	line-height: 1.2 !important;
}

.pal-tab-pill--active {
	background: #0f766e !important;
	color: #fff !important;
}

.pal-badge-container {
	display: flex !important;
	gap: 15px !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	justify-content: flex-start !important;
	min-height: 62px !important;
}

.pal-badge-link {
	display: inline-block !important;
	transition: opacity 0.2s !important;
	line-height: 0 !important;
	flex: 0 0 auto !important;
}

.pal-badge-link:hover {
	opacity: 0.8 !important;
}

.pal-badge-apple {
	height: 42px !important;
	width: auto !important;
	display: block !important;
}

.pal-badge-google {
	height: 62px !important;
	width: auto !important;
	margin: 0 !important;
	display: block !important;
}

.pal-hero-visuals {
	flex: 0 0 auto !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 220px !important;
	max-width: 220px !important;
}

.pal-hero-phone-img {
	max-width: 220px !important;
	width: 100% !important;
	aspect-ratio: 1170 / 2542 !important;
	contain: layout !important;
	filter: drop-shadow(0 15px 30px rgba(0, 0, 0, 0.15)) !important;
}

.pal-img-responsive {
	width: 100% !important;
	border-radius: 32px !important;
	display: block !important;
}

.pal-screenshot-aspect {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	background: #f0fdfa !important;
}

.pal-feat-row-wrap--last {
	padding-bottom: 40px !important;
}

.pal-intro-text {
	padding: 30px 20px 10px !important;
	text-align: center !important;
	max-width: 900px !important;
	margin: 0 auto !important;
}

.pal-h2-title {
	font-size: 1.8rem !important;
	font-weight: 900 !important;
	margin: 0 0 10px 0 !important;
	color: #1a1a1a !important;
}

.pal-p-sub {
	font-size: 1rem !important;
	color: #666 !important;
	margin: 0 !important;
}

.pal-grid-section {
	padding: 10px 20px 20px !important;
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 20px !important;
	justify-content: center !important;
}

.pal-feat-card {
	flex: 1 1 100px !important;
	max-width: 350px !important;
	padding: 24px 20px !important;
	border-radius: 24px !important;
	text-align: center !important;
	box-sizing: border-box !important;
}

.pal-card-blue {
	background: linear-gradient(135deg, #e0f7fa 0%, #e0f2fe 100%) !important;
	border: 1px solid rgba(255, 255, 255, 0.5) !important;
}

.pal-card-white {
	background: #fff !important;
	border: 1px solid #e2e8f0 !important;
	box-shadow: 0 4px 12px -2px rgba(0, 0, 0, 0.03) !important;
}

.pal-card-icon {
	font-size: 32px !important;
	margin-bottom: 12px !important;
}

.pal-icon-shadow {
	filter: drop-shadow(0 4px 6px rgba(0, 0, 0, 0.1)) !important;
}

.pal-card-title {
	font-size: 1.1rem !important;
	font-weight: 800 !important;
	margin-bottom: 8px !important;
}

.pal-title-teal {
	color: #0e7490 !important;
}

.pal-title-slate {
	color: #1e293b !important;
}

.pal-card-desc {
	font-size: 0.9rem !important;
	margin: 0 !important;
	line-height: 1.5 !important;
}

.pal-desc-teal {
	color: #475569 !important;
}

.pal-desc-slate {
	color: #64748b !important;
}

.pal-feat-row-wrap {
	padding: 10px 20px 30px !important;
}

.pal-feat-row {
	display: flex !important;
	align-items: center !important;
	gap: 40px !important;
	justify-content: center !important;
}

.pal-row-reverse {
	flex-direction: row-reverse !important;
}

.pal-feat-img-col {
	flex: 0 1 300px !important;
	width: 100% !important;
	max-width: 300px !important;
	display: flex !important;
	justify-content: center !important;
	aspect-ratio: 1170 / 2542 !important;
	contain: layout !important;
}

.pal-feat-img-shadow {
	box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.1) !important;
}

.pal-feat-content-col {
	flex: 1 1 auto !important;
	max-width: 480px !important;
}

.pal-pill-badge {
	background: #e0f2fe !important;
	color: #0369a1 !important;
	padding: 4px 12px !important;
	border-radius: 12px !important;
	font-size: 0.7rem !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	display: inline-block !important;
	margin-bottom: 12px !important;
}

.pal-h2-feat {
	font-size: 1.8rem !important;
	font-weight: 900 !important;
	line-height: 1.1 !important;
	margin: 0 0 12px 0 !important;
	color: #1a1a1a !important;
}

.pal-p-feat {
	font-size: 1rem !important;
	color: #525252 !important;
	margin: 0 0 16px 0 !important;
	line-height: 1.6 !important;
}

.pal-checklist {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

.pal-check-item {
	list-style: none !important;
	position: relative !important;
	padding-left: 28px !important;
	margin-bottom: 10px !important;
	font-weight: 500 !important;
	font-size: 0.95rem !important;
	color: #404040 !important;
}

.pal-check-icon {
	position: absolute !important;
	left: 0 !important;
	top: 0 !important;
	color: #14b8a6 !important;
	font-weight: 900 !important;
}

.pal-cta-section {
	padding: 20px 20px !important;
	background: linear-gradient(135deg, #0e9f8f 0%, #14b8a6 100%) !important;
	text-align: center !important;
	border-top: 1px solid #f0f0f0 !important;
	border-radius: 20px !important;
}

.pal-h2-white {
	font-size: 2rem !important;
	font-weight: 900 !important;
	margin: 0 0 12px 0 !important;
	color: white !important;
}

.pal-p-white {
	font-size: 1.05rem !important;
	margin: 0 auto 24px !important;
	opacity: 0.95 !important;
	color: white !important;
	max-width: 600px !important;
}

.pal-badge-center {
	justify-content: center !important;
}

.pal-privacy-wrap {
	margin-top: 20px !important;
}

.pal-privacy-box {
	background: #0f172a !important;
	padding: 20px 20px !important;
	border-radius: 20px !important;
	text-align: center !important;
	color: #e2e8f0 !important;
	margin: 0 auto !important;
	z-index: 2 !important;
}

.pal-lock-icon {
	font-size: 28px !important;
	margin-bottom: 8px !important;
}

.pal-h3-white {
	font-size: 1.25rem !important;
	font-weight: 800 !important;
	margin: 0 0 8px 0 !important;
	color: #fff !important;
}

.pal-p-priv {
	font-size: 0.85rem !important;
	opacity: 0.8 !important;
	line-height: 1.4 !important;
	margin: 0 !important;
}

@media (max-width: 768px) {
	.pal-mobile-pad {
		padding: 10px 0 0 !important;
	}

	.pal-feat-row-wrap {
		padding-bottom: 0 !important;
	}

	.pal-p-feat {
		margin-bottom: 12px !important;
	}

	.pal-hero-row {
		flex-direction: column !important;
		text-align: center !important;
		gap: 20px !important;
		min-height: 0 !important;
	}

	.pal-feat-row {
		flex-direction: column !important;
		text-align: center !important;
		gap: 20px !important;
	}

	.pal-hero-content,
	.pal-hero-visuals {
		padding-right: 0 !important;
		flex: none !important;
		width: 100% !important;
		max-width: 100% !important;
		min-height: 0 !important;
	}

	.pal-hero-visuals,
	.pal-feat-img-col {
		order: -1 !important;
		margin: 0 auto 10px !important;
		flex: 0 0 auto !important;
		max-width: 220px !important;
	}

	.pal-checklist {
		display: inline-block !important;
		text-align: left !important;
	}

	.pal-badge-container {
		justify-content: center !important;
	}

	.pal-tab-strip {
		justify-content: center !important;
	}

	.pal-hero-desc {
		margin: 0 0 10px 0 !important;
	}
}
