.policy-hero{padding:clamp(64px,9vw,118px) max(24px,calc((100vw - 920px)/2)) 48px;background:var(--mist-2)}
.policy-hero h1{max-width:820px;font-size:clamp(2.7rem,7vw,5.4rem)}
.policy-document{max-width:920px;margin:0 auto;padding:56px 24px 96px}
.policy-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;margin:0 0 42px;padding:24px 28px;border:1px solid var(--line);border-radius:20px;background:#fff}
.policy-details div{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:9px 0}
.policy-details dt{font-weight:800;color:var(--ink)}
.policy-details dd{margin:0;color:#52656e}
.policy-note{margin:0 0 42px;padding:24px 28px;border-left:4px solid var(--teal);background:var(--mist-2)}
.policy-note h2{font-size:1.25rem;margin-bottom:10px}
.policy-note p{margin:0}
.policy-contents{margin-bottom:48px;padding-bottom:36px;border-bottom:1px solid var(--line)}
.policy-contents h2{font-size:1.45rem}
.policy-contents ol{columns:2;column-gap:40px;padding-left:22px}
.policy-contents li{break-inside:avoid;margin:8px 0}
.policy-section{scroll-margin-top:calc(var(--header) + 24px);margin-top:44px}
.policy-section h2{font-size:clamp(1.65rem,3vw,2.25rem)}
.policy-section li{margin:10px 0}
.policy-section a{color:var(--teal-dark);text-decoration:underline;text-underline-offset:3px}
.policy-address{margin-top:52px;padding-top:30px;border-top:1px solid var(--line)}
.policy-address h2{font-size:1.45rem}
.policy-address p{margin:6px 0}
@media (max-width:760px){.policy-details{grid-template-columns:1fr;padding:20px}.policy-details div{grid-template-columns:1fr;gap:2px}.policy-contents ol{columns:1}}
@media print{.site-header,.site-footer,.cookie-banner,.breadcrumbs,.skip-link{display:none!important}.policy-hero{padding:0 0 24px;background:none}.policy-document{max-width:none;padding:0}.policy-note,.policy-details{break-inside:avoid}.policy-section{break-inside:avoid-page}a{color:inherit!important;text-decoration:none!important}}
