body[data-view="privacy"]{height:auto;min-height:100svh;grid-template-rows:auto minmax(0,1fr) 116px;background:var(--paper)}
body[data-view="privacy"]>header{min-height:100px;background:var(--blue)}
body[data-view="privacy"] .legal-main{display:block;height:auto;min-height:0;background:var(--paper);color:var(--blue);padding:clamp(32px,5vw,80px) clamp(20px,6vw,100px)}
.policy{max-width:880px;margin:0 auto;font-size:18px;line-height:1.7;overflow-wrap:anywhere}
.policy .policy-heading{display:block;min-height:0;padding:0;margin-bottom:44px;background:none}
.policy-date{font-size:13px;letter-spacing:.04em;margin:0 0 12px}
.policy h1{font-size:clamp(36px,5vw,64px);font-weight:400;line-height:1.15;letter-spacing:-.02em;margin:0 0 24px}
.policy-intro{font-size:clamp(19px,2vw,23px);line-height:1.6;margin:0}
.policy section{margin:0 0 36px}
.policy h2{font-size:clamp(23px,2.4vw,30px);line-height:1.3;font-weight:400;margin:0 0 14px}
.policy p{margin:0 0 16px}
.policy a{text-decoration:underline;text-underline-offset:3px}
.policy-table-wrap{max-width:100%;margin:24px 0;overflow-x:auto}
.policy table{border-collapse:collapse;width:100%;font-size:15px;line-height:1.6;table-layout:fixed}
.policy caption{text-align:left;padding-bottom:12px;font-size:16px}
.policy th,.policy td{padding:14px 12px;text-align:left;vertical-align:top;border:1px solid #06375d40;overflow-wrap:anywhere}
.policy th{background:#06375d0a;font-weight:700}
body[data-view="privacy"] footer{background:var(--blue);height:116px;min-height:0}
@media(max-width:600px){body[data-view="privacy"]{grid-template-rows:auto 1fr 100px}body[data-view="privacy"]>header{min-height:88px}.policy{font-size:16px}.policy table{font-size:12px}.policy th,.policy td{padding:10px 8px}.policy .policy-heading{margin-bottom:32px}body[data-view="privacy"] footer{height:100px}}
