/**
 * Privacy Policy template — built from the client's Figma.
 *
 * Auto-loaded by seniorcare_template_slug() for the page with slug
 * "privacy-policy". Every value below was measured off the 2x Figma export
 * (2880px wide = a 1440px frame), so treat the numbers as design data:
 *
 *   hero band      400px tall, #fdfbf7, 120px padding top and bottom
 *   card           .sc-shell width, 1px #e2e8f0 border, 24px radius
 *   sections       hairline-divided, 50px above / 44px below the text
 *   body copy      18px / 1.7, --sc-text-body
 *   headings       25px serif, --sc-navy-deep   ·   hero title 48px, --sc-text
 *
 * NOTE: the type scale and text colours above were aligned with
 * page-terms-of-use.css on 2026-07-28 at the client's request, so the two legal
 * pages read as one set. They no longer match the raw Figma export values.
 * Keep the two files in step when either changes.
 *
 * Selectors are written as .sc-legal .sc-legal__x so they outrank base.css's
 * element rules (.sc-page h1, .sc-page p, .sc-page ul) at every breakpoint.
 */

/* The BuddyBoss page wrappers constrain and pad their content; the hero band
   is full-bleed, so those constraints are lifted on this template. */
.sc-legal-template #main-wrap,
.sc-legal-template #inner-wrap,
.sc-legal-template #page,
.sc-legal-template #main {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	background: none;
	border: 0;
	box-shadow: none;
}

.sc-legal {
	--sc-legal-line:    #e2e8f0;
	/* Text colours come from the shared tokens, so this page and the Terms page
	   cannot drift apart. Change tokens.css to restyle both at once. */
	--sc-legal-ink:     var(--sc-text-body);
	--sc-legal-heading: var(--sc-navy-deep);

	background: #fff;
}

/* ============================================================== hero ==== */

.sc-legal .sc-legal__hero {
	padding: 120px 0;
	background: #fdfbf7;
	text-align: center;
}

.sc-legal .sc-legal__eyebrow {
	margin: 0 0 12px;
	color: var(--sc-orange);
	font-family: var(--sc-font-body);
	/* Type scale is kept identical to page-terms-of-use.css so the two legal
	   pages read as one set. Change both files together. */
	font-size: 13px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.sc-legal .sc-legal__title {
	margin: 0 0 12px;
	/* Black, matching the Terms page title. */
	color: var(--sc-text);
	font-family: var(--sc-font-heading);
	font-size: 48px;
	font-weight: 700;
	line-height: 1.15;
}

.sc-legal .sc-legal__lede {
	max-width: 600px;
	margin: 0 auto;
	color: var(--sc-text);
	font-family: var(--sc-font-body);
	font-size: 20px;
	font-weight: 400;
	line-height: 1.425;
}

/* ============================================================== card ==== */

.sc-legal .sc-legal__body {
	padding: 80px 0;
	background: #fff;
}

.sc-legal .sc-legal__card {
	/* Bottom inset is 4px tighter than the top in the design. */
	padding: 30px 30px 26px;
	background: #fff;
	border: 1px solid var(--sc-legal-line);
	border-radius: 24px;
}

.sc-legal .sc-legal__section {
	padding: 50px 0 44px;
}

/* The card's own padding supplies the space at both ends. */
.sc-legal .sc-legal__section:first-child { padding-top: 0; }
.sc-legal .sc-legal__section:last-child  { padding-bottom: 0; }

.sc-legal .sc-legal__section + .sc-legal__section {
	border-top: 1px solid var(--sc-legal-line);
}

.sc-legal .sc-legal__heading {
	margin: 0 0 12px;
	color: var(--sc-legal-heading);
	font-family: var(--sc-font-heading);
	font-size: 25px;
	font-weight: 700;
	line-height: 1.3;
}

/* Paragraphs run on with no gap between them — that is how the design reads. */
.sc-legal .sc-legal__section p {
	margin: 0;
	color: var(--sc-legal-ink);
	font-family: var(--sc-font-body);
	font-size: 18px;
	font-weight: 400;
	line-height: 1.7;
	overflow-wrap: break-word;
}

.sc-legal .sc-legal__section strong {
	font-weight: 700;
	color: inherit;
}

/* base.css strips list markers site-wide; this list needs them back. */
.sc-legal .sc-legal__list {
	margin: 0;
	padding-left: 32px;
	list-style: disc;
}

.sc-legal .sc-legal__list li {
	margin: 0;
	color: var(--sc-legal-ink);
	font-family: var(--sc-font-body);
	font-size: 18px;
	line-height: 1.7;
}

/* ======================================================= breakpoints ==== */

@media (max-width: 1024px) {
	.sc-legal .sc-legal__hero    { padding: 88px 0; }
	.sc-legal .sc-legal__title   { font-size: 40px; }
	.sc-legal .sc-legal__lede    { max-width: 560px; font-size: 18px; }
	.sc-legal .sc-legal__body    { padding: 64px 0; }
	.sc-legal .sc-legal__card    { padding: 26px 26px 24px; border-radius: 20px; }
	.sc-legal .sc-legal__section { padding: 40px 0 36px; }
	.sc-legal .sc-legal__heading { font-size: 25px; }

	.sc-legal .sc-legal__section p,
	.sc-legal .sc-legal__list li { font-size: 18px; line-height: 1.7; }
}

@media (max-width: 768px) {
	.sc-legal .sc-legal__hero    { padding: 64px 0; }
	.sc-legal .sc-legal__eyebrow { font-size: 13px; }
	.sc-legal .sc-legal__title   { font-size: 32px; }
	.sc-legal .sc-legal__lede    { max-width: 460px; font-size: 17px; }
	.sc-legal .sc-legal__body    { padding: 48px 0; }
	.sc-legal .sc-legal__card    { padding: 24px 20px 20px; border-radius: 16px; }
	.sc-legal .sc-legal__section { padding: 32px 0 28px; }
	.sc-legal .sc-legal__heading { font-size: 22px; }
	.sc-legal .sc-legal__list    { padding-left: 24px; }

	.sc-legal .sc-legal__section p,
	.sc-legal .sc-legal__list li { font-size: 16px; line-height: 1.7; }
}

@media (max-width: 575px) {
	.sc-legal .sc-legal__hero    { padding: 48px 0; }
	.sc-legal .sc-legal__title   { font-size: 26px; }
	.sc-legal .sc-legal__lede    { font-size: 16px; line-height: 1.5; }
	.sc-legal .sc-legal__body    { padding: 36px 0; }
	.sc-legal .sc-legal__card    { padding: 20px 16px 18px; border-radius: 14px; }
	.sc-legal .sc-legal__section { padding: 26px 0 24px; }
	.sc-legal .sc-legal__heading { font-size: 22px; }
	.sc-legal .sc-legal__list    { padding-left: 22px; }

	.sc-legal .sc-legal__section p,
	.sc-legal .sc-legal__list li { font-size: 15px; line-height: 1.7; }
}
