/* Editorial canvas for the reality's fitness audience. */
.imf-campaign-slot{padding:30px 0 40px;background:#101014}
.imf-campaign{--imf-ink:#0c0c10;--imf-white:#f8f5f2;--imf-red:#ff4646;--imf-button:#d9232e;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);grid-template-areas:"brand brand" "copy action" "services services";gap:38px 56px;position:relative;isolation:isolate;min-width:0;padding:36px 44px 28px;border-top:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16);background:radial-gradient(ellipse at 100% 100%,rgba(152,17,38,.28),transparent 62%),var(--imf-ink);color:var(--imf-white);scroll-margin-top:90px}
.imf-campaign,.imf-campaign *{box-sizing:border-box}
.imf-campaign-brand{grid-area:brand;display:flex;align-items:center;justify-content:space-between;gap:24px;min-width:0}
.imf-campaign-logo{position:relative;display:block;width:148px;height:46px;overflow:hidden;flex:none}
.imf-campaign-logo .im-brand-logo{display:block;width:100%;height:100%;object-fit:contain;object-position:left center}
.imf-campaign-logo .im-brand-logo.is-fallback-crop{position:absolute;max-width:none;width:126.7%;height:auto;left:-14%;top:-100%}
.imf-campaign-brand p{margin:0;color:#b6afb2;text-align:right;font:400 .8rem/1.55 "DM Sans",sans-serif}
.imf-campaign-brand br{display:none}
.imf-campaign-brand strong{display:block;color:var(--imf-white);font-weight:650}
.imf-campaign-copy{grid-area:copy;min-width:0;align-self:center}
.imf-campaign-eyebrow{display:block;margin-bottom:16px;color:#c9bfc3;font:750 .66rem/1.5 "Manrope",sans-serif;letter-spacing:.15em;text-transform:uppercase}
.imf-campaign h2{margin:0;color:var(--imf-white);font:800 clamp(2.35rem,4.5vw,3.75rem)/1.05 "Manrope",sans-serif;letter-spacing:-.065em;overflow-wrap:break-word}
.imf-campaign h2>span{display:block}
.imf-campaign h2>.imf-campaign-headline-accent{color:var(--imf-red)}
.imf-campaign-action{grid-area:action;display:flex;min-width:0;flex-direction:column;justify-content:center;align-items:stretch;gap:16px}
.imf-campaign-action>p{margin:0 0 5px;color:#c4bbc0;font:400 1rem/1.6 "DM Sans",sans-serif}
.imf-campaign-action>p strong{font-weight:600;color:var(--imf-white)}
.imf-campaign-cta{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:58px;padding:17px 22px;border:1px solid transparent;border-radius:4px;background:var(--imf-button);color:#fff !important;text-decoration:none;font:750 .92rem/1.35 "DM Sans",sans-serif;transition:background .18s,transform .18s}
.imf-campaign-cta>span:first-child{min-width:0}
.imf-campaign-cta>span:last-child{flex:none;font-size:1.4rem;line-height:1;transition:transform .18s}
.imf-campaign-cta:hover{background:#ba192c}
.imf-campaign-cta:hover>span:last-child{transform:translate(2px,-2px)}
.imf-campaign-cta:focus-visible,.imf-hero-link:focus-visible{outline:3px solid var(--imf-white,#f8f5f2);outline-offset:5px}
.imf-campaign-note{color:#b6a9b0;font:400 .75rem/1.5 "DM Sans",sans-serif}
.imf-campaign-services{grid-area:services;display:flex;flex-wrap:wrap;gap:10px 34px;min-width:0;margin:0;padding:20px 0 0;border-top:1px solid rgba(255,255,255,.15);list-style:none;color:#c9bfc3;font:650 .7rem/1.5 "Manrope",sans-serif;letter-spacing:.075em;text-transform:uppercase}
.imf-campaign-services li{margin:0;padding:0}
.imp-series-hero .imf-hero-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-top:12px;padding:8px 2px;color:#ff5a5a;text-decoration:none;font:700 .82rem/1.5 "DM Sans",sans-serif}
.imp-series-hero .imf-hero-link:hover{text-decoration:underline;text-underline-offset:4px}
/* Smaller editorial composition beneath the video, with no player overlay. */
.imf-campaign--compact{grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-top:22px;padding:24px 26px 22px;gap:24px 28px}
.imf-campaign--compact .imf-campaign-logo{width:118px;height:36px}
.imf-campaign--compact .imf-campaign-brand p{font-size:.7rem}
.imf-campaign--compact .imf-campaign-eyebrow{margin-bottom:12px;font-size:.6rem;letter-spacing:.11em}
.imf-campaign--compact h2{font-size:clamp(1.8rem,2.2vw,2.2rem);line-height:1.09;letter-spacing:-.055em}
.imf-campaign--compact .imf-campaign-action{gap:11px}
.imf-campaign--compact .imf-campaign-action>p{font-size:.86rem;line-height:1.55;margin-bottom:3px}
.imf-campaign--compact .imf-campaign-cta{min-height:54px;padding:14px 16px;font-size:.84rem;gap:12px}
.imf-campaign--compact .imf-campaign-note{font-size:.7rem}
.imf-campaign--compact .imf-campaign-services{font-size:.62rem;gap:8px 20px;padding-top:16px}
@media(max-width:1100px){
  .imf-campaign:not(.imf-campaign--compact){grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:30px 34px;padding:30px 34px 26px}
  .imf-campaign:not(.imf-campaign--compact) h2{font-size:clamp(2.4rem,4.6vw,3.2rem)}
}
@media(max-width:850px){
  .imf-campaign:not(.imf-campaign--compact){grid-template-columns:minmax(0,1fr);grid-template-areas:"brand" "copy" "action" "services";gap:26px}
  .imf-campaign:not(.imf-campaign--compact) h2{font-size:clamp(2.6rem,7vw,3.75rem)}
  .imf-campaign:not(.imf-campaign--compact) .imf-campaign-action{max-width:550px}
}
@media(max-width:600px){
  .imf-campaign-slot{padding:22px 0 30px}
  .imf-campaign,.imf-campaign:not(.imf-campaign--compact),.imf-campaign--compact{grid-template-columns:minmax(0,1fr);grid-template-areas:"brand" "copy" "action" "services";gap:26px;padding:24px 20px}
  .imf-campaign-brand{gap:16px}
  .imf-campaign-logo,.imf-campaign--compact .imf-campaign-logo{width:112px;height:35px}
  .imf-campaign-brand p,.imf-campaign--compact .imf-campaign-brand p{font-size:.68rem;line-height:1.45}
  .imf-campaign-eyebrow,.imf-campaign--compact .imf-campaign-eyebrow{font-size:.61rem;letter-spacing:.12em;margin-bottom:13px}
  .imf-campaign h2,.imf-campaign:not(.imf-campaign--compact) h2,.imf-campaign--compact h2{font-size:clamp(2rem,9.6vw,2.7rem);line-height:1.08;letter-spacing:-.06em}
  .imf-campaign-action,.imf-campaign--compact .imf-campaign-action{gap:13px}
  .imf-campaign-action>p,.imf-campaign--compact .imf-campaign-action>p{font-size:.93rem;line-height:1.6;margin-bottom:3px}
  .imf-campaign-cta,.imf-campaign--compact .imf-campaign-cta{min-height:56px;padding:16px;font-size:.86rem;gap:14px}
  .imf-campaign-note,.imf-campaign--compact .imf-campaign-note{font-size:.72rem}
  .imf-campaign-services,.imf-campaign--compact .imf-campaign-services{font-size:.65rem;gap:9px 22px;letter-spacing:.055em;padding-top:18px}
}
@media(prefers-reduced-motion:reduce){.imf-campaign-cta,.imf-campaign-cta>span:last-child{transition:none}}
