/*! cta-page 1.0.2 | /solution/trend-analysis to Figma 4420:225622 ("Use case - Trend Analysis V3", 1920 frame).
   Same build as the competitor analysis page: "What trend analysis tells you" is 3 icon columns (section .cvoc-tells,
   classes shared with VoC/CA), the SL tab accordion is hidden, band + carousel visuals are Figma statics. */
.cfh-page .cvoc-tells{position:relative;padding:120px 0 121px}
/* 48/48, Figma breaks after "trend" (box 364 + the 36px insets) */
.cfh-page .cvoc-tells-h2{margin:0 0 95px;padding:0 36px;max-width:470px;text-wrap:balance;font-family:var(--cfh-display);font-weight:400;font-size:48px;line-height:48px;letter-spacing:-0.96px;color:#1D0A05}
.cfh-page .cvoc-tells-em{font-weight:600}
.cfh-page .cvoc-tells-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.cfh-page .cvoc-tells-col{padding:0 36px}
/* icons sit on one 24px baseline row, 16px above the titles (Figma icons end at 1763, titles at 1779) */
.cfh-page .cvoc-tells-ico{display:flex;align-items:flex-end;height:24px;margin:0 0 16px}
.cfh-page .cvoc-tells-svg{display:block;flex:none}
.cfh-page .cvoc-tells-title{margin:0 0 16px;max-width:301px;font-family:var(--cfh-display);font-weight:500;font-size:20px;line-height:24px;letter-spacing:-0.4px;color:#1D0A05;text-wrap:balance}
.cfh-page .cvoc-tells-text{margin:0;max-width:322px;font-family:var(--cfh-sans);font-weight:400;font-size:16px;line-height:1.3;letter-spacing:-0.16px;color:#1D0A05;text-wrap:pretty}
/* Figma copy boxes: 322 / 318 / 300 wide */
@media (min-width:992px){
  .cfh-page .cvoc-tells-col:nth-child(2) .cvoc-tells-text{max-width:318px}
  .cfh-page .cvoc-tells-col:nth-child(3) .cvoc-tells-text{max-width:300px}
}
/* below 992 the design is ours (site SPEC): one column, SPEC type scale and insets */
@media (max-width:991px){
  .cfh-page .cvoc-tells{padding:64px 0}
  .cfh-page .cvoc-tells-h2{margin-bottom:40px;padding:0 32px;max-width:640px;font-size:40px;line-height:42px;letter-spacing:-0.8px;text-wrap:balance}
  .cfh-page .cvoc-tells-grid{grid-template-columns:minmax(0,1fr);row-gap:40px}
  .cfh-page .cvoc-tells-col{padding:0 32px}
  .cfh-page .cvoc-tells-title,.cfh-page .cvoc-tells-text{max-width:560px}
}
@media (max-width:767px){
  .cfh-page .cvoc-tells{padding:56px 0}
  .cfh-page .cvoc-tells-h2{margin-bottom:32px;padding:0 24px;font-size:30px;line-height:33px;letter-spacing:-0.6px}
  .cfh-page .cvoc-tells-grid{row-gap:32px}
  .cfh-page .cvoc-tells-col{padding:0 24px}
  .cfh-page .cvoc-tells-title{margin-bottom:12px;font-size:18px;line-height:23px;letter-spacing:-0.3px}
  .cfh-page .cvoc-tells-text{line-height:22px}
}
@media (max-width:479px){
  .cfh-page .cvoc-tells-h2,.cfh-page .cvoc-tells-col{padding-left:20px;padding-right:20px}
}

/* ---- hero (Figma: no eyebrow; "Trend analysis" bold inline, line 1 ends after "what"; sub 660 wide, 3 lines) ---- */
.cfh-page .cfh-s02 .cfs-hero-eyebrow{display:none}
.cfh-page .cfh-s02 .cfh-s02-h1-em{display:inline}
.cfh-page .cfh-s02 .cfh-s02-h1-em::after{content:none}
@media (min-width:992px){
  /* Figma: H1 top 199 (111 under the nav), 20px to the sub */
  .cfh-page .cfh-s02 .cfh-s02-h1{max-width:960px;margin-top:21px;margin-bottom:20px}
  .cfh-page .cfh-s02 .cfh-s02-sub{max-width:700px}
}

/* ---- band: the Figma "Marisol range against search demand" card, 1095 x 444, 108px from the left rail and 101px
   from the band top and bottom (SL band card was 1095 x 512 at 108/108) ---- */
.cfh-page .cfh-s03 .csl-band-card{aspect-ratio:1095/444}
.cfh-page .cfh-s03 .csl-band-poster{display:block;width:100%;height:100%;object-fit:contain}
@media (min-width:992px){
  /* band 1310 x 646 like the Figma (SI's band was 1310 x 727) */
  .cfh-page .cfh-s03 .cfh-s03-card{aspect-ratio:1310/646}
  .cfh-page .cfh-s03 .csl-band-card{margin-top:7.7099%}
}

/* ---- feature carousel: Figma titles break "Spot emerging trends / while they are still small",
   "See which products and / features a trend is about", "Trend tracking that separates / a shift from a spike" ---- */
@media (min-width:768px){
  .cfh-page [data-cfh-sec="sl-carousel"] .csl-slide-title{max-width:520px;text-wrap:balance}
  /* balance would split slide 3 as "Trend tracking that / separates…"; Figma breaks after "separates" */
  .cfh-page [data-cfh-sec="sl-carousel"] .csl-slide:nth-child(3) .csl-slide-title{max-width:450px;text-wrap:wrap}
  .cfh-page [data-cfh-sec="sl-carousel"] .csl-slide-body{max-width:430px}
  /* Figma copy boxes 382 and 357 wide: these widths give the same 4 line breaks (slide 2's Figma breaks can't be
     reproduced in Geist at any width, so it keeps 430) */
  .cfh-page [data-cfh-sec="sl-carousel"] .csl-slide:nth-child(1) .csl-slide-body{max-width:384px}
  .cfh-page [data-cfh-sec="sl-carousel"] .csl-slide:nth-child(3) .csl-slide-body{max-width:360px}
}
/* ---- CTA band: heading on one line as in Figma ("See what is rising in your category", 710px at 48px) ---- */
@media (min-width:992px){
  .cfh-page .cfh-s13 .cfh-s13-head{max-width:none}
}

/* ---- testimonial + FAQ (same as the VoC and CA Figma frames) ---- */
@media (min-width:992px){
  /* Figma pins the attribution 110px under the quote top (quote box 3 lines tall), so 2-line quotes get the same gap */
  .cfh-page .cfh-s10 .cfh-s10-quote{min-height:78px}
  /* Figma answer text runs 549px wide (28 + 549 + 27 padding) */
  .cfh-page .cfh-s12 .cfh-s12-panel-inner > .cfs-faq-answer{max-width:604px}
}

/* ---- phone layouts of the Rive cards (1.0.2). The desktop artboards are 1095 / 756 px wide: below 992 (band) and below
   768 (carousel) their text shrank to 2-6 px, so 360 px phone artboards with the same content show there instead
   (.cta-band-m / .cta-slide-m, keys ta-*-m). csl-page sets [data-cfh-rive]{display:grid}, which would show both
   wrappers everywhere, hence the explicit display rules at (0,3,0). ---- */
.cfh-page .cfh-s03 .cta-band-m{display:none}
.cfh-page [data-cfh-sec="sl-carousel"] .cta-slide-m{display:none}
@media (max-width:991px){
  .cfh-page .cfh-s03 .cfh-s03-card{aspect-ratio:auto}
  .cfh-page .cfh-s03 .csl-band-stage{display:block;padding:40px 24px;overflow:visible}
  .cfh-page .cfh-s03 .csl-band-card{display:none}
  .cfh-page .cfh-s03 .cta-band-m{display:grid;width:100%;max-width:440px;aspect-ratio:360/794;margin:0 auto;background-color:#FCFBF8}
}
@media (max-width:479px){
  .cfh-page .cfh-s03 .csl-band-stage{padding:24px 16px}
}
@media (max-width:767px){
  /* all three phone slides are 360 x 660, so the carousel row is the same height for every slide */
  .cfh-page [data-cfh-sec="sl-carousel"] .csl-slide-visual{display:none}
  .cfh-page [data-cfh-sec="sl-carousel"] .cta-slide-m{display:grid;grid-row:2;align-self:start;width:100%;max-width:440px;aspect-ratio:360/660;margin-top:32px;background-color:#F4F2EE;overflow:hidden}
}
