.cfsl-pledge .cfsl-detail-intro { align-items: start; grid-template-columns: minmax(0,1.25fr) minmax(0,1fr); gap: 26px; }
.cfsl-site .cfsl-pledge .cfsl-detail-intro p { margin: 0 0 18px; color: #465e70; font-size: 15px; line-height: 1.85; }
.cfsl-pledge .cfsl-detail-poster { width: 100%; margin: 0 auto; padding: 8px; border-radius: 14px; background: #fff; }
.cfsl-site .cfsl-pledge .cfsl-detail-poster img { display: block; width: 100%; height: auto; border-radius: 8px; }
.cfsl-pledge #domestic, .cfsl-pledge #international { scroll-margin-top: 150px; }
.cfsl-pledge-tagline { margin-top: 24px; padding: 22px 26px; border-left: 4px solid #006cb5; border-radius: 10px; background: #e8f3fa; }
.cfsl-site .cfsl-pledge-tagline p { margin: 0; color: #006cb5; font-size: 17px; font-weight: 600; line-height: 1.8; }
.cfsl-site .cfsl-pledge-section > h2 { font-size: clamp(22px,2.1vw,27px); line-height: 1.4; }
.cfsl-pledge-points { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; list-style: none; padding: 0; margin: 0; counter-reset: pledge-point; }
.cfsl-pledge-points > li { counter-increment: pledge-point; position: relative; min-width: 0; padding: 22px 20px 22px 58px; border: 1px solid #dce8f0; border-radius: 12px; background: #f7fbfe; }
.cfsl-pledge-points > li::before { content: counter(pledge-point,decimal-leading-zero); display: grid; place-items: center; position: absolute; left: 14px; top: 22px; width: 30px; height: 30px; border-radius: 8px; background: #e1eef8; color: #006cb5; font-size: 12px; font-weight: 700; }
.cfsl-pledge-points strong { display: block; margin-bottom: 10px; color: #006cb5; font-size: 16px; line-height: 1.5; overflow-wrap: anywhere; }
.cfsl-site .cfsl-pledge-points p { margin: 0; color: #465e70; font-size: 14px; line-height: 1.85; overflow-wrap: anywhere; }
@media (max-width: 1100px) {
    .cfsl-pledge .cfsl-detail-intro { grid-template-columns: minmax(0,1fr); }
    .cfsl-pledge .cfsl-detail-poster { max-width: 440px; }
}
@media (max-width: 900px) {
    .cfsl-pledge-points { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 767px) {
    .cfsl-pledge .cfsl-detail-content { order: 0; }
    .cfsl-pledge .cfsl-detail-sidebar { order: 1; }
    .cfsl-pledge-points > li { padding: 20px 16px 20px 54px; }
    .cfsl-pledge-points > li::before { left: 12px; top: 20px; }
    .cfsl-pledge-tagline { padding: 20px 18px; }
    .cfsl-pledge .cfsl-detail-contact { flex-direction: column; align-items: stretch; }
    .cfsl-pledge .cfsl-detail-contact .cfsl-button { justify-content: center; }
}
