/* ==========================================================================
   DOST GO — Privacy Policy Page Stylesheet
   Loaded only on pages using page-templates/template-privacy.php
   (enqueue conditionally in functions.php).
   ========================================================================== */

/* ---------- Hero (title band) ---------- */
.dostgo-privacy-hero {
	padding: 40px 0 26px;
	border-bottom: 1px solid var(--dostgo-border);
}

.dostgo-privacy-hero__title {
	font-family: var(--dostgo-font-heading);
	font-size: 2.4rem;
	font-weight: 800;
	color: var(--dostgo-black);
	margin: 4px 0 0;
}

/* ---------- Content section ---------- */
.dostgo-privacy {
	padding: 36px 0 70px;
}

/* Content column: spans the full page container width, left-aligned. */
.dostgo-privacy__content {
	max-width: 100%;
	margin: 0;
	font-family: var(--dostgo-font-body);
	color: #4b5563;
	font-size: 1rem;
	line-height: 1.7;
}

/* ---------- Headings ---------- */
.dostgo-privacy__content h1,
.dostgo-privacy__content h2,
.dostgo-privacy__content h3,
.dostgo-privacy__content h4 {
	font-family: var(--dostgo-font-heading);
	color: var(--dostgo-black);
	line-height: 1.3;
}

.dostgo-privacy__content h1 {
	font-size: 1.9rem;
	font-weight: 800;
	margin: 0 0 16px;
}

.dostgo-privacy__content h2 {
	position: relative;
	font-size: 1.4rem;
	font-weight: 700;
	margin: 32px 0 14px;
	padding-top: 18px;
	border-top: 1px solid var(--dostgo-border);
}

.dostgo-privacy__content h2:first-child {
	margin-top: 0;
	padding-top: 0;
	border-top: none;
}

.dostgo-privacy__content h2::before {
	content: '';
	display: block;
	width: 40px;
	height: 3px;
	border-radius: 2px;
	background: linear-gradient(90deg, var(--dostgo-300), var(--dostgo-600));
	margin-bottom: 10px;
}

.dostgo-privacy__content h3 {
	font-size: 1.12rem;
	font-weight: 700;
	color: var(--dostgo-600);
	margin: 20px 0 8px;
}

.dostgo-privacy__content h4 {
	font-size: 1rem;
	font-weight: 700;
	margin: 16px 0 6px;
}

/* ---------- Text ---------- */
.dostgo-privacy__content p {
	margin: 0 0 14px;
}

.dostgo-privacy__content strong,
.dostgo-privacy__content b {
	color: var(--dostgo-black);
	font-weight: 700;
}

.dostgo-privacy__content a {
	color: var(--dostgo-primary);
	text-decoration: underline;
	text-decoration-color: var(--dostgo-200);
	text-underline-offset: 3px;
	transition: color .2s ease, text-decoration-color .2s ease;
}

.dostgo-privacy__content a:hover {
	color: var(--dostgo-primary-hover);
	text-decoration-color: var(--dostgo-primary-hover);
}

/* ---------- Lists ---------- */
.dostgo-privacy__content ul,
.dostgo-privacy__content ol {
	margin: 0 0 16px;
	padding: 0;
	list-style: none;
}

.dostgo-privacy__content ul li,
.dostgo-privacy__content ol li {
	position: relative;
	padding-left: 26px;
	margin-bottom: 8px;
}

.dostgo-privacy__content ul li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 9px;
	width: 8px;
	height: 8px;
	border-radius: 2px;
	background: linear-gradient(135deg, var(--dostgo-400), var(--dostgo-600));
	transform: rotate(45deg);
}

.dostgo-privacy__content ol {
	counter-reset: dostgo-privacy-counter;
}

.dostgo-privacy__content ol li {
	counter-increment: dostgo-privacy-counter;
}

.dostgo-privacy__content ol li::before {
	content: counter(dostgo-privacy-counter);
	position: absolute;
	left: 0;
	top: -1px;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: var(--dostgo-50);
	color: var(--dostgo-600);
	font-size: .72rem;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
}

.dostgo-privacy__content ul ul,
.dostgo-privacy__content ol ol,
.dostgo-privacy__content ul ol,
.dostgo-privacy__content ol ul {
	margin-top: 8px;
	margin-bottom: 0;
}

/* ---------- Misc elements ---------- */
.dostgo-privacy__content hr {
	border: none;
	border-top: 1px solid var(--dostgo-border);
	margin: 24px 0;
}

.dostgo-privacy__content blockquote {
	margin: 0 0 16px;
	padding: 14px 20px;
	border-left: 3px solid var(--dostgo-primary);
	background: var(--dostgo-light);
	border-radius: 0 10px 10px 0;
	color: #4b5563;
	font-style: italic;
}

.dostgo-privacy__content table {
	width: 100%;
	border-collapse: collapse;
	margin: 0 0 18px;
	font-size: .92rem;
}

.dostgo-privacy__content table th,
.dostgo-privacy__content table td {
	text-align: left;
	padding: 8px 12px;
	border: 1px solid var(--dostgo-border);
}

.dostgo-privacy__content table th {
	background: var(--dostgo-light);
	color: var(--dostgo-black);
	font-weight: 700;
}

/* ---------- Responsive ---------- */
@media (max-width: 768px) {
	.dostgo-privacy-hero { padding: 32px 0 22px; }
	.dostgo-privacy-hero__title { font-size: 1.9rem; }

	.dostgo-privacy { padding: 28px 0 50px; }
	.dostgo-privacy__content { font-size: .95rem; }
	.dostgo-privacy__content h2 { font-size: 1.2rem; margin-top: 26px; }
	.dostgo-privacy__content h3 { font-size: 1.05rem; }
}

@media (max-width: 480px) {
	.dostgo-privacy-hero__title { font-size: 1.6rem; }
	.dostgo-privacy__content ul li,
	.dostgo-privacy__content ol li { padding-left: 24px; }
}