/* Privacy information follows the TPS visual system without hiding legal text. */
.policy-link-note{font-size:14px!important;line-height:1.65!important;color:#5e526a!important;margin:0 0 22px!important;max-width:65ch}
.policy-link-note a{color:#3c216b;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;font-weight:650}
.policy-link-note .policy-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.privacy-page .policy-hero{padding:32px 0 48px;border-bottom:1px solid #ded3e8;background:#fff}
.privacy-page .policy-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:14px;color:#65576e;margin-bottom:36px}
.privacy-page .policy-breadcrumb a{color:#3c216b}
.privacy-page .policy-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px 64px;align-items:end}
.privacy-page .policy-hero .eyebrow{font-size:12px;line-height:1.7;color:#715480;margin-bottom:16px;letter-spacing:.1em}
.privacy-page .policy-hero h1{font-size:clamp(46px,5.2vw,74px);line-height:1.06;letter-spacing:-.055em;margin:0 0 22px;text-wrap:balance}
.privacy-page .policy-hero h1 span{color:#3c216b}
.privacy-page .policy-lead{font-size:19px;line-height:1.65;color:#5e526a;max-width:42ch}
.privacy-page .policy-contact{padding:12px 0 12px 26px;border-left:2px solid #b69bcb;align-self:end}
.privacy-page .policy-contact p{font-size:14px;color:#65576e;margin-bottom:9px}
.privacy-page .policy-contact a{display:block;font-size:15px;line-height:1.6;color:#3c216b;padding-block:5px;overflow-wrap:anywhere}
.privacy-page .policy-contact a:first-of-type{font-weight:650}
.privacy-page .policy-layout{display:grid;grid-template-columns:245px minmax(0,760px);justify-content:space-between;gap:64px;padding-block:52px 20px;align-items:start}
.privacy-page .policy-sidebar{position:sticky;top:calc(var(--header) + 28px);max-height:calc(100dvh - var(--header) - 48px);overflow:auto;scrollbar-width:thin;padding:4px 12px 12px 4px}
.privacy-page .policy-contents>p{font-size:14px;font-weight:750;color:#3c216b;margin-bottom:15px}
.privacy-page .policy-contents ul{list-style:none;margin:0;padding:0;border-left:1px solid #ded3e8}
.privacy-page .policy-contents a{display:flex;align-items:center;min-height:40px;padding:8px 12px 8px 17px;font-size:14px;line-height:1.5;text-decoration:none;color:#65576e;border-left:2px solid transparent;margin-left:-1px}
.privacy-page .policy-contents a:hover,.privacy-page .policy-contents a:focus-visible{color:#3c216b;background:#f7f3fa;border-left-color:#7246a6}
.privacy-page .policy-copy{min-width:0;font-size:17px;line-height:1.85;color:#4f435b;overflow-wrap:anywhere}
.privacy-page .policy-copy .policy-section{padding:0 0 38px;margin:0 0 38px;border-bottom:1px solid #e6deec}
.privacy-page .policy-copy .policy-section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.privacy-page .policy-copy h2{font-size:clamp(27px,2.5vw,34px);line-height:1.22;letter-spacing:-.035em;color:#3c216b;margin:0 0 24px;scroll-margin-top:calc(var(--header) + 28px);text-wrap:pretty}
.privacy-page .policy-copy h3{font-size:20px;line-height:1.4;letter-spacing:-.015em;margin:28px 0 14px;color:#241c30;text-wrap:pretty}
.privacy-page .policy-copy p{font-size:inherit;line-height:inherit;max-width:none;margin:0 0 20px}
.privacy-page .policy-copy ul{margin:4px 0 24px;padding-left:24px}
.privacy-page .policy-copy li{padding-left:5px;margin:0 0 13px}
.privacy-page .policy-copy li::marker{color:#7246a6}
.privacy-page .policy-copy a{color:#3c216b;text-decoration-thickness:1px;text-underline-offset:3px}
.privacy-page .policy-appendix{padding-top:38px;margin-top:38px;border-top:1px solid #e6deec}
.privacy-page .policy-table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.privacy-page .policy-table-scroll table{width:100%;min-width:590px;border-collapse:collapse;font-size:16px;line-height:1.7}
.privacy-page .policy-table-scroll caption{text-align:left;font-size:20px;font-weight:650;color:#3c216b;padding:0 0 20px}
.privacy-page .policy-table-scroll th,.privacy-page .policy-table-scroll td{width:50%;padding:18px;text-align:left;vertical-align:top;border:1px solid #ded3e8}
.privacy-page .policy-table-scroll thead th{background:#f7f3fa;color:#3c216b;font-weight:700}
.privacy-page .policy-table-scroll tbody th{font-weight:400;background:#fff}
.privacy-page .policy-table-scroll ul{margin:0;padding-left:18px}
.privacy-page .policy-table-scroll li:last-child{margin-bottom:0}
.privacy-page .policy-table-hint{display:none}
.privacy-page .policy-end{display:flex;justify-content:flex-end;padding-block:18px 60px}
.privacy-page .policy-end a{font-size:14px;color:#3c216b;min-height:44px;display:inline-flex;align-items:center}
@media(max-width:1050px){.privacy-page .policy-layout{grid-template-columns:205px minmax(0,1fr);gap:36px}.privacy-page .policy-hero-grid{gap:28px}.privacy-page .policy-contact{max-width:265px}}
@media(max-width:760px){
 .privacy-page .policy-hero{padding-block:24px 32px}
 .privacy-page .policy-breadcrumb{margin-bottom:28px}
 .privacy-page .policy-hero-grid{grid-template-columns:1fr;gap:28px}
 .privacy-page .policy-hero .eyebrow{max-width:30ch}
 .privacy-page .policy-hero h1{font-size:clamp(43px,12vw,62px)}
 .privacy-page .policy-lead{font-size:17px}
 .privacy-page .policy-contact{max-width:none;padding:0 0 0 18px}
 .privacy-page .policy-contact a{min-height:44px;display:flex;align-items:center}
 .privacy-page .policy-layout{grid-template-columns:1fr;gap:34px;padding-top:30px}
 .privacy-page .policy-sidebar{position:static;max-height:none;padding:0;overflow:visible}
 .privacy-page .policy-contents ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 8px;border-left:0}
 .privacy-page .policy-contents a{margin:0;min-height:48px;padding:10px 8px;border-left:0;border-bottom:1px solid #e6deec;font-size:14px}
 .privacy-page .policy-copy{font-size:16px;line-height:1.85}
 .privacy-page .policy-copy h2{font-size:28px;line-height:1.25}
 .privacy-page .policy-copy h3{font-size:19px}
 .privacy-page .policy-copy .policy-section{padding-bottom:28px;margin-bottom:30px}
 .privacy-page .policy-table-hint{display:block;font-size:14px!important;line-height:1.6!important;color:#65576e}
 .privacy-page .policy-end{padding-bottom:36px}
}
@media(prefers-reduced-motion:reduce){html:has(.privacy-page){scroll-behavior:auto}}
@media print{
 .privacy-page{font:11pt/1.55 Inter,Arial,sans-serif;background:#fff;color:#000}
 .privacy-page .site-header,.privacy-page .site-footer,.privacy-page .policy-sidebar,.privacy-page .policy-end,.privacy-page .policy-breadcrumb,.privacy-page .skip-link{display:none!important}
 .privacy-page .wrap{width:100%;max-width:none;margin:0}
 .privacy-page .policy-hero{padding:0 0 24px}
 .privacy-page .policy-hero-grid{display:block}
 .privacy-page .policy-hero h1{font-size:32pt}
 .privacy-page .policy-contact{margin-top:18px;border-left:0;padding:0}
 .privacy-page .policy-layout{display:block;padding-top:24px}
 .privacy-page .policy-copy{font-size:11pt;line-height:1.6}
 .privacy-page .policy-copy h2{font-size:18pt;break-after:avoid}
 .privacy-page .policy-copy h3{font-size:13pt;break-after:avoid}
 .privacy-page .policy-copy p,.privacy-page .policy-copy li{orphans:3;widows:3}
 .privacy-page .policy-copy a{color:inherit;text-decoration:underline}
 .privacy-page .policy-table-hint{display:none}
 .privacy-page .policy-table-scroll{overflow:visible}
 .privacy-page .policy-table-scroll table{min-width:0;font-size:9pt}
 .privacy-page .policy-table-scroll th,.privacy-page .policy-table-scroll td{padding:8pt}
 .privacy-page .policy-table-scroll thead{display:table-header-group}
 .privacy-page .policy-table-scroll tr{break-inside:avoid}
}
