/* ============================================================
   Policy pages — Privacy, Cookies, Terms.

   Shared layout for the legal/utility pages. Hero-less opener
   with the light-gray topo callback behind the title (same
   treatment used on Services hub and Pricing intros). Prose
   content below on cream.
   ============================================================ */

.policy-intro {
  padding-top: 72px;
  padding-bottom: 24px;
  position: relative;
  overflow: hidden;
}
.policy-intro .container {
  position: relative;
  z-index: 2;
}
.policy-intro .section-header {
  margin-bottom: 8px;
}

.policy-body {
  padding-top: 24px;
  padding-bottom: 96px;
}
.policy-prose {
  max-width: 760px;
  margin: 0 auto;
  color: var(--text-dark-2);
  font-size: 16px;
  line-height: 1.7;
}

.policy-prose .effective {
  font-size: 14px;
  color: var(--text-dark-3);
  margin: 0 0 32px;
}

.policy-prose h2 {
  font-family: var(--font-display);
  font-size: 24px;
  font-weight: var(--weight-medium);
  letter-spacing: var(--tracking-h3);
  color: var(--text-dark);
  margin: 40px 0 12px;
}
.policy-prose h3 {
  font-family: var(--font-display);
  font-size: 18px;
  font-weight: var(--weight-medium);
  letter-spacing: -0.005em;
  color: var(--text-dark);
  margin: 28px 0 10px;
}
.policy-prose p {
  margin: 0 0 16px;
}
.policy-prose ul {
  margin: 0 0 16px;
  padding-left: 22px;
}
.policy-prose li {
  margin-bottom: 6px;
}
.policy-prose a {
  color: var(--blue);
  text-decoration: none;
  border-bottom: 1px solid rgba(22, 93, 148, 0.3);
  transition: border-color 0.2s ease, color 0.2s ease;
}
.policy-prose a:hover {
  color: var(--orange);
  border-bottom-color: var(--orange);
}
.policy-prose strong {
  color: var(--text-dark);
  font-weight: var(--weight-medium);
}

/* Table styling for the cookie inventory tables. */
.policy-prose table {
  width: 100%;
  border-collapse: collapse;
  margin: 12px 0 24px;
  font-size: 14px;
}
.policy-prose th,
.policy-prose td {
  text-align: left;
  padding: 10px 12px;
  border-bottom: 1px solid var(--border-on-light);
  vertical-align: top;
}
.policy-prose th {
  font-family: var(--font-display);
  font-weight: var(--weight-medium);
  color: var(--text-dark);
  font-size: 13px;
  letter-spacing: 0.02em;
  background: rgba(0, 0, 0, 0.025);
}
.policy-prose td code {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 13px;
  color: var(--text-dark);
  background: rgba(0, 0, 0, 0.04);
  padding: 1px 5px;
  border-radius: 3px;
}

@media (max-width: 760px) {
  .policy-intro { padding-top: 48px; }
  .policy-body  { padding-bottom: 72px; }
  .policy-prose { font-size: 15px; }
  .policy-prose h2 { font-size: 22px; }
  .policy-prose th,
  .policy-prose td { padding: 8px 10px; font-size: 13px; }
}
