/* R10-CAMP-01 · Partner offer cards. The Classic partner grid (.cp-partners in campaign.css)
   as is; here the spacing that must hold when a field is left empty, the Offer tag and the
   light-blue background. No navy option: the partner logos are dark. */

/* the same gap over the grid whether or not the intro is filled in */
.cb-partner_cards .cp-head { margin-bottom: 44px; }
.cb-partner_cards .cp-head > :last-child { margin-bottom: 0; }
/* a card without an offer ends on its description: no stray gap under it */
.cb-partner_cards .cp-partner > :last-child { margin-bottom: 0; }

/* the tag is typed in sentence case ("Exclusive offer") and set in the Classic capitals */
.cb-partner_cards .cp-offer-tag { text-transform: uppercase; }

/* light blue: the Load more pill's light-blue sweep would melt into the section, so a navy
   ring keeps the button's edge (the .inspired / .cp-vbody convention) */
.cb-partner_cards.cb-bg-water .pill-navy {
  outline: 1.5px solid transparent; outline-offset: -1.5px;
  transition: background .3s ease, color .35s ease, border-color .3s ease,
              box-shadow .35s ease, opacity .2s ease, outline-color .25s ease .15s;
}
.cb-partner_cards.cb-bg-water .pill-navy:hover { outline-color: var(--navy); }
.cb-partner_cards.cb-bg-water .pill-navy:focus-visible { outline: 2px solid var(--navy); outline-offset: 2px; }
/* partner logos are dark marks on white boxes: let sand / light blue show through the white
   (on the grid, not the logos: each card's reveal animation would isolate the blend) */
.cb-partner_cards.cb-bg-sand .cp-partner-grid,
.cb-partner_cards.cb-bg-water .cp-partner-grid { mix-blend-mode: multiply; }
