.privacy-page { --policy-blue: #005bd8; color: #405579; }
.privacy-page h1, .privacy-page h2, .privacy-page h3 { font-family: "Inter", Arial, sans-serif; letter-spacing: -.035em; color: #061d43; }
.privacy-page .button { background: linear-gradient(115deg, #0065ed, #004bbd); border-color: #0055cf; box-shadow: 0 8px 22px rgb(0 91 216 / 12%); }
.privacy-hero { position: relative; overflow: hidden; padding: 42px 0 36px; background: linear-gradient(115deg, #edf4f9, #f7fafc 62%, #edf3f8); }
.privacy-hero .shell { position: relative; z-index: 1; }
.privacy-hero .eyebrow { display: flex; align-items: center; gap: 16px; margin-bottom: 18px; font-size: .75rem; letter-spacing: .15em; }
.privacy-hero .eyebrow::after { order: -1; width: 48px; height: 2px; margin: 0; }
.privacy-breadcrumb { display: flex; gap: 8px; margin-bottom: 8px; color: #183d70; font-size: .875rem; }
.privacy-breadcrumb a { text-decoration: none; }
.privacy-hero h1 { max-width: none; font-size: clamp(2.5rem, 4vw, 3.5rem); margin-bottom: 10px; }
.privacy-subtitle { margin-bottom: 8px; font-size: clamp(1.1rem, 1.8vw, 1.4rem); }
.privacy-updated { margin: 0; font-size: .875rem; }
.privacy-grid-art { position: absolute; inset: 0 0 0 60%; opacity: .3; background-image: linear-gradient(#91b3cc 1px, transparent 1px), linear-gradient(90deg, #91b3cc 1px, transparent 1px); background-size: 52px 52px; transform: skewY(-25deg) translate(70px, 35px); mask-image: linear-gradient(90deg, transparent, black); pointer-events: none; }
.privacy-layout { display: grid; grid-template-columns: minmax(0, 1fr) 296px; align-items: start; gap: 42px; padding-block: 30px 46px; }
.policy-introduction { font-size: 1.125rem; line-height: 1.55; margin: 0 0 22px; }
.policy-section { display: grid; grid-template-columns: 54px minmax(0, 1fr); gap: 16px; border-top: 1px solid #d7e3ed; padding: 22px 0; scroll-margin-top: 120px; }
.policy-number { color: var(--policy-blue); font-size: 1.75rem; font-weight: 750; line-height: 1.2; }
.policy-section h2 { font-size: 1.45rem; line-height: 1.25; margin: 0 0 10px; }
.policy-section p { margin-bottom: 10px; line-height: 1.55; }
.policy-section p:last-child { margin-bottom: 0; }
.policy-section ul { padding-left: 24px; margin: 0 0 10px; line-height: 1.6; }
.policy-section li::marker { color: var(--policy-blue); }
.policy-link { display: inline-flex; align-items: center; gap: 12px; padding: 4px 0; border: 0; background: none; color: #0057cc; font: inherit; text-align: left; text-decoration: none; cursor: pointer; }
.policy-link:hover { text-decoration: underline; text-underline-offset: 4px; }
.policy-link span { transition: transform .2s ease; }
.policy-link:hover span { transform: translateX(4px); }
.policy-note { padding: 12px 16px; border-left: 2px solid #e4a053; background: #f6f8fb; font-size: .875rem; }
.privacy-aside { align-self: stretch; }
.privacy-aside-sticky { position: sticky; top: 120px; }
.policy-toc { padding: 22px 18px; border: 1px solid #d8e4ee; border-radius: 4px; }
.policy-toc h2, .privacy-choice-card h2 { margin-bottom: 16px; font-size: 1.2rem; }
.policy-toc ol { list-style: none; margin: 0; padding: 0; }
.policy-toc a { position: relative; display: flex; gap: 18px; padding: 7px 6px; color: #405579; text-decoration: none; font-size: .875rem; line-height: 1.4; }
.policy-toc a[aria-current], .policy-toc a:hover { color: #0057cc; }
.policy-toc a[aria-current]::before { content: ""; position: absolute; top: 7px; bottom: 7px; left: -10px; width: 3px; background: var(--orange); }
.privacy-choice-card, .privacy-contact { margin-top: 18px; padding: 24px; border-radius: 4px; background: linear-gradient(120deg, #e9f3ff, #f1f7fc); }
.privacy-choice-card svg { display: block; margin-bottom: 14px; color: #0057cc; }
.privacy-choice-card p { margin-bottom: 12px; font-size: .9375rem; line-height: 1.5; }
.privacy-choice-card .policy-link { display: flex; font-size: .9375rem; }
.privacy-contact h3 { margin-bottom: 10px; font-size: 1.1rem; }
.privacy-email { color: #0057cc; font-weight: 650; overflow-wrap: anywhere; }
.privacy-email span, .privacy-pending { font-size: .8125rem; font-weight: 400; color: #405579; }
.privacy-footer-grid { display: grid; grid-template-columns: 1.6fr 1fr .7fr; gap: 60px; }
.privacy-footer-grid h2 { color: white; font-size: 1rem; margin-bottom: 12px; }
.privacy-footer-grid a, .privacy-footer-grid button { display: block; color: #d7e3f3; font: inherit; font-size: .875rem; text-decoration: none; }
.privacy-footer-grid button { background: none; border: 0; padding: 4px 0; text-align: left; cursor: pointer; }
.privacy-footer-grid a:hover, .privacy-footer-grid button:hover { text-decoration: underline; }
.privacy-explore { display: grid; grid-template-columns: 1fr 1fr; gap: 3px 26px; }
.privacy-footer-grid .footer-brand p { color: #d7e3f3; font-size: .875rem; }
.privacy-copyright { margin-top: 28px; padding-top: 14px; border-top: 1px solid #354358; font-size: .8125rem; }
@media (max-width: 1000px) { .privacy-layout { grid-template-columns: minmax(0, 1fr) 265px; gap: 26px; } .policy-section { grid-template-columns: 38px minmax(0, 1fr); gap: 12px; } }
@media (max-width: 760px) { .privacy-layout { grid-template-columns: 1fr; } .privacy-aside { grid-row: 1; } .privacy-aside-sticky { position: static; } .policy-toc ol { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; } .privacy-choice-card { display: none; } .privacy-footer-grid { grid-template-columns: 1fr 1fr; gap: 30px; } .privacy-footer-grid > :first-child { grid-column: 1 / -1; } .privacy-hero { padding-block: 30px; } }
@media (max-width: 440px) { .privacy-page .shell { width: calc(100% - 36px); } .policy-toc ol { grid-template-columns: 1fr; } .policy-section { grid-template-columns: 1fr; gap: 8px; } .privacy-footer-grid { grid-template-columns: 1fr; } .privacy-contact { padding: 18px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } .policy-link span { transition: none; } }
