.policy-page{max-width:960px;margin-inline:auto;padding-block:clamp(48px,7vw,100px);color:#252525;overflow-wrap:anywhere}
.policy-page h1{font-size:clamp(2.2rem,6vw,4rem);line-height:1.12;margin:12px 0 24px}
.policy-page h2{font-size:clamp(1.25rem,3vw,1.65rem);line-height:1.35;margin:36px 0 12px}
.policy-page p,.policy-page dd{font-size:1rem;line-height:1.8}
.policy-date{color:#595959}.policy-notice{background:#f5f5f5;border-left:4px solid #c4161d;padding:20px}
.policy-page a,.policy-settings{color:#b5121b;text-decoration:underline;text-underline-offset:3px}
.policy-settings{font:inherit;background:transparent;border:0;padding:8px 4px;min-height:44px;cursor:pointer}
.policy-storage{background:#f5f5f5;padding:24px}.policy-storage dt{font-weight:700;margin-top:16px}.policy-storage dt:first-child{margin-top:0}.policy-storage dd{margin:4px 0 0}.policy-storage code{overflow-wrap:anywhere}
.cookie-consent{background:#fff;color:#252525;border-top:4px solid #c4161d;box-shadow:0 -8px 30px #0002;padding:24px clamp(16px,4vw,56px);position:sticky;bottom:0;z-index:100;display:flex;align-items:center;gap:24px;flex-wrap:wrap;max-height:80vh;overflow:auto}
.cookie-consent[hidden]{display:none}.cookie-consent__copy{flex:1 1 400px;min-width:0}.cookie-consent h2{font-size:1.25rem;line-height:1.4;margin:0 0 8px}.cookie-consent p{font-size:.95rem;line-height:1.6;margin:0}.cookie-consent a{color:#b5121b;text-decoration:underline;text-underline-offset:3px}
.cookie-consent__actions{display:flex;flex:0 1 auto;gap:12px;flex-wrap:wrap}.cookie-consent button{min-height:48px;padding:12px 20px;border:2px solid #292929;background:#292929;color:#fff;font:inherit;font-weight:700;cursor:pointer;border-radius:4px}.cookie-consent button[data-choice="optional"]{background:#b5121b;border-color:#b5121b}.cookie-consent button:hover{filter:brightness(.85)}
.cookie-consent :focus-visible,.policy-page :focus-visible{outline:3px solid #b5121b;outline-offset:4px}.cookie-consent h2:focus{outline:2px solid #292929;outline-offset:3px}
.cookie-consent-status{margin:0;background:#f5f5f5;color:#252525;padding:16px 24px;font-size:.95rem;line-height:1.6;overflow-wrap:anywhere}.cookie-consent-status:empty{display:none}
@media(max-width:600px){.cookie-consent{padding:16px;gap:16px}.cookie-consent__actions{width:100%}.cookie-consent button{flex:1 1 160px}.policy-page{padding-inline:20px}.policy-storage{padding:16px}}
@media(prefers-reduced-motion:reduce){.cookie-consent,.cookie-consent *{scroll-behavior:auto;transition:none;animation:none}}
