/* GJC Service Detail — service page body in the GUDJOB design system.
   Tokens: Manrope body · Merriweather titles · ink #050505 · accent #e3185c
   Canvas: min(100% - 2.5rem, 75rem) — same as other interior sections. */

.buildpress-gjc-service-detail {
  --gjc-sd-ink: var(--e-global-color-primary, #050505);
  --gjc-sd-accent: var(--e-global-color-accent, #e3185c);
  --gjc-sd-text: var(--e-global-color-text, #333333);
  --gjc-sd-line: color-mix(in srgb, var(--gjc-sd-ink) 14%, transparent);
  --gjc-sd-soft: color-mix(in srgb, var(--e-global-color-900224d, #ffffff) 94%, var(--gjc-sd-ink));
  padding: 7.25rem 1.5rem 6rem;
  color: var(--gjc-sd-ink);
  background: var(--e-global-color-900224d, #ffffff);
}

.buildpress-gjc-service-detail .buildpress-gjc-service-detail__inner { width: min(100%, 75rem); margin-inline: auto; }

/* ---- Overview (editorial two-column, mirrors services-intro) ---- */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__eyebrow {
  position: relative;
  display: inline-flex; gap: 0.55rem; align-items: center;
  width: fit-content; min-height: 2.125rem;
  margin: 0; padding: 0.5rem 0.8rem;
  color: var(--gjc-sd-ink);
  background: var(--e-global-color-900224d, #ffffff);
  border: 0.0625rem solid color-mix(in srgb, var(--gjc-sd-ink) 12%, transparent);
  border-radius: 999rem;
  box-shadow: 0 0.35rem 0.9rem color-mix(in srgb, var(--gjc-sd-ink) 9%, transparent);
  font-family: var(--e-global-typography-accent-font-family, sans-serif);
  font-size: var(--e-global-typography-accent-font-size, 0.75rem);
  font-weight: 700; line-height: 1.2;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__context-icon {
  display: none;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__eyebrow::before {
  content: ""; display: block; flex: 0 0 auto;
  width: 0.45rem; aspect-ratio: 1; border-radius: 50%;
  background: var(--gjc-sd-accent);
  box-shadow: 0 0 0 0.16rem color-mix(in srgb, var(--gjc-sd-accent) 18%, transparent);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__eyebrow::after {
  position: absolute;
  top: 50%;
  left: 0.8rem;
  width: 0.45rem;
  aspect-ratio: 1;
  content: "";
  pointer-events: none;
  border: 0.0625rem solid color-mix(in srgb, var(--gjc-sd-accent) 52%, transparent);
  border-radius: 50%;
  opacity: 0.5;
  transform: translateY(-50%) scale(1);
}
@media (prefers-reduced-motion: no-preference) {
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__eyebrow::after {
    animation: gjc-sd-pill-ping 2.4s ease-out infinite;
  }
}
@keyframes gjc-sd-pill-ping {
  0% { opacity: 0.55; transform: translateY(-50%) scale(1); }
  72%, 100% { opacity: 0; transform: translateY(-50%) scale(2.6); }
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__overview-content {
  display: grid; grid-template-columns: minmax(0, 0.85fr) minmax(19rem, 0.7fr);
  gap: clamp(2rem, 8vw, 7rem); align-items: start; margin-top: 0.875rem;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__overview-title {
  max-width: 14ch; margin: 0; color: var(--gjc-sd-ink);
  font-family: var(--e-global-typography-primary-font-family, serif);
  font-size: var(--gjc-home-type-section, 3.125rem);
  font-weight: var(--e-global-typography-primary-font-weight, 700);
  line-height: var(--e-global-typography-primary-line-height, 1.05);
  letter-spacing: var(--e-global-typography-primary-letter-spacing, 0);
  text-wrap: balance;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__overview-lead {
  max-inline-size: 44ch; margin: 0; color: var(--gjc-sd-text);
  font-family: var(--e-global-typography-text-font-family, sans-serif);
  font-size: var(--e-global-typography-text-font-size, 1rem);
  font-weight: var(--e-global-typography-text-font-weight, 400);
  line-height: var(--e-global-typography-text-line-height, 1.6);
}

/* ---- Capabilities (grouped compact grid) ---- */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__capabilities {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 2.5rem 4rem;
  margin-top: 4rem; padding-top: 3.5rem; border-top: 1px solid var(--gjc-sd-line);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__capability-title {
  margin: 0 0 1rem; color: var(--gjc-sd-ink);
  font-family: var(--e-global-typography-primary-font-family, serif);
  font-size: 1.25rem;
  font-weight: 400; line-height: 1.3;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__capability-list {
  margin: 0; padding: 0; list-style: none; display: grid; gap: 0.5rem;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__capability-item {
  position: relative; padding-left: 1.25rem; color: var(--gjc-sd-text);
  font-family: var(--e-global-typography-text-font-family, sans-serif);
  font-size: 0.938rem;
  line-height: 1.5;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__capability-item::before {
  content: ""; position: absolute; left: 0; top: 0.55em; width: 0.5rem; height: 1px; background: var(--gjc-sd-accent);
}

/* ---- Steps (4 creative cards, each with its own miniature) ---- */
/* Desktop-first: each step is a vertical card — the miniature gets a large
   fixed 4:3 canvas on top, with index + title + copy below. */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__steps {
  margin-top: 3rem;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__step {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
  align-items: start;
  padding: 1.25rem;
  border: 1px solid var(--gjc-sd-line);
  border-radius: 1.25rem;
  background: var(--e-global-color-900224d, #ffffff);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__step-mini {
  position: relative;
  aspect-ratio: 4 / 3;
  width: 100%;
  padding: 0;
  border-radius: 0.875rem;
  background: var(--gjc-sd-soft);
  overflow: hidden;
  container-type: inline-size;
}

/* Inner mini content fills the container and scales with it via
   container-relative units (cqw), so every miniature renders at the
   same proportion on any canvas size. */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__step-mini > div {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 6cqw;
  box-sizing: border-box;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__step-index {
  display: inline-block;
  margin-bottom: 0.5rem;
  color: var(--gjc-sd-accent);
  font-family: var(--e-global-typography-accent-font-family, sans-serif);
  font-size: var(--e-global-typography-accent-font-size, 0.75rem);
  font-weight: 700;
  line-height: 1.2;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__step-title {
  margin: 0 0 0.5rem;
  color: var(--gjc-sd-ink);
  font-family: var(--e-global-typography-primary-font-family, serif);
  font-size: var(--gjc-home-type-feature, 2rem);
  font-weight: 400;
  line-height: 1.2;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__step-copy {
  max-inline-size: 52ch;
  margin: 0;
  color: var(--gjc-sd-text);
  font-family: var(--e-global-typography-text-font-family, sans-serif);
  font-size: 0.938rem;
  line-height: var(--e-global-typography-text-line-height, 1.6);

  min-height: 4.5rem;
}

/* ---- Step miniature (light theme + motion) ---- */

@keyframes gjc-mini-pop { 0% { transform: translateY(1.5cqw) scale(0.96); opacity: 0; } 100% { transform: translateY(0) scale(1); opacity: 1; } }
@keyframes gjc-mini-grow { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@keyframes gjc-mini-draw { from { stroke-dashoffset: 1; } to { stroke-dashoffset: 0; } }
@keyframes gjc-mini-pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.45; } }

/* ---- Planner: kanban board ---- */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__planner {
  display: flex;
  flex-direction: column;
  gap: 2.5cqw;
  width: 100%;
  height: 100%;
  padding: 3cqw;
  background: var(--gjc-sd-soft);
  border-radius: 1.2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kanban-head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kanban-title {
  font-family: var(--e-global-typography-accent-font-family, sans-serif);
  font-size: 2.6cqw;
  font-weight: 800;
  color: var(--gjc-sd-ink);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kanban-week {
  font-size: 2cqw;
  font-weight: 600;
  color: var(--gjc-sd-text);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kanban-board {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2cqw;
  flex: 1;
  min-height: 0;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kanban-lane {
  display: grid;
  gap: 1.8cqw;
  align-content: start;
  padding: 1.8cqw;
  background: var(--e-global-color-900224d, #ffffff);
  border: 0.4cqw solid var(--gjc-sd-line);
  border-radius: 1.2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kanban-lane-label {
  font-family: var(--e-global-typography-accent-font-family, sans-serif);
  font-size: 2cqw;
  font-weight: 700;
  color: var(--gjc-sd-text);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kanban-card {
  display: grid;
  gap: 1.4cqw;
  padding: 1.6cqw;
  background: var(--gjc-sd-soft);
  border-radius: 1cqw;
  animation: gjc-mini-pop 450ms ease both;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kanban-card:nth-child(2) { animation-delay: 150ms; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kanban-card b { height: 1.8cqw; border-radius: 999px; background: color-mix(in srgb, var(--gjc-sd-ink) 28%, transparent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kanban-card i { height: 1.2cqw; width: 55%; border-radius: 999px; background: color-mix(in srgb, var(--gjc-sd-ink) 14%, transparent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kanban-card.is-active b { background: var(--gjc-sd-accent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kanban-card.is-active { animation: gjc-mini-pop 450ms ease both; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kanban-card.is-done { opacity: 0.6; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kanban-foot {
  display: flex;
  gap: 2cqw;
  align-items: center;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kanban-foot > span { font-size: 2cqw; font-weight: 600; color: var(--gjc-sd-text); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kanban-foot > i { flex: 1; height: 1.4cqw; border-radius: 999px; background: color-mix(in srgb, var(--gjc-sd-ink) 10%, transparent); overflow: hidden; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kanban-foot > i em {
  display: block;
  width: var(--gjc-kanban-p);
  height: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--gjc-sd-accent), color-mix(in srgb, var(--gjc-sd-accent) 60%, #ffffff), var(--gjc-sd-accent));
  background-size: 40cqw 100%;
  transform-origin: left;
  animation: gjc-mini-grow 900ms ease both;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kanban-foot > b { font-size: 2.4cqw; font-weight: 800; color: var(--gjc-sd-accent); }

/* ---- Content: social feed (diverse formats, no real images) ---- */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__content {
  width: 100%;
  height: 100%;
  padding: 3cqw;
  background: var(--gjc-sd-soft);
  border-radius: 1.2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2cqw;
  align-items: center;
  width: 100%;
  height: 100%;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-post {
  display: flex;
  flex-direction: column;
  gap: 1.2cqw;
  padding: 1.4cqw;
  background: var(--e-global-color-900224d, #ffffff);
  border: 0.4cqw solid var(--gjc-sd-line);
  border-radius: 1.2cqw;
  animation: gjc-mini-pop 450ms ease both;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-post:nth-child(2) { animation-delay: 180ms; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-post:nth-child(3) { animation-delay: 360ms; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-head { display: flex; gap: 1.5cqw; align-items: center; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-avatar { width: 4.5cqw; height: 4.5cqw; border-radius: 999px; background: var(--gjc-sd-accent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-lines { display: grid; gap: 0.8cqw; flex: 1; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-lines i { height: 1.4cqw; border-radius: 999px; background: color-mix(in srgb, var(--gjc-sd-ink) 22%, transparent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-lines i:first-child { width: 60%; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-lines i:last-child { width: 40%; background: color-mix(in srgb, var(--gjc-sd-ink) 12%, transparent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-media {
  aspect-ratio: 1 / 1;
  border-radius: 1cqw;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--gjc-sd-accent) 60%, var(--gjc-sd-ink)), color-mix(in srgb, var(--gjc-sd-accent) 22%, var(--e-global-color-900224d, #ffffff)));
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-media.is-image {
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--e-global-color-8ab7c18) 45%, var(--e-global-color-900224d, #ffffff)), color-mix(in srgb, var(--e-global-color-8ab7c18) 14%, var(--e-global-color-900224d, #ffffff)));
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-media.is-video {
  display: grid;
  place-items: center;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--gjc-sd-accent) 45%, var(--e-global-color-900224d, #ffffff)), color-mix(in srgb, var(--gjc-sd-accent) 14%, var(--e-global-color-900224d, #ffffff)));
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-media.is-video i {
  width: 6cqw;
  height: 6cqw;
  border-radius: 999px;
  background: var(--e-global-color-900224d, #ffffff);
  position: relative;
  box-shadow: 0 0.5cqw 2cqw color-mix(in srgb, var(--gjc-sd-ink) 20%, transparent);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-media.is-video i::after {
  content: ""; position: absolute; inset: 0; margin: auto;
  width: 0; height: 0;
  border-block: 1.2cqw solid transparent;
  border-inline-start: 2.2cqw solid var(--gjc-sd-accent);
  transform: translateX(0.4cqw);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-media.is-carousel {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 1cqw;
  padding-block-end: 1.5cqw;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--e-global-color-tonelime, #2bb56b) 45%, var(--e-global-color-900224d, #ffffff)), color-mix(in srgb, var(--e-global-color-tonelime, #2bb56b) 14%, var(--e-global-color-900224d, #ffffff)));
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-media.is-carousel i { width: 1.2cqw; height: 1.2cqw; border-radius: 999px; background: color-mix(in srgb, var(--gjc-sd-ink) 25%, transparent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-media.is-carousel i:nth-child(2) { background: var(--e-global-color-tonelime, #2bb56b); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-caption {
  margin: 0;
  font-size: 1.9cqw;
  font-weight: 600;
  line-height: 1.25;
  color: var(--gjc-sd-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-caption.is-below { margin-block-start: -0.8cqw; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-actions { display: flex; gap: 1.5cqw; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__feed-actions span { height: 1.3cqw; flex: 1; border-radius: 999px; background: color-mix(in srgb, var(--gjc-sd-ink) 12%, transparent); }

/* ---- KOL: creator cards with social icons ---- */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol {
  display: flex;
  flex-direction: column;
  gap: 2.5cqw;
  width: 100%;
  height: 100%;
  padding: 3cqw;
  background: var(--gjc-sd-soft);
  border-radius: 1.2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-creators { display: grid; gap: 2cqw; flex: 1; min-height: 0; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-creator {
  display: flex;
  gap: 2.5cqw;
  align-items: center;
  margin: 0;
  padding: 2cqw 2.5cqw;
  background: var(--e-global-color-900224d, #ffffff);
  border: 0.4cqw solid var(--gjc-sd-line);
  border-radius: 1.2cqw;
  animation: gjc-mini-pop 450ms ease both;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-creator:nth-child(2) { animation-delay: 150ms; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-creator:nth-child(3) { animation-delay: 300ms; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-creator img {
  display: block;
  width: 7cqw;
  height: 7cqw;
  border-radius: 999px;
  object-fit: cover;
  object-position: center;
  background: var(--e-global-color-8ab7c18, #57C4F2);
  border: 0;
  box-shadow: 0 0.16rem 0.55rem color-mix(in srgb, var(--gjc-sd-ink) 12%, transparent);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-creator figcaption { display: grid; gap: 0.5cqw; flex: 1; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-creator figcaption b { font-family: var(--e-global-typography-accent-font-family, sans-serif); font-size: 2.4cqw; font-weight: 800; font-style: normal; color: var(--gjc-sd-ink); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-creator figcaption i { font-style: normal; font-family: var(--e-global-typography-text-font-family, sans-serif); font-size: 2cqw; color: var(--gjc-sd-text); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-creator figcaption i em { font-style: normal; font-weight: 800; color: var(--gjc-sd-accent); margin-inline-end: 0.8cqw; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-socials { display: inline-flex; gap: 1.2cqw; align-items: center; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-social { width: 2.5cqw; height: 2.5cqw; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-social:nth-child(1) { color: #1877F2; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-social:nth-child(2) { color: var(--gjc-sd-accent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-social:nth-child(3) { color: #000000; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-total {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 2cqw 2.5cqw;
  background: var(--e-global-color-900224d, #ffffff);
  border: 0.4cqw solid var(--gjc-sd-line);
  border-radius: 1.2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-total > span { display: grid; gap: 0.4cqw; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-total b { font-size: 4cqw; font-weight: 800; color: var(--gjc-sd-accent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-total i { font-style: normal; font-size: 2.2cqw; color: var(--gjc-sd-text); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-spark { width: 12cqw; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-spark svg { display: block; width: 100%; height: 100%; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__kol-spark-line { fill: none; stroke: var(--gjc-sd-accent); stroke-width: 2; stroke-dasharray: 1; stroke-dashoffset: 1; animation: gjc-mini-draw 1.4s ease 500ms forwards; }

/* ---- Ads: campaign report (table-like) ---- */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ads {
  display: flex;
  flex-direction: column;
  gap: 2.5cqw;
  width: 100%;
  height: 100%;
  padding: 3cqw;
  background: var(--gjc-sd-soft);
  border-radius: 1.2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-title { font-family: var(--e-global-typography-accent-font-family, sans-serif); font-size: 2.6cqw; font-weight: 800; color: var(--gjc-sd-ink); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-live {
  display: inline-flex;
  gap: 1cqw;
  align-items: center;
  font-size: 2cqw;
  font-weight: 700;
  color: var(--gjc-sd-text);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-live i {
  width: 1.6cqw;
  height: 1.6cqw;
  border-radius: 999px;
  background: var(--e-global-color-tonelime, #2bb56b);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-rows { display: grid; gap: 1.5cqw; flex: 1; min-height: 0; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-row {
  display: grid;
  grid-template-columns: 1fr 1.2fr auto;
  gap: 2cqw;
  align-items: center;
  padding: 1.6cqw 2cqw;
  background: var(--e-global-color-900224d, #ffffff);
  border: 0.4cqw solid var(--gjc-sd-line);
  border-radius: 1cqw;
  animation: gjc-mini-pop 450ms ease both;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-row:nth-child(2) { animation-delay: 100ms; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-row:nth-child(3) { animation-delay: 200ms; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-row:nth-child(4) { animation-delay: 300ms; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-camp { display: flex; gap: 1.5cqw; align-items: center; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-camp i { width: 3cqw; height: 3cqw; border-radius: 0.8cqw; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-camp i.is-brand { background: var(--gjc-sd-accent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-camp i.is-perf { background: var(--e-global-color-8ab7c18, #57C4F2); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-camp i.is-lead { background: color-mix(in srgb, var(--gjc-sd-accent) 40%, var(--e-global-color-900224d, #ffffff)); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-camp i.is-test { background: color-mix(in srgb, var(--e-global-color-8ab7c18, #57C4F2) 45%, var(--e-global-color-900224d, #ffffff)); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-camp b { font-size: 2.2cqw; font-weight: 700; color: var(--gjc-sd-ink); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-perf { display: flex; gap: 1.5cqw; align-items: center; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-perf em { flex: 1; height: 1.2cqw; border-radius: 999px; background: color-mix(in srgb, var(--gjc-sd-ink) 10%, transparent); overflow: hidden; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-perf em::after {
  content: "";
  display: block;
  width: var(--gjc-report-p);
  height: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--gjc-sd-accent), color-mix(in srgb, var(--gjc-sd-accent) 55%, #ffffff), var(--gjc-sd-accent));
  background-size: 30cqw 100%;
  transform-origin: left;
  animation: gjc-mini-grow 800ms ease both;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-perf i { font-style: normal; font-size: 2.2cqw; font-weight: 800; color: var(--gjc-sd-accent); min-width: 4cqw; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-status {
  padding: 1cqw 1.8cqw;
  font-size: 1.8cqw;
  font-weight: 700;
  border-radius: 999px;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-status.is-good { color: var(--e-global-color-tonelime, #2bb56b); background: color-mix(in srgb, var(--e-global-color-tonelime, #2bb56b) 14%, var(--e-global-color-900224d, #ffffff)); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-status.is-warn { color: var(--gjc-sd-text); background: color-mix(in srgb, var(--gjc-sd-ink) 8%, var(--e-global-color-900224d, #ffffff)); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-foot {
  display: flex;
  gap: 2cqw;
  align-items: baseline;
  padding-block-start: 2cqw;
  border-top: 0.4cqw solid color-mix(in srgb, var(--gjc-sd-ink) 8%, transparent);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-foot > span { font-size: 2cqw; font-weight: 600; color: var(--gjc-sd-text); flex: 1; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-foot > b { font-size: 3.6cqw; font-weight: 800; color: var(--gjc-sd-ink); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-foot > i {
  display: inline-flex;
  gap: 0.8cqw;
  align-items: center;
  font-style: normal;
  font-size: 2cqw;
  font-weight: 700;
  color: var(--e-global-color-tonelime, #2bb56b);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__report-foot > i svg { width: 2.6cqw; height: 2.6cqw; }

/* ---- Brand: brand board (light, card style) ---- */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand {
  display: flex;
  flex-direction: column;
  gap: 2.5cqw;
  width: 100%;
  height: 100%;
  padding: 3cqw;
  background: var(--gjc-sd-soft);
  border-radius: 1.2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-head { display: flex; justify-content: space-between; align-items: baseline; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-title { font-family: var(--e-global-typography-accent-font-family, sans-serif); font-size: 2.6cqw; font-weight: 800; color: var(--gjc-sd-ink); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-ver { font-size: 2cqw; font-weight: 600; color: var(--gjc-sd-text); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-main {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2cqw;
  flex: 1;
  min-height: 0;
  padding: 2.5cqw;
  background: var(--e-global-color-900224d, #ffffff);
  border-radius: 1.2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--gjc-sd-soft);
  border-radius: 1.2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-logo img { max-height: 7cqw; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-swatches { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.5cqw; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-swatch { border-radius: 1cqw; animation: gjc-mini-pop 400ms ease both; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-swatch:nth-child(2) { animation-delay: 100ms; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-swatch:nth-child(3) { animation-delay: 200ms; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-swatch:nth-child(4) { animation-delay: 300ms; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-swatch--ink { background: var(--gjc-sd-ink); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-swatch--accent { background: var(--gjc-sd-accent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-swatch--sky { background: var(--e-global-color-8ab7c18); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-swatch--peak { background: var(--e-global-color-edcaf05); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-spec {
  display: flex;
  gap: 2.5cqw;
  align-items: center;
  padding: 2.5cqw;
  background: var(--e-global-color-900224d, #ffffff);
  border-radius: 1.2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-type { display: flex; gap: 2cqw; align-items: baseline; font-family: var(--e-global-typography-primary-font-family, serif); font-size: 7cqw; font-weight: 700; color: var(--gjc-sd-ink); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-type span { font-family: var(--e-global-typography-text-font-family, sans-serif); font-size: 3cqw; font-weight: 600; color: var(--gjc-sd-text); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-scale { display: grid; gap: 1.2cqw; flex: 1; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-scale i { height: 1.6cqw; border-radius: 999px; background: color-mix(in srgb, var(--gjc-sd-ink) 14%, transparent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-scale i:nth-child(1) { width: 90%; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-scale i:nth-child(2) { width: 70%; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-scale i:nth-child(3) { width: 50%; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__brand-scale i:nth-child(4) { width: 30%; }

/* ---- App: application system (3 touchpoints) ---- */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app {
  display: flex;
  flex-direction: column;
  gap: 2.5cqw;
  width: 100%;
  height: 100%;
  padding: 3cqw;
  background: var(--gjc-sd-soft);
  border-radius: 1.2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-head { display: flex; justify-content: space-between; align-items: baseline; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-title { font-family: var(--e-global-typography-accent-font-family, sans-serif); font-size: 2.6cqw; font-weight: 800; color: var(--gjc-sd-ink); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-board {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2cqw;
  flex: 1;
  min-height: 0;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-cell {
  display: flex;
  flex-direction: column;
  gap: 1.8cqw;
  align-items: center;
  justify-content: center;
  padding: 2.5cqw 1.5cqw;
  background: var(--e-global-color-900224d, #ffffff);
  border: 0.4cqw solid var(--gjc-sd-line);
  border-radius: 1.2cqw;
  animation: gjc-mini-pop 450ms ease both;
  overflow: hidden;
  min-width: 0;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-cell:nth-child(2) { animation-delay: 120ms; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-cell:nth-child(3) { animation-delay: 240ms; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-cell > em { font-style: normal; font-size: 2.2cqw; font-weight: 700; color: var(--gjc-sd-text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-stationery,
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-packaging,
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-browser {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  min-height: 0;
  width: 100%;
}

/* One representative mockup per cell */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-packaging {
  gap: 2.6cqw;
}

/* One representative mockup per cell */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-stationery i,
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-packaging i,
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-browser > * { display: block; }

/* Letter */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-stationery .is-letter {
  display: grid;
  gap: 1.2cqw;
  width: 20cqw;
  height: 15.5cqw;
  padding: 2cqw;
  align-content: start;
  background: var(--e-global-color-900224d, #ffffff);
  border: 0.3cqw solid var(--gjc-sd-line);
  border-radius: 1.2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-stationery .is-letter b { height: 1.2cqw; width: 60%; border-radius: 999px; background: var(--gjc-sd-accent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-stationery .is-letter b:last-child { width: 90%; background: color-mix(in srgb, var(--gjc-sd-ink) 14%, transparent); }

/* Packaging: three product forms (carton / bottle / pouch) */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-packaging .is-carton,
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-packaging .is-bottle {
  position: relative;
  display: grid;
  align-content: end;
  justify-items: center;
  padding-block-end: 2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-packaging .is-carton::before,
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-packaging .is-bottle::before { content: ""; position: absolute; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-packaging .is-carton::after,
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-packaging .is-bottle::after { content: ""; position: absolute; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-packaging .is-carton b,
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-packaging .is-bottle b {
  width: 60%;
  height: 1.2cqw;
  border-radius: 0.4cqw;
  background: color-mix(in srgb, #ffffff 88%, transparent);
  z-index: 1;
}

/* Carton: pink box with raised cap + white band */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-packaging .is-carton {
  width: 10cqw;
  height: 18cqw;
  border-radius: 0.7cqw 0.7cqw 1.2cqw 1.2cqw;
  background: var(--gjc-sd-accent);
  box-shadow: 0 0.8cqw 1.6cqw color-mix(in srgb, var(--gjc-sd-ink) 12%, transparent);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-packaging .is-carton::before {
  top: -2.4cqw;
  left: 50%;
  transform: translateX(-50%);
  width: 10cqw;
  height: 3cqw;
  border-radius: 0.4cqw 0.4cqw 0 0;
  background: color-mix(in srgb, var(--gjc-sd-accent) 55%, #ffffff);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-packaging .is-carton::after {
  top: 6.2cqw;
  left: 0;
  right: 0;
  width: auto;
  height: 0.7cqw;
  border-radius: 0;
  background: color-mix(in srgb, #ffffff 72%, transparent);
}

/* Bottle: cyan with dark cap + label */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-packaging .is-bottle {
  width: 7.5cqw;
  height: 18cqw;
  border-radius: 2.8cqw 2.8cqw 1.5cqw 1.5cqw;
  background: var(--e-global-color-8ab7c18, #57C4F2);
  box-shadow: 0 0.8cqw 1.6cqw color-mix(in srgb, var(--gjc-sd-ink) 12%, transparent);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-packaging .is-bottle::before {
  top: -2.6cqw;
  left: 50%;
  transform: translateX(-50%);
  width: 3.8cqw;
  height: 4.2cqw;
  border-radius: 0.8cqw 0.8cqw 0 0;
  background: #147FA8;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-packaging .is-bottle::after {
  top: 11cqw;
  left: 1.1cqw;
  width: 5.3cqw;
  height: 4.4cqw;
  border-radius: 0.7cqw;
  background: color-mix(in srgb, #ffffff 78%, transparent);
}

.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-browser {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  flex: 0 0 auto;
  gap: 1cqw;
  width: 20cqw;
  height: 23cqw;
  margin: auto;
  padding: 1.8cqw;
  background: var(--e-global-color-900224d, #ffffff);
  border: 0.3cqw solid var(--gjc-sd-line);
  border-radius: 1.2cqw;
  overflow: hidden;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-browser .is-chrome { display: flex; gap: 0.7cqw; align-items: center; flex: 0 0 auto; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-browser .is-chrome i { width: 1.2cqw; height: 1.2cqw; border-radius: 999px; background: color-mix(in srgb, var(--gjc-sd-ink) 18%, transparent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-browser .is-chrome i:first-child { background: var(--gjc-sd-accent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-browser .is-chrome b { flex: 1; height: 1.6cqw; padding-inline: 1.2cqw; border-radius: 999px; background: color-mix(in srgb, var(--gjc-sd-ink) 6%, transparent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-browser .is-site { display: flex; flex-direction: column; gap: 0.8cqw; flex: 1; min-height: 0; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-browser .is-site > b { display: block; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-browser .is-nav { display: flex; gap: 1.2cqw; align-items: center; height: 1.6cqw; flex: 0 0 auto; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-browser .is-nav i { width: 2.4cqw; height: 0.9cqw; border-radius: 0.3cqw; background: color-mix(in srgb, var(--gjc-sd-ink) 15%, transparent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-browser .is-nav i:first-child { background: var(--gjc-sd-accent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-browser .is-hero {
  flex: 1;
  min-height: 0;
  position: relative;
  border-radius: 0.8cqw;
  background: linear-gradient(135deg, var(--gjc-sd-accent), color-mix(in srgb, var(--gjc-sd-accent) 55%, var(--gjc-sd-ink)));
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__app-browser .is-hero span {
  position: absolute;
  left: 1.4cqw;
  top: 50%;
  transform: translateY(-50%);
  width: 4.4cqw;
  height: 1.4cqw;
  border-radius: 0.4cqw;
  background: color-mix(in srgb, #ffffff 85%, transparent);
}

/* ---- Guide: deliverables package (files) ---- */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__guide {
  display: flex;
  flex-direction: column;
  gap: 2.5cqw;
  width: 100%;
  height: 100%;
  padding: 3cqw;
  background: var(--gjc-sd-soft);
  border-radius: 1.2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__guide-head { display: flex; justify-content: space-between; align-items: baseline; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__guide-title { font-family: var(--e-global-typography-accent-font-family, sans-serif); font-size: 2.6cqw; font-weight: 800; color: var(--gjc-sd-ink); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__guide-badge {
  padding: 1.2cqw 2.4cqw;
  font-size: 2cqw;
  font-weight: 700;
  color: var(--gjc-sd-accent);
  background: color-mix(in srgb, var(--gjc-sd-accent) 12%, var(--e-global-color-900224d, #ffffff));
  border-radius: 999px;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__guide-files {
  display: grid;
  gap: 2cqw;
  flex: 1;
  min-height: 0;
  align-content: center;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__guide-file {
  display: flex;
  gap: 2.5cqw;
  align-items: center;
  padding: 2cqw 2.5cqw;
  background: var(--e-global-color-900224d, #ffffff);
  border: 0.4cqw solid var(--gjc-sd-line);
  border-radius: 1.2cqw;
  animation: gjc-mini-pop 450ms ease both;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__guide-file:nth-child(2) { animation-delay: 150ms; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__guide-file:nth-child(3) { animation-delay: 300ms; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__guide-file i {
  display: grid;
  width: 6cqw;
  height: 6cqw;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 1.2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__guide-file i svg { width: 3cqw; height: 3cqw; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__guide-file i.is-pdf { color: var(--gjc-sd-accent); background: color-mix(in srgb, var(--gjc-sd-accent) 12%, var(--e-global-color-900224d, #ffffff)); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__guide-file i.is-png { color: var(--e-global-color-8ab7c18, #57C4F2); background: color-mix(in srgb, var(--e-global-color-8ab7c18, #57C4F2) 14%, var(--e-global-color-900224d, #ffffff)); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__guide-file i.is-ai { color: #8B5CF6; background: color-mix(in srgb, #8B5CF6 12%, var(--e-global-color-900224d, #ffffff)); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__guide-file b { font-size: 2.4cqw; font-weight: 700; color: var(--gjc-sd-ink); flex: 1; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__guide-check {
  display: flex;
  align-items: center;
  gap: 1.2cqw;
  padding: 2cqw 2.5cqw;
  background: var(--e-global-color-900224d, #ffffff);
  border: 0.4cqw solid var(--gjc-sd-line);
  border-radius: 1.2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__guide-check span {
  display: inline-flex;
  gap: 1.2cqw;
  align-items: center;
  font-size: 2.2cqw;
  font-weight: 600;
  color: var(--gjc-sd-text);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__guide-check svg { width: 3cqw; height: 3cqw; flex: 0 0 auto; color: var(--e-global-color-tonelime, #2bb56b); }


/* ---- Website process: prompt (AI chat mock) ---- */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__prompt {
  display: flex;
  flex-direction: column;
  gap: 2cqw;
  width: 100%;
  height: 100%;
  padding: 2.5cqw;
  background: var(--gjc-sd-soft);
  border-radius: 1.2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__prompt-head { display: flex; justify-content: space-between; align-items: baseline; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__prompt-ai { display: inline-flex; gap: 1cqw; align-items: center; font-size: 2.4cqw; font-weight: 800; color: var(--gjc-sd-ink); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__prompt-ai i { width: 1.6cqw; height: 1.6cqw; border-radius: 50%; background: var(--gjc-sd-accent); box-shadow: 0 0 0 0.35cqw color-mix(in srgb, var(--gjc-sd-accent) 16%, transparent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__prompt-badge { padding: 0.9cqw 1.8cqw; font-size: 1.8cqw; font-weight: 700; color: var(--gjc-sd-accent); background: color-mix(in srgb, var(--gjc-sd-accent) 10%, var(--e-global-color-900224d, #ffffff)); border-radius: 999px; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__prompt-chat { display: flex; flex-direction: column; gap: 1.6cqw; flex: 1; justify-content: center; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__prompt-bubble { display: block; padding: 1.8cqw 2cqw; font-size: 2.2cqw; line-height: 1.5; font-weight: 600; border-radius: 1.2cqw; animation: gjc-mini-pop 450ms ease both; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__prompt-bubble.is-user { align-self: flex-end; max-width: 86%; color: #ffffff; background: var(--gjc-sd-accent); border-bottom-right-radius: 0.4cqw; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__prompt-bubble.is-ai { align-self: flex-start; max-width: 88%; color: var(--gjc-sd-ink); background: var(--e-global-color-900224d, #ffffff); border: 0.3cqw solid var(--gjc-sd-line); border-bottom-left-radius: 0.4cqw; animation-delay: 150ms; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__prompt-bubble.is-ai b { display: block; font-weight: 800; margin-block-end: 0.6cqw; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__prompt-bubble.is-ai em { font-style: normal; font-weight: 500; color: var(--gjc-sd-text); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__prompt-typing { display: flex; gap: 0.8cqw; align-self: flex-start; padding: 1.4cqw 2cqw; background: var(--e-global-color-900224d, #ffffff); border: 0.3cqw solid var(--gjc-sd-line); border-radius: 1.2cqw; animation: gjc-mini-pop 450ms ease both; animation-delay: 300ms; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__prompt-typing i { width: 0.9cqw; height: 0.9cqw; border-radius: 50%; background: color-mix(in srgb, var(--gjc-sd-ink) 22%, transparent); }
@media (prefers-reduced-motion: no-preference) {
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__prompt-typing i { animation: gjc-mini-blink 1.2s ease-in-out infinite; }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__prompt-typing i:nth-child(2) { animation-delay: 0.2s; }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__prompt-typing i:nth-child(3) { animation-delay: 0.4s; }
}
@keyframes gjc-mini-blink { 0%, 100% { opacity: 0.35; } 50% { opacity: 1; } }

/* ---- Website process: flow (you → AI client → site) ---- */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow {
  display: flex;
  flex-direction: column;
  gap: 2cqw;
  width: 100%;
  height: 100%;
  padding: 2.5cqw;
  background: var(--gjc-sd-soft);
  border-radius: 1.2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-head { display: flex; justify-content: space-between; align-items: baseline; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-title { font-size: 2.4cqw; font-weight: 800; color: var(--gjc-sd-ink); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-badge { padding: 0.9cqw 1.8cqw; font-size: 1.8cqw; font-weight: 700; color: var(--e-global-color-tonelime, #2bb56b); background: color-mix(in srgb, var(--e-global-color-tonelime, #2bb56b) 12%, var(--e-global-color-900224d, #ffffff)); border-radius: 999px; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-chain { display: flex; align-items: center; justify-content: center; gap: 1.4cqw; flex: 1; min-height: 0; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-node {
  display: flex;
  flex-direction: column;
  gap: 0.9cqw;
  align-items: center;
  justify-content: center;
  min-width: 0;
  padding: 1.8cqw 1.2cqw;
  background: var(--e-global-color-900224d, #ffffff);
  border: 0.35cqw solid var(--gjc-sd-line);
  border-radius: 1.2cqw;
  animation: gjc-mini-pop 450ms ease both;
  text-align: center;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-node:nth-child(3) { animation-delay: 140ms; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-node:nth-child(5) { animation-delay: 280ms; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-node i { display: grid; width: 4.6cqw; height: 4.6cqw; place-items: center; border-radius: 1.2cqw; color: #ffffff; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-node i svg { width: 2.4cqw; height: 2.4cqw; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-node.is-you i { background: var(--gjc-sd-ink); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-node.is-client i { background: var(--gjc-sd-accent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-node.is-site i { background: var(--e-global-color-8ab7c18, #57C4F2); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-node b { font-size: 2.1cqw; font-weight: 800; color: var(--gjc-sd-ink); white-space: nowrap; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-node em { font-style: normal; font-size: 1.6cqw; font-weight: 600; color: var(--gjc-sd-text); line-height: 1.35; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-arrow { display: grid; place-items: center; flex: 0 0 auto; color: var(--gjc-sd-text); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-arrow i {
  display: block;
  width: 1.4cqw;
  height: 1.4cqw;
  border-top: 0.3cqw solid var(--gjc-sd-accent);
  border-right: 0.3cqw solid var(--gjc-sd-accent);
  transform: rotate(45deg);
}
@media (prefers-reduced-motion: no-preference) {
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-arrow { animation: gjc-mini-flow-nudge 1.6s ease-in-out infinite; }
}
@keyframes gjc-mini-flow-nudge { 0%, 100% { transform: translateX(0); } 50% { transform: translateX(0.6cqw); } }

/* ---- Website process: build (browser + progress) ---- */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build {
  display: flex;
  flex-direction: column;
  gap: 2cqw;
  width: 100%;
  height: 100%;
  padding: 2.5cqw;
  background: var(--gjc-sd-soft);
  border-radius: 1.2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-head { display: flex; justify-content: space-between; align-items: baseline; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-title { font-size: 2.4cqw; font-weight: 800; color: var(--gjc-sd-ink); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-badge { display: inline-flex; gap: 0.8cqw; align-items: center; padding: 0.9cqw 1.8cqw; font-size: 1.8cqw; font-weight: 700; color: var(--gjc-sd-accent); background: color-mix(in srgb, var(--gjc-sd-accent) 10%, var(--e-global-color-900224d, #ffffff)); border-radius: 999px; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-badge::before { content: ""; width: 0.8cqw; height: 0.8cqw; border-radius: 50%; background: var(--gjc-sd-accent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-board { display: flex; flex-direction: column; gap: 1.6cqw; flex: 1; min-height: 0; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-browser {
  display: flex;
  flex-direction: column;
  gap: 1cqw;
  flex: 1;
  min-height: 0;
  padding: 1.4cqw;
  background: var(--e-global-color-900224d, #ffffff);
  border: 0.3cqw solid var(--gjc-sd-line);
  border-radius: 1cqw;
  overflow: hidden;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-browser .is-chrome { display: flex; gap: 0.7cqw; align-items: center; flex: 0 0 auto; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-browser .is-chrome i { width: 1cqw; height: 1cqw; border-radius: 999px; background: color-mix(in srgb, var(--gjc-sd-ink) 18%, transparent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-browser .is-chrome i:first-child { background: var(--gjc-sd-accent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-browser .is-chrome b { flex: 1; height: 1.4cqw; border-radius: 999px; background: color-mix(in srgb, var(--gjc-sd-ink) 6%, transparent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-browser .is-page { display: flex; flex-direction: column; gap: 0.8cqw; flex: 1; min-height: 0; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-browser .is-page > b { display: block; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-browser .is-nav { display: flex; gap: 1.2cqw; align-items: center; height: 1.6cqw; flex: 0 0 auto; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-browser .is-nav i { width: 2.2cqw; height: 0.8cqw; border-radius: 0.3cqw; background: color-mix(in srgb, var(--gjc-sd-ink) 14%, transparent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-browser .is-nav i:first-child { background: var(--gjc-sd-accent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-browser .is-hero { flex: 1.4; min-height: 0; position: relative; border-radius: 0.7cqw; background: linear-gradient(135deg, var(--gjc-sd-accent), color-mix(in srgb, var(--gjc-sd-accent) 55%, var(--gjc-sd-ink))); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-browser .is-hero span { position: absolute; left: 1.4cqw; top: 50%; transform: translateY(-50%); width: 5cqw; height: 1.4cqw; border-radius: 0.4cqw; background: color-mix(in srgb, #ffffff 82%, transparent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-browser .is-cols { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.8cqw; flex: 1; min-height: 0; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-browser .is-cols i { border-radius: 0.5cqw; background: color-mix(in srgb, var(--gjc-sd-ink) 9%, transparent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-side { display: flex; align-items: center; gap: 1.6cqw; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-progress { display: block; flex: 1; height: 1.4cqw; border-radius: 999px; background: color-mix(in srgb, var(--gjc-sd-ink) 9%, transparent); overflow: hidden; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-progress i { display: block; height: 100%; width: var(--gjc-build-p, 72%); border-radius: 999px; background: linear-gradient(90deg, var(--gjc-sd-accent), color-mix(in srgb, var(--gjc-sd-accent) 60%, #ffffff)); }
@media (prefers-reduced-motion: no-preference) {
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-progress i { transform-origin: left; animation: gjc-mini-grow 1.4s ease both; }
}
@keyframes gjc-mini-grow { from { transform: scaleX(0); } to { transform: scaleX(1); } }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-side em { font-style: normal; font-size: 1.9cqw; font-weight: 700; color: var(--gjc-sd-text); white-space: nowrap; }

/* ---- Website process: live (site + prompt edit) ---- */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live {
  display: flex;
  flex-direction: column;
  gap: 2cqw;
  width: 100%;
  height: 100%;
  padding: 2.5cqw;
  background: var(--gjc-sd-soft);
  border-radius: 1.2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-head { display: flex; justify-content: space-between; align-items: baseline; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-title { font-size: 2.4cqw; font-weight: 800; color: var(--gjc-sd-ink); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-badge { display: inline-flex; gap: 0.8cqw; align-items: center; padding: 0.9cqw 1.8cqw; font-size: 1.8cqw; font-weight: 700; color: var(--e-global-color-tonelime, #2bb56b); background: color-mix(in srgb, var(--e-global-color-tonelime, #2bb56b) 12%, var(--e-global-color-900224d, #ffffff)); border-radius: 999px; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-badge::before { content: ""; width: 0.8cqw; height: 0.8cqw; border-radius: 50%; background: var(--e-global-color-tonelime, #2bb56b); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-board { display: grid; grid-template-columns: 1.25fr 1fr; gap: 1.6cqw; flex: 1; min-height: 0; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-browser {
  display: flex;
  flex-direction: column;
  gap: 1cqw;
  padding: 1.4cqw;
  background: var(--e-global-color-900224d, #ffffff);
  border: 0.3cqw solid var(--gjc-sd-line);
  border-radius: 1cqw;
  overflow: hidden;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-browser .is-chrome { display: flex; gap: 0.7cqw; align-items: center; flex: 0 0 auto; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-browser .is-chrome i { width: 1cqw; height: 1cqw; border-radius: 999px; background: color-mix(in srgb, var(--gjc-sd-ink) 18%, transparent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-browser .is-chrome i:first-child { background: var(--gjc-sd-accent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-browser .is-chrome b { flex: 1; height: 1.4cqw; border-radius: 999px; background: color-mix(in srgb, var(--gjc-sd-ink) 6%, transparent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-browser .is-page { display: flex; flex-direction: column; gap: 0.8cqw; flex: 1; min-height: 0; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-browser .is-page > b { display: block; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-browser .is-hero { flex: 1.2; min-height: 0; position: relative; border-radius: 0.7cqw; background: linear-gradient(135deg, var(--gjc-sd-accent), color-mix(in srgb, var(--gjc-sd-accent) 55%, var(--gjc-sd-ink))); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-browser .is-hero span { position: absolute; left: 1.4cqw; top: 50%; transform: translateY(-50%); width: 5cqw; height: 1.4cqw; border-radius: 0.4cqw; background: color-mix(in srgb, #ffffff 82%, transparent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-browser .is-cols { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.8cqw; flex: 1; min-height: 0; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-browser .is-cols i { border-radius: 0.5cqw; background: color-mix(in srgb, var(--gjc-sd-ink) 9%, transparent); }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-chat { display: flex; flex-direction: column; gap: 1.2cqw; justify-content: center; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-bubble { display: block; padding: 1.4cqw 1.6cqw; font-size: 1.9cqw; line-height: 1.45; font-weight: 600; border-radius: 1cqw; animation: gjc-mini-pop 450ms ease both; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-bubble.is-user { align-self: flex-end; max-width: 92%; color: #ffffff; background: var(--gjc-sd-accent); border-bottom-right-radius: 0.4cqw; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-bubble.is-ai { align-self: flex-start; max-width: 92%; color: var(--gjc-sd-ink); background: var(--e-global-color-900224d, #ffffff); border: 0.3cqw solid var(--gjc-sd-line); border-bottom-left-radius: 0.4cqw; animation-delay: 160ms; }

@media (min-width: 768px) and (max-width: 1024px) {
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__capabilities { grid-template-columns: 1fr 1fr; gap: 1.5rem 1.25rem; }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__step { grid-template-columns: minmax(0, 1fr); gap: 1rem; padding: 1rem; }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__step-mini { aspect-ratio: 4 / 3; width: 100%; min-height: 0; padding: 0; }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__step-title { font-size: 1.5rem; }
}

@media (max-width: 767px) {
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-chain { flex-direction: column; gap: 1cqw; }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-node { flex-direction: row; gap: 1.2cqw; justify-content: flex-start; padding: 1.6cqw 2cqw; width: 100%; text-align: left; }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-node i { width: 3.4cqw; height: 3.4cqw; border-radius: 0.9cqw; flex: 0 0 auto; }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-node i svg { width: 1.8cqw; height: 1.8cqw; }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-node b { font-size: 2cqw; }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-node em { font-size: 1.7cqw; }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-arrow { transform: rotate(90deg); }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__flow-arrow i { transform: rotate(45deg); }
    .buildpress-gjc-service-detail { padding: 5rem 1rem 6rem; }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__overview-content,
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__kpi { grid-template-columns: 1fr; gap: 1.25rem; }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__capabilities { grid-template-columns: 1fr 1fr; gap: 1.5rem 1rem; }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__chapter { grid-template-columns: 1fr; gap: 0.75rem; }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__steps { grid-template-columns: 1fr; }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__step { grid-template-columns: minmax(0, 1fr); gap: 0.875rem; padding: 0.875rem; align-items: start; }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__step-mini { aspect-ratio: 4 / 3; width: 100%; min-height: 0; padding: 0; }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__step-title { font-size: 1.375rem; }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__step-copy { font-size: 0.875rem; }
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__kpi-list { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__capabilities { grid-template-columns: 1fr; }
}







/* ---- Capability notes: refined annotation strip under the steps ---- */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__capabilities--notes {
  display: block;
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__capability--notes {
  grid-column: 1 / -1;
  margin-top: 1.5rem;
}
/* Bento: 2x2 feature tiles matching the step cards' language */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__capability-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__capability-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 1rem;
  align-items: center;
  padding: 1.5rem;
  border: 1px solid var(--gjc-sd-line);
  border-radius: 1.25rem;
  background: var(--e-global-color-900224d, #ffffff);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__capability-icon {
  display: grid;
  width: 3rem;
  height: 3rem;
  place-items: center;
  color: var(--gjc-sd-accent);
  background: color-mix(in srgb, var(--gjc-sd-accent) 10%, var(--e-global-color-900224d, #ffffff));
  border-radius: 0.875rem;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__capability-icon svg {
  width: 1.4rem;
  height: 1.4rem;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__capability-card-text {
  color: var(--gjc-sd-text);
  font-family: var(--e-global-typography-text-font-family, sans-serif);
  font-size: 0.9375rem;
  line-height: var(--e-global-typography-text-line-height, 1.6);
}
@media (max-width: 1024px) {
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__capability-grid { grid-template-columns: 1fr; }
}

/* ---- Steps: 3 chapters on one row ---- */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__steps--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 1024px) {
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__steps--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .buildpress-gjc-service-detail .buildpress-gjc-service-detail__steps--3 { grid-template-columns: 1fr; }
}

/* ---- Mini browser scenes (biz / ecom / person) ---- */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__biz,
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom,
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__person {
  display: grid;
  gap: 2.5cqw;
  align-content: start;
  width: 100%;
  height: 100%;
  font-family: var(--e-global-typography-accent-font-family, sans-serif);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__biz-head,
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-head,
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__person-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__biz-title,
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-title,
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__person-title {
  color: var(--gjc-sd-ink);
  font-size: 3cqw;
  font-weight: 700;
  line-height: 1.2;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__biz-badge,
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-cart,
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__person-badge {
  display: inline-flex;
  align-items: center;
  gap: 1.5cqw;
  padding: 1.2cqw 2.2cqw;
  color: var(--gjc-sd-accent);
  background: color-mix(in srgb, var(--gjc-sd-accent) 10%, var(--e-global-color-900224d, #ffffff));
  border-radius: 999rem;
  font-size: 2.2cqw;
  font-weight: 600;
}
/* shared mini browser page */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__biz-browser,
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__live-browser,
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__build-browser {
  display: grid;
  gap: 2.5cqw;
}
.buildpress-gjc-service-detail .is-chrome {
  display: flex;
  gap: 1.2cqw;
  align-items: center;
  padding: 2.2cqw;
  background: var(--gjc-sd-soft);
  border: 1px solid var(--gjc-sd-line);
  border-radius: 1.2cqw;
}
.buildpress-gjc-service-detail .is-chrome i {
  width: 2.4cqw;
  height: 2.4cqw;
  border-radius: 50%;
  background: color-mix(in srgb, var(--gjc-sd-accent) 30%, transparent);
}
.buildpress-gjc-service-detail .is-chrome b {
  flex: 1;
  height: 3cqw;
  border-radius: 1cqw;
  background: color-mix(in srgb, var(--gjc-sd-ink) 8%, transparent);
}
.buildpress-gjc-service-detail .is-page {
  display: grid;
  gap: 2.5cqw;
  padding: 2.5cqw;
  border: 1px solid var(--gjc-sd-line);
  border-radius: 1.4cqw;
  background: var(--e-global-color-900224d, #ffffff);
}
.buildpress-gjc-service-detail .is-nav {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1.5cqw;
}
.buildpress-gjc-service-detail .is-nav i {
  height: 2.6cqw;
  border-radius: 1cqw;
  background: color-mix(in srgb, var(--gjc-sd-ink) 12%, transparent);
}
.buildpress-gjc-service-detail .is-nav i:first-child { background: var(--gjc-sd-accent); opacity: .8; }
.buildpress-gjc-service-detail .is-hero {
  height: 16cqw;
  border-radius: 1.4cqw;
  background: linear-gradient(135deg, color-mix(in srgb, var(--gjc-sd-accent) 22%, transparent), color-mix(in srgb, var(--gjc-sd-accent) 6%, transparent));
  border: 1px solid var(--gjc-sd-line);
}
.buildpress-gjc-service-detail .is-cols {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2cqw;
}
.buildpress-gjc-service-detail .is-cols i {
  height: 9cqw;
  border-radius: 1.2cqw;
  background: color-mix(in srgb, var(--gjc-sd-ink) 7%, transparent);
  border: 1px solid var(--gjc-sd-line);
}
.buildpress-gjc-service-detail .is-cols.is-alt { grid-template-columns: repeat(2, 1fr); }

/* ecom: clear shopping-cart view */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-cart {
  position: relative;
  display: grid;
  place-items: center;
  width: 4.8cqw;
  height: 4.8cqw;
  color: var(--gjc-sd-ink);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-cart svg {
  width: 100%;
  height: 100%;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-cart b {
  position: absolute;
  top: -1cqw;
  right: -1cqw;
  width: 2.4cqw;
  height: 2.4cqw;
  border-radius: 50%;
  background: var(--gjc-sd-accent);
  border: 0.4cqw solid var(--gjc-sd-paper);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-items {
  display: grid;
  gap: 1.8cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 1.8cqw;
  align-items: center;
  padding: 1.8cqw 2cqw;
  border: 1px solid var(--gjc-sd-line);
  border-radius: 1.2cqw;
  background: var(--e-global-color-900224d, #ffffff);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-item .is-thumb {
  width: 7cqw;
  height: 7cqw;
  border-radius: 1cqw;
  background: color-mix(in srgb, var(--gjc-sd-accent) 18%, var(--gjc-sd-soft));
  border: 1px solid var(--gjc-sd-line);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-item .is-lines {
  display: grid;
  gap: 1.2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-item .is-lines i {
  height: 2.2cqw;
  border-radius: 1cqw;
  background: color-mix(in srgb, var(--gjc-sd-ink) 12%, transparent);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-item .is-lines i:last-child {
  width: 62%;
  background: color-mix(in srgb, var(--gjc-sd-ink) 8%, transparent);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-item .is-price {
  width: 6cqw;
  height: 2.6cqw;
  border-radius: 999rem;
  background: color-mix(in srgb, var(--gjc-sd-accent) 14%, var(--e-global-color-900224d, #ffffff));
  border: 1px solid color-mix(in srgb, var(--gjc-sd-accent) 26%, transparent);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-checkout {
  display: flex;
  gap: 2cqw;
  align-items: center;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-checkout .is-total {
  flex: 1;
  height: 2.4cqw;
  border-radius: 1cqw;
  background: color-mix(in srgb, var(--gjc-sd-ink) 9%, transparent);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-checkout .is-pay {
  width: 13cqw;
  height: 3.2cqw;
  border-radius: 999rem;
  background: var(--gjc-sd-accent);
  box-shadow: 0 0.4cqw 1cqw color-mix(in srgb, var(--gjc-sd-accent) 30%, transparent);
}
/* person */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__person-profile {
  display: flex;
  gap: 2.5cqw;
  align-items: center;
  padding: 2.5cqw;
  border: 1px solid var(--gjc-sd-line);
  border-radius: 1.4cqw;
  background: var(--e-global-color-900224d, #ffffff);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__person-avatar {
  width: 9cqw;
  height: 9cqw;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--gjc-sd-accent), color-mix(in srgb, var(--gjc-sd-accent) 40%, #fff));
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__person-name {
  display: grid;
  gap: 1.4cqw;
  flex: 1;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__person-name i {
  height: 2.6cqw;
  border-radius: 1cqw;
  background: color-mix(in srgb, var(--gjc-sd-ink) 14%, transparent);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__person-name i:last-child { width: 60%; }
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__person-tiles {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__person-tile {
  height: 13cqw;
  border-radius: 1.2cqw;
  background: color-mix(in srgb, var(--gjc-sd-ink) 7%, transparent);
  border: 1px solid var(--gjc-sd-line);
}

/* ---- Miniature refinements to match step copy ---- */
/* biz: structured content — lead text + mixed text/image row */
.buildpress-gjc-service-detail .is-lead {
  display: grid;
  gap: 1.4cqw;
}
.buildpress-gjc-service-detail .is-lead i {
  height: 2.4cqw;
  border-radius: 1cqw;
  background: color-mix(in srgb, var(--gjc-sd-ink) 11%, transparent);
}
.buildpress-gjc-service-detail .is-lead i:first-child { width: 78%; }
.buildpress-gjc-service-detail .is-lead i:last-child { width: 55%; }
.buildpress-gjc-service-detail .is-cols.is-mixed {
  grid-template-columns: 1.2fr 1.2fr 1fr;
  align-items: stretch;
}
.buildpress-gjc-service-detail .is-cols.is-mixed em {
  border-radius: 1.2cqw;
  background: linear-gradient(135deg, color-mix(in srgb, var(--gjc-sd-accent) 26%, transparent), color-mix(in srgb, var(--gjc-sd-accent) 8%, transparent));
  border: 1px solid var(--gjc-sd-line);
}
/* ecom: price + checkout bar */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-card .is-price {
  width: 40%;
  height: 2.4cqw;
  border-radius: 1cqw;
  background: var(--gjc-sd-accent);
  opacity: .8;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-cta {
  display: flex;
  justify-content: center;
  padding: 2cqw;
  border-radius: 1.2cqw;
  background: var(--gjc-sd-ink);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-cta i {
  width: 30%;
  height: 2.2cqw;
  border-radius: 999rem;
  background: var(--gjc-sd-accent);
}
/* person: skills pills */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__person-skills {
  display: flex;
  gap: 1.6cqw;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__person-skills i {
  flex: 1;
  height: 3cqw;
  border-radius: 999rem;
  background: color-mix(in srgb, var(--gjc-sd-accent) 14%, var(--e-global-color-900224d, #ffffff));
  border: 1px solid color-mix(in srgb, var(--gjc-sd-accent) 22%, transparent);
}

/* ---- Miniature clarity pass ---- */
/* ecom: cart icon + badge + add-to-cart */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-cart {
  position: relative;
  display: grid;
  place-items: center;
  width: 4.5cqw;
  height: 4.5cqw;
  color: var(--gjc-sd-ink);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-cart svg {
  width: 100%;
  height: 100%;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-cart b {
  position: absolute;
  top: -1cqw;
  right: -1cqw;
  width: 2.2cqw;
  height: 2.2cqw;
  border-radius: 50%;
  background: var(--gjc-sd-accent);
  border: 0.4cqw solid var(--gjc-sd-paper);
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-card u {
  width: 30%;
  height: 2.4cqw;
  border-radius: 999rem;
  background: var(--gjc-sd-accent);
  align-self: end;
  justify-self: end;
}
/* biz: logo + nav CTA + hero CTA */
.buildpress-gjc-service-detail .is-nav .is-logo {
  width: 3cqw;
  height: 3cqw;
  border-radius: 0.8cqw;
  background: var(--gjc-sd-accent);
  opacity: .9;
}
.buildpress-gjc-service-detail .is-nav .is-nav-cta {
  width: 6cqw;
  height: 2.6cqw;
  border-radius: 999rem;
  background: var(--gjc-sd-ink);
}
.buildpress-gjc-service-detail .is-hero .is-hero-cta {
  position: absolute;
  left: 3cqw;
  bottom: 2.4cqw;
  width: 8cqw;
  height: 2.6cqw;
  border-radius: 999rem;
  background: var(--gjc-sd-accent);
}
.buildpress-gjc-service-detail .is-hero { position: relative; }
/* person: follow button */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__person-follow {
  align-self: center;
  width: 7cqw;
  height: 3cqw;
  border-radius: 999rem;
  background: var(--gjc-sd-accent);
}

/* ---- ecom cart: final override (big, accent, unmistakable) ---- */
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-cart {
  display: grid !important;
  place-items: center;
  position: relative;
  width: 4.4cqw;
  height: 4.4cqw;
  padding: 0 !important;
  gap: 0 !important;
  color: var(--gjc-sd-accent, #e3185c);
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-cart svg {
  width: 100% !important;
  height: 100% !important;
  stroke-width: 1.8;
}
.buildpress-gjc-service-detail .buildpress-gjc-service-detail__ecom-cart b {
  position: absolute;
  top: -0.4cqw;
  right: -0.4cqw;
  width: 1.8cqw;
  height: 1.8cqw;
  border-radius: 50%;
  background: var(--gjc-sd-accent, #e3185c);
  border: 0.4cqw solid var(--gjc-sd-paper, #ffffff);
}
