/* Large, quiet promise numbers break the frame while the actual text stays readable. */
#promises .promises{margin:88px 16px 0;gap:88px}
#promises .promises>.promise{position:relative;isolation:isolate;overflow:visible;padding-top:54px}
#promises .promise-watermark{position:absolute;top:-53px;left:-25px;display:flex;align-items:baseline;gap:11px;z-index:2;color:var(--brand-red);opacity:.12;pointer-events:none;user-select:none;transform:none;white-space:nowrap}
#promises .promise-watermark>b{font-family:Arial,Helvetica,sans-serif;font-size:154px;font-weight:800;font-style:normal;letter-spacing:-.075em;line-height:1}
#promises .promise-overview,#promises .promise-body{position:relative;z-index:1}
#promises .promise-top small{letter-spacing:.055em}
#promises .promise h3{margin-top:20px}
@media(max-width:750px){
 #promises .promises{margin:72px 8px 0;gap:74px}
 #promises .promises>.promise{padding-top:84px}
 #promises .promise-watermark{top:-43px;left:-15px;gap:8px}
 #promises .promise-watermark>b{font-size:122px}
 #promises .promise-top{gap:9px}
 #promises .promise-top small{letter-spacing:0}
}
@media(max-width:380px){
 #promises .promise-watermark>b{font-size:112px}
 #promises .promises>.promise{padding-top:76px}
 #promises .promise-silhouette{width:58px;height:46px}
}

/* A strong section title, quieter policy headlines, and scannable action rows. */
#promises>.heading{margin-top:20px;margin-bottom:30px;line-height:1.2;letter-spacing:-.035em}
#promises .promise-heading-intro{font-size:clamp(28px,3.2vw,38px);font-weight:700;color:#555}
#promises .promise-heading-main{display:inline-block;position:relative;isolation:isolate;margin-top:14px;font-size:clamp(47px,5.67vw,68px);font-weight:900;color:var(--brand-red);line-height:1.25}
#promises .promise-heading-main:after{content:"";position:absolute;z-index:-1;left:3%;right:3%;bottom:1px;height:10px;border-radius:5px;background:#ffedb5}
#promises>.lead{max-width:780px;line-height:2}
#promises .promises>.promise{padding:62px 44px 36px}
#promises .promise-top{gap:24px;min-height:100px}
#promises .promise-top small{font-size:21px;line-height:1.6;font-weight:700;color:#626262}
#promises .promise-silhouette{width:144px;height:100px}
#promises .promise h3{font-size:clamp(29px,3.5vw,40px);font-weight:800;line-height:1.5;color:#4d4d4d;margin:16px auto 20px;letter-spacing:-.025em}
#promises .promise-overview>p{max-width:680px;font-size:16px;line-height:1.95}
#promises .promise-body{max-width:850px;margin:28px auto 0}
#promises .promise-points{display:block;list-style:none;margin:0;padding:0;font-size:16px;line-height:1.9;border-top:1px solid #eadfd9}
#promises .promise-points li{position:relative;padding:23px 12px 23px 46px;margin:0;border-bottom:1px solid #eadfd9}
#promises .promise-points li:before{content:"";position:absolute;left:9px;top:29px;width:10px;height:17px;border:solid var(--brand-red);border-width:0 2px 2px 0;transform:rotate(45deg)}
#promises .promise-points strong{font-weight:700;color:#555}
#promises .promise-links{padding-top:25px;gap:10px 24px}
#promises .promise-links a{font-size:14px;line-height:1.7}
@media(max-width:750px){
 #promises>.heading{margin-bottom:24px}
 #promises .promise-heading-intro{font-size:26px}
 #promises .promise-heading-main{font-size:clamp(40px,11.25vw,58px);margin-top:12px}
 #promises .promise-heading-main:after{height:8px}
 #promises>.lead{font-size:14px;text-align:left}
 #promises .promises>.promise{padding:82px 20px 28px}
 #promises .promise-top{flex-direction:column-reverse;gap:12px}
 #promises .promise-top small{font-size:18px;letter-spacing:0}
 #promises .promise-silhouette{width:128px;height:88px}
 #promises .promise h3{font-size:26px;margin-top:18px;line-height:1.55}
 #promises .promise-overview>p{font-size:15px;text-align:left}
 #promises .promise-body{margin-top:24px}
 #promises .promise-points{font-size:15px;line-height:1.95}
 #promises .promise-points li{padding:20px 0 20px 30px}
 #promises .promise-points li:before{left:3px;top:27px;width:8px;height:13px}
 #promises .promise-links{justify-content:flex-start;gap:12px}
}
@media(max-width:380px){
 #promises .promises{margin-inline:0}
 #promises .promises>.promise{padding-inline:16px}
 #promises .promise-heading-intro{font-size:24px}
 #promises .promise-heading-main{font-size:40px}
 #promises .promise-top small{font-size:17px}
 #promises .promise h3{font-size:24px}
}

/* Give the promise itself a warm stage and a clear, readable nameplate. */
#promises .promise-overview{padding:24px 24px 30px;border-radius:8px;background:linear-gradient(180deg,#fff6eb 0%,#fffaf5 72%,#fff 100%)}
#promises .promise-top{gap:22px;min-height:80px}
#promises .promise-top small{display:inline-block;padding:11px 20px;background:var(--brand-red);color:#fff;border-radius:5px;font-size:24px;font-weight:800;line-height:1.5;letter-spacing:.02em}
#promises .promise-silhouette{width:112px;height:78px}
#promises .promise h3{margin:22px auto 24px;font-size:44px;line-height:1.5}
#promises .promise-claim-intro{font-size:.72em;color:#555;font-weight:700}
#promises .promise-claim-main{color:var(--brand-red);font-style:normal;font-weight:900;background:linear-gradient(transparent 80%,#ffedb5 80%,#ffedb5 94%,transparent 94%);box-decoration-break:clone;-webkit-box-decoration-break:clone}
#promises .promise-overview>p{margin-top:18px}
#promises .promise-body{margin-top:12px}
@media(max-width:750px){
 #promises .promise-overview{margin-inline:-8px;padding:20px 10px 24px}
 #promises .promise-top{gap:16px}
 #promises .promise-top small{font-size:19px;padding:10px 13px;letter-spacing:0}
 #promises .promise-silhouette{width:104px;height:72px}
 #promises .promise h3{font-size:31px;line-height:1.5;margin:24px auto}
 #promises .promise-claim-intro{font-size:22px}
 #promises .promise-overview>p{margin-top:18px}
}
@media(max-width:380px){
 #promises .promise-top small{font-size:17px;padding-inline:10px}
 #promises .promise h3{font-size:28px}
 #promises .promise-claim-intro{font-size:20px}
}
