
.kt-policy-main{padding-bottom:104px}
.kt-policy__layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:40px;padding:62px 0 0;align-items:start}
.kt-policy__paper{background:#fff;color:#152940;padding:clamp(26px,4vw,64px);min-width:0;line-height:1.95;font-size:15px;letter-spacing:.035em}
.kt-policy__content>*:first-child{margin-top:0}
.kt-policy__content>h2,.kt-policy__pdf h2{font-size:23px;line-height:1.5;letter-spacing:.04em;font-weight:800;color:#112642;margin:52px 0 19px;padding-bottom:13px;border-bottom:1px solid #dbe4ef}
.kt-policy__content>h3{font-size:17px;font-weight:750;line-height:1.65;color:#1d3751;margin:29px 0 11px}
.kt-policy__paper p{margin:0 0 22px;line-height:2.05;overflow-wrap:anywhere}
.kt-policy__paper ul{list-style:disc outside;padding-left:1.5em;margin:12px 0 28px}
.kt-policy__paper li{padding-left:.2em;margin:0 0 10px;line-height:1.95}
body.kt-lower-page .kt-policy__paper a{color:#1763a3;text-decoration:underline;text-underline-offset:3px}
body.kt-lower-page .kt-policy__paper a:hover{text-decoration-color:#f06a20}
.kt-policy__paper table{border-collapse:collapse;width:100%;max-width:100%;display:block;overflow-x:auto}
.kt-policy__paper th,.kt-policy__paper td{border:1px solid #d5e1ef;padding:10px 12px;text-align:left;vertical-align:top}
.kt-policy__cards{display:grid;gap:14px}
.kt-policy__card{position:relative;display:flex;flex-direction:column;gap:12px;min-height:130px;padding:25px 54px 25px 26px;border:1px solid #cbd7e3;text-decoration:none!important;transition:border .2s,background .2s}
.kt-policy__card:hover{border-color:#2f77c4;background:#f3f7fc}
.kt-policy__card strong{font-size:18px;color:#16324f}
.kt-policy__card span{font-size:14px;color:#51657a}
.kt-policy__card i{position:absolute;right:22px;top:45%;font-style:normal;font-size:23px;color:#2974c6}
.kt-policy__nav{display:flex;flex-direction:column;position:sticky;top:120px;border-top:1px solid rgba(255,255,255,.18)}
.kt-policy__nav a{display:flex;justify-content:space-between;gap:12px;padding:18px 6px;border-bottom:1px solid rgba(255,255,255,.18);color:#d9e8f8;font-size:13px;text-decoration:none;line-height:1.6}
.kt-policy__nav a:hover{color:#5ca7ff}
.kt-policy__pdf{margin-top:45px;padding-top:16px;border-top:1px solid #dbe4ef}
.kt-policy__pdf>a{display:inline-block;border:1px solid #1a70b3;padding:15px 20px;margin:6px 0 24px;text-decoration:none;font-weight:700}
.kt-policy__pdf-frame{display:block;width:100%;height:660px;border:1px solid #cbd7e3;background:#f6f9fc}
.kt-policy__date,.kt-policy__publisher,.kt-policy__source-note{font-size:13px;color:#52667c}
@media(max-width:1023px){.kt-policy__layout{display:flex;flex-direction:column;gap:24px;padding-top:30px}.kt-policy__paper{width:100%;padding:32px}.kt-policy__nav{position:static;width:100%}}
@media(max-width:767px){.kt-policy-main{padding-bottom:65px}.kt-policy__paper{padding:24px 19px;font-size:14px}.kt-policy__content>h2,.kt-policy__pdf h2{font-size:19px;margin-top:38px}.kt-policy__content>h3{font-size:16px}.kt-policy__cards{gap:12px}.kt-policy__card{padding:21px 42px 21px 20px}.kt-policy__card strong{font-size:16px}.kt-policy__pdf-frame{height:480px}}

/* 2026-10-18: avoid isolated final characters in policy-page mobile headings. */
@media (max-width:767px) {
  body.kt-policy-page .kt-page-title h1 {
    font-size: clamp(26px, 7.2vw, 29px);
    line-height: 1.46;
    letter-spacing: .015em;
    text-wrap: balance;
  }
}

/* 2026-10-18 policy link integration: all insurance policies are reachable. */
.kt-policy__nav a.is-current { color: #fff; border-left: 2px solid #4fa4ff; padding-left: 12px; font-weight: 700; }
.kt-policy__nav .kt-policy__nav-link--child { padding-left: 18px; font-size: 12px; color: #b8cadd; }
.kt-policy__nav .kt-policy__nav-link--child.is-current { padding-left: 16px; color: #fff; }
.kt-policy__nav a:focus-visible { outline: 2px solid #86baff; outline-offset: 2px; }

/* FD policy sidebar link: two intentional lines with no mid-phrase wrap. */
.kt-policy__nav .kt-policy__nav-fd-label { min-width: 0; }
.kt-policy__nav .kt-policy__nav-fd-label > span { display: block; white-space: nowrap; }
