/* /policies/: one policy at a time, chosen from the menu */
.policy-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:60px;align-items:start}
.policy-menu{position:sticky;top:90px;min-width:0}
.policy-menu .aside-label{display:block;font-size:10px;font-weight:700;letter-spacing:1.4px;color:var(--muted);margin-bottom:12px}
.policy-menu ol{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.policy-menu li{border-bottom:1px solid var(--line)}
.policy-menu a{display:flex;gap:14px;align-items:baseline;padding:13px 12px 13px 0;font-size:13px;font-weight:600;color:var(--navy);line-height:1.45;transition:color .2s,padding .2s,background .2s}
.policy-menu a span{font-size:10px;font-weight:700;color:#7d8fa3;letter-spacing:.5px;flex:none}
.policy-menu a:hover{color:#087260}
.policy-menu a.active{background:var(--navy);color:#fff;padding-left:14px}
.policy-menu a.active span{color:var(--teal)}
.policy-help{margin-top:26px;padding:20px;background:var(--wash);font-size:12px;line-height:1.7}
.policy-help strong{display:block;color:var(--navy);font-size:13px}
.policy-help p{margin:6px 0 10px;color:var(--muted)}
.policy-help a{font-weight:700;color:#087260;overflow-wrap:anywhere}
.policy-main{min-width:0}
.policy-index h2{font-size:clamp(28px,3vw,42px);letter-spacing:-.04em;margin:16px 0 28px;color:var(--navy)}
.policy-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
.policy-index,.policy-doc{scroll-margin-top:96px;outline:none}

/* a policy document */
.policy-doc{max-width:860px;color:var(--ink)}
.policy-doc+.policy-doc{margin-top:70px;padding-top:50px;border-top:1px solid var(--line)}
.policies-js .policy-doc+.policy-doc{margin-top:0;padding-top:0;border-top:0}
.policies-js .policy-doc[hidden],.policies-js .policy-index[hidden]{display:none}
.policy-kicker{font-size:10px;font-weight:800;letter-spacing:1.6px;color:#087260;margin:0 0 14px}
.policy-doc h2{font-size:clamp(30px,3.4vw,48px);line-height:1.08;letter-spacing:-.045em;color:var(--navy);margin:0}
.policy-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;margin:20px 0 26px;padding-bottom:20px;border-bottom:1px solid var(--line);font-size:11px;font-weight:600;color:var(--muted)}
.policy-print{margin-left:auto;background:none;border:1px solid #afc0cb;padding:9px 14px;font:inherit;font-size:11px;font-weight:700;color:var(--navy);cursor:pointer}
.policy-print:hover{border-color:#087260;color:#087260}
.policy-intro{font-size:16px;line-height:1.85;color:var(--ink);margin:0 0 28px}
.policy-toc{margin:0 0 40px;padding:20px 24px;background:var(--wash);border-left:3px solid var(--teal)}
.policy-toc summary{cursor:pointer;font-size:11px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--navy)}
.policy-toc ol{columns:2;column-gap:30px;margin:14px 0 0;padding-left:20px;font-size:13px;line-height:1.6}
.policy-toc li{break-inside:avoid;margin-bottom:6px;color:var(--muted)}
.policy-toc a{color:var(--navy);font-weight:600}
.policy-toc a:hover{color:#087260;text-decoration:underline}
.policy-doc section{scroll-margin-top:96px;margin-bottom:34px}
.policy-doc h3{font-size:20px;letter-spacing:-.02em;color:var(--navy);margin:0 0 12px;line-height:1.3}
.policy-doc h3 span{color:#087260}
.policy-doc section p,.policy-doc section li{font-size:14px;line-height:1.85;color:#2b3d55}
.policy-doc section p{margin:0 0 14px}
.policy-doc section ul,.policy-doc section ol{margin:0 0 14px;padding-left:22px}
.policy-doc section li{margin-bottom:8px;padding-left:4px}
.policy-doc section ul li::marker{color:#087260}
.policy-doc section a{color:#087260;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.policy-doc strong{color:var(--navy)}
.policy-pager{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:50px 0 22px;padding-top:30px;border-top:1px solid var(--line)}
.policy-pager a{display:flex;flex-direction:column;gap:6px;padding:18px 20px;border:1px solid var(--line);font-size:14px;font-weight:700;color:var(--navy);transition:border-color .2s,background .2s}
.policy-pager a:hover{border-color:#087260;background:#ecfaf6}
.policy-pager small{font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}
.policy-pager .next{text-align:right;grid-column:2}
.policy-all{font-size:12px;font-weight:700;color:#087260}
.policy-all,.policy-pager{display:none}
.policies-js .policy-pager{display:grid}
.policies-js .policy-all{display:inline-block}

@media(max-width:1100px){.policy-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.policy-layout{grid-template-columns:240px minmax(0,1fr);gap:40px}}
@media(max-width:800px){
 .policy-layout{grid-template-columns:1fr;gap:28px}
 .policy-menu{position:static}
 .policy-menu ol{display:flex;gap:8px;overflow-x:auto;border:0;padding-bottom:6px;-webkit-overflow-scrolling:touch}
 .policy-menu li{border:0;flex:none}
 .policy-menu a{border:1px solid var(--line);padding:10px 14px;white-space:nowrap;font-size:12px}
 .policy-menu a.active{padding-left:14px}
 .policy-help{display:none}
}
@media(max-width:620px){
 .policy-cards{grid-template-columns:1fr}
 .policy-toc ol{columns:1}
 .policy-intro{font-size:15px}
 .policy-pager{grid-template-columns:1fr}
 .policy-pager .next{grid-column:auto}
 .policy-print{margin-left:0}
}
@media print{
 .topline,.jw-site-header,header,.hero,.policy-menu,.policy-index,.policy-pager,.policy-all,.policy-print,.policy-toc,footer,.jw-footer-services,.jw-policy-bar,.toast,.skip{display:none!important}
 .policy-layout{display:block;padding:0}
 .policy-doc section p,.policy-doc section li{font-size:11pt;color:#000}
 .policy-doc section{break-inside:auto}
 .policy-doc h3{break-after:avoid}
}
