.ibpf-footer-shell,.ibpf-footer-shell *{box-sizing:border-box}
.ibpf-footer-shell{width:100%;margin:0;color:#fff;font-family:inherit;position:relative;z-index:5}
.ibpf-footer-shell a{text-decoration:none}

.ibpf-newsletter{display:grid;grid-template-columns:minmax(0,1.42fr) minmax(380px,.72fr);gap:24px;align-items:center;padding:16px clamp(20px,3vw,40px);background:linear-gradient(135deg,#063a7a,#0758b4 70%,#0b68d4);border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.ibpf-newsletter-copy{display:flex;gap:14px;align-items:center;min-width:0}
.ibpf-newsletter-icon{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:50%;background:rgba(35,126,255,.24);border:1px solid rgba(255,255,255,.08)}
.ibpf-newsletter-icon svg{width:24px;height:24px}
.ibpf-newsletter h2{margin:0;color:#fff;font-size:clamp(18px,1.45vw,24px);line-height:1.12;font-weight:800;letter-spacing:-.02em}
.ibpf-newsletter p{margin:4px 0 0;color:rgba(255,255,255,.84);font-size:12.5px;line-height:1.35}
.ibpf-newsletter-form-wrap{min-width:0}
.ibpf-newsletter-form{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:0;padding:3px 3px 3px 10px;background:#fff;border-radius:10px;box-shadow:0 6px 16px rgba(3,18,41,.14)}
.ibpf-input-icon{display:grid;place-items:center;color:#47688f}
.ibpf-input-icon svg{width:19px;height:19px}
.ibpf-newsletter-form input[type="email"]{width:100%;height:40px;border:0!important;outline:0!important;box-shadow:none!important;background:#fff!important;color:#17263a!important;font:inherit;font-size:13px;padding:0 8px}
.ibpf-newsletter-form button{height:40px;padding:0 18px;border:0;border-radius:8px;background:#0d6efd;color:#fff;font:inherit;font-size:13px;font-weight:800;cursor:pointer}
.ibpf-newsletter-form button:hover{background:#075fd8}
.ibpf-consent{grid-column:1/-1;display:flex;gap:7px;align-items:flex-start;margin:7px 2px 3px;color:#475569;font-size:10px;line-height:1.35}
.ibpf-consent a{color:#0d5fc1}
.ibpf-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.ibpf-newsletter-note{font-size:9.5px!important;color:rgba(255,255,255,.7)!important;margin:5px 0 0!important}
.ibpf-newsletter-notice{margin-top:7px;padding:7px 9px;border-radius:7px;font-size:11px;font-weight:700}
.ibpf-newsletter-notice.is-ok{background:rgba(16,185,129,.15);color:#d1fae5}
.ibpf-newsletter-notice.is-bad{background:rgba(239,68,68,.15);color:#fee2e2}

.ibpf-footer{position:relative;overflow:hidden;background:linear-gradient(180deg,#062b59 0%,#031f42 62%,#021733 100%);color:#fff}
.ibpf-footer:before{content:"";position:absolute;inset:auto 0 0;height:42%;opacity:.18;background:
linear-gradient(180deg,transparent,rgba(15,97,173,.24)),
radial-gradient(ellipse at 72% 100%,rgba(53,133,211,.42) 0 2%,transparent 2.2%),
linear-gradient(90deg,transparent 0 6%,rgba(74,147,211,.35) 6% 7%,transparent 7% 13%,rgba(74,147,211,.28) 13% 14%,transparent 14% 67%,rgba(74,147,211,.28) 67% 69%,transparent 69% 72%,rgba(74,147,211,.3) 72% 75%,transparent 75%);pointer-events:none}
.ibpf-footer:after{content:"";position:absolute;left:0;right:0;bottom:50px;height:1px;background:linear-gradient(90deg,transparent,rgba(112,183,255,.25),transparent)}
.ibpf-footer-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.4fr .75fr .75fr 1fr 1.08fr;gap:clamp(26px,3.5vw,66px);padding:48px clamp(24px,4vw,64px) 38px;max-width:1700px;margin:0 auto}
.ibpf-brand{display:inline-flex;align-items:baseline;color:#fff;font-size:clamp(42px,4vw,62px);font-weight:800;line-height:.95;letter-spacing:-.045em}
.ibpf-brand strong{color:#0f70ff}
.ibpf-brand-wave{position:relative;width:210px;height:22px;margin:4px 0 8px}
.ibpf-brand-wave i,.ibpf-brand-wave b{position:absolute;display:block;height:5px;border-radius:50% 50% 0 0;transform:rotate(2deg)}
.ibpf-brand-wave i{left:2px;top:5px;width:104px;background:#1680ff}
.ibpf-brand-wave b{left:82px;top:7px;width:125px;background:#fff;transform:rotate(-2deg)}
.ibpf-tagline{margin:0 0 16px;color:#dcecff;font-size:17px;font-weight:700}
.ibpf-description{max-width:320px;margin:0;color:rgba(231,241,255,.78);font-size:13px;line-height:1.58}
.ibpf-brand-google-play{display:block;width:min(100%,420px);margin-top:20px;color:#fff!important;transition:transform .18s ease,filter .18s ease;position:relative;overflow:visible}
.ibpf-brand-google-play:before{content:none}
.ibpf-brand-google-play:hover{transform:translateY(-2px);filter:brightness(1.04)}
.ibpf-brand-google-play:focus-visible{outline:3px solid #8ec5ff;outline-offset:3px;border-radius:22px}
.ibpf-brand-google-play-banner{display:block;width:100%;height:auto;border-radius:22px;box-shadow:0 14px 30px rgba(0,0,0,.26)}
.ibpf-footer-col h3,.ibpf-follow-col h3{position:relative;margin:4px 0 22px;color:#fff;font-size:17px;line-height:1.2;font-weight:800}
.ibpf-footer-col h3:after,.ibpf-follow-col h3:after{content:"";position:absolute;left:0;bottom:-10px;width:38px;height:3px;border-radius:4px;background:#1b78ff}
.ibpf-footer-col ul{list-style:none;margin:0;padding:0}
.ibpf-footer-col li+li{margin-top:11px}
.ibpf-footer-col a{color:rgba(236,244,255,.86);font-size:13px;line-height:1.35;transition:color .15s ease,transform .15s ease}
.ibpf-footer-col a:hover{color:#fff}
.ibpf-socials{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}
.ibpf-socials a{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;color:#fff;border:1px solid rgba(255,255,255,.09);background:#0c3b70;transition:transform .15s ease,filter .15s ease}
.ibpf-socials a:hover{transform:translateY(-2px);filter:brightness(1.08)}
.ibpf-socials svg{width:22px;height:22px}
.ibpf-socials .is-facebook{background:#1977f2}.ibpf-socials .is-instagram{background:linear-gradient(135deg,#7d3cff,#f54b64,#ffb13b)}.ibpf-socials .is-x{background:#050a12}.ibpf-socials .is-youtube{background:#ff1a1a}.ibpf-socials .is-tiktok{background:#07121f}
.ibpf-email{display:flex;align-items:center;gap:10px;padding-top:19px;border-top:1px solid rgba(255,255,255,.18);color:rgba(236,244,255,.88);font-size:13px}
.ibpf-email svg{width:21px;height:21px;flex:0 0 auto}
.ibpf-submit-news{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;margin-top:20px;padding:13px 16px;border:1px solid #1d77e8;border-radius:9px;background:rgba(14,92,181,.18);color:#fff;font-size:13px;font-weight:800}
.ibpf-submit-news:hover{background:rgba(20,111,220,.32)}
.ibpf-submit-news svg{width:21px;height:21px}
.ibpf-footer-bottom{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1700px;margin:0 auto;padding:20px clamp(24px,4vw,64px) 24px;border-top:1px solid rgba(255,255,255,.12)}
.ibpf-footer-bottom p{margin:0;color:rgba(231,241,255,.75);font-size:11px}
.ibpf-footer-bottom-links{display:flex;align-items:center;gap:18px;flex-wrap:wrap;color:rgba(231,241,255,.75);font-size:11px}
.ibpf-footer-bottom-links span,.ibpf-footer-bottom-links a{display:inline-flex;align-items:center;gap:6px;color:inherit}
.ibpf-footer-bottom-links svg{width:16px;height:16px}
.ibpf-footer-bottom-links a:hover{color:#fff}

@media(max-width:1200px){
  .ibpf-newsletter{grid-template-columns:1fr;gap:18px}
  .ibpf-footer-inner{grid-template-columns:1.25fr repeat(2,1fr);row-gap:34px}
  .ibpf-brand-col{grid-row:span 2}
}
@media(max-width:1200px){
  .ibpf-brand-google-play{width:min(100%,400px)}
}
@media(max-width:800px){
  .ibpf-brand-google-play{display:block;width:min(100%,420px)}
  .ibpf-newsletter{padding:16px 16px}
  .ibpf-newsletter-copy{align-items:flex-start}
  .ibpf-newsletter-icon{width:50px;height:50px;flex-basis:50px}
  .ibpf-newsletter h2{font-size:19px}
  .ibpf-footer-inner{grid-template-columns:1fr 1fr;padding:34px 18px 28px;gap:28px 22px}
  .ibpf-brand-col{grid-column:1/-1;grid-row:auto}
  .ibpf-follow-col{grid-column:1/-1}
  .ibpf-footer-bottom{flex-direction:column;align-items:flex-start;padding:18px}
}
@media(max-width:560px){
  .ibpf-brand-google-play{width:100%;max-width:100%}
  .ibpf-brand-google-play-banner{border-radius:18px}
  .ibpf-newsletter-copy{gap:11px}.ibpf-newsletter-icon{display:none}
  .ibpf-newsletter-form{grid-template-columns:26px minmax(0,1fr);padding:4px 8px 7px 10px}
  .ibpf-newsletter-form button{grid-column:1/-1;width:100%;margin-top:5px}
  .ibpf-consent{grid-column:1/-1}
  .ibpf-footer-inner{grid-template-columns:1fr;gap:26px}
  .ibpf-footer-col,.ibpf-follow-col{grid-column:auto}
  .ibpf-brand{font-size:46px}
  .ibpf-brand-wave{width:180px}
}

/* v1.0.1 — hard replacement for News Magazine X footer. JS repeats this
   after page builders finish, while these selectors prevent a visible flash. */
body.ibpf-replace-theme-footer #colophon,
body.ibpf-replace-theme-footer #site-footer,
body.ibpf-replace-theme-footer #footer,
body.ibpf-replace-theme-footer #newsx-footer,
body.ibpf-replace-theme-footer .site-footer:not(.ibpf-footer),
body.ibpf-replace-theme-footer .newsx-footer,
body.ibpf-replace-theme-footer .newsx-site-footer,
body.ibpf-replace-theme-footer .newsx-footer-wrap,
body.ibpf-replace-theme-footer .newsx-footer-wrapper,
body.ibpf-replace-theme-footer .newsx-footer-builder,
body.ibpf-replace-theme-footer .footer-builder,
body.ibpf-replace-theme-footer .footer-wrapper,
body.ibpf-replace-theme-footer .footer-wrap,
body.ibpf-replace-theme-footer .footer-area,
body.ibpf-replace-theme-footer .footer-main,
body.ibpf-replace-theme-footer .main-footer,
body.ibpf-replace-theme-footer .footer-widget-area,
body.ibpf-replace-theme-footer .footer-widgets,
body.ibpf-replace-theme-footer .footer-bottom,
body.ibpf-replace-theme-footer .footer-copyright,
body.ibpf-replace-theme-footer .copyright-area,
body.ibpf-replace-theme-footer .copyright-wrap,
body.ibpf-replace-theme-footer .site-info,
body.ibpf-replace-theme-footer [data-ibpf-hidden-theme-footer="1"]{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}

body.ibpf-replace-theme-footer .ibpf-footer-shell,
body.ibpf-replace-theme-footer .ibpf-footer-shell .ibpf-footer{
  display:block!important;
  visibility:visible!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  overflow:visible!important;
}


/* v1.2.3 — Android promotion: compact Google Play badge lives in the brand column on desktop. */

/* v1.2.10 — One canonical Google Play badge. On Android it stays in the exact desktop brand-column position and only its destination changes to the public Play Store listing. */
.ibpf-pwa-top-banner{display:none}

@media(max-width:800px){
  html.ibpf-pwa-android.ibpf-pwa-ready .ibpf-brand-google-play-main,
  body.ibpf-pwa-android.ibpf-pwa-ready .ibpf-brand-google-play-main{
    display:block!important;
    width:min(100%,420px);
  }
}

@media(min-width:0px){
  html.ibpf-pwa-android.ibpf-pwa-ready .ibpf-pwa-top-banner,
  body.ibpf-pwa-android.ibpf-pwa-ready .ibpf-pwa-top-banner{display:grid}
  .ibpf-pwa-top-banner{
    position:fixed;
    z-index:2147483000;
    top:max(10px,env(safe-area-inset-top));
    left:10px;
    right:10px;
    grid-template-columns:54px minmax(0,1fr) auto 34px;
    gap:11px;
    align-items:center;
    max-width:680px;
    margin:0 auto;
    padding:11px 10px 11px 11px;
    border:1px solid rgba(108,176,255,.24);
    border-radius:18px;
    background:linear-gradient(135deg,rgba(4,20,42,.985),rgba(7,49,98,.98) 68%,rgba(7,77,153,.97));
    color:#fff;
    box-shadow:0 16px 42px rgba(0,17,45,.38),inset 0 1px 0 rgba(255,255,255,.08);
    backdrop-filter:blur(14px);
    overflow:hidden;
    transform:translateY(calc(-100% - 34px));
    opacity:0;
    transition:transform .32s cubic-bezier(.2,.8,.2,1),opacity .24s ease;
  }
  .ibpf-pwa-top-banner:before{content:"";position:absolute;inset:-60% auto auto -12%;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(18,126,255,.26),transparent 68%);pointer-events:none}
  .ibpf-pwa-top-banner:after{content:"";position:absolute;inset:auto -34px -74px auto;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(64,169,255,.18),transparent 70%);pointer-events:none}
  .ibpf-pwa-top-banner.is-visible{transform:translateY(0);opacity:1}
  .ibpf-pwa-mini-logo{display:grid!important;place-items:center!important;width:54px!important;height:54px!important;border-radius:15px!important;background:rgba(255,255,255,.08)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1),0 8px 20px rgba(0,0,0,.16)!important;position:relative;z-index:1;overflow:hidden}
  .ibpf-pwa-mini-logo img{display:block;width:46px;height:46px;border-radius:12px}
  .ibpf-pwa-top-copy{min-width:0;display:flex;flex-direction:column;gap:2px;position:relative;z-index:1}
  .ibpf-pwa-top-eyebrow{font-size:8.5px!important;line-height:1.1!important;font-weight:900!important;letter-spacing:.11em!important;color:#7fc0ff!important}
  .ibpf-pwa-top-copy strong{font-size:13.5px;line-height:1.18;color:#fff;font-weight:900;letter-spacing:-.015em}
  .ibpf-pwa-top-sub{font-size:10.5px!important;line-height:1.28!important;color:#d6e9ff!important}
  .ibpf-pwa-install-button{
    min-height:42px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:11px;
    padding:0 12px;
    background:#fff;
    color:#0a315d;
    font:inherit;
    font-size:11.5px;
    font-weight:900;
    cursor:pointer;
    box-shadow:0 8px 18px rgba(0,0,0,.16);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    text-decoration:none;
    white-space:nowrap;
    position:relative;
    z-index:1;
  }
  .ibpf-pwa-install-button:hover{background:#f3f8ff;color:#082e58;text-decoration:none;transform:translateY(-1px)}
  .ibpf-pwa-install-button:focus-visible{outline:3px solid #8ec5ff;outline-offset:2px}
  .ibpf-pwa-play-mark{display:grid;place-items:center;width:17px;height:20px;flex:0 0 17px}
  .ibpf-pwa-play-mark svg{display:block;width:17px;height:20px}
  .ibpf-pwa-close{
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border:0;
    border-radius:10px;
    background:rgba(255,255,255,.06);
    color:#dcecff;
    font-size:22px;
    line-height:1;
    cursor:pointer;
    position:relative;
    z-index:1;
  }
  .ibpf-pwa-close:hover{background:rgba(255,255,255,.11);color:#fff}
  .ibpf-pwa-close:focus-visible{outline:3px solid #8ec5ff;outline-offset:1px}
}

@media(max-width:480px){
  .ibpf-pwa-top-banner{
    grid-template-columns:42px minmax(0,1fr) auto 30px;
    gap:7px;
    left:7px;
    right:7px;
    padding:8px 7px 8px 8px;
    border-radius:15px;
  }
  .ibpf-pwa-mini-logo{width:42px!important;height:42px!important;border-radius:12px!important}
  .ibpf-pwa-mini-logo img{width:36px;height:36px;border-radius:10px}
  .ibpf-pwa-top-copy{gap:1px}
  .ibpf-pwa-top-eyebrow{display:none!important}
  .ibpf-pwa-top-copy strong{font-size:11.5px;line-height:1.14;white-space:normal}
  .ibpf-pwa-top-sub{display:none}
  .ibpf-pwa-install-button{
    grid-column:auto;
    grid-row:auto;
    min-height:34px;
    width:auto;
    margin-top:0;
    padding:0 9px;
    font-size:10.5px;
    border-radius:9px;
    gap:5px;
  }
  .ibpf-pwa-play-mark{width:15px;height:18px;flex-basis:15px}
  .ibpf-pwa-play-mark svg{width:15px;height:18px}
  .ibpf-pwa-close{grid-column:auto;grid-row:auto;width:30px;height:30px;align-self:center;border-radius:9px;font-size:20px}
}

@media(max-width:380px){
  .ibpf-pwa-top-banner{grid-template-columns:38px minmax(0,1fr) auto 28px;gap:6px;padding:7px}
  .ibpf-pwa-mini-logo{width:38px!important;height:38px!important}
  .ibpf-pwa-mini-logo img{width:33px;height:33px}
  .ibpf-pwa-top-copy strong{font-size:10.8px}
  .ibpf-pwa-install-button{min-height:32px;padding:0 8px;font-size:10px}
  .ibpf-pwa-close{width:28px;height:28px;font-size:19px}
}

@media(prefers-reduced-motion:reduce){
  .ibpf-pwa-top-banner{transition:none!important}
}

