/* Keep the shared footer compact and readable at the narrowest supported width. */
@media (max-width:767px) {
  html:lang(en) body #sb-stories .person { display:flex!important; align-items:center!important; gap:12px!important; }
  html:lang(en) body #sb-stories .person>p { margin:0!important; padding:0!important; flex:0 0 48px!important; }
  html:lang(en) body #sb-stories .person img.avatar { width:48px!important; height:48px!important; max-width:none!important; object-fit:cover!important; border-radius:50%!important; display:block!important; }
  html:lang(en) body #sb-stories .person>div { min-width:0; }
  html:lang(en) body .elementor.elementor-740 #setboxfooter,
  html:lang(en) body #setboxfooter { width:calc(100% - 28px)!important; margin:28px auto 0!important; }
  html:lang(en) body #setboxfooter #sb-free-forever .banner {
    padding:22px 20px!important; gap:20px!important; border-radius:24px!important;
    grid-template-columns:minmax(0,1fr)!important; box-shadow:0 12px 30px #6400ac0b!important;
  }
  html:lang(en) body #sb-free-forever .eyebrow { font-size:9px!important; line-height:1.5!important; letter-spacing:1.3px!important; gap:8px!important; }
  html:lang(en) body #sb-free-forever .eyebrow img { width:20px!important; height:24px!important; flex-shrink:0!important; }
  html:lang(en) body #sb-free-forever h2 { font-size:28px!important; line-height:1.18!important; letter-spacing:-.8px!important; margin:12px 0 14px!important; }
  html:lang(en) body #sb-free-forever .lead { font-size:14px!important; line-height:1.7!important; margin:0 0 16px!important; }
  html:lang(en) body #setboxfooter #sb-free-forever .benefits {
    display:grid!important; grid-template-columns:minmax(0,1fr)!important;
    column-gap:8px!important; row-gap:10px!important; align-items:start!important;
    font-size:12px!important; line-height:1.6!important;
  }
  html:lang(en) body #setboxfooter #sb-free-forever .sbf-benefit-row { display:grid!important; grid-template-columns:20px minmax(0,1fr)!important; gap:8px!important; align-items:start!important; }
  html:lang(en) body #sb-free-forever .sbf-benefit-label,html:lang(en) body #sb-free-forever .sbf-benefit-label span { display:block!important; }
  html:lang(en) body #sb-free-forever .benefits>span { display:block!important; }
  html:lang(en) body #sb-free-forever .check { width:20px!important; height:20px!important; line-height:20px!important; margin:0!important; }
  html:lang(en) body #sb-free-forever .limit { font-size:10px!important; line-height:1.5!important; margin:10px 0 0 28px!important; }
  html:lang(en) body #setboxfooter #sb-free-forever .action { padding-top:18px!important; border-top:1px solid #ecddf5!important; }
  html:lang(en) body #setboxfooter #sb-free-forever .forever { display:flex!important; justify-content:center!important; align-items:baseline!important; gap:8px!important; font-size:42px!important; line-height:1.1!important; margin:0!important; white-space:nowrap!important; }
  html:lang(en) body #sb-free-forever .forever small { font-size:13px!important; line-height:1!important; }
  html:lang(en) body #sb-free-forever .plan { font-size:11px!important; margin:6px 0 14px!important; }
  html:lang(en) body #sb-free-forever .action>p { margin:0!important; }
  html:lang(en) body #sb-free-forever .action>p.plan { margin:6px 0 14px!important; }
  html:lang(en) body #sb-free-forever a.button {
    display:flex!important; width:100%!important; min-height:46px!important; height:auto!important;
    padding:12px 10px!important; border-radius:9px!important; font-size:13px!important;
    line-height:22px!important; gap:10px!important; white-space:nowrap!important;
    box-shadow:none!important; justify-content:center!important;
  }
  html:lang(en) body #sb-free-forever .button .sbf-arrow { font-size:18px!important; line-height:22px!important; }
  html:lang(en) body #sb-free-forever .action>p.assurance { font-size:10px!important; line-height:1.5!important; margin:10px 0 0!important; }
  html:lang(en) body #setboxfooter #sb-free-forever .channels { display:grid!important; grid-template-columns:repeat(6,minmax(0,1fr))!important; gap:12px 8px!important; justify-items:center!important; align-items:center!important; margin:18px 0 0!important; }
  html:lang(en) body #sb-free-forever .channels img { display:block!important; width:24px!important; height:24px!important; padding:0!important; border:0!important; border-radius:0!important; background:transparent!important; object-fit:contain!important; }
}

/* Close the testimonial section with one aligned CTA, then a modest banner gap. */
@media (max-width:767px) {
  html:lang(en) body #sb-stories#sb-stories#sb-stories { padding-bottom:0!important; }
  html:lang(en) body #sb-stories .bottom {
    display:flex!important; flex-direction:column!important; align-items:stretch!important;
    text-align:center!important; gap:16px!important; margin:24px 0 0!important; padding:0!important;
  }
  html:lang(en) body #sb-stories .bottom h3 { margin:0 0 8px!important; }
  html:lang(en) body #sb-stories .bottom p { margin:0!important; }
  html:lang(en) body #sb-stories .bottom .cta {
    display:flex!important; align-items:center!important; justify-content:center!important;
    width:100%!important; box-sizing:border-box!important; min-height:46px!important;
    padding:12px 16px!important; margin:0!important; gap:10px!important; line-height:22px!important;
  }
  html:lang(en) body .elementor.elementor-740 #setboxfooter,
  html:lang(en) body #setboxfooter { margin-top:24px!important; }
}

@media (max-width:767px) {
  html:lang(en) body .e-con.e-parent:has(#sb-stories) { padding-bottom:0!important; }
  html:lang(en) body .elementor.elementor-740 #setboxfooter { top:0!important; }
  html:lang(en) body #setboxfooter .elementor-widget-container>p:has(>style) { display:none!important; margin:0!important; }
  html:lang(en) body #setboxfooter .elementor-widget-container>p:empty { display:none!important; margin:0!important; }
}

/* Approved mobile accordion. Desktop retains the original footer. */
#sbf-mobile-footer { display:none!important; }
@media(max-width:767px) {
 html:lang(en) body .sbf-original-footer { display:none!important; }
 html:lang(en) body #sbf-mobile-footer {
  display:block!important; position:relative; width:100%; margin:24px 0 0; padding:32px 22px 22px;
  box-sizing:border-box; border-radius:36px 36px 0 0; color:#fff;
  background:linear-gradient(115deg,#9d0bff,#d62ae3 70%,#e448d3);
  font-family:Poppins,Arial,sans-serif; text-align:left;
 }
 #sbf-mobile-footer * { box-sizing:border-box; }
 #sbf-mobile-footer .groups { display:block; }
 #sbf-mobile-footer .group { border:0; border-bottom:1px solid #ffffff38; padding:0; margin:0; min-width:0; }
 #sbf-mobile-footer summary { list-style:none; cursor:pointer; }
 #sbf-mobile-footer summary::-webkit-details-marker { display:none; }
 #sbf-mobile-footer .group summary {
  display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:54px;
  margin:0; padding:0; color:white; font:600 14px/1.5 Poppins,Arial,sans-serif;
 }
 #sbf-mobile-footer .chevron { flex:0 0 7px; width:7px; height:7px; border-right:1.5px solid white; border-bottom:1.5px solid white; transform:rotate(45deg); margin-right:3px; }
 #sbf-mobile-footer details[open]>summary .chevron { transform:rotate(225deg); }
 #sbf-mobile-footer ul { list-style:none; margin:0; padding:0; }
 #sbf-mobile-footer .group ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 20px; padding:0 0 16px; }
 #sbf-mobile-footer li { margin:0; padding:0; min-width:0; }
 #sbf-mobile-footer a { color:white; text-decoration:none; }
 #sbf-mobile-footer a:hover { text-decoration:underline; text-underline-offset:3px; }
 #sbf-mobile-footer .group a { display:flex; align-items:flex-start; gap:8px; min-height:36px; padding:7px 0; font-size:12px; font-weight:400; line-height:1.65; overflow-wrap:break-word; }
 #sbf-mobile-footer .compare a { min-height:44px; }
 #sbf-mobile-footer .group a span { min-width:0; }
 #sbf-mobile-footer .group a img { display:block; width:16px!important; height:16px!important; flex:0 0 16px; margin-top:2px; object-fit:contain; filter:brightness(0) invert(1); }
 #sbf-mobile-footer .legal { margin-top:16px; padding:0; font-size:10px; line-height:1.7; }
 #sbf-mobile-footer .legal p { margin:16px 0 8px; opacity:.88; font-size:10px; color:white; }
 #sbf-mobile-footer .legal-links { display:flex; gap:18px; flex-wrap:wrap; }
 #sbf-mobile-footer .legal-links a { padding:5px 0; }
 #sbf-mobile-footer .language { width:max-content; max-width:100%; font-size:12px; }
 #sbf-mobile-footer .language summary { display:flex; gap:18px; align-items:center; padding:6px 0; min-height:32px; }
 #sbf-mobile-footer .language ul { padding:6px 12px; border:1px solid #ffffff55; border-radius:8px; }
 #sbf-mobile-footer .language a { display:block; padding:6px 0; }
 #sbf-mobile-footer a:focus-visible,#sbf-mobile-footer summary:focus-visible { outline:2px solid white; outline-offset:3px; border-radius:3px; }
}
@media(min-width:370px) and (max-width:767px) { #sbf-mobile-footer .group a { font-size:13px; } #sbf-mobile-footer .group ul { column-gap:24px; } }
