/* Review version of the homepage and collection covers. */
.launch-review .launch-cover {
  aspect-ratio: 4 / 3;
  padding: clamp(20px, 3.2vw, 44px);
}

.launch-lock-icon { display: inline-flex; justify-content: center; align-items: center; width: 42px; height: 42px; border: 1px solid currentColor; border-radius: 50%; }
.launch-collection-intro h1 { font-size: clamp(44px, 6.5vw, 86px); }
.launch-intro-copy { max-width: 660px; margin: auto; color: var(--color-muted); line-height: 1.65; }
.launch-return { margin-top: 46px; }
.launch-collection { margin-bottom: var(--home-section-space); }
.launch-access { max-width: 620px; margin: clamp(48px, 10vh, 110px) auto; padding-inline: var(--gutter); }
.launch-access-panel { border-radius: var(--radius-art); background: var(--study-panel); padding: clamp(28px, 5vw, 54px); }
.launch-access-panel > .launch-lock-icon { color: var(--color-rust); margin-bottom: 16px; }
.launch-access-panel h1 { font: 650 clamp(46px, 7vw, 70px)/1 var(--study-heading); margin-bottom: 16px; }
.launch-access-panel form { display: grid; gap: 10px; justify-items: start; margin-block: 24px; }
.launch-access-panel label { font-weight: 600; }
.launch-access-panel input {
  width: 100%;
  min-height: 48px;
  padding: 10px 14px;
  border: 1px solid var(--color-rule);
  border-radius: var(--radius-control);
  background: var(--study-canvas);
  font: inherit;
}
.launch-access-panel [role=status] { color: var(--color-rust); }
.launch-access-panel [role=status]:empty { display: none; }
.launch-access-panel > a { text-decoration: underline; text-underline-offset: .18em; }

/* Product-led artwork for the Reckitt collection. */
.launch-review .study-card-art.cx-cover {
  container-type: inline-size;
  display: block;
  isolation: isolate;
  padding: 0;
}
.cx-brand {
  position: absolute;
  z-index: 2;
  inset: 6.5% auto auto 6%;
  font: 690 clamp(24px, 8cqw, 54px)/.92 var(--study-heading);
  letter-spacing: -.045em;
}
.cx-brand span {
  display: block;
  margin-top: .45em;
  font: 600 .37em/1.15 var(--font-ui);
  letter-spacing: .015em;
}
.cx-pack { position: absolute; }
.launch-collection .cx-cover .crop {
  width: 100%;
  border-radius: 0;
  box-shadow: none;
  transform: none;
}
.study-card .cx-energy {
  background: linear-gradient(135deg, var(--case-neuriva-surface), var(--case-neuriva-on-ink));
  color: var(--case-neuriva-accent);
}
.cx-energy::before {
  content: '';
  position: absolute;
  inset: 0 0 0 47%;
  background: var(--case-neuriva-accent);
  clip-path: polygon(24% 0, 100% 0, 100% 100%, 0 100%);
}
.cx-energy .cx-pack {
  inset: auto auto 3% 3%;
  width: 48%;
}
.cx-energy-art {
  position: absolute;
  width: 51%;
  right: 4%;
  top: 16%;
  transform: rotate(-5deg);
  box-shadow: var(--study-shadow);
  border-radius: var(--radius-control);
  overflow: hidden;
}
.study-card .cx-wipes {
  background: linear-gradient(144deg, var(--case-wipes-surface) 12%, var(--case-wipes-on-ink) 55%, var(--case-wipes-accent));
  color: var(--case-wipes-accent);
}
.study-card .cx-ultra {
  background: linear-gradient(144deg, var(--case-neuriva-accent), color-mix(in srgb, var(--case-neuriva-accent) 43%, var(--color-ink)));
  color: var(--color-inverse-text);
}
.cx-ultra .cx-brand span { color: var(--case-neuriva-on-ink); }
.cx-ultra .cx-pack {
  inset: auto auto 8% 5%;
  width: 37%;
}
.cx-campaign {
  position: absolute;
  inset: auto 5% 12% auto;
  width: 53%;
}
.cx-campaign img {
  display: block;
  width: 100%;
  border: clamp(2px, .6cqw, 5px) solid var(--color-ink);
  border-radius: var(--radius-control);
  box-shadow: var(--study-shadow);
}
.cx-campaign span {
  display: block;
  margin-top: .9cqw;
  color: var(--case-neuriva-on-ink);
  font-size: clamp(11px, 2.6cqw, 17px);
  font-weight: 600;
  text-align: right;
}
.study-card .cx-digestive {
  background: radial-gradient(ellipse at 14% 75%, var(--illustration-white), transparent 59%),
    linear-gradient(140deg, var(--case-digestive-surface), var(--case-digestive-on-ink));
  color: var(--case-digestive-accent);
}
.cx-digestive .cx-brand { font-size: clamp(21px, 6.8cqw, 45px); }
.cx-digestive .cx-pack {
  inset: auto auto 4% 5%;
  width: 42%;
}
.cx-search-art {
  position: absolute;
  width: 48%;
  right: 5%;
  bottom: 13%;
  display: grid;
  gap: 2.4cqw;
  transform: rotate(-5deg);
}
.cx-query, .cx-listing {
  background: var(--illustration-white);
  box-shadow: var(--study-shadow);
  padding: 3.3cqw;
}
.cx-query {
  display: flex;
  align-items: center;
  gap: 1.9cqw;
  border-radius: var(--radius-pill);
  font: 500 clamp(11px, 3.2cqw, 19px)/1.15 var(--font-ui);
}
.cx-query svg { width: 3.9cqw; height: auto; flex: none; }
.cx-listing {
  border-radius: var(--radius-control);
  font: 650 clamp(14px, 4.7cqw, 30px)/1.06 var(--study-heading);
}
.cx-listing span {
  display: block;
  margin-bottom: .55em;
  color: var(--color-muted);
  font: 550 clamp(10px, 2.8cqw, 16px)/1 var(--font-ui);
}

/* Launch thumbnails share the artwork frame and keep the card copy below it. */
.cx-cover .pack-cutout {
  display: block;
  height: auto;
  filter: drop-shadow(0 .9cqw 1.4cqw color-mix(in srgb, var(--color-ink) 24%, transparent));
}
.cx-wipes .cx-pack {
  inset: auto 6% 7%;
  width: 88%;
}
.cx-wipes::before {
  content: '';
  position: absolute;
  inset: 40% -12% -27%;
  border-radius: 50%;
  background: color-mix(in srgb, var(--case-wipes-surface) 28%, transparent);
  transform: rotate(-11deg);
}
/* Give each card a single artwork-matched interaction color. */
.launch-review .study-reckitt { --accent: var(--reckitt-deep-pink); }
.launch-review .study-jeeb { --accent: var(--case-jeeb-accent); }
.launch-review :is(.study-table, .study-audiliv) { --accent: var(--color-muted); }

.study-card .cx-cover-reckitt {
  color: var(--color-inverse-text);
  background: linear-gradient(133deg, var(--accent) 6%, var(--reckitt-energy-pink) 76%);
}
.cx-cover-reckitt::before, .cx-cover-reckitt::after {
  content: '';
  position: absolute;
  inset: auto -22% -65% 20%;
  height: 165%;
  border: 1px solid color-mix(in srgb, var(--reckitt-light-pink) 55%, transparent);
  border-radius: 50%;
  transform: rotate(-27deg);
}
.cx-cover-reckitt::after { inset: auto -13% -67% 30%; }
.cx-brand-shelf { position: absolute; inset: 0; }
.cx-brand-shelf .pack-cutout { position: absolute; }
.cx-shelf-spray { width: 18%; left: 4%; bottom: 13%; transform: rotate(-7deg); }
.cx-shelf-single { width: 17%; left: 17%; bottom: 6%; transform: rotate(4deg); z-index: 1; }
.cx-shelf-finish { width: 33%; left: 31%; bottom: 10%; transform: rotate(-3deg); }
.cx-shelf-energy { width: 21%; left: 56%; bottom: 5%; transform: rotate(5deg); z-index: 1; }
.cx-shelf-airborne { width: 30%; right: 4%; bottom: 16%; transform: rotate(6deg); }

.study-card .cx-cover-venmo {
  color: var(--case-venmo-accent);
  background: linear-gradient(140deg, var(--case-venmo-surface), var(--case-venmo-on-ink));
}
.cx-venmo-truck, .cx-venmo-phones { position: absolute; height: auto; }
.cx-venmo-truck { width: 64%; left: 1%; bottom: 9%; }
.cx-venmo-phones {
  width: 47%;
  right: 2%;
  bottom: 4%;
  filter: drop-shadow(0 1cqw 1.4cqw color-mix(in srgb, var(--color-ink) 24%, transparent));
}
.launch-review .study-auria { --accent: var(--auria-slate); }
.study-card .cx-cover-auria {
  color: var(--auria-night-text);
  background: var(--auria-night-canvas);
}
.cx-auria-thumbnail {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.cx-cover-auria .launch-lock-icon {
  position: absolute;
  z-index: 1;
  top: 7%;
  right: 6%;
  color: var(--auria-night-link);
}
.study-card .cx-cover-jeeb {
  color: var(--accent);
  background: linear-gradient(144deg, var(--case-jeeb-surface) 18%, var(--case-jeeb-on-ink));
}
.cx-jeeb-title {
  position: absolute;
  left: 6%;
  top: 29%;
  z-index: 1;
  color: var(--color-ink);
  margin: 0;
  font: 640 clamp(18px, 5.8cqw, 37px)/1.04 var(--study-heading);
  letter-spacing: -.035em;
}
.cx-jeeb-receipt {
  position: absolute;
  width: 33%;
  left: 11%;
  bottom: 8%;
  padding: 3%;
  color: var(--case-jeeb-accent);
  background: var(--illustration-white);
  border-radius: var(--radius-control);
  box-shadow: var(--study-shadow);
  transform: rotate(-8deg);
}
.cx-jeeb-receipt span { font: 650 clamp(11px, 3cqw, 18px)/1 var(--font-ui); }
.cx-jeeb-receipt i {
  display: block;
  width: 100%;
  height: .55cqw;
  background: var(--case-jeeb-on-ink);
  margin-top: 2.1cqw;
  border-radius: var(--radius-pill);
}
.cx-jeeb-receipt i:last-child { width: 66%; }
.cx-jeeb-device {
  position: absolute;
  width: 36%;
  right: 7%;
  top: 8%;
  padding: 1.1%;
  background: var(--color-ink);
  border-radius: 6cqw;
  box-shadow: 0 2cqw 4cqw color-mix(in srgb, var(--case-jeeb-accent) 32%, transparent);
  transform: rotate(7deg);
}
.cx-jeeb-device img { display: block; width: 100%; height: auto; border-radius: 5cqw; }
.cx-cover-table img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 58%; }
.study-card .cx-cover-audiliv { background: var(--color-sheet); color: var(--color-ink); }
.cx-cover-audiliv .cx-brand {
  padding: 2.6cqw 3cqw;
  border-radius: var(--radius-control);
  background: var(--color-sheet);
}
.cx-cover-audiliv .cx-brand img { display: block; width: 23cqw; height: auto; }
.cx-cover-audiliv .cx-brand span { font-size: clamp(11px, 3cqw, 18px); }
.cx-cover-audiliv .cx-audiliv-photo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.launch-review .snackme-fan { position: absolute; inset: 26% 0 4%; height: auto; }
.launch-review .snackme-fan > div { width: 25%; }
.launch-review .snackme-fan > div:first-child { left: 19%; transform: translateY(-48%) rotate(-11deg); }
.launch-review .snackme-fan > div:nth-child(2) { left: 37.5%; transform: translateY(-54%) rotate(-2deg); }
.launch-review .snackme-fan > div:last-child { right: 19%; transform: translateY(-48%) rotate(11deg); }
.launch-card-meta { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 4px 12px; margin-bottom: 12px; }
.launch-review .study-card .project-discipline { color: var(--color-muted); }
.launch-review .launch-card-meta .project-discipline { margin: 0; }
.launch-card-status { color: var(--color-muted); font-size: 13px; }
.launch-sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
