/* Structured trust, policy, and methodology pages. */
.policy-page{width:min(1080px,calc(100% - 96px));padding-block:54px 104px;color:#000}
.policy-page a{color:var(--cyan-dark);font-weight:750;text-decoration-thickness:1px;text-underline-offset:3px}
.policy-page .policy-hero{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(360px,.97fr);gap:56px;align-items:center;padding:0 0 48px;border:0}
.policy-hero-copy h1{max-width:690px;margin:0 0 22px;color:#000;font-size:clamp(2.8rem,5.15vw,4.8rem)}
.policy-page .policy-hero-copy>p{max-width:680px;margin:0;color:#000;font-size:1.08rem;line-height:1.7}
.policy-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:30px 0 0}
.policy-facts div{min-width:0;padding:15px 16px;background:#eef8f5}
.policy-facts dt{color:#000;font-size:.68rem;font-weight:850}
.policy-facts dd{margin:4px 0 0;color:#000;font-size:.78rem;line-height:1.42}
.policy-illustration{margin:0;background:#fff}
.policy-illustration img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;object-position:center;background:#fff}
.policy-illustration figcaption{margin:13px 0 0;color:#000;font-size:.72rem;line-height:1.55}
.policy-page-nav{display:grid;grid-template-columns:145px minmax(0,1fr);gap:24px;align-items:start;padding:22px 24px;background:var(--cream)}
.policy-page-nav>strong{color:#000;font-size:.78rem}
.policy-page-nav>div{display:flex;flex-wrap:wrap;gap:8px 20px}
.policy-page-nav a{color:#000;font-size:.75rem;font-weight:700;text-decoration:none}
.policy-page-nav a:hover,.policy-page-nav a:focus-visible{color:var(--cyan-dark);text-decoration:underline;text-underline-offset:4px}
.policy-document{padding-top:26px}
.policy-page .policy-section{display:grid;grid-template-columns:minmax(210px,260px) minmax(0,1fr);gap:52px;padding:50px 0;border:0}
.policy-page .policy-section+.policy-section{margin-top:8px}
.policy-page .policy-section>:not(.policy-section-heading){grid-column:2}
.policy-section-heading{position:sticky;top:112px;align-self:start}
.policy-section-heading h2{margin:1px 0 10px;color:#000;font-size:1.55rem;line-height:1.12}
.policy-section-heading p{margin:0;color:#000;font-size:.76rem;line-height:1.55}
.policy-section>div:last-child,.policy-section>ol,.policy-section>p{min-width:0}
.policy-page .policy-section p,.policy-page .policy-section li{color:#000}
.policy-prose>*+*{margin-top:19px!important}
.policy-prose p{font-size:.96rem;line-height:1.78}
.policy-callout,.policy-warning{margin-top:26px;padding:22px 24px;background:#eef8f5}
.policy-warning{background:#fff3ee;border-left:4px solid var(--coral)}
.policy-callout strong,.policy-warning strong{display:block;margin-bottom:6px;color:#000;font-size:.82rem}
.policy-callout p,.policy-warning p{margin:0!important;font-size:.82rem;line-height:1.66}
.policy-card-grid{display:grid;gap:10px}
.policy-card-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.policy-card-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.policy-card-grid article{padding:24px;background:#f7f6f1}
.policy-card-grid article:nth-child(3n+2){background:#eef8f5}
.policy-card-grid h3{margin:0 0 10px;color:#000;font-size:1rem;line-height:1.25}
.policy-card-grid p{margin:0!important;font-size:.82rem;line-height:1.68}
.policy-note-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:27px}
.policy-note-grid div{padding:19px;background:#f7f6f1}
.policy-note-grid strong,.policy-note-grid span{display:block;color:#000}
.policy-note-grid strong{font-size:.78rem}
.policy-note-grid span{margin-top:5px;font-size:.75rem;line-height:1.55}
.policy-steps{display:grid;gap:10px;margin:0;padding:0!important;list-style:none}
.policy-steps li{display:grid;grid-template-columns:minmax(160px,.7fr) minmax(0,1.3fr);gap:24px;padding:19px 21px;background:#f7f6f1}
.policy-steps strong,.policy-steps span{color:#000;font-size:.82rem}
.policy-steps span{line-height:1.58}
.policy-flow{display:grid;gap:9px;margin:0;padding:0!important;list-style:none}
.policy-flow li{display:grid;grid-template-columns:38px minmax(0,1fr);gap:15px;align-items:start;padding:18px 20px;background:#f7f6f1}
.policy-flow li>span{display:grid;place-items:center;width:32px;height:32px;background:var(--mint);color:var(--cyan-dark);font-size:.72rem;font-weight:900}
.policy-flow h3{margin:0 0 5px;color:#000;font-size:.92rem}
.policy-flow p{margin:0!important;font-size:.78rem;line-height:1.55}
.policy-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.policy-comparison>div{padding:25px;background:#f7f6f1}
.policy-comparison>div+div{background:#eef8f5}
.policy-comparison h3{margin:0 0 12px;color:#000;font-size:1.02rem}
.policy-comparison p{margin:0!important;font-size:.84rem;line-height:1.65}
.policy-check-list,.policy-cross-list{display:grid;gap:11px;margin:0;padding:0;list-style:none}
.policy-check-list li,.policy-cross-list li{position:relative;padding-left:23px;font-size:.8rem;line-height:1.57}
.policy-check-list li:before,.policy-cross-list li:before{position:absolute;left:0;top:0;color:var(--cyan-dark);font-weight:900}
.policy-check-list li:before{content:"✓"}.policy-cross-list li:before{content:"×"}
.policy-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.policy-action-grid>a,.policy-action-grid>div{display:block;padding:22px;background:#f7f6f1;color:#000;text-decoration:none}
.policy-action-grid>a:hover,.policy-action-grid>a:focus-visible{background:#eef8f5}
.policy-action-grid strong,.policy-action-grid span{display:block;color:#000}
.policy-action-grid strong{font-size:.88rem}.policy-action-grid span{margin-top:7px;font-size:.78rem;line-height:1.6}
.policy-table-wrap{overflow-x:auto}
.policy-table{width:100%;border-collapse:collapse;background:#fff;color:#000;font-size:.77rem;line-height:1.55}
.policy-table caption{padding:0 0 11px;color:#000;font-size:.76rem;font-weight:750;text-align:left}
.policy-table th,.policy-table td{padding:16px 17px;border:1px solid #cbd4d3;text-align:left;vertical-align:top}
.policy-table thead th{background:#eef8f5;font-size:.72rem}
.policy-table tbody th{width:22%;background:#f7f6f1}
.policy-section>.policy-table-wrap+.policy-warning,.policy-section>.policy-table-wrap+p,.policy-section>.policy-flow+.policy-prose,.policy-section>.policy-card-grid+p,.policy-section>.policy-comparison+.policy-prose,.policy-section>.policy-action-grid+p{grid-column:2;margin-top:18px!important}
.policy-measure{display:grid;gap:20px}
.policy-formula{padding:24px;background:#10243e;color:#fff}
.policy-formula span,.policy-formula strong{display:block}
.policy-formula span{color:#83dfd7;font-size:.68rem;font-weight:800;text-transform:uppercase}.policy-formula strong{margin-top:6px;font-size:1.05rem;line-height:1.45}
.policy-reviewed{display:flex;justify-content:space-between;gap:20px;margin:22px 0 0;padding:18px 20px;background:#eef8f5;color:#000;font-size:.76rem}
.policy-related{margin-top:72px;padding:38px 40px;background:#f7f6f1}
.policy-related-heading{display:grid;grid-template-columns:.75fr 1.25fr;gap:35px;align-items:start}
.policy-related-heading h2{margin:0;color:#000;font-size:1.7rem}.policy-related-heading p{margin:0;color:#000;font-size:.84rem}
.policy-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:28px}
.policy-related-grid article{padding:22px;background:#fff}
.policy-related-grid h3{margin:0 0 8px;font-size:.93rem}.policy-related-grid h3 a{color:#000;text-decoration:none}.policy-related-grid h3 a:hover{text-decoration:underline;text-underline-offset:4px}
.policy-related-grid p{margin:0;color:#000;font-size:.76rem;line-height:1.55}

@media(max-width:900px){
  .policy-page{width:min(100% - 64px,1080px)}
  .policy-page .policy-hero{grid-template-columns:1fr;gap:34px}
  .policy-illustration{max-width:680px}
  .policy-page .policy-section{grid-template-columns:1fr;gap:24px}
  .policy-page .policy-section>:not(.policy-section-heading){grid-column:auto}
  .policy-section-heading{position:static}
  .policy-section>.policy-table-wrap+.policy-warning,.policy-section>.policy-table-wrap+p,.policy-section>.policy-flow+.policy-prose,.policy-section>.policy-card-grid+p,.policy-section>.policy-comparison+.policy-prose,.policy-section>.policy-action-grid+p{grid-column:auto}
  .policy-card-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .policy-page{width:calc(100% - 34px);padding-block:38px 72px}
  .policy-page .policy-hero{gap:28px;padding-bottom:34px}
  .policy-hero-copy h1{font-size:clamp(2.35rem,12vw,3.35rem)}
  .policy-page .policy-hero-copy>p{font-size:.96rem}
  .policy-facts,.policy-card-grid-2,.policy-card-grid-3,.policy-note-grid,.policy-comparison,.policy-action-grid,.policy-related-grid,.policy-related-heading{grid-template-columns:1fr}
  .policy-page-nav{grid-template-columns:1fr;gap:10px;padding:18px}
  .policy-page .policy-section{padding:37px 0}
  .policy-section-heading h2{font-size:1.35rem}
  .policy-steps li{grid-template-columns:1fr;gap:5px}
  .policy-table{min-width:680px}
  .policy-related{margin-top:52px;padding:26px 20px}
}
