.utility-page {background:#f7f5ee;color:#243c32}
.utility-header {position:static;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px clamp(20px,5vw,72px);border-bottom:1px solid #d7ded6}
.utility-header a:last-child {font-size:14px;text-decoration:underline;text-underline-offset:5px}
.utility-main {max-width:880px;margin:auto;padding:72px 24px 96px}
.utility-main h1 {font-size:clamp(30px,5vw,48px);line-height:1.5;margin:12px 0 24px;letter-spacing:.04em}
.utility-main .intro {font-size:18px;line-height:1.9}
.utility-main .updated {font-size:14px;color:#536358}
.utility-toc {display:flex;flex-wrap:wrap;gap:12px 24px;padding:24px 0;margin:32px 0;border-block:1px solid #c9d3c9}
.utility-toc a,.policy-section a:not(.line-button),.utility-footer a {text-decoration:underline;text-underline-offset:4px}
.policy-section {padding:24px 0;scroll-margin-top:24px}
.policy-section h2 {font-size:25px;line-height:1.6;margin:0 0 18px}
.policy-section p,.policy-section li {font-size:16px;line-height:1.95}
.policy-section ul {padding-left:1.5em;list-style:disc}
.policy-section li {margin:8px 0}
.utility-contact {background:#e8eee4;padding:28px;margin-top:32px}
.utility-contact a {overflow-wrap:anywhere}
.utility-actions {display:flex;flex-wrap:wrap;gap:16px;margin:32px 0}
.utility-actions a {display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:14px 24px;border:1px solid #31513f;text-decoration:none}
.utility-actions .primary {background:#244633;color:white}
.utility-footer {border-top:1px solid #c9d3c9;padding:28px 24px;text-align:center;display:flex;justify-content:center;flex-wrap:wrap;gap:16px 28px;font-size:14px}
.error-code {color:#50634f;font-size:18px;letter-spacing:.14em}
.error-page .utility-main {max-width:920px;min-height:65vh}
.footer-policy {text-decoration:underline;text-underline-offset:4px}
@media(max-width:600px){.utility-header{align-items:flex-start;padding:20px;gap:16px}.utility-header a:last-child{max-width:130px;font-size:13px}.utility-header .brand small{font-size:10px}.utility-main{padding:44px 20px 64px}.utility-main .intro{font-size:16px}.utility-toc{gap:12px 18px}.policy-section h2{font-size:22px}.utility-actions{flex-direction:column}.utility-actions a{width:100%}.utility-contact{padding:22px}.footer-end{flex-wrap:wrap;gap:16px}.footer-policy{font-size:13px}}

@media(max-width:600px){.utility-header a:last-child{max-width:150px;line-height:1.6;text-wrap:balance}.utility-header .brand{gap:10px}.utility-header .brand strong{font-size:28px}.utility-contact h2{font-size:24px;letter-spacing:.04em;line-height:1.65}.error-page h1{font-size:30px}}
