.privacy-page .container { padding-inline: clamp(20px, 4vw, 56px); }
.privacy-main { padding-block: clamp(40px, 6vw, 72px) 72px; }
.privacy-intro { max-width: 800px; margin-bottom: 44px; }
.privacy-kicker { color: var(--blue); font-size: 17px; margin-bottom: 12px; }
.privacy-intro h1 { font: 400 clamp(34px, 4vw, 44px)/1.18 var(--serif); letter-spacing: -.025em; }
html[lang='th'] .privacy-intro h1 { font-family: var(--sans); line-height: 1.4; }
.privacy-summary { margin-top: 20px; font-size: 18px; line-height: 1.8; color: var(--body); }
.privacy-date { margin-top: 18px; font-size: 16px; color: var(--muted); }
.privacy-layout { display: grid; grid-template-columns: 235px minmax(0, 1fr); align-items: start; gap: clamp(30px, 4vw, 58px); }
.privacy-contents { position: sticky; top: 28px; padding-top: 24px; border-top: 1px solid var(--line); }
.privacy-contents h2 { font: 400 23px/1.4 var(--serif); margin-bottom: 12px; }
html[lang='th'] .privacy-contents h2 { font: 400 23px/1.5 var(--sans); }
.privacy-contents nav { display: flex; flex-direction: column; }
.privacy-contents a { display: flex; align-items: center; min-height: 44px; padding-block: 8px; color: var(--body); font-size: 16px; line-height: 1.6; text-decoration: underline; text-decoration-color: transparent; text-underline-offset: 5px; transition: color .2s, text-decoration-color .2s; }
.privacy-contents a:hover { color: var(--ink); text-decoration-color: var(--blue); }
.privacy-document { min-width: 0; max-width: 800px; }
.privacy-section { padding-block: 28px 30px; border-top: 1px solid var(--line); scroll-margin-top: 28px; }
.privacy-section:first-child { padding-top: 24px; }
.privacy-section h2, html[lang='th'] .privacy-section h2 { font-family: var(--sans); font-size: clamp(24px, 2.2vw, 28px); font-weight: 400; line-height: 1.45; letter-spacing: -.015em; margin-bottom: 20px; color: var(--ink); }
.privacy-section p, .privacy-section li, .privacy-section address { font-size: 17px; line-height: 1.85; color: var(--body); }
.privacy-section p + p, .privacy-section ul + p { margin-top: 16px; }
.privacy-section ul { padding-left: 23px; margin: 16px 0; }
.privacy-section li + li { margin-top: 12px; }
.privacy-section strong { font-weight: 600; color: #d8e5ee; }
.privacy-section a { color: var(--blue); text-decoration: underline; text-underline-offset: 4px; overflow-wrap: anywhere; }
.privacy-section a:hover { color: var(--ink); }
.privacy-apps { list-style: none; padding: 0 !important; margin: 22px 0 !important; display: grid; grid-template-columns: 1fr 1fr; gap: 0 28px; }
.privacy-apps li { padding-block: 13px; margin: 0 !important; border-bottom: 1px solid var(--line); color: #d8e5ee; }
.privacy-section address { font-style: normal; margin-top: 20px; }
.privacy-contact { display: inline-flex; align-items: center; min-height: 48px; font-size: 19px; margin-top: 12px; }
[data-policy-language][hidden] { display: none !important; }
@media (max-width: 849px) {
  .privacy-main { padding-top: 36px; padding-bottom: 44px; }
  .privacy-intro { margin-bottom: 30px; }
  .privacy-layout { grid-template-columns: 1fr; gap: 30px; }
  .privacy-contents { position: static; }
  .privacy-contents nav { display: grid; grid-template-columns: 1fr 1fr; column-gap: 24px; }
}
@media (max-width: 599px) {
  .privacy-intro h1 { font-size: 34px; }
  .privacy-summary, .privacy-section p, .privacy-section li, .privacy-section address { font-size: 17px; }
  .privacy-section { padding-block: 24px; }
  .privacy-apps { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .privacy-contents a { transition: none; }
}
@media print {
  .privacy-page { color: #111; background: #fff; }
  .privacy-page .header, .privacy-page .footer, .privacy-contents { display: none; }
  .privacy-main { padding: 0; }
  .privacy-page .container { max-width: none; padding: 0; }
  .privacy-layout { display: block; }
  .privacy-intro h1, .privacy-section h2, .privacy-section p, .privacy-section li, .privacy-section address, .privacy-section strong, .privacy-section a, .privacy-kicker, .privacy-summary, .privacy-date { color: #111 !important; }
}