/* ===== ChatGPT Ads page — reuses paid-ads + paid-ads-tiktok layouts; only the new pieces live here ===== */

/* ---------- Hero: illustrative ChatGPT conversation ---------- */
.cg-chat {
  margin: 0;
  align-self: start;
  width: 100%;
  border-radius: 18px;
  overflow: hidden;
  background: #17171A;
  color: #EDE8DF;
  border: 1px solid rgba(237, 232, 223, 0.10);
  box-shadow: 0 30px 70px rgba(14, 14, 16, 0.35);
  font-size: 15px;
  line-height: 1.55;
}
.cg-chat-chrome {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px 16px;
  border-bottom: 1px solid rgba(237, 232, 223, 0.08);
  background: #121214;
}
.cg-chat-dots { display: inline-flex; gap: 6px; }
.cg-chat-dots i { width: 9px; height: 9px; border-radius: 50%; background: rgba(237, 232, 223, 0.18); display: block; }
.cg-chat .mono { color: rgba(237, 232, 223, 0.6) !important; }
.cg-chat-title { font-size: 12px; letter-spacing: .08em; color: #EDE8DF !important; }
.cg-chat-plan { margin-left: auto; font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; padding: 3px 8px; border: 1px solid rgba(237, 232, 223, 0.16); border-radius: 999px; }
.cg-chat-body { padding: 22px 20px 20px; display: flex; flex-direction: column; gap: 18px; }

.cg-msg-user {
  align-self: flex-end;
  max-width: 86%;
  background: #2A2A2F;
  border-radius: 18px 18px 4px 18px;
  padding: 12px 16px;
}
.cg-msg-ai { color: #D9D3C9; }
.cg-msg-ai p { margin: 0 0 10px; }
.cg-msg-ai b { color: #fff; font-weight: 600; }
.cg-msg-ai ul { margin: 0; padding-left: 18px; display: grid; gap: 4px; }
.cg-msg-ai li::marker { color: rgba(237, 232, 223, 0.4); }

.cg-ad {
  border: 1px solid rgba(214, 255, 61, 0.35);
  background: rgba(214, 255, 61, 0.05);
  border-radius: 14px;
  padding: 16px;
  position: relative;
}
.cg-ad-top { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
.cg-ad-logo {
  width: 26px; height: 26px; border-radius: 7px; flex-shrink: 0;
  display: grid; place-items: center;
  background: #D6FF3D; color: #0E0E10; font-weight: 700; font-size: 13px;
}
.cg-ad-brand { font-weight: 600; font-size: 14px; color: #fff; }
.cg-ad-label {
  margin-left: auto; font-size: 10px; letter-spacing: .14em; text-transform: uppercase;
  color: #D6FF3D !important; border: 1px solid rgba(214, 255, 61, 0.4); border-radius: 999px; padding: 2px 8px;
}
.cg-ad-head { font-size: 17px; font-weight: 600; color: #fff; letter-spacing: -.01em; }
.cg-ad-copy { margin: 4px 0 12px; font-size: 14px; color: #BDB6AC; }
.cg-ad-btn {
  display: inline-block; font-size: 13px; font-weight: 600;
  background: #EDE8DF; color: #0E0E10; padding: 8px 14px; border-radius: 999px;
}
.cg-chat-cap {
  padding: 11px 16px 13px;
  font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase;
  border-top: 1px solid rgba(237, 232, 223, 0.08);
}

/* ---------- Thesis: search vs conversation ---------- */
.cg-compare { margin: 28px 0 8px; display: grid; gap: 12px; max-width: 560px; }
.cg-compare-row {
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 16px 18px;
  background: color-mix(in oklab, var(--bg-2) 70%, transparent);
  display: grid; gap: 8px;
}
.cg-compare-k { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--fg-muted); }
.cg-compare-q { font-size: 17px; line-height: 1.45; }
.cg-compare-row:first-child .cg-compare-q { font-family: var(--font-mono); font-size: 15px; }
.cg-compare-row-ai { border-color: color-mix(in oklab, var(--accent) 45%, var(--border)); }
.cg-compare-row-ai .cg-compare-k { color: var(--fg); }

/* Thesis gallery: the comparison boxes sit above it, so give it its own height instead of filling leftover space */
.cg-thesis .tt-thesis-gallery-wrap { max-height: none; }
.cg-thesis .tt-thesis-gallery { grid-template-rows: 1fr 1fr; }
@media (max-width: 1100px) { .cg-thesis .tt-thesis-gallery-wrap, .cg-thesis .tt-thesis-gallery { height: 420px; } }
@media (max-width: 760px) {
  .cg-thesis .tt-thesis-gallery-wrap, .cg-thesis .tt-thesis-gallery { height: 340px; }
  .cg-thesis .tt-thesis-gallery { grid-template-columns: 1fr 1fr !important; gap: 8px; }
}

/* ---------- Photo band between services and how-it-works ---------- */
.cg-band { position: relative; width: 100%; aspect-ratio: 21 / 8; min-height: 380px; overflow: hidden; background: #0E0E10; border-top: 1px solid var(--border); }
.cg-band img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 42%; display: block; }
.cg-band-overlay { position: absolute; inset: 0; display: flex; align-items: flex-end; padding-bottom: clamp(32px, 5vw, 72px);
  background: linear-gradient(180deg, rgba(14,14,16,0) 30%, rgba(14,14,16,.55) 65%, rgba(14,14,16,.9) 100%); }
.cg-band-overlay .shell { width: 100%; }
.cg-band-eyebrow { color: rgba(237,232,223,.75) !important; }
.cg-band-quote { margin: 18px 0 0; max-width: 26ch; font-size: clamp(28px, 3.6vw, 54px); line-height: 1.06; letter-spacing: -.035em; font-weight: 500; color: #F4F1EC; }
.cg-band-quote em { font-style: normal; color: var(--accent); }

/* ---------- Results: cards link to case studies ---------- */
a.cg-result { color: inherit; text-decoration: none; transition: transform .25s ease, border-color .25s ease; }
.cg-result-img { margin: -28px -28px 22px; aspect-ratio: 16 / 9; overflow: hidden; border-radius: 13px 13px 0 0; background: var(--bg-2); }
.cg-result-img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .6s ease; }
a.cg-result:hover .cg-result-img img { transform: scale(1.04); }
a.cg-result:hover { transform: translateY(-3px); border-color: color-mix(in oklab, var(--accent) 40%, var(--border)); }

@media (max-width: 760px) {
  .cg-hero .pa-hero-grid > * { min-width: 0; }
  .cg-hero h1.cg-hero-head { font-size: clamp(34px, 10vw, 56px) !important; }
  .cg-chat { font-size: 14px; }
  .cg-msg-user { max-width: 94%; }
  .cg-compare-q { font-size: 16px; }
  .cg-band { aspect-ratio: auto; height: 460px; }
  .cg-band-quote { max-width: none; }
}

/* Myths photo: keep faces in frame */
.cg-myths .tt-myths-hero img { object-position: center 15%; }
