/* A single five-card home deck; the established frame stays unchanged. */
#carousel .entry-card { border: 1px solid #fff; color: #fff; }
#carousel .entry-card > img { object-fit: cover; }
#carousel .entry-card::after { background: rgba(4,22,34,.08); }
#carousel .entry-copy {
  inset: 7% 8.2%; display: flex; flex-direction: column;
  text-shadow: 0 1px 5px rgba(4,22,34,.45);
}
#carousel .entry-brand { display: block; flex: none; font-size: clamp(9px,2.7cqw,11px); letter-spacing: 4px; font-weight: 400; }
#carousel .entry-brand-lockup { display: flex; align-items: center; gap: 8px; }
#carousel .entry-brand-lockup img { display: block; width: 26px; height: 16px; object-fit: contain; }
#carousel .entry-brand::after { content: ''; display: block; width: 28%; min-width: 104px; height: 1px; margin-top: 12px; background: #fff; opacity: .6; }
#carousel .entry-role { display: block; font-size: clamp(11px,3.2cqw,13px); line-height: 1.5; color: #e3edf2; font-weight: 400; margin-top: 22px; }
#carousel .entry-center { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding-bottom: 2%; }
#carousel .entry-title { display: block; margin: 0; font-size: clamp(22px,8.8cqw,37px); font-weight: 650; line-height: 1.28; letter-spacing: -.7px; }
#carousel .entry-description { display: block; font-size: clamp(11px,3.5cqw,14px); line-height: 1.85; margin-top: 16px; color: #e3edf2; font-weight: 400; word-break: keep-all; }
#carousel .entry-action { display: flex; flex-direction: column; align-items: center; gap: 13px; margin-top: 26px; font-size: clamp(14px,4.2cqw,17px); font-weight: 600; text-shadow: 0 1px 3px rgba(4,22,34,.95),0 0 10px rgba(4,22,34,.9); }
#carousel .entry-plus { display: grid; place-items: center; flex: none; width: clamp(52px,16cqw,64px); height: clamp(52px,16cqw,64px); border: 1px solid #ffffffb3; border-radius: 50%; color: #fff; background: rgba(4,22,34,.18); }
#carousel .entry-plus svg { width: 60%; height: 60%; stroke-width: 1.5; }
@media(max-width:959px) {
  /* Keep the existing mobile header and its reserved space inside the card. */
  #carousel .entry-copy { top: clamp(92px,22%,120px); }
}
@media(max-width:359px) {
  #carousel .entry-role { margin-top: 10px; }
  #carousel .entry-title { font-size: 21px; }
  #carousel .entry-description { margin-top: 10px; line-height: 1.65; }
  #carousel .entry-action { margin-top: 12px; gap: 8px; }
  #carousel .entry-plus { width: 44px; height: 44px; }
}

/* Sample cards occupy the same frame and participate in the same deck. */
#carousel .entry-example::after { display: none; }
#carousel .entry-example > .home-sample-art { position: absolute; inset: 0; width: 100%; height: 100%; aspect-ratio: auto; border: 0; border-radius: inherit; box-shadow: none; }
#carousel .entry-example .memory-copy { position: absolute; inset: 7% 8.2%; width: auto; height: auto; padding: 0; display: flex; flex-direction: column; text-shadow: 0 1px 5px #04162280; }
.home-sample-art .cp-poster-brand > b.home-sample-badge { display: inline-flex; align-items: center; margin-left: auto; padding: 4px 8px; border: 1px solid #ffffff70; border-radius: 6px; writing-mode: horizontal-tb; color: #fff; background: #071d3980; font-size: 11px; letter-spacing: 0; font-weight: 500; }
.home-sample-art .cp-poster-brand { gap: 7px; min-height: 22px; }
.home-sample-art .cp-poster-brand img { width: 26px; height: 16px; object-fit: contain; }
.home-sample-art .cp-poster-brand > span { font-size: clamp(9px,2.7cqw,11px); letter-spacing: 4px; font-weight: 400; }
.home-sample-art .cp-poster-title { margin-top: 20px; }
.home-sample-art .cp-poster-title > p { font-size: clamp(7px,2.8cqw,10px); letter-spacing: 1px; margin-bottom: 9px; }
.home-sample-art .cp-poster-title h3 { font-size: clamp(24px,9cqw,38px); letter-spacing: -.8px; }
.home-sample-art .cp-poster-medal { width: 31%; right: 9%; top: 55%; }
.home-sample-footer { margin-top: auto; position: relative; z-index: 1; }
.home-sample-footer > span { display: block; font-size: clamp(11px,4.1cqw,14px); line-height: 1.5; font-weight: 600; }
.home-sample-footer small { display: block; padding-top: 10px; margin-top: 10px; border-top: 1px solid #ffffff60; font-size: clamp(10px,3.1cqw,12px); line-height: 1.6; color: #e3edf2; letter-spacing: 0; word-break: keep-all; }
.home-sample-create { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; min-height: 50px; margin-top: 18px; padding: 12px 16px; border-radius: 14px; border: 1px solid transparent; background: var(--action-bg); color: #fff; font-weight: 650; font-size: 14px; }
.home-sample-create svg { width: 20px; height: 20px; }
.home-sample-preview { width: min(100%,360px); margin-inline: auto; }
@media(max-width:959px) {
  #carousel .entry-example .memory-copy { top: clamp(92px,22%,120px); }
  #carousel .entry-example .cp-poster-title { margin-top: 14px; }
}
