.privacy-notice-page { padding-top: 260px; }
.privacy-notice-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 40px; margin: 40px 0; }
.privacy-notice-cards article { border-top: 1px solid #111; padding-top: 16px; }
.privacy-notice-cards h2 { font-size: 25px; line-height: 1.3; font-weight: 400; margin: 0 0 12px; }
.privacy-notice-cards p { font-size: 18px; line-height: 1.5; margin: 0; }
.privacy-notice-page .shop-legal-copy { max-width: 100%; }
.privacy-notice-page .shop-legal-copy > p { max-width: 880px; }
.privacy-table-scroll { max-width: 100%; overflow-x: auto; margin: 24px 0 32px; overscroll-behavior-x: contain; }
.privacy-table-scroll:focus-visible { outline: 2px solid #111; outline-offset: 4px; }
.privacy-table-scroll table { width: 100%; min-width: 720px; border-collapse: collapse; table-layout: fixed; font-size: 16px; line-height: 1.5; }
.privacy-table-scroll th, .privacy-table-scroll td { padding: 12px; border-bottom: 1px solid #ccc; text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.privacy-table-scroll th { border-bottom: 1px solid #111; font-weight: 700; }
.privacy-table-scroll td p { margin: 0 0 8px; }
.privacy-table-scroll td p:last-child { margin-bottom: 0; }
@media (max-width: 767px) {
    .privacy-notice-page { padding-top: 130px; }
    .privacy-notice-cards { grid-template-columns: minmax(0, 1fr); gap: 24px; }
    .privacy-notice-cards h2 { font-size: 23px; }
}
@media print {
    .privacy-table-scroll { overflow: visible; }
    .privacy-table-scroll table { min-width: 0; font-size: 10pt; }
}
