.policy-header,.policy-main,.policy-footer{width:calc(100% - 48px);max-width:850px;margin-inline:auto}
.policy-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:28px;border-bottom:2px solid var(--gold)}
.policy-header .brand-name{display:block}.policy-header .text-link{flex-shrink:0}
.policy-main{padding-block:64px 72px;font-size:1.0625rem;line-height:1.75;overflow-wrap:anywhere}
.policy-main .eyebrow{font-size:.875rem}.policy-main h1{font-size:clamp(2.6rem,7vw,4.5rem);color:var(--teal);line-height:1.1;letter-spacing:-.025em}
.policy-intro{margin-top:28px}.policy-main section{margin-top:40px}.policy-main h2{font-size:1.875rem;line-height:1.25;letter-spacing:-.015em;margin-bottom:16px}
.policy-main a{color:var(--teal);text-underline-offset:3px}.policy-contact{padding:28px;border-left:4px solid var(--gold);background:var(--mint)}
.policy-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;padding-block:24px 40px;border-top:1px solid #ccdcd5;font-size:.875rem;color:var(--teal)}
@media(max-width:520px){.policy-header{align-items:flex-start;gap:16px}.policy-header .brand{align-items:center}.policy-header .brand-name{font-size:1.5rem}.policy-header .brand-name>span{max-width:110px}.policy-header .text-link{max-width:90px;font-size:.875rem}.policy-main{padding-top:40px}.policy-main h1{font-size:2.6rem}.policy-main h2{font-size:1.6rem}.policy-contact{padding:20px}.policy-header .brand img{width:56px;height:56px}}
@media print{.policy-header .text-link,.policy-footer{display:none}.policy-main{padding-block:24px;font-size:11pt}.policy-main h1{font-size:28pt}.policy-main h2{font-size:17pt}.policy-main section{break-inside:avoid}}
