/* =============================================================
   SaaS Patterns — helper classes.
   Every value below references a token from theme.json so the
   patterns stay editable from the Site Editor.
   ============================================================= */

:root {
	--bts-card-border:   #e6e6e6;
	--bts-card-border-h: var(--wp--preset--color--black);
	--bts-ease:          cubic-bezier(0.22, 1, 0.36, 1);
}

/* ---------- Eyebrow tag (small uppercase pre-heading) ---------- */
.bts-eyebrow {
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: var(--wp--custom--font-weight--semi-bold);
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

/* ---------- Lead paragraph (bigger sub-hero copy) ---------- */
.bts-lead {
	font-size: var(--wp--preset--font-size--h-5);
	line-height: var(--wp--custom--line-height--130);
}

/* ---------- Card surface (services / testimonials / pricing) ---------- */
.bts-card {
	border: 1px solid var(--bts-card-border);
	transition: border-color 200ms var(--bts-ease), transform 200ms var(--bts-ease);
}
.bts-card:hover {
	border-color: var(--bts-card-border-h);
	transform: translateY(-2px);
}
.bts-card--feature {
	border-color: var(--wp--preset--color--black);
}

/* ---------- "Most popular" pill (pricing) ---------- */
.bts-popular {
	display: inline-block;
	padding: 6px 12px;
	font-size: var(--wp--preset--font-size--small);
	font-weight: var(--wp--custom--font-weight--semi-bold);
	letter-spacing: 0.14em;
	text-transform: uppercase;
	background: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
}

/* ---------- Big price digit (pricing) ---------- */
.bts-price {
	font-size: var(--wp--preset--font-size--h-1);
	font-weight: var(--wp--custom--font-weight--extra-bold);
	line-height: var(--wp--custom--line-height--100);
	letter-spacing: -0.02em;
}
.bts-price small {
	font-size: var(--wp--preset--font-size--body);
	font-weight: var(--wp--custom--font-weight--regular);
	color: #6b6b6b;
}

/* ---------- Checkmark list (pricing / features) ---------- */
.bts-check {
	list-style: none !important;
	padding-left: 0 !important;
}
.bts-check li {
	position: relative;
	padding-left: 28px;
	line-height: var(--wp--custom--line-height--130);
}
.bts-check li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.4em;
	width: 16px;
	height: 16px;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='3 8 7 12 13 4'/></svg>");
	background-repeat: no-repeat;
	background-size: 16px 16px;
}

/* ---------- FAQ (core/details) polish ---------- */
.bts-faq .wp-block-details {
	border-bottom: 1px solid var(--bts-card-border);
	padding: var(--wp--preset--spacing--small) 0;
}
.bts-faq .wp-block-details:first-of-type {
	border-top: 1px solid var(--bts-card-border);
}
.bts-faq .wp-block-details > summary {
	font-size: var(--wp--preset--font-size--h-5);
	font-weight: var(--wp--custom--font-weight--semi-bold);
	cursor: pointer;
	list-style: none;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: var(--wp--preset--spacing--small);
}
.bts-faq .wp-block-details > summary::-webkit-details-marker { display: none; }
.bts-faq .wp-block-details > summary::after {
	content: "+";
	font-size: var(--wp--preset--font-size--h-4);
	font-weight: var(--wp--custom--font-weight--regular);
	line-height: 1;
	transition: transform 200ms var(--bts-ease);
}
.bts-faq .wp-block-details[open] > summary::after { content: "−"; }

/* ---------- Footer link list ---------- */
.bts-footer-list {
	list-style: none !important;
	padding-left: 0 !important;
}
.bts-footer-list li { margin: 0 0 8px; }
.bts-footer-list a {
	color: inherit;
	text-decoration: none;
	opacity: 0.75;
	transition: opacity 160ms var(--bts-ease);
}
.bts-footer-list a:hover { opacity: 1; }

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
	* { transition-duration: 0.001ms !important; }
}
