/*! cfr-page 1.0.1 | responsive patch for the /product + /solution pages, linked after the family stylesheet */
/* CTA labels longer than a small phone's button ("Get your Coverage Gap Report") wrap inside it, centred */
@media (max-width:479px){
  .cfh-page .cfh-s02 :is(.cfh-s02-btn-primary,.cfh-s02-btn-outline),.cfh-page .cfh-s13 .cfh-s13-btn{height:auto;min-height:44px}
  .cfh-page .cfh-s02 :is(.cfh-s02-btn-label,.cfh-s02-btn-label-o),.cfh-page .cfh-s13 .cfh-s13-btn-label{min-width:0;white-space:normal;text-align:center;text-wrap:balance}
  .cfh-page :is(.cfh-s02-btn-icon,.cfh-s13-btn-ico){flex:none}
}
/* desktop tab strip: a label longer than its equal share wraps to two lines instead of pushing the strip off the page */
@media (min-width:992px){
  .cfh-page .cfh-s06 .cfh-s06-tab{display:flex;align-items:center;justify-content:center;min-width:0;white-space:normal;text-wrap:balance}
}
/* ---- 1.0.1 (visual QA pass) ---- */
/* showcase band cloned from home (brand-sentiment, voice-of-the-customer, competitor-analysis): the product pages'
   image-only band ratio (1310/727) cut the stacked card at 768 and left 109/25px gaps at 1024; below 1366 the band
   now takes its content's height (1366+ keeps the Figma ratio) */
@media (min-width:768px) and (max-width:1365px){
  .cfh-page .cfh-s03 .cfh-s03-card:has(.cfh-s03-tabs){aspect-ratio:auto}
}
/* social-listening hero card: the whole 1095x512 card scales into the band on phones instead of sitting in a hidden
   sideways scroller that looked cut off */
@media (max-width:767px){
  .cfh-page .cfh-s03 .csl-band-stage{overflow:visible}
  .cfh-page .cfh-s03 .csl-band-card{width:100%;max-width:640px}
}
/* hero secondary button: a label shorter than the 181px minimum ("Book a Demo") sits centred, not hugging the left */
@media (min-width:768px){
  .cfh-page .cfh-s02 .cfh-s02-btn-outline{justify-content:center}
}
/* orange step link: when it wraps, the arrow follows the last word instead of the far edge */
@media (max-width:767px){
  .cfh-page .cfh-s08 .cfh-s08-link{display:block}
  .cfh-page .cfh-s08 .cfh-s08-link-t{display:inline}
  .cfh-page .cfh-s08 .cfh-s08-link .cfh-s08-arrow{display:inline-block;vertical-align:middle;margin-left:6px}
}
/* no single word left on the last line of headings and centred copy */
.cfh-page .cfs-cov-h2,.cfh-page .cfs-cov-ln,.cfh-page .csl-jobs-pt{text-wrap:balance}
.cfh-page .cfh-s02 .cfh-s02-sub,.cfh-page .cfh-s13 .cfh-s13-sub{text-wrap:pretty}
/* footer copyright at 320: may wrap instead of running into the column rule */
@media (max-width:359px){
  .cfh-page .cfh-foot .cfh-foot-copy{white-space:normal;padding-right:12px}
}
/* hero eyebrows that wrap on small phones ("CLAYFACE DIGITAL SHELF MONITORING"): balanced lines with room between them */
.cfh-page .cfh-s02 :is(.cfs-hero-eyebrow,.cfh-s02-eyebrow){text-wrap:balance}
@media (max-width:359px){
  .cfh-page .cfh-s02 :is(.cfs-hero-eyebrow,.cfh-s02-eyebrow){line-height:18px}
}
/* peek carousel at narrow desktop: the dimmed next slide fades out at the rail instead of being chopped mid-word */
@media (min-width:992px) and (max-width:1365px){
  .cfh-page [data-cfh-sec="sl-carousel"] .csl-carousel::after{content:"";position:absolute;top:0;right:0;bottom:1px;width:160px;background:linear-gradient(90deg,rgba(252,251,248,0),#FCFBF8 85%);pointer-events:none;z-index:1}
}
