.privacy-page {padding: clamp(3rem, 7vw, 6rem) 0;}
.privacy-content {max-width: 850px;}
.privacy-content h1 {font-size: clamp(2.5rem, 6vw, 4.5rem); margin: 0 0 1rem;}
.privacy-content h2 {font-size: 1.5rem; margin: 2.5rem 0 .75rem; line-height: 1.3;}
.privacy-content p {font-size: 1rem; line-height: 1.8; margin: 0 0 1rem;}
.privacy-content .privacy-date {color: var(--muted); font-size: .875rem;}
.privacy-content a {color: var(--pine); text-underline-offset: .2em; overflow-wrap: anywhere;}
.privacy-content a:focus-visible {outline: 2px solid currentColor; outline-offset: 3px;}

.privacy-table-wrap {max-width: 100%; overflow-x: auto; margin: 1.5rem 0; border: 1px solid var(--muted); border-radius: .5rem;}
.privacy-table-wrap:focus-visible {outline: 2px solid var(--pine); outline-offset: 3px;}
.privacy-table {width: 100%; border-collapse: collapse; font-size: .95rem; line-height: 1.65;}
.privacy-table caption {text-align: left; padding: 1rem; font-weight: 700; color: var(--pine);}
.privacy-table th, .privacy-table td {padding: 1rem; text-align: left; vertical-align: top; border-top: 1px solid #d8dfda; overflow-wrap: anywhere;}
.privacy-table thead th {background: #edf2ee; color: var(--pine);}
.privacy-table tbody th {width: 25%; font-weight: 600;}
@media (max-width: 600px) {
  .privacy-table thead {position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%);}
  .privacy-table tbody, .privacy-table tr, .privacy-table tbody th, .privacy-table td {display: block; width: auto;}
  .privacy-table tbody th {background: #edf2ee; color: var(--pine); padding: .75rem;}
  .privacy-table td {padding: .75rem; border-top: 0;}
  .privacy-table td::before {content: attr(data-label); display: block; font-weight: 600; color: var(--pine); margin-bottom: .25rem;}
  .privacy-table td:last-child {padding-top: 0;}
}

/* Reading structure and navigation are scoped to the privacy page. */
.privacy-page {padding-top: clamp(2.5rem, 5vw, 4.5rem);}
.privacy-content {max-width: 900px;}
.privacy-intro {padding-bottom: .75rem;}
.privacy-intro .eyebrow {margin-bottom: .75rem;}
.privacy-intro h1 {letter-spacing: -.025em; line-height: 1.1;}
.privacy-content .privacy-lead {max-width: 70ch; font-size: 1.1rem; line-height: 1.75;}
.privacy-nav {display: flex; flex-wrap: wrap; align-items: center; gap: .5rem .65rem; padding: 1rem; margin: .5rem 0 2rem; background: var(--cream); border: 1px solid var(--line); border-radius: .75rem;}
.privacy-nav-label {font-size: .8rem; font-weight: 700; color: var(--muted); margin-right: .25rem;}
.privacy-nav a {padding: .45rem .65rem; font-size: .875rem; line-height: 1.4; border-radius: .4rem; text-decoration: underline;}
.privacy-nav a:hover {background: var(--paper);}
.privacy-section {padding: 2rem 0 .75rem; border-top: 1px solid var(--line); scroll-margin-top: 100px;}
.privacy-section h2 {margin-top: 0; font-size: clamp(1.25rem, 3vw, 1.5rem);}
.privacy-section p {max-width: 78ch;}
.privacy-section#contact {padding: 1.5rem; margin-bottom: 2rem; background: #edf2ee; border: 1px solid var(--line); border-radius: .75rem;}
.privacy-section#contact p:last-child {margin-bottom: 0;}
.privacy-table-wrap {border-color: var(--line); border-radius: .75rem;}
.privacy-table caption {background: var(--cream);}
.privacy-table thead th:first-child {width: 25%;}
.privacy-table thead th:nth-child(2) {width: 42%;}
.privacy-table tbody th {color: var(--pine);}
@media (max-width: 600px) {
  .privacy-content .privacy-lead {font-size: 1rem;}
  .privacy-nav {gap: .4rem; padding: .75rem; margin-bottom: 1.5rem;}
  .privacy-nav-label {width: 100%; margin: 0 0 .25rem;}
  .privacy-nav a {padding: .5rem;}
  .privacy-section {padding-top: 1.5rem;}
  .privacy-section#contact {padding: 1rem; margin-bottom: 1.5rem;}
  .privacy-table caption {padding: 1rem;}
  .privacy-table tbody th, .privacy-table td {padding: 1rem;}
  .privacy-table td:last-child {padding-top: 0;}
}
@media (prefers-reduced-motion: reduce) {html {scroll-behavior: auto;}}
