.card h2.s{font-size:24px;line-height:28px;font-weight:700;margin:32px 0 0}
.card .sub{margin-top:6px;color:var(--text-body)}
.bump2{display:block;border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:12px;cursor:pointer;margin-top:12px;transition:border-color .2s,background-color .2s}
.bump2:has(input:checked){background:var(--secondary);border-color:var(--primary)}
.bump2 .top{display:flex;gap:12px;align-items:flex-start}
.bump2 img{width:92px;height:auto;border-radius:6px;border:1px solid var(--border);flex:none}
.bump2 .h{display:block;font-size:18px;line-height:22px;font-weight:700}
.bump2 .t{display:block;font-size:14px;line-height:18px;color:var(--text-body);margin:2px 0 10px}
.bump2 .checks li{align-items:flex-start}
.bump2 .add{align-items:center;margin-top:12px;padding-top:12px;border-top:1px solid var(--border);font-weight:600;font-size:16px;line-height:20px;color:#000}
.bump2 .add b{margin-left:auto}

/* offer page */
.obar{position:sticky;top:0;z-index:5;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;margin-top:-24px;box-shadow:0 0 0 100vmax #fff;clip-path:inset(0 -100vmax);border-bottom:1px solid var(--border)}
.obar span{font-size:12px;line-height:16px;color:var(--text-body)}
.obar b{display:block;font-size:18px;line-height:22px;color:var(--primary)}
.obar .btn{min-height:36px;padding:6px 16px;font-size:14px;border-radius:8px}
.ohero{background:var(--secondary);border-radius:12px;padding:20px 16px;text-align:center;margin-top:20px}
.ohero h1{font-size:28px;line-height:32px}
.ohero p{margin-top:8px}
.olist{list-style:none;margin:16px 0 0;padding:0}
.olist li{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--border);font-size:15px;line-height:19px}
.olist li span:first-child{font-size:24px;width:30px;text-align:center;flex:none}
.oprice{background:var(--secondary);border-radius:12px;padding:16px;margin-top:20px;position:relative}
.oprice::before{content:"";position:absolute;top:-9px;left:50%;width:18px;height:18px;background:var(--secondary);transform:translateX(-50%) rotate(45deg)}
.oprice b.t{display:block;font-size:20px;line-height:24px;font-weight:700;position:relative}
.oprice p{margin-top:6px;font-size:14px;line-height:18px}
.oprice .line{display:flex;align-items:center;gap:12px;margin-top:10px}
.oprice .line b{font-size:40px;line-height:44px;font-weight:700;color:var(--primary)}
.oprice .line span{font-size:14px;line-height:18px;color:var(--text-body)}
.card .btn.cta{margin-top:16px}
.band{background:var(--surface);box-shadow:0 0 0 100vmax var(--surface);clip-path:inset(0 -100vmax);padding:36px 0;margin-top:36px}
.band>h2,.plainsec>h2{font-size:28px;line-height:34px;font-weight:700;text-align:center;text-wrap:balance}
.band>h2 span,.plainsec>h2 span{color:var(--primary)}
.band .stack{padding-top:20px}
.band .icard{background:#fff}
.plainsec{padding-top:36px}
.ptrack{position:relative;height:12px;border-radius:999px;background:var(--secondary);margin:34px 0 8px}
.ptrack i{position:absolute;top:0;bottom:0;border-radius:999px;background:var(--primary)}
.ptrack em{position:absolute;top:-30px;transform:translateX(-50%);font:600 14px/18px var(--font);background:var(--primary);color:#fff;padding:3px 8px;border-radius:4px;white-space:nowrap}
.pscale{display:flex;justify-content:space-between;font-size:12px;color:var(--text-muted)}
.meals{display:flex;gap:8px;margin-top:14px}
.meals div{flex:1;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px;text-align:center;font-size:12px;line-height:16px;color:var(--text-muted)}
.meals b{display:block;font-size:15px;line-height:19px;color:#000}
.hl{display:flex;flex-direction:column;gap:8px;margin-top:20px}
.hl div{background:#fff;border:1px solid var(--border);border-radius:10px;padding:12px}
.hl b{display:flex;gap:8px;align-items:center;font-size:16px;line-height:20px;font-weight:700}
.hl p{font-size:13px;line-height:17px;color:var(--text-muted);margin:6px 0 0 30px}
.qa{background:#fff;border-radius:12px;margin-top:20px;overflow:hidden}
.qa details{border-bottom:1px solid var(--border);padding:16px}
.qa details:last-child{border-bottom:0}
.qa summary{font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:center}
.qa summary::-webkit-details-marker{display:none}
.qa summary::after{content:"+";font-size:26px;font-weight:400;line-height:20px;flex:none}
.qa details[open] summary::after{content:"–"}
.qa p{margin-top:10px;color:var(--text-body);font-size:15px;line-height:20px}
.seal{text-align:center;padding-top:40px}
.seal svg{width:150px;height:150px}
.seal h2{font-size:28px;line-height:34px;font-weight:700;margin-top:16px}
.seal p{margin:10px auto 0;max-width:24em}
.ofoot{text-align:center;font-size:13px;line-height:18px;color:var(--text-muted);padding:28px 0 0}
.ofoot p+p{margin-top:14px}

#paybox{margin-top:8px}
.paycard{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px}
.payhead{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:20px;line-height:24px}
.payhead button{border:0;background:none;color:var(--link);font:600 14px/18px var(--font);cursor:pointer;padding:6px 0;white-space:nowrap}
.payor{display:flex;align-items:center;gap:12px;color:var(--text-muted);font-size:14px}
.payor::before,.payor::after{content:"";flex:1;height:1px;background:var(--border)}
.payor[hidden]{display:none}
.paysub{font-size:16px;line-height:20px}
#paymount{min-height:120px}
.paysafe{text-align:center;font-size:12px;line-height:16px;color:var(--text-muted);margin-top:12px}
.paysafe::before{content:"🔒 "}
.btn[hidden]{display:none}
@keyframes ctapulse{0%{box-shadow:0 0 0 0 rgba(0,70,60,.45)}70%{box-shadow:0 0 0 14px rgba(0,70,60,0)}100%{box-shadow:0 0 0 0 rgba(0,70,60,0)}}
@keyframes ctabeat{0%,100%{transform:scale(1)}50%{transform:scale(1.025)}}
.card .btn.cta{animation:ctapulse 1.8s ease-out infinite,ctabeat 1.8s ease-in-out infinite}
.card .btn.cta:hover,.card .btn.cta:active{animation-play-state:paused}
.obar .btn.go{animation:ctapulse 1.8s ease-out infinite}
@media (prefers-reduced-motion:reduce){.card .btn.cta,.obar .btn.go{animation:none}}
