
.buildpress-gjc-web-showcase {
  --ai-ink: var(--e-global-color-primary, #050505);
  --ai-text: var(--e-global-color-text, #333333);
  --ai-accent: var(--e-global-color-accent, #e3185c);
  --ai-accent-dk: var(--e-global-color-tonepinkdk, #c10b45);
  --ai-paper: var(--e-global-color-900224d, #ffffff);
  --ai-soft: color-mix(in srgb, var(--ai-paper) 95%, var(--ai-ink));
  --ai-line: color-mix(in srgb, var(--ai-ink) 12%, transparent);
  --ai-muted: color-mix(in srgb, var(--ai-text) 72%, var(--ai-paper));
  --ai-green: var(--e-global-color-tonegreen, #1fae9c);
  --ai-green-dk: var(--e-global-color-tonegreendk, #0f766e);
  --ai-gold: var(--e-global-color-tonegold, #e69a2e);
  --ai-gold-dk: var(--e-global-color-tonegolddk, #b45309);
  --ai-coral: var(--e-global-color-tonecoral, #f0456e);
  --ai-coral-dk: var(--e-global-color-tonecoraldk, #be123c);
  --ai-cyan: var(--e-global-color-tonecyan, #2bb7d0);
  --ai-violet: var(--e-global-color-toneviolet, #a07bff);
  --ai-fs: var(--e-global-typography-text-font-size, 1rem);
  --ai-fs-sm: calc(var(--ai-fs) * 0.875);
  --ai-fs-xs: calc(var(--ai-fs) * 0.75);
  --ai-fs-title: var(--gjc-home-type-section, 3.125rem);
  --ai-font: var(--e-global-typography-text-font-family, sans-serif);
  --ai-font-ui: var(--e-global-typography-accent-font-family, sans-serif);
  --ai-font-display: var(--e-global-typography-primary-font-family, serif);
  position: relative;
  padding: 6.5rem 1.5rem;
  color: var(--ai-ink);
  background: var(--ai-paper);
  font-family: var(--ai-font);
}
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__inner { position: relative; width: min(100%, 75rem); margin-inline: auto; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__eyebrow {
  display: inline-flex;
  gap: 0.5rem;
  align-items: center;
  margin: 0 0 1rem;
  padding: 0.4rem 0.8rem;
  color: var(--ai-accent-dk);
  background: color-mix(in srgb, var(--ai-accent) 9%, var(--ai-paper));
  border-radius: 999px;
  font-family: var(--ai-font-ui);
  font-size: var(--ai-fs-xs);
  font-weight: 800;
  letter-spacing: 0.02em;
  line-height: 1.3;
}
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__eyebrow::before { width: 0.4rem; height: 0.4rem; content: ""; background: currentColor; border-radius: 50%; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__title {
  max-width: 20ch;
  margin: 0;
  color: var(--ai-ink);
  font-family: var(--ai-font-display);
  font-size: var(--ai-fs-title);
  font-weight: var(--e-global-typography-primary-font-weight, 700);
  line-height: 1.08;
  text-wrap: balance;
}
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__lead {
  max-width: 56ch;
  margin: 1.25rem 0 0;
  color: var(--ai-text);
  font-size: calc(var(--ai-fs) * 1.0625);
  line-height: 1.65;
}
@media (max-width: 767px) {
  .buildpress-gjc-web-showcase { padding: 4.5rem 1rem; }
  .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__title { font-size: calc(var(--ai-fs-title) * 0.7); }
  .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__lead { font-size: var(--ai-fs); }
}

.buildpress-gjc-web-showcase { --web-peak: var(--e-global-color-edcaf05, #2c2e35); --web-sky: var(--e-global-color-b8fbd93, #bdecf6); --web-blush: var(--e-global-color-14ace27, #fdeaf1);
  --web-pale: var(--e-global-color-a272205, #d5f0fc); --web-blue: var(--e-global-color-toneblue, #5b9bff); --web-blue-dk: var(--e-global-color-tonebluedk, #1d4ed8);
  --web-lime: var(--e-global-color-tonelime, #2bb56b); --web-orange: var(--e-global-color-toneorange, #f2762b); --web-orange-dk: var(--e-global-color-toneorangedk, #c2410c);
  --web-violet-dk: var(--e-global-color-tonevioletdk, #7c3aed); --web-mate: var(--e-global-color-8ab7c18, #57c4f2); --web-forest: var(--e-global-color-c76f898, #4f9b63); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__head { display: flex; flex-wrap: wrap; gap: 2rem; align-items: end; justify-content: space-between; margin-bottom: 2.5rem; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__intro { max-width: 44rem; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__filters { display: flex; flex-wrap: wrap; gap: 0.5rem; }
/* The kit styles every <button> (and :hover/:focus) at 0,2,1 specificity (8px radius, pink fill) — restate all states at 0,3,0+. */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__filters .buildpress-gjc-web-showcase__filter, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__filters .buildpress-gjc-web-showcase__filter:hover, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__filters .buildpress-gjc-web-showcase__filter:focus, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__filters .buildpress-gjc-web-showcase__filter:active {
  display: inline-flex; align-items: center; min-height: 2.5rem; margin: 0; padding: 0 1rem; color: var(--ai-ink); cursor: pointer; background: var(--ai-paper);
  border: 1px solid var(--ai-line); border-radius: 999px; box-shadow: none; font-family: var(--ai-font-ui); font-size: var(--ai-fs-sm); font-weight: 700; line-height: 1;
  text-decoration: none; transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease;
}
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__filters .buildpress-gjc-web-showcase__filter.is-active, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__filters .buildpress-gjc-web-showcase__filter.is-active:hover, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__filters .buildpress-gjc-web-showcase__filter.is-active:focus { color: var(--ai-paper); background: var(--ai-ink); border-color: var(--ai-ink); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__filters .buildpress-gjc-web-showcase__filter:focus-visible { outline: 2px solid var(--ai-accent); outline-offset: 2px; }
@media (hover: hover) and (pointer: fine) { .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__filters .buildpress-gjc-web-showcase__filter:not(.is-active):hover { border-color: var(--ai-ink); } }

.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2.5rem 1.75rem; margin: 0; padding: 0; list-style: none; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__card { min-width: 0; margin: 0; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__card[hidden] { display: none; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__open { display: grid; gap: 1rem; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__screen {
  position: relative; display: block; overflow: hidden; aspect-ratio: 16 / 10; background: var(--ai-soft); border-radius: 20px;
  box-shadow: 0 0 0 1px var(--ai-line), 0 1.5rem 3rem -2rem color-mix(in srgb, var(--ai-ink) 45%, transparent);
  container-type: inline-size; isolation: isolate; transform: translateZ(0);
}
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__chrome { position: absolute; top: 0; left: 0; z-index: 6; display: flex; gap: 0.8cqw; padding: 2.2cqw 2.6cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__chrome i { width: 1.1cqw; height: 1.1cqw; background: color-mix(in srgb, var(--ai-paper) 70%, transparent); border-radius: 50%; box-shadow: 0 0 0 1px color-mix(in srgb, var(--ai-ink) 12%, transparent); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__meta { display: flex; flex-wrap: wrap; gap: 0.5rem 1rem; align-items: center; justify-content: space-between; padding: 0 0.25rem; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__name { color: var(--ai-ink); font-family: var(--ai-font-ui); font-size: calc(var(--ai-fs) * 1.0625); font-weight: 800; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__tags { display: flex; flex-wrap: wrap; gap: 0.375rem; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__tag { padding: 0.25rem 0.625rem; border-radius: 999px; font-family: var(--ai-font-ui); font-size: var(--ai-fs-xs); font-weight: 700; line-height: 1.3; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__tag { color: var(--ai-text); background: var(--ai-soft); }

/* last card = invitation */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__end {
  position: relative; display: grid; align-content: center; justify-items: start; gap: 1rem; height: 100%; min-height: 16rem; padding: 2.5rem;
  overflow: hidden; background: radial-gradient(28rem 18rem at 100% 0%, color-mix(in srgb, var(--ai-accent) 14%, transparent), transparent 70%),
  radial-gradient(22rem 16rem at 0% 100%, color-mix(in srgb, var(--ai-cyan) 16%, transparent), transparent 70%), var(--ai-soft);
  border: 1px dashed color-mix(in srgb, var(--ai-ink) 22%, transparent); border-radius: 20px; box-sizing: border-box;
}
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__end-mark { display: grid; place-items: center; width: 3rem; height: 3rem; color: var(--ai-accent); background: var(--ai-paper); border-radius: 50%; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__end-mark svg { width: 1.5rem; height: 1.5rem; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__end-title { max-width: 16ch; margin: 0; color: var(--ai-ink); font-family: var(--ai-font-display); font-size: calc(var(--ai-fs-title) * 0.56); font-weight: 700; line-height: 1.2; text-wrap: balance; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__end-copy { max-width: 42ch; margin: 0; color: var(--ai-text); font-size: var(--ai-fs-sm); line-height: 1.6; text-wrap: pretty; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__cta {
  display: inline-flex; gap: 0.5rem; align-items: center; min-height: 3rem; padding: 0 1.25rem; color: var(--ai-paper); text-decoration: none;
  background: var(--ai-ink); border-radius: 8px; font-family: var(--ai-font-ui); font-size: var(--ai-fs-sm); font-weight: 800; transition: background-color 180ms ease;
}
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__cta svg { width: 1rem; height: 1rem; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__cta:hover, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__cta:focus-visible { color: var(--ai-paper); background: var(--ai-accent); }


/* ================= mock website (all sizes scale with the card via cqw) ================= */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m { position: absolute; inset: 0; display: block; overflow: hidden; color: var(--ai-ink); background: var(--ai-paper); font-family: var(--ai-font-ui); line-height: 1.2; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m__nav { position: absolute; top: 4.6cqw; right: 5cqw; left: 5cqw; z-index: 4; display: flex; gap: 3cqw; align-items: center; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m__logo { font-size: max(2.1cqw, 0.75rem); font-weight: 800; letter-spacing: -0.02em; white-space: nowrap; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m__links { display: flex; gap: 2.2cqw; margin-left: auto; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m__links i { width: 5cqw; height: 0.7cqw; background: currentColor; border-radius: 1cqw; opacity: 0.35; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m__navcta { width: 9cqw; height: 3.4cqw; background: currentColor; border-radius: 3cqw; opacity: 0.9; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m__copy { position: absolute; bottom: 9cqw; left: 5cqw; z-index: 4; display: grid; gap: 1.4cqw; justify-items: start; max-width: 48cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m__kicker { font-size: max(1.45cqw, 0.5625rem); font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; opacity: 0.75; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m__headline { font-family: var(--ai-font-display); font-size: max(5cqw, 1.125rem); font-weight: 700; line-height: 1.06; letter-spacing: -0.01em; text-wrap: balance; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m__sub { max-width: 40cqw; font-size: max(1.7cqw, 0.6875rem); line-height: 1.45; opacity: 0.8; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m__btn { margin-top: 0.8cqw; padding: 1.3cqw 2.6cqw; color: var(--ai-paper); background: var(--ai-ink); border-radius: 1cqw; font-size: max(1.55cqw, 0.625rem); font-weight: 800; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a { position: absolute; display: block; }

/* motion only on screen (JS toggles .is-live) and never with reduced motion */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__screen:not(.is-live) *, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__screen:not(.is-live) *::before, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__screen:not(.is-live) *::after { animation-play-state: paused !important; }
@media (prefers-reduced-motion: reduce) {
  .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__screen *, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__screen *::before, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__screen *::after { animation: none !important; }
}

/* --- aurora: skincare, soft morphing blobs + floating bottle --- */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--aurora { background: linear-gradient(160deg, var(--web-blush), var(--ai-paper) 60%); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--aurora .buildpress-gjc-web-showcase__a--b1, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--aurora .buildpress-gjc-web-showcase__a--b2, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--aurora .buildpress-gjc-web-showcase__a--b3 { width: 46cqw; height: 46cqw; border-radius: 42% 58% 60% 40% / 45% 45% 55% 55%; animation: gjc-web-morph 14s ease-in-out infinite alternate; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--aurora .buildpress-gjc-web-showcase__a--b1 { top: -10cqw; right: -6cqw; background: radial-gradient(closest-side, color-mix(in srgb, var(--ai-violet) 55%, transparent), transparent); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--aurora .buildpress-gjc-web-showcase__a--b2 { right: 18cqw; bottom: -22cqw; background: radial-gradient(closest-side, color-mix(in srgb, var(--ai-coral) 45%, transparent), transparent); animation-duration: 18s; animation-direction: alternate-reverse; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--aurora .buildpress-gjc-web-showcase__a--b3 { top: 6cqw; right: 26cqw; width: 30cqw; height: 30cqw; background: radial-gradient(closest-side, color-mix(in srgb, var(--ai-cyan) 40%, transparent), transparent); animation-duration: 11s; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--aurora .buildpress-gjc-web-showcase__a--bottle { right: 17cqw; bottom: 13cqw; z-index: 2; width: 13cqw; height: 26cqw; background: linear-gradient(100deg, color-mix(in srgb, var(--ai-paper) 92%, var(--ai-violet)), var(--ai-paper) 45%, color-mix(in srgb, var(--web-blush) 70%, var(--ai-violet) 12%)); border-radius: 4cqw 4cqw 2.5cqw 2.5cqw; box-shadow: inset 0 0 0 0.25cqw color-mix(in srgb, var(--ai-paper) 80%, transparent); animation: gjc-web-float 5s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--aurora .buildpress-gjc-web-showcase__a--bottle::before { position: absolute; top: -6cqw; left: 3.5cqw; width: 6cqw; height: 6.5cqw; content: ""; background: var(--ai-ink); border-radius: 1cqw 1cqw 0.4cqw 0.4cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--aurora .buildpress-gjc-web-showcase__a--bottle b { position: absolute; top: 9cqw; right: 2cqw; left: 2cqw; height: 6cqw; border-top: 0.25cqw solid color-mix(in srgb, var(--ai-ink) 30%, transparent); border-bottom: 0.25cqw solid color-mix(in srgb, var(--ai-ink) 30%, transparent); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--aurora .buildpress-gjc-web-showcase__a--jar { right: 6cqw; bottom: 13cqw; z-index: 2; width: 12cqw; height: 9cqw; background: linear-gradient(180deg, var(--ai-ink) 0 28%, color-mix(in srgb, var(--web-blush) 60%, var(--ai-paper)) 28%); border-radius: 1.5cqw 1.5cqw 3cqw 3cqw; animation: gjc-web-float 6s ease-in-out -2s infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--aurora .buildpress-gjc-web-showcase__a--shadow { right: 5cqw; bottom: 9cqw; width: 30cqw; height: 3cqw; background: radial-gradient(closest-side, color-mix(in srgb, var(--ai-ink) 22%, transparent), transparent); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--aurora .buildpress-gjc-web-showcase__m__btn { border-radius: 5cqw; }

/* --- resort: parallax hills, rising sun, looping waves --- */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--resort { background: linear-gradient(180deg, color-mix(in srgb, var(--web-sky) 80%, var(--ai-paper)), var(--ai-paper) 55%, var(--web-sky)); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--resort .buildpress-gjc-web-showcase__m__copy { top: 14cqw; bottom: auto; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--sun { top: 12cqw; right: 16cqw; width: 14cqw; height: 14cqw; background: radial-gradient(circle, var(--ai-gold) 45%, color-mix(in srgb, var(--ai-gold) 25%, transparent) 46%, transparent 70%); border-radius: 50%; animation: gjc-web-sun 10s ease-in-out infinite alternate; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bird { top: 13cqw; right: 40cqw; width: 3cqw; height: 1.4cqw; border-top: 0.35cqw solid var(--web-peak); border-radius: 50% 50% 0 0; animation: gjc-web-bird 12s linear infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bird2 { top: 17cqw; width: 2.2cqw; animation-delay: -5s; animation-duration: 15s; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--hills, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--hills2 { right: -4cqw; bottom: 17cqw; left: -4cqw; width: 108cqw; height: 18cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--hills path { fill: color-mix(in srgb, var(--web-peak) 55%, var(--web-sky)); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--hills2 { bottom: 14cqw; height: 13cqw; animation: gjc-web-drift 16s ease-in-out infinite alternate; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--hills2 path { fill: color-mix(in srgb, var(--ai-green-dk) 70%, var(--web-peak)); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--sea { right: 0; bottom: 0; left: 0; height: 17cqw; overflow: hidden; background: color-mix(in srgb, var(--ai-cyan-dk, var(--ai-cyan)) 70%, var(--web-peak)); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--w { position: absolute; left: 0; display: block; width: 200%; height: 5cqw; animation: gjc-web-wave 7s linear infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--w svg { display: block; width: 100%; height: 100%; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--w1 { top: -2cqw; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--w1 path { fill: color-mix(in srgb, var(--ai-cyan) 85%, var(--ai-paper)); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--w2 { top: 3cqw; animation-duration: 10s; animation-direction: reverse; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--w2 path { fill: var(--ai-cyan); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--w3 { top: 8cqw; animation-duration: 13s; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--w3 path { fill: color-mix(in srgb, var(--ai-cyan) 55%, var(--web-peak)); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--resort .buildpress-gjc-web-showcase__m__btn { background: var(--web-peak); border-radius: 5cqw; }

/* --- fintech: dark grid, line chart drawing itself, glass cards --- */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--fintech { color: var(--ai-paper); background: radial-gradient(60cqw 40cqw at 80% 20%, color-mix(in srgb, var(--web-blue) 35%, transparent), transparent 70%), var(--web-peak); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--fintech .buildpress-gjc-web-showcase__a--grid { inset: 0; background-image: linear-gradient(color-mix(in srgb, var(--ai-paper) 7%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--ai-paper) 7%, transparent) 1px, transparent 1px); background-size: 6cqw 6cqw; mask-image: radial-gradient(closest-side, var(--ai-ink), transparent); -webkit-mask-image: radial-gradient(closest-side, var(--ai-ink), transparent); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--chart { right: 4cqw; bottom: 8cqw; width: 52cqw; height: 30cqw; overflow: visible; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--area { fill: color-mix(in srgb, var(--web-blue) 22%, transparent); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--line { fill: none; stroke: var(--ai-cyan); stroke-width: 0.8; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 100; animation: gjc-web-draw 5s ease-in-out infinite; vector-effect: non-scaling-stroke; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--fintech .buildpress-gjc-web-showcase__a--line { stroke-width: 3; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--card { z-index: 3; display: flex; gap: 1.4cqw; align-items: center; padding: 1.6cqw 2cqw; color: var(--ai-paper); background: color-mix(in srgb, var(--ai-paper) 10%, transparent); border: 1px solid color-mix(in srgb, var(--ai-paper) 18%, transparent); border-radius: 1.6cqw; backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); animation: gjc-web-float 6s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--card small { display: block; font-size: 1.3cqw; opacity: 0.7; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--card b { display: block; font-size: 2.6cqw; font-weight: 800; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--c1 { top: 13cqw; right: 22cqw; display: grid; gap: 0.4cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--c1 i { width: 14cqw; height: 0.6cqw; margin-top: 0.6cqw; background: linear-gradient(90deg, var(--ai-green) 72%, color-mix(in srgb, var(--ai-paper) 20%, transparent) 72%); border-radius: 1cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--c2 { right: 5cqw; bottom: 30cqw; animation-delay: -3s; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--donut { width: 5cqw; height: 5cqw; background: conic-gradient(var(--ai-cyan) 0 62%, var(--ai-violet) 62% 84%, color-mix(in srgb, var(--ai-paper) 25%, transparent) 84%); border-radius: 50%; mask-image: radial-gradient(circle, transparent 52%, var(--ai-ink) 53%); -webkit-mask-image: radial-gradient(circle, transparent 52%, var(--ai-ink) 53%); animation: gjc-web-spin 9s linear infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--fintech .buildpress-gjc-web-showcase__m__btn { color: var(--web-peak); background: var(--ai-cyan); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--fintech .buildpress-gjc-web-showcase__m__headline { font-family: var(--ai-font-ui); font-weight: 800; letter-spacing: -0.03em; }

/* --- pho: warm restaurant, bowl with rising steam + menu ticker --- */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--pho { color: var(--ai-paper); background: linear-gradient(135deg, var(--web-orange-dk), var(--web-orange) 55%, var(--ai-gold)); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--pho .buildpress-gjc-web-showcase__m__copy { bottom: 14cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--pho .buildpress-gjc-web-showcase__a--glow { top: 6cqw; right: 2cqw; width: 50cqw; height: 50cqw; background: radial-gradient(closest-side, color-mix(in srgb, var(--ai-gold) 70%, transparent), transparent); border-radius: 50%; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bowl { top: 20cqw; right: 9cqw; z-index: 2; width: 34cqw; height: 34cqw; background: radial-gradient(circle, var(--ai-paper) 60%, color-mix(in srgb, var(--ai-paper) 85%, var(--ai-ink)) 61% 68%, var(--ai-paper) 69%); border-radius: 50%; box-shadow: 0 3cqw 5cqw -2cqw color-mix(in srgb, var(--ai-ink) 50%, transparent); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--broth { position: absolute; inset: 4cqw; background: radial-gradient(circle at 40% 35%, color-mix(in srgb, var(--ai-gold) 70%, var(--ai-paper)), var(--ai-gold-dk) 75%); border-radius: 50%; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--herb { position: absolute; width: 4cqw; height: 2cqw; background: var(--web-lime); border-radius: 50% 0; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--h1 { top: 10cqw; left: 10cqw; transform: rotate(20deg); } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--h2 { top: 18cqw; left: 20cqw; transform: rotate(-30deg); } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--h3 { top: 13cqw; left: 22cqw; transform: rotate(70deg); background: var(--web-forest); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--slice { position: absolute; width: 9cqw; height: 5cqw; background: color-mix(in srgb, var(--web-orange-dk) 55%, var(--ai-paper)); border-radius: 50% 45% 50% 40%; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--s1 { top: 17cqw; left: 8cqw; transform: rotate(-12deg); } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--s2 { top: 9cqw; left: 16cqw; transform: rotate(18deg); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--chop { top: 18cqw; right: 4cqw; z-index: 3; width: 1.2cqw; height: 34cqw; background: linear-gradient(90deg, var(--web-peak), color-mix(in srgb, var(--web-peak) 60%, var(--ai-gold))); border-radius: 1cqw; box-shadow: 2.4cqw 1cqw 0 var(--web-peak); transform: rotate(28deg); transform-origin: top; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--steam { top: 4cqw; right: 17cqw; z-index: 3; display: flex; gap: 3cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--steam span { display: block; width: 4cqw; height: 14cqw; animation: gjc-web-steam 4s ease-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--steam span:nth-child(2) { animation-delay: -1.3s; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--steam span:nth-child(3) { animation-delay: -2.6s; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--steam svg { width: 100%; height: 100%; overflow: visible; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--steam path { fill: none; stroke: color-mix(in srgb, var(--ai-paper) 75%, transparent); stroke-width: 2.4; stroke-linecap: round; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--ticker { right: 0; bottom: 0; left: 0; z-index: 4; height: 7cqw; overflow: hidden; background: var(--web-peak); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--ticker > span { display: flex; width: max-content; height: 100%; align-items: center; animation: gjc-web-marquee 16s linear infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--ticker b { padding: 0 2.5cqw; font-size: 1.9cqw; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; white-space: nowrap; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--ticker b::after { margin-left: 5cqw; content: "✦"; color: var(--ai-gold); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--pho .buildpress-gjc-web-showcase__m__btn { color: var(--web-orange-dk); background: var(--ai-paper); }

/* --- skyline: day → dusk → night, windows light up --- */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--skyline { color: var(--ai-ink); background: var(--web-peak); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--sky { inset: 0 0 -200% 0; background: linear-gradient(180deg, var(--web-sky), color-mix(in srgb, var(--web-sky) 50%, var(--ai-paper)) 18%, color-mix(in srgb, var(--ai-coral) 55%, var(--ai-gold)) 38%, var(--ai-violet) 55%, var(--web-peak) 80%); animation: gjc-web-daynight 14s ease-in-out infinite alternate; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--orb { top: 10cqw; right: 12cqw; width: 8cqw; height: 8cqw; background: var(--ai-paper); border-radius: 50%; box-shadow: 0 0 6cqw 1cqw color-mix(in srgb, var(--ai-paper) 60%, transparent); animation: gjc-web-orb 14s ease-in-out infinite alternate; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--stars { inset: 0 0 40% 0; background-image: radial-gradient(color-mix(in srgb, var(--ai-paper) 85%, transparent) 0.12cqw, transparent 0.2cqw); background-size: 7cqw 5cqw; opacity: 0; animation: gjc-web-stars 14s ease-in-out infinite alternate; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--city { right: 0; bottom: 0; left: 0; display: flex; gap: 1cqw; align-items: end; height: 42cqw; padding-left: 44cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--city i { position: relative; flex: 1; height: 60%; background-color: color-mix(in srgb, var(--web-peak) 92%, var(--ai-violet)); background-image: repeating-linear-gradient(90deg, transparent 0 1cqw, color-mix(in srgb, var(--ai-gold) 80%, var(--ai-paper)) 1cqw 2cqw, transparent 2cqw 3cqw), repeating-linear-gradient(180deg, transparent 0 1.2cqw, var(--web-peak) 1.2cqw 2.6cqw); background-blend-mode: normal; border-radius: 0.6cqw 0.6cqw 0 0; animation: gjc-web-lights 14s ease-in-out infinite alternate; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--city i:nth-child(2) { height: 88%; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--city i:nth-child(3) { height: 70%; animation-delay: -1s; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--city i:nth-child(4) { flex: 1.4; height: 100%; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--city i:nth-child(5) { height: 64%; animation-delay: -2s; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--city i:nth-child(6) { height: 80%; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--city i:nth-child(7) { height: 52%; animation-delay: -1.5s; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--skyline .buildpress-gjc-web-showcase__m__nav { color: var(--ai-ink); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--skyline .buildpress-gjc-web-showcase__m__copy { top: 13cqw; bottom: auto; max-width: 36cqw; padding: 2.6cqw; background: color-mix(in srgb, var(--ai-paper) 82%, transparent); border-radius: 2cqw; backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--skyline .buildpress-gjc-web-showcase__m__headline { font-size: 4.2cqw; }

/* --- ev: dark, orbiting rings around a glowing core --- */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--ev { color: var(--ai-paper); background: radial-gradient(50cqw 50cqw at 72% 55%, color-mix(in srgb, var(--web-blue-dk) 45%, transparent), transparent 70%), var(--ai-ink); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--halo { top: 50%; right: 12cqw; width: 36cqw; height: 36cqw; margin-top: -16cqw; background: radial-gradient(closest-side, color-mix(in srgb, var(--ai-cyan) 45%, transparent), transparent); border-radius: 50%; animation: gjc-web-pulse 4s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--orbit { top: 50%; right: 15cqw; width: 30cqw; height: 30cqw; margin-top: -13cqw; transform-style: preserve-3d; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--ring { position: absolute; inset: 0; border: 0.25cqw solid color-mix(in srgb, var(--ai-cyan) 60%, transparent); border-radius: 50%; animation: gjc-web-orbit 8s linear infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--ring b { position: absolute; top: -0.9cqw; left: 50%; width: 1.8cqw; height: 1.8cqw; background: var(--ai-paper); border-radius: 50%; box-shadow: 0 0 2cqw var(--ai-cyan); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--r1 { --tilt: rotateX(70deg); } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--r2 { --tilt: rotateX(70deg) rotateY(60deg); animation-duration: 11s; border-color: color-mix(in srgb, var(--ai-violet) 70%, transparent); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--r3 { --tilt: rotateX(70deg) rotateY(-60deg); animation-duration: 14s; animation-direction: reverse; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--core { position: absolute; inset: 10cqw; background: radial-gradient(circle at 35% 30%, var(--ai-paper), var(--ai-cyan) 40%, var(--web-blue-dk) 80%); border-radius: 50%; box-shadow: 0 0 5cqw color-mix(in srgb, var(--ai-cyan) 70%, transparent); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--chips { right: 5cqw; bottom: 6cqw; z-index: 4; display: flex; gap: 1.2cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--chips b { padding: 1cqw 1.8cqw; font-size: 1.4cqw; font-weight: 800; background: color-mix(in srgb, var(--ai-paper) 10%, transparent); border: 1px solid color-mix(in srgb, var(--ai-paper) 22%, transparent); border-radius: 5cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--ev .buildpress-gjc-web-showcase__m__headline { font-family: var(--ai-font-ui); font-weight: 800; letter-spacing: -0.03em; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--ev .buildpress-gjc-web-showcase__m__btn { color: var(--ai-ink); background: var(--ai-paper); border-radius: 5cqw; }

/* --- studio: kinetic type marquee + roaming cursor blob --- */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--studio { background: color-mix(in srgb, var(--ai-paper) 94%, var(--ai-gold)); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--marq { top: 15cqw; right: 0; left: 0; overflow: hidden; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--marq > span { display: flex; width: max-content; animation: gjc-web-marquee 18s linear infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--marq b { padding-right: 4cqw; color: var(--ai-ink); font-family: var(--ai-font-display); font-size: 13cqw; font-weight: 700; line-height: 1.1; letter-spacing: -0.03em; white-space: nowrap; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--marq b.is-outline { color: transparent; -webkit-text-stroke: 0.2cqw var(--ai-ink); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--cursor { top: 18cqw; left: 20cqw; z-index: 3; width: 11cqw; height: 11cqw; background: var(--ai-accent); border-radius: 50%; mix-blend-mode: multiply; animation: gjc-web-roam 9s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--thumbs { right: 5cqw; bottom: 7cqw; z-index: 4; display: flex; gap: 1.6cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--thumbs i { width: 12cqw; height: 9cqw; background: linear-gradient(135deg, var(--ai-cyan), var(--web-blue-dk)); border-radius: 1.2cqw; transform: rotate(-4deg); animation: gjc-web-float 5s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--thumbs i:nth-child(2) { background: linear-gradient(135deg, var(--ai-gold), var(--web-orange-dk)); transform: rotate(3deg); animation-delay: -1.5s; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--thumbs i:nth-child(3) { background: linear-gradient(135deg, var(--ai-violet), var(--ai-coral)); transform: rotate(-2deg); animation-delay: -3s; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--studio .buildpress-gjc-web-showcase__m__copy { bottom: 7cqw; max-width: 40cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--studio .buildpress-gjc-web-showcase__m__headline { font-size: 3.6cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--studio .buildpress-gjc-web-showcase__m__btn { display: none; }

/* --- academy: floating course cards, progress ring, bouncing badge --- */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--academy { background: linear-gradient(160deg, var(--web-pale), var(--ai-paper) 70%); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--dots { top: 10cqw; right: 3cqw; width: 44cqw; height: 40cqw; background-image: radial-gradient(color-mix(in srgb, var(--web-blue) 35%, transparent) 0.25cqw, transparent 0.3cqw); background-size: 3cqw 3cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--course { z-index: 2; display: grid; gap: 1cqw; width: 22cqw; padding: 1.4cqw; background: var(--ai-paper); border-radius: 2cqw; box-shadow: 0 2cqw 4cqw -2cqw color-mix(in srgb, var(--web-blue-dk) 45%, transparent); animation: gjc-web-float 6s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--course i { height: 9cqw; background: linear-gradient(135deg, var(--web-lime), var(--ai-green-dk)); border-radius: 1.2cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--course b { font-size: 1.8cqw; font-weight: 800; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--course small { width: 70%; height: 0.7cqw; background: color-mix(in srgb, var(--ai-ink) 14%, transparent); border-radius: 1cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--k1 { top: 13cqw; right: 26cqw; transform: rotate(-4deg); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--k2 { top: 25cqw; right: 5cqw; animation-delay: -3s; transform: rotate(3deg); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--k2 i { background: linear-gradient(135deg, var(--web-blue), var(--ai-violet)); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--pill { right: 34cqw; bottom: 5cqw; z-index: 3; display: flex; gap: 1cqw; align-items: center; padding: 1cqw 2cqw 1cqw 1cqw; background: var(--ai-paper); border-radius: 5cqw; box-shadow: 0 1.5cqw 3cqw -1.5cqw color-mix(in srgb, var(--ai-ink) 35%, transparent); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--pill svg { width: 5cqw; height: 5cqw; transform: rotate(-90deg); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--pill circle { fill: none; stroke: color-mix(in srgb, var(--ai-ink) 10%, transparent); stroke-width: 5; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--pill .buildpress-gjc-web-showcase__a--prog { stroke: var(--web-lime); stroke-dasharray: 100; stroke-linecap: round; animation: gjc-web-progress 5s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--pill b { font-size: 1.6cqw; font-weight: 800; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--badge { top: 9cqw; right: 22cqw; z-index: 3; display: grid; place-items: center; width: 6cqw; height: 6cqw; color: var(--ai-paper); background: var(--ai-gold); border-radius: 50%; font-size: 3cqw; box-shadow: 0 1cqw 2cqw -1cqw var(--ai-gold-dk); animation: gjc-web-bounce 2.4s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--academy .buildpress-gjc-web-showcase__m__btn { background: var(--web-blue-dk); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--academy .buildpress-gjc-web-showcase__m__headline { font-size: 4.4cqw; }

/* --- shop: product conveyor + cart bump --- */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--shop { background: color-mix(in srgb, var(--ai-paper) 90%, var(--web-lime)); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--shop .buildpress-gjc-web-showcase__m__copy { top: 14cqw; bottom: auto; max-width: 42cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--shop .buildpress-gjc-web-showcase__m__headline { font-family: var(--ai-font-ui); font-size: 4.6cqw; font-weight: 800; letter-spacing: -0.03em; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--belt { right: 0; bottom: 5cqw; left: 0; overflow: hidden; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--belt > span { display: flex; gap: 2cqw; width: max-content; padding-left: 2cqw; animation: gjc-web-marquee 20s linear infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--tile { display: grid; gap: 0.8cqw; width: 19cqw; padding: 1.2cqw; background: var(--ai-paper); border-radius: 1.8cqw; box-shadow: 0 1.5cqw 3cqw -2cqw color-mix(in srgb, var(--ai-ink) 40%, transparent); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--tile b { overflow: hidden; font-size: 1.5cqw; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--tile small { width: 45%; height: 0.8cqw; background: color-mix(in srgb, var(--ai-ink) 16%, transparent); border-radius: 1cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--shoe { position: relative; height: 12cqw; background: color-mix(in srgb, var(--ai-coral) 22%, var(--ai-paper)); border-radius: 1.2cqw; overflow: hidden; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--shoe::before { position: absolute; right: 12%; bottom: 22%; left: 12%; height: 42%; content: ""; background: var(--ai-coral); border-radius: 40% 70% 12% 18% / 60% 70% 20% 30%; box-shadow: inset 0 -1.2cqw 0 var(--ai-paper); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--t1 .buildpress-gjc-web-showcase__a--shoe { background: color-mix(in srgb, var(--web-blue) 22%, var(--ai-paper)); } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--t1 .buildpress-gjc-web-showcase__a--shoe::before { background: var(--web-blue-dk); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--t2 .buildpress-gjc-web-showcase__a--shoe { background: color-mix(in srgb, var(--ai-gold) 25%, var(--ai-paper)); } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--t2 .buildpress-gjc-web-showcase__a--shoe::before { background: var(--web-peak); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--t3 .buildpress-gjc-web-showcase__a--shoe { background: color-mix(in srgb, var(--web-lime) 25%, var(--ai-paper)); } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--t3 .buildpress-gjc-web-showcase__a--shoe::before { background: var(--ai-green-dk); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--cart { top: 3.8cqw; right: 5cqw; z-index: 5; display: grid; place-items: center; width: 5cqw; height: 5cqw; color: var(--ai-paper); background: var(--ai-ink); border-radius: 50%; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--cart svg { width: 2.6cqw; height: 2.6cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--cart b { position: absolute; top: -0.6cqw; right: -0.6cqw; display: grid; place-items: center; width: 2.4cqw; height: 2.4cqw; color: var(--ai-paper); background: var(--ai-accent); border-radius: 50%; font-size: 1.3cqw; animation: gjc-web-bump 3s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--shop .buildpress-gjc-web-showcase__m__navcta { display: none; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--shop .buildpress-gjc-web-showcase__m__links { margin-right: 6cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--shop .buildpress-gjc-web-showcase__m__btn { background: var(--ai-coral-dk); border-radius: 5cqw; }

@keyframes gjc-web-morph { 0% { border-radius: 42% 58% 60% 40% / 45% 45% 55% 55%; transform: translate(0, 0) rotate(0); } 100% { border-radius: 60% 40% 38% 62% / 58% 38% 62% 42%; transform: translate(-6cqw, 4cqw) rotate(40deg); } }
@keyframes gjc-web-float { 50% { translate: 0 -1.6cqw; } }
@keyframes gjc-web-sun { from { transform: translateY(6cqw); } to { transform: translateY(-2cqw); } }
@keyframes gjc-web-bird { from { transform: translateX(-30cqw); } to { transform: translateX(60cqw); } }
@keyframes gjc-web-drift { to { transform: translateX(-3cqw); } }
@keyframes gjc-web-wave { to { transform: translateX(-50%); } }
@keyframes gjc-web-draw { 0% { stroke-dashoffset: 100; } 60%, 100% { stroke-dashoffset: 0; } }
@keyframes gjc-web-spin { to { transform: rotate(360deg); } }
@keyframes gjc-web-steam { 0% { opacity: 0; transform: translateY(4cqw) scaleY(0.7); } 30% { opacity: 1; } 100% { opacity: 0; transform: translateY(-4cqw) scaleY(1.1); } }
@keyframes gjc-web-marquee { to { transform: translateX(-50%); } }
@keyframes gjc-web-daynight { to { transform: translateY(-66.66%); } }
@keyframes gjc-web-orb { 0% { background: var(--ai-gold); transform: translateY(0); } 100% { background: var(--ai-paper); transform: translateY(-3cqw); } }
@keyframes gjc-web-stars { 0%, 55% { opacity: 0; } 100% { opacity: 1; } }
@keyframes gjc-web-lights { 0%, 45% { background-image: repeating-linear-gradient(90deg, transparent 0 1cqw, color-mix(in srgb, var(--web-sky) 40%, var(--web-peak)) 1cqw 2cqw, transparent 2cqw 3cqw), repeating-linear-gradient(180deg, transparent 0 1.2cqw, var(--web-peak) 1.2cqw 2.6cqw); } 100% { background-image: repeating-linear-gradient(90deg, transparent 0 1cqw, color-mix(in srgb, var(--ai-gold) 80%, var(--ai-paper)) 1cqw 2cqw, transparent 2cqw 3cqw), repeating-linear-gradient(180deg, transparent 0 1.2cqw, var(--web-peak) 1.2cqw 2.6cqw); } }
@keyframes gjc-web-pulse { 50% { transform: scale(1.12); opacity: 0.7; } }
@keyframes gjc-web-orbit { from { transform: var(--tilt) rotateZ(0); } to { transform: var(--tilt) rotateZ(360deg); } }
@keyframes gjc-web-roam { 0% { transform: translate(0, 0); } 25% { transform: translate(40cqw, 6cqw); } 50% { transform: translate(62cqw, -4cqw); } 75% { transform: translate(22cqw, 8cqw); } 100% { transform: translate(0, 0); } }
@keyframes gjc-web-progress { 0% { stroke-dashoffset: 100; } 70%, 100% { stroke-dashoffset: 22; } }
@keyframes gjc-web-bounce { 50% { transform: translateY(-1.4cqw) rotate(8deg); } }
@keyframes gjc-web-bump { 0%, 70%, 100% { transform: scale(1); } 80% { transform: scale(1.35); } }


/* ================= option B: full-bleed scenes, glass nav, big type ================= */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b { color: var(--ai-paper); background: var(--web-peak); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b .buildpress-gjc-web-showcase__a--scene { inset: -4%; animation: gjc-web-b-kb 18s ease-in-out infinite alternate; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b .buildpress-gjc-web-showcase__m__nav { top: 3.4cqw; right: 4cqw; left: 4cqw; gap: 2.4cqw; padding: 1.1cqw 1.1cqw 1.1cqw 2.4cqw; background: color-mix(in srgb, var(--ai-paper) 16%, transparent); border: 1px solid color-mix(in srgb, var(--ai-paper) 30%, transparent); border-radius: 5cqw; backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b .buildpress-gjc-web-showcase__m__links i { opacity: 0.55; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b .buildpress-gjc-web-showcase__m__navcta { width: 8cqw; height: 3.2cqw; opacity: 1; border-radius: 3cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b .buildpress-gjc-web-showcase__m__copy { bottom: 7cqw; left: 6cqw; gap: 1.3cqw; max-width: 54cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b .buildpress-gjc-web-showcase__m__kicker { padding: 0.6cqw 1.5cqw; background: color-mix(in srgb, var(--ai-paper) 18%, transparent); border-radius: 3cqw; font-size: max(1.35cqw, 0.5625rem); letter-spacing: 0.08em; opacity: 1; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b .buildpress-gjc-web-showcase__m__headline { font-family: var(--ai-font-ui); font-size: max(5.8cqw, 1.2rem); font-weight: 800; line-height: 1.02; letter-spacing: -0.035em; text-wrap: balance; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b .buildpress-gjc-web-showcase__m__sub { max-width: 42cqw; opacity: 0.88; text-wrap: pretty; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b .buildpress-gjc-web-showcase__m__btn { color: var(--ai-ink); background: var(--ai-paper); border-radius: 5cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b.is-light, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-milktea, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-beauty, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-app, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-school, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-dalat { color: var(--ai-ink); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-milktea .buildpress-gjc-web-showcase__m__nav, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-beauty .buildpress-gjc-web-showcase__m__nav, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-app .buildpress-gjc-web-showcase__m__nav, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-school .buildpress-gjc-web-showcase__m__nav, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-dalat .buildpress-gjc-web-showcase__m__nav { background: color-mix(in srgb, var(--ai-paper) 55%, transparent); border-color: color-mix(in srgb, var(--ai-paper) 80%, transparent); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-milktea .buildpress-gjc-web-showcase__m__kicker, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-beauty .buildpress-gjc-web-showcase__m__kicker, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-app .buildpress-gjc-web-showcase__m__kicker, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-school .buildpress-gjc-web-showcase__m__kicker, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-dalat .buildpress-gjc-web-showcase__m__kicker { background: color-mix(in srgb, var(--ai-paper) 70%, transparent); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-milktea .buildpress-gjc-web-showcase__m__btn, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-beauty .buildpress-gjc-web-showcase__m__btn, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-app .buildpress-gjc-web-showcase__m__btn, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-school .buildpress-gjc-web-showcase__m__btn, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-dalat .buildpress-gjc-web-showcase__m__btn { color: var(--ai-paper); background: var(--ai-ink); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b .buildpress-gjc-web-showcase__a--chip { z-index: 4; display: inline-flex; gap: 1cqw; align-items: center; padding: 1.2cqw 2cqw; color: var(--ai-ink); background: var(--ai-paper); border-radius: 5cqw; box-shadow: 0 1.5cqw 3cqw -1.5cqw color-mix(in srgb, var(--ai-ink) 45%, transparent); font-size: max(1.5cqw, 0.5625rem); font-weight: 800; white-space: nowrap; animation: gjc-web-float 5s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b .buildpress-gjc-web-showcase__a--chip-br { right: 5cqw; bottom: 7cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b .buildpress-gjc-web-showcase__a--chip-tr { top: 13cqw; right: 6cqw; }

/* coffee — iced phin coffee */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--scene { display: block; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-coffee .buildpress-gjc-web-showcase__a--scene { background: radial-gradient(40cqw 36cqw at 70% 42%, color-mix(in srgb, var(--ai-gold) 60%, transparent), transparent 70%), linear-gradient(135deg, var(--web-orange-dk), color-mix(in srgb, var(--web-orange-dk) 45%, var(--ai-ink))); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--glass { right: 16cqw; bottom: -1cqw; z-index: 2; width: 19cqw; height: 36cqw; overflow: hidden; background: linear-gradient(180deg, transparent 0 14%, color-mix(in srgb, var(--ai-paper) 82%, var(--ai-gold)) 14% 34%, color-mix(in srgb, var(--web-orange-dk) 55%, var(--ai-ink)) 44% 100%); border: 0.45cqw solid color-mix(in srgb, var(--ai-paper) 60%, transparent); border-top: 0; border-radius: 0 0 2.6cqw 2.6cqw; box-shadow: inset 2cqw 0 2cqw -1.5cqw color-mix(in srgb, var(--ai-paper) 45%, transparent); animation: gjc-web-float 6s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--ice { position: absolute; width: 6cqw; height: 6cqw; background: color-mix(in srgb, var(--ai-paper) 42%, transparent); border: 1px solid color-mix(in srgb, var(--ai-paper) 60%, transparent); border-radius: 1.2cqw; animation: gjc-web-b-ice 5s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--ice:nth-child(1) { top: 6cqw; left: 2cqw; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--ice:nth-child(2) { top: 10cqw; left: 9cqw; animation-delay: -1.5s; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--ice:nth-child(3) { top: 17cqw; left: 4cqw; animation-delay: -3s; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--straw { position: absolute; top: -4cqw; left: 11cqw; width: 1.6cqw; height: 26cqw; background: var(--ai-paper); border-radius: 1cqw; transform: rotate(12deg); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bean { z-index: 1; width: 4cqw; height: 5.4cqw; background: color-mix(in srgb, var(--web-orange-dk) 40%, var(--ai-ink)); border-radius: 50%; animation: gjc-web-b-drift 7s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bean::after { position: absolute; top: 12%; left: 46%; width: 0.4cqw; height: 76%; content: ""; background: color-mix(in srgb, var(--ai-gold) 50%, var(--ai-ink)); border-radius: 1cqw; transform: rotate(8deg); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bn1 { top: 16cqw; right: 40cqw; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bn2 { top: 30cqw; right: 6cqw; transform: rotate(30deg); animation-delay: -2s; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bn3 { top: 11cqw; right: 8cqw; width: 3cqw; height: 4cqw; animation-delay: -4s; }

/* milk tea — cup, pearls, bubbles */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-milktea .buildpress-gjc-web-showcase__a--scene { background: radial-gradient(40cqw 40cqw at 72% 55%, color-mix(in srgb, var(--ai-paper) 70%, transparent), transparent 70%), linear-gradient(160deg, var(--web-blush), color-mix(in srgb, var(--ai-violet) 32%, var(--ai-paper))); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--cup { right: 17cqw; bottom: 4cqw; z-index: 2; width: 20cqw; height: 28cqw; background: linear-gradient(180deg, color-mix(in srgb, var(--ai-gold) 30%, var(--ai-paper)), color-mix(in srgb, var(--ai-gold) 55%, var(--web-orange-dk) 10%)); clip-path: polygon(0 0, 100% 0, 86% 100%, 14% 100%); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--cup i { position: absolute; bottom: 1.5cqw; width: 3.4cqw; height: 3.4cqw; background: radial-gradient(circle at 35% 35%, color-mix(in srgb, var(--ai-ink) 45%, var(--web-orange-dk)), var(--ai-ink)); border-radius: 50%; animation: gjc-web-b-pearl 2.6s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--cup i:nth-child(1) { left: 4cqw; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--cup i:nth-child(2) { left: 7.6cqw; animation-delay: -0.6s; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--cup i:nth-child(3) { left: 11.2cqw; animation-delay: -1.2s; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--cup i:nth-child(4) { bottom: 4.6cqw; left: 5.6cqw; animation-delay: -1.8s; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--cup i:nth-child(5) { bottom: 4.6cqw; left: 9.2cqw; animation-delay: -0.3s; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--cup i:nth-child(6) { bottom: 7.6cqw; left: 7.4cqw; animation-delay: -2.1s; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--lid { right: 16cqw; bottom: 31cqw; z-index: 3; width: 22cqw; height: 5cqw; background: color-mix(in srgb, var(--ai-paper) 75%, transparent); border: 1px solid var(--ai-paper); border-radius: 50% 50% 1cqw 1cqw / 100% 100% 1cqw 1cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--tstraw { right: 25cqw; bottom: 30cqw; z-index: 1; width: 2cqw; height: 16cqw; background: var(--ai-violet); border-radius: 1cqw; transform: rotate(8deg); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bub { z-index: 0; background: color-mix(in srgb, var(--ai-paper) 55%, transparent); border-radius: 50%; animation: gjc-web-b-rise 9s linear infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bb1 { right: 44cqw; bottom: -8cqw; width: 8cqw; height: 8cqw; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bb2 { right: 6cqw; bottom: -6cqw; width: 5cqw; height: 5cqw; animation-delay: -3s; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bb3 { right: 30cqw; bottom: -5cqw; width: 3cqw; height: 3cqw; animation-delay: -6s; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--sizes { top: 13cqw; right: 6cqw; z-index: 4; display: flex; gap: 1cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--sizes b { padding: 0.9cqw 1.8cqw; color: var(--ai-ink); background: color-mix(in srgb, var(--ai-paper) 75%, transparent); border-radius: 3cqw; font-size: max(1.4cqw, 0.5625rem); font-weight: 800; white-space: nowrap; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--sizes b.is-on { color: var(--ai-paper); background: var(--ai-ink); }

/* drink — can, splash rings, droplets */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-drink .buildpress-gjc-web-showcase__a--scene { background: radial-gradient(38cqw 38cqw at 70% 50%, color-mix(in srgb, var(--ai-paper) 45%, transparent), transparent 70%), linear-gradient(135deg, var(--web-lime), var(--ai-cyan)); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--can { top: 50%; right: 20cqw; z-index: 2; display: grid; place-items: center; width: 15cqw; height: 29cqw; margin-top: -13cqw; background: linear-gradient(90deg, color-mix(in srgb, var(--ai-green-dk) 80%, var(--ai-ink)) 0%, var(--ai-green) 22%, color-mix(in srgb, var(--ai-paper) 55%, var(--ai-green)) 38%, var(--ai-green) 55%, color-mix(in srgb, var(--ai-green-dk) 80%, var(--ai-ink)) 100%); border-radius: 2.2cqw / 1.4cqw; box-shadow: 0 3cqw 4cqw -2cqw color-mix(in srgb, var(--ai-ink) 45%, transparent); animation: gjc-web-b-can 5s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--can::before, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--can::after { position: absolute; right: 0; left: 0; height: 1.6cqw; content: ""; background: linear-gradient(90deg, color-mix(in srgb, var(--ai-paper) 55%, var(--ai-ink)), var(--ai-paper), color-mix(in srgb, var(--ai-paper) 55%, var(--ai-ink))); border-radius: 50%; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--can::before { top: -0.6cqw; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--can::after { bottom: -0.6cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--can b { color: var(--ai-paper); font-size: 2.6cqw; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; writing-mode: vertical-rl; transform: rotate(180deg); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--ring { top: 50%; right: 27.5cqw; z-index: 1; width: 30cqw; height: 30cqw; margin: -15cqw -15cqw 0 0; border: 0.5cqw solid color-mix(in srgb, var(--ai-paper) 70%, transparent); border-radius: 50%; animation: gjc-web-b-ring 4s ease-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--rg2 { animation-delay: -2s; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--drop { z-index: 3; width: 1.8cqw; height: 2.4cqw; background: color-mix(in srgb, var(--ai-paper) 80%, transparent); border-radius: 50% 50% 50% 50% / 60% 60% 40% 40%; animation: gjc-web-b-drift 6s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--dp1 { top: 14cqw; right: 38cqw; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--dp2 { top: 34cqw; right: 12cqw; animation-delay: -1.5s; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--dp3 { top: 20cqw; right: 14cqw; width: 1.2cqw; height: 1.6cqw; animation-delay: -3s; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--dp4 { top: 40cqw; right: 36cqw; width: 1.2cqw; height: 1.6cqw; animation-delay: -4.5s; }

/* beauty — arch, podium, bottles */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-beauty .buildpress-gjc-web-showcase__a--scene { background: linear-gradient(180deg, color-mix(in srgb, var(--web-blush) 85%, var(--ai-paper)), var(--ai-paper)); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--arch { right: 8cqw; bottom: 0; width: 36cqw; height: 46cqw; background: linear-gradient(180deg, color-mix(in srgb, var(--ai-coral) 22%, var(--ai-paper)), color-mix(in srgb, var(--ai-coral) 10%, var(--ai-paper))); border-radius: 18cqw 18cqw 0 0; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--podium { right: 11cqw; bottom: 3cqw; z-index: 1; width: 30cqw; height: 6cqw; background: var(--ai-paper); border-radius: 50%; box-shadow: 0 1.5cqw 3cqw -1cqw color-mix(in srgb, var(--ai-coral) 40%, transparent); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--btl { z-index: 2; bottom: 6cqw; border-radius: 1.6cqw; animation: gjc-web-float 6s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bt1 { right: 26cqw; width: 8cqw; height: 22cqw; background: linear-gradient(90deg, color-mix(in srgb, var(--ai-paper) 85%, var(--ai-coral)), var(--ai-paper) 40%, color-mix(in srgb, var(--ai-coral) 25%, var(--ai-paper))); border-radius: 1.6cqw 1.6cqw 1cqw 1cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bt1::before { position: absolute; top: -4cqw; left: 2.4cqw; width: 3.2cqw; height: 4.4cqw; content: ""; background: var(--ai-coral-dk); border-radius: 0.8cqw 0.8cqw 0 0; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bt2 { right: 17cqw; width: 7cqw; height: 15cqw; background: linear-gradient(90deg, color-mix(in srgb, var(--ai-gold) 55%, var(--ai-paper)), color-mix(in srgb, var(--ai-gold) 25%, var(--ai-paper))); animation-delay: -2s; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bt2::before { position: absolute; top: -5cqw; left: 2.6cqw; width: 1.8cqw; height: 5.4cqw; content: ""; background: var(--ai-ink); border-radius: 1cqw 1cqw 0.3cqw 0.3cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bt3 { right: 13cqw; width: 9cqw; height: 6cqw; background: linear-gradient(180deg, var(--ai-coral-dk) 0 30%, color-mix(in srgb, var(--ai-paper) 90%, var(--ai-coral)) 30%); border-radius: 1cqw 1cqw 2cqw 2cqw; animation-delay: -4s; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--sheen { inset: 0; z-index: 3; background: linear-gradient(105deg, transparent 40%, color-mix(in srgb, var(--ai-paper) 55%, transparent) 50%, transparent 60%); animation: gjc-web-b-sheen 6s ease-in-out infinite; pointer-events: none; }

/* resort — sunset, shimmering sea, palm, booking bar */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-resort .buildpress-gjc-web-showcase__a--scene { background: linear-gradient(180deg, color-mix(in srgb, var(--ai-violet) 60%, var(--ai-ink)) 0%, var(--ai-coral) 42%, var(--ai-gold) 60%, var(--ai-gold) 61%); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--sun { top: 42cqw; left: 50%; width: 16cqw; height: 16cqw; margin: -8cqw 0 0 -8cqw; background: radial-gradient(circle, color-mix(in srgb, var(--ai-paper) 60%, var(--ai-gold)) 40%, transparent 72%); border-radius: 50%; animation: gjc-web-b-set 14s ease-in-out infinite alternate; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--sea { right: 0; bottom: 0; left: 0; height: 22.5cqw; background: repeating-linear-gradient(180deg, transparent 0 1.6cqw, color-mix(in srgb, var(--ai-gold) 45%, transparent) 1.6cqw 1.9cqw), linear-gradient(180deg, color-mix(in srgb, var(--ai-coral) 45%, var(--ai-violet)), color-mix(in srgb, var(--ai-violet) 35%, var(--ai-ink))); background-size: 100% 3.8cqw, 100% 100%; animation: gjc-web-b-sea 6s linear infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--palm { bottom: 0; left: -2cqw; z-index: 1; width: 18cqw; height: 34cqw; overflow: visible; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--palm path { fill: color-mix(in srgb, var(--ai-ink) 88%, var(--ai-violet)); stroke: color-mix(in srgb, var(--ai-ink) 88%, var(--ai-violet)); stroke-width: 2.4; stroke-linecap: round; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--palm path:first-child { fill: none; stroke-width: 3; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-resort .buildpress-gjc-web-showcase__m__copy { top: 13cqw; bottom: auto; left: 50%; justify-items: center; max-width: 70cqw; text-align: center; transform: translateX(-50%); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-resort .buildpress-gjc-web-showcase__m__btn { display: none; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--book { right: 8cqw; bottom: 5cqw; left: 8cqw; z-index: 4; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) auto; gap: 0.6cqw; align-items: center; padding: 0.8cqw; color: var(--ai-ink); background: var(--ai-paper); border-radius: 4cqw; box-shadow: 0 2cqw 4cqw -2cqw color-mix(in srgb, var(--ai-ink) 50%, transparent); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--book span { display: grid; gap: 0.5cqw; padding: 0.6cqw 2cqw; border-right: 1px solid var(--ai-line); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--book span:nth-child(3) { border-right: 0; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--book small { width: 60%; height: 0.6cqw; background: color-mix(in srgb, var(--ai-ink) 14%, transparent); border-radius: 1cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--book b { overflow: hidden; font-size: max(1.5cqw, 0.5625rem); font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--book em { padding: 1.4cqw 2.6cqw; color: var(--ai-paper); background: var(--ai-coral-dk); border-radius: 3cqw; font-size: max(1.5cqw, 0.5625rem); font-style: normal; font-weight: 800; white-space: nowrap; animation: gjc-web-bump 3s ease-in-out infinite; }

/* dalat — pine hills, drifting fog */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-dalat .buildpress-gjc-web-showcase__a--scene { background: linear-gradient(180deg, color-mix(in srgb, var(--web-sky) 70%, var(--ai-paper)), color-mix(in srgb, var(--ai-green) 20%, var(--ai-paper)) 60%); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--hill { right: -2cqw; left: -2cqw; width: 104cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--hl1 { bottom: 12cqw; height: 26cqw; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--hl1 path { fill: color-mix(in srgb, var(--ai-green-dk) 45%, var(--web-sky)); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--hl2 { bottom: 0; height: 22cqw; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--hl2 path { fill: color-mix(in srgb, var(--ai-green-dk) 85%, var(--ai-ink)); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--pines { right: 4cqw; bottom: 9cqw; z-index: 1; display: flex; gap: 1.2cqw; align-items: end; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--pines i { width: 5cqw; height: 12cqw; background: color-mix(in srgb, var(--ai-green-dk) 70%, var(--ai-ink)); clip-path: polygon(50% 0, 78% 38%, 66% 38%, 92% 72%, 58% 72%, 58% 100%, 42% 100%, 42% 72%, 8% 72%, 34% 38%, 22% 38%); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--pines i:nth-child(2) { height: 16cqw; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--pines i:nth-child(4) { height: 14cqw; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--pines i:nth-child(5) { height: 9cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--fog { left: -30cqw; width: 160cqw; height: 10cqw; background: radial-gradient(closest-side, color-mix(in srgb, var(--ai-paper) 85%, transparent), transparent); animation: gjc-web-b-fog 16s ease-in-out infinite alternate; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--fg1 { bottom: 20cqw; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--fg2 { bottom: 4cqw; z-index: 2; opacity: 0.8; animation-duration: 22s; animation-direction: alternate-reverse; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-dalat .buildpress-gjc-web-showcase__m__copy { top: 12cqw; bottom: auto; }

/* estate — night towers */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-estate .buildpress-gjc-web-showcase__a--scene { background: radial-gradient(50cqw 40cqw at 70% 30%, color-mix(in srgb, var(--ai-violet) 45%, transparent), transparent 70%), linear-gradient(180deg, color-mix(in srgb, var(--web-violet-dk) 55%, var(--ai-ink)), var(--ai-ink)); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--moon { top: 12cqw; right: 36cqw; width: 6cqw; height: 6cqw; background: var(--ai-paper); border-radius: 50%; box-shadow: 0 0 5cqw color-mix(in srgb, var(--ai-paper) 60%, transparent); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--towers { right: 4cqw; bottom: 0; z-index: 1; display: flex; gap: 1.4cqw; align-items: end; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--towers i { width: 9cqw; height: 40cqw; background-color: color-mix(in srgb, var(--web-blue-dk) 30%, var(--ai-ink)); background-image: repeating-linear-gradient(90deg, transparent 0 1cqw, color-mix(in srgb, var(--ai-gold) 75%, var(--ai-paper)) 1cqw 1.8cqw), repeating-linear-gradient(180deg, transparent 0 1.4cqw, color-mix(in srgb, var(--web-blue-dk) 30%, var(--ai-ink)) 1.4cqw 3cqw); border-radius: 1cqw 1cqw 0 0; opacity: 0.95; animation: gjc-web-b-win 5s steps(2) infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--towers i:nth-child(1) { height: 30cqw; animation-delay: -1s; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--towers i:nth-child(2) { width: 11cqw; height: 46cqw; clip-path: polygon(0 6%, 100% 0, 100% 100%, 0 100%); } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--towers i:nth-child(3) { height: 36cqw; animation-delay: -2.5s; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--play i { width: 0; height: 0; border-top: 0.8cqw solid transparent; border-bottom: 0.8cqw solid transparent; border-left: 1.3cqw solid var(--ai-coral-dk); }

.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-estate .buildpress-gjc-web-showcase__m__copy { max-width: 48cqw; }
/* app — phone + incoming notification */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-app .buildpress-gjc-web-showcase__a--scene { background: radial-gradient(40cqw 40cqw at 72% 50%, color-mix(in srgb, var(--web-blue) 35%, transparent), transparent 70%), linear-gradient(160deg, var(--web-pale), var(--ai-paper)); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--phone { top: 10cqw; right: 14cqw; z-index: 2; display: grid; align-content: start; gap: 1.4cqw; width: 22cqw; height: 44cqw; padding: 3.6cqw 1.6cqw 1.6cqw; background: var(--ai-paper); border: 1cqw solid var(--ai-ink); border-radius: 3.6cqw; box-sizing: border-box; box-shadow: 0 3cqw 5cqw -2cqw color-mix(in srgb, var(--web-blue-dk) 45%, transparent); transform: rotate(6deg); animation: gjc-web-float 6s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bal { display: grid; gap: 0.4cqw; padding: 1.6cqw; color: var(--ai-paper); background: linear-gradient(135deg, var(--web-blue-dk), var(--ai-violet)); border-radius: 1.6cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bal small { font-size: max(1.1cqw, 0.5rem); opacity: 0.8; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bal b { font-size: max(2cqw, 0.625rem); font-weight: 800; white-space: nowrap; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bars { display: flex; gap: 0.6cqw; align-items: end; height: 8cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bars i { flex: 1; height: 40%; background: color-mix(in srgb, var(--web-blue) 55%, var(--ai-paper)); border-radius: 0.4cqw; animation: gjc-web-b-bar 4s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bars i:nth-child(2) { animation-delay: 0.2s; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bars i:nth-child(3) { animation-delay: 0.4s; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bars i:nth-child(4) { animation-delay: 0.6s; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bars i:nth-child(5) { animation-delay: 0.8s; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--bars i:nth-child(6) { animation-delay: 1s; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--row { height: 2.4cqw; background: var(--ai-soft); border-radius: 0.8cqw; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--note { top: 26cqw; right: 26cqw; z-index: 3; display: flex; gap: 1cqw; align-items: center; padding: 1.2cqw 2cqw 1.2cqw 1.2cqw; color: var(--ai-ink); background: var(--ai-paper); border-radius: 2cqw; box-shadow: 0 2cqw 4cqw -2cqw color-mix(in srgb, var(--ai-ink) 45%, transparent); font-size: max(1.4cqw, 0.5625rem); font-weight: 800; white-space: nowrap; animation: gjc-web-b-note 5s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--note i { width: 3cqw; height: 3cqw; background: var(--ai-green); border-radius: 50%; }

/* school — stickers */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-school .buildpress-gjc-web-showcase__a--scene { background: radial-gradient(36cqw 36cqw at 72% 45%, color-mix(in srgb, var(--ai-paper) 45%, transparent), transparent 70%), linear-gradient(135deg, color-mix(in srgb, var(--ai-gold) 70%, var(--ai-paper)), var(--ai-gold)); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--say { top: 12cqw; right: 12cqw; z-index: 2; padding: 2.4cqw 3.6cqw; color: var(--ai-paper); background: var(--web-blue-dk); border-radius: 4cqw 4cqw 4cqw 0.8cqw; font-size: max(4.6cqw, 1rem); font-weight: 800; transform: rotate(-6deg); animation: gjc-web-bounce 3s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--grade { top: 30cqw; right: 30cqw; z-index: 2; display: grid; place-items: center; width: 11cqw; height: 11cqw; color: var(--ai-paper); background: var(--ai-coral-dk); border-radius: 50%; font-size: max(4cqw, 0.875rem); font-weight: 800; animation: gjc-web-spin 12s linear infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--streak { right: 6cqw; bottom: 8cqw; z-index: 2; display: flex; gap: 1cqw; align-items: center; padding: 1.2cqw 2cqw; color: var(--ai-ink); background: var(--ai-paper); border-radius: 5cqw; font-size: max(1.5cqw, 0.5625rem); font-weight: 800; white-space: nowrap; animation: gjc-web-float 5s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--streak i { width: 2.6cqw; height: 2.6cqw; background: conic-gradient(var(--ai-green) 0 70%, var(--ai-soft) 70%); border-radius: 50%; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--squig { top: 26cqw; right: 8cqw; width: 12cqw; height: 3cqw; border-top: 0.6cqw dashed var(--ai-ink); border-radius: 50%; opacity: 0.35; transform: rotate(-18deg); }

/* bakery — layered cake on a stand, croissant, falling sprinkles */
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-bakery { color: var(--ai-ink); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-bakery .buildpress-gjc-web-showcase__m__nav { background: color-mix(in srgb, var(--ai-paper) 55%, transparent); border-color: color-mix(in srgb, var(--ai-paper) 80%, transparent); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-bakery .buildpress-gjc-web-showcase__m__kicker { background: color-mix(in srgb, var(--ai-paper) 70%, transparent); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-bakery .buildpress-gjc-web-showcase__m__btn { color: var(--ai-paper); background: var(--web-orange-dk); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-bakery .buildpress-gjc-web-showcase__a--scene { background: radial-gradient(40cqw 40cqw at 70% 55%, color-mix(in srgb, var(--ai-paper) 70%, transparent), transparent 70%), linear-gradient(150deg, color-mix(in srgb, var(--ai-gold) 30%, var(--ai-paper)), color-mix(in srgb, var(--web-orange) 30%, var(--ai-paper))); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--cake { right: 14cqw; bottom: 4cqw; z-index: 2; width: 26cqw; height: 34cqw; animation: gjc-web-float 6s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--tier { position: absolute; left: 50%; border-radius: 1.6cqw 1.6cqw 1cqw 1cqw; transform: translateX(-50%); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--t-low { bottom: 5cqw; width: 24cqw; height: 11cqw; background: radial-gradient(circle at 50% 0, var(--ai-paper) 1.4cqw, transparent 1.5cqw) 0 0 / 3cqw 3cqw repeat-x, linear-gradient(180deg, color-mix(in srgb, var(--ai-coral) 35%, var(--ai-paper)), color-mix(in srgb, var(--ai-coral) 55%, var(--ai-paper))); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--t-top { bottom: 15.6cqw; width: 16cqw; height: 9cqw; background: radial-gradient(circle at 50% 0, var(--ai-paper) 1.2cqw, transparent 1.3cqw) 0 0 / 2.6cqw 2.6cqw repeat-x, linear-gradient(180deg, color-mix(in srgb, var(--ai-gold) 25%, var(--ai-paper)), color-mix(in srgb, var(--ai-gold) 45%, var(--ai-paper))); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--cherry { position: absolute; bottom: 24cqw; left: 50%; width: 3.6cqw; height: 3.6cqw; margin-left: -1.8cqw; background: radial-gradient(circle at 35% 35%, var(--ai-coral), var(--ai-coral-dk)); border-radius: 50%; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--cherry::after { position: absolute; bottom: 80%; left: 55%; width: 0.4cqw; height: 3cqw; content: ""; background: var(--ai-green-dk); border-radius: 1cqw; transform: rotate(20deg); transform-origin: bottom; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--stand { position: absolute; bottom: 0; left: 50%; width: 28cqw; height: 5cqw; background: linear-gradient(180deg, var(--ai-paper) 0 35%, transparent 35%), linear-gradient(90deg, transparent 44%, var(--ai-paper) 44% 56%, transparent 56%); border-radius: 1cqw; transform: translateX(-50%); filter: drop-shadow(0 1cqw 1.5cqw color-mix(in srgb, var(--web-orange-dk) 30%, transparent)); }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--croissant { top: 16cqw; right: 42cqw; z-index: 1; width: 12cqw; height: 6cqw; background: repeating-linear-gradient(100deg, color-mix(in srgb, var(--ai-gold) 80%, var(--web-orange-dk)) 0 1.6cqw, color-mix(in srgb, var(--ai-gold) 55%, var(--web-orange-dk)) 1.6cqw 2cqw); border-radius: 6cqw 6cqw 2cqw 2cqw / 6cqw 6cqw 1cqw 1cqw; transform: rotate(-14deg); animation: gjc-web-b-drift 7s ease-in-out infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--spr { width: 0.8cqw; height: 2cqw; border-radius: 1cqw; animation: gjc-web-b-fall 6s linear infinite; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--sp1 { top: -3cqw; right: 12cqw; background: var(--ai-coral); } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--sp2 { top: -3cqw; right: 30cqw; background: var(--ai-cyan); animation-delay: -1.5s; }
.buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--sp3 { top: -3cqw; right: 22cqw; background: var(--ai-violet); animation-delay: -3s; } .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__a--sp4 { top: -3cqw; right: 6cqw; background: var(--ai-gold-dk); animation-delay: -4.5s; }
@keyframes gjc-web-b-fall { from { transform: translateY(0) rotate(0); } to { transform: translateY(60cqw) rotate(360deg); } }
@keyframes gjc-web-b-bar { 0%, 100% { height: 30%; } 50% { height: 95%; } }
@keyframes gjc-web-b-kb { to { transform: scale(1.06) translate(-1%, -1%); } }
@keyframes gjc-web-b-ice { 50% { transform: translateY(-0.8cqw) rotate(8deg); } }
@keyframes gjc-web-b-drift { 50% { translate: 0 -1.8cqw; rotate: 12deg; } }
@keyframes gjc-web-b-pearl { 50% { transform: translateY(-1cqw); } }
@keyframes gjc-web-b-rise { to { transform: translateY(-70cqw); opacity: 0; } }
@keyframes gjc-web-b-can { 0%, 100% { transform: rotate(-10deg) translateY(0); } 50% { transform: rotate(-4deg) translateY(-1.6cqw); } }
@keyframes gjc-web-b-ring { from { transform: scale(0.6); opacity: 0.9; } to { transform: scale(1.35); opacity: 0; } }
@keyframes gjc-web-b-sheen { 0%, 55% { transform: translateX(-60%); } 100% { transform: translateX(60%); } }
@keyframes gjc-web-b-set { to { transform: translateY(3cqw); } }
@keyframes gjc-web-b-sea { to { background-position: 0 3.8cqw, 0 0; } }
@keyframes gjc-web-b-fog { to { transform: translateX(26cqw); } }
@keyframes gjc-web-b-win { 50% { opacity: 0.75; } }
@keyframes gjc-web-b-note { 0%, 10% { opacity: 0; transform: translateY(-2cqw) scale(0.96); } 20%, 85% { opacity: 1; transform: none; } 100% { opacity: 0; } }
@container (max-width: 520px) {
  .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b .buildpress-gjc-web-showcase__m__headline { font-size: max(6.4cqw, 1.05rem); }
  .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b .buildpress-gjc-web-showcase__m__copy { max-width: 50cqw; }
  .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-resort .buildpress-gjc-web-showcase__m__copy { max-width: 80cqw; }
  .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-app .buildpress-gjc-web-showcase__a--note { top: 30cqw; right: 20cqw; }
  .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b .buildpress-gjc-web-showcase__a--chip-br { bottom: 5cqw; }
  .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-resort .buildpress-gjc-web-showcase__a--book { right: 4cqw; left: 4cqw; grid-template-columns: repeat(2, minmax(0, 1fr)) auto; }
  .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-resort .buildpress-gjc-web-showcase__a--book span:nth-child(3) { display: none; }
  .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--b-resort .buildpress-gjc-web-showcase__a--book span:nth-child(2) { border-right: 0; }
}

@container (max-width: 520px) {
  .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m__sub { display: none; }
  .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--shop .buildpress-gjc-web-showcase__m__copy, .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__m--resort .buildpress-gjc-web-showcase__m__copy { top: 12cqw; }
}
@media (max-width: 1024px) {
  .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__grid { gap: 2rem 1.25rem; }
}
@media (max-width: 767px) {
  .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__grid { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
  .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__head { margin-bottom: 1.75rem; }
  .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__filters { flex-wrap: nowrap; max-width: 100%; margin-inline: -1rem; padding-inline: 1rem; overflow-x: auto; scrollbar-width: none; }
  .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__filters::-webkit-scrollbar { display: none; }
  .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__filters .buildpress-gjc-web-showcase__filter { flex: 0 0 auto; }
  .buildpress-gjc-web-showcase .buildpress-gjc-web-showcase__end { padding: 2rem 1.5rem; }
}
