/* examples-page.css — /examples showcase page styles
   Namespace: ex- prefix for page chrome; inherits bp- classes from brief-page.css.
   Mobile-first. */

:root {
  --ex-bg: #FAF7F2;
  --ex-fg: #1a1a1a;
  --ex-accent: #C4683A;
  --ex-muted: #7a6f64;
  --ex-rule: #e8e0d5;
  --ex-surface: #f3ede4;
}

.ex-body {
  background: var(--ex-bg);
  color: var(--ex-fg);
  font-family: 'DM Sans', system-ui, sans-serif;
  margin: 0;
  -webkit-font-smoothing: antialiased;
}

/* ── Header ───────────────────────────────────────────────────────── */
.ex-header {
  border-bottom: 1px solid var(--ex-rule);
  background: var(--ex-bg);
  position: sticky;
  top: 0;
  z-index: 100;
}

.ex-header-inner {
  max-width: 880px;
  margin: 0 auto;
  padding: 0.85rem 1.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.ex-logo {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 1.35rem;
  font-weight: 600;
  color: var(--ex-fg);
  text-decoration: none;
  letter-spacing: 0.01em;
}

.ex-header-nav {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}

.ex-nav-link {
  font-size: 0.875rem;
  color: var(--ex-muted);
  text-decoration: none;
  font-weight: 400;
  transition: color 0.15s;
}
.ex-nav-link:hover,
.ex-nav-active { color: var(--ex-fg); font-weight: 500; }

.ex-cta-btn {
  display: inline-block;
  padding: 0.5rem 1.1rem;
  background: var(--ex-accent);
  color: #fff;
  border-radius: 6px;
  text-decoration: none;
  font-size: 0.875rem;
  font-weight: 500;
  transition: background 0.15s;
}
.ex-cta-btn:hover { background: #b35a30; }

/* ── Hero ─────────────────────────────────────────────────────────── */
.ex-hero {
  padding: 4rem 1.5rem 3.5rem;
  text-align: left;
  max-width: 880px;
  margin: 0 auto;
}

.ex-eyebrow {
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ex-accent);
  margin: 0 0 1rem;
  font-weight: 500;
}

.ex-headline {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(2.6rem, 6vw, 4rem);
  font-weight: 300;
  line-height: 1.1;
  color: var(--ex-fg);
  margin: 0 0 1rem;
}

.ex-subhead {
  font-size: 1.05rem;
  color: var(--ex-muted);
  margin: 0;
  line-height: 1.6;
  max-width: 520px;
}

/* ── Social proof strip (hero) ────────────────────────────────── */
.ex-hero-proof {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 0.75rem;
  margin-top: 1.5rem;
}

.ex-proof-stat {
  font-size: 0.82rem;
  font-weight: 500;
  color: var(--ex-fg);
  letter-spacing: 0.01em;
}

.ex-proof-platforms,
.ex-proof-item {
  font-size: 0.82rem;
  color: var(--ex-muted);
}

.ex-proof-divider {
  font-size: 0.82rem;
  color: var(--ex-rule);
  user-select: none;
}

@media (max-width: 480px) {
  .ex-proof-divider { display: none; }
  .ex-hero-proof { flex-direction: column; align-items: flex-start; gap: 0.3rem; }
}

/* ── Main ─────────────────────────────────────────────────────────── */
.ex-main { padding: 0 0 5rem; }

.ex-main-inner {
  max-width: 880px;
  margin: 0 auto;
  padding: 0 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 3.5rem;
}

/* Section label */
.ex-section-label {
  font-size: 0.65rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ex-muted);
  font-weight: 500;
  margin-bottom: 0;
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.ex-section-label::after {
  content: '';
  flex: 1;
  height: 1px;
  background: var(--ex-rule);
}

/* Grids */
.ex-real-grid,
.ex-static-grid {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}

/* ── Individual example card ──────────────────────────────────────── */
.ex-example {
  display: grid;
  grid-template-columns: 1fr;
}

/* Header */
.ex-example-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.75rem 1.75rem;
  background: var(--ex-surface);
  border: 1px solid var(--ex-rule);
  border-bottom: none;
  border-radius: 14px 14px 0 0;
}
.ex-example-header .ex-label-row { margin: 0; }

/* Real examples: left accent border */
.ex-example.is-real .ex-example-header {
  border-left: 3px solid var(--ex-accent);
  border-radius: 14px 0 0 0;
}
.ex-example.is-real .ex-brief-card {
  border-left: 3px solid var(--ex-accent);
  border-right: 1px solid var(--ex-rule);
  border-bottom: none;
}
.ex-example.is-real .ex-paste-cta {
  border-left: 3px solid var(--ex-accent);
  border-right: 1px solid var(--ex-rule);
}

/* Platform chip */
.ex-label-row { margin-bottom: 0.5rem; }
.ex-platform-chip {
  display: inline-block;
  padding: 0.3rem 0.8rem;
  background: rgba(196, 104, 58, 0.1);
  color: var(--ex-accent);
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 0.04em;
}

/* Sample badge (static examples) */
.ex-sample-chip {
  display: inline-block;
  padding: 0.3rem 0.8rem;
  background: rgba(0,0,0,0.04);
  color: var(--ex-muted);
  border-radius: 999px;
  font-size: 0.75rem;
  font-weight: 400;
}

/* Source tag */
.ex-source-tag {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  font-size: 0.72rem;
  color: var(--ex-muted);
  margin-bottom: 0.4rem;
}
.ex-source-tag svg { width: 11px; height: 11px; opacity: 0.6; flex-shrink: 0; }
.ex-source-tag a { color: var(--ex-muted); text-decoration: none; border-bottom: 1px solid transparent; transition: border-color 0.15s; }
.ex-source-tag a:hover { border-color: var(--ex-muted); }

/* Live badge */
.ex-live-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  padding: 0.3rem 0.85rem;
  background: rgba(196, 104, 58, 0.1);
  color: var(--ex-accent);
  border-radius: 999px;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.03em;
  text-decoration: none;
  border: 1px solid rgba(196, 104, 58, 0.25);
  transition: background 0.15s, border-color 0.15s;
  cursor: pointer;
  white-space: nowrap;
  flex-shrink: 0;
}
.ex-live-badge:hover { background: rgba(196, 104, 58, 0.18); border-color: rgba(196, 104, 58, 0.4); }
.ex-live-badge svg { width: 12px; height: 12px; }

/* Brief card (inherits bp- styles from brief-page.css) */
.ex-brief-card {
  border: 1px solid var(--ex-rule);
  border-top: none;
  border-bottom: none;
  background: #fff;
}

.ex-brief-card .ex-brief-hero {
  padding: 1.5rem 1.75rem 1.25rem;
  border-bottom: 1px solid var(--ex-rule);
}
.ex-brief-card .bp-hero-inner { max-width: 100%; padding: 0; }
.ex-brief-card .bp-eyebrow { font-size: 0.7rem; margin-bottom: 0.3rem; }
.ex-brief-card .bp-couple { font-size: clamp(1.4rem, 3vw, 2rem); margin-bottom: 0.75rem; }
.ex-brief-card .bp-facts { gap: 0.5rem; }

.ex-brief-body {
  padding: 0 1.75rem 1.5rem;
}
.ex-brief-body .bp-section {
  padding-top: 1.25rem;
  padding-bottom: 0;
  border-top: 1px solid rgba(0,0,0,0.05);
  margin-top: 1.25rem;
}
.ex-brief-body .bp-section:first-child { margin-top: 0; border-top: none; padding-top: 0; }
.ex-brief-body .bp-section-title {
  font-size: 0.78rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--ex-muted);
  margin: 0 0 0.75rem;
  display: flex;
  align-items: center;
  gap: 0.4rem;
}
.ex-brief-body .bp-section-title svg { width: 14px; height: 14px; opacity: 0.7; flex-shrink: 0; }

/* ── Paste CTA ────────────────────────────────────────────────────── */
.ex-paste-cta {
  background: var(--ex-accent);
  padding: 1.1rem 1.75rem 1.2rem;
  border: 1px solid var(--ex-rule);
  border-top: none;
  border-radius: 0 0 14px 14px;
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}

.ex-paste-form {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
  align-items: center;
}

.ex-paste-input {
  flex: 1;
  min-width: 200px;
  padding: 0.7rem 1rem;
  border: none;
  border-radius: 6px;
  font-size: 0.9rem;
  font-family: inherit;
  background: rgba(255, 255, 255, 0.95);
  color: #1a1a1a;
  outline: none;
  transition: background 0.15s, box-shadow 0.15s;
}
.ex-paste-input::placeholder { color: #9b8b7a; }
.ex-paste-input:focus { background: #fff; box-shadow: 0 0 0 2px rgba(255,255,255,0.5); }

.ex-paste-btn {
  padding: 0.7rem 1.3rem;
  background: #1a1a1a;
  color: #fff;
  border: none;
  border-radius: 6px;
  font-size: 0.9rem;
  font-weight: 500;
  font-family: inherit;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.15s;
}
.ex-paste-btn:hover { background: #2d2d2d; }

.ex-paste-hint {
  margin: 0;
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.75);
}

/* ── Bottom CTA ───────────────────────────────────────────────────── */
.ex-bottom-cta {
  background: #1a1a1a;
  border-radius: 18px;
  padding: 4rem 3rem;
  text-align: center;
  margin-top: 2rem;
}

.ex-bottom-cta-inner { max-width: 520px; margin: 0 auto; }

.ex-bottom-headline {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 300;
  line-height: 1.15;
  color: #fff;
  margin: 0 0 0.75rem;
}

.ex-bottom-sub {
  font-size: 1rem;
  color: rgba(255,255,255,0.6);
  margin: 0 0 2rem;
  line-height: 1.5;
}

.ex-bottom-form {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 0.75rem;
}

.ex-bottom-input {
  flex: 1;
  min-width: 220px;
  max-width: 380px;
  padding: 0.8rem 1.1rem;
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 8px;
  font-size: 0.9rem;
  font-family: inherit;
  background: rgba(255,255,255,0.07);
  color: #fff;
  outline: none;
  transition: background 0.15s, border-color 0.15s;
}
.ex-bottom-input::placeholder { color: rgba(255,255,255,0.35); }
.ex-bottom-input:focus { background: rgba(255,255,255,0.1); border-color: rgba(255,255,255,0.3); }

.ex-bottom-btn {
  padding: 0.8rem 1.5rem;
  background: var(--ex-accent);
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 0.9rem;
  font-weight: 500;
  font-family: inherit;
  cursor: pointer;
  transition: background 0.15s;
}
.ex-bottom-btn:hover { background: #d4743f; }

.ex-bottom-hint {
  font-size: 0.78rem;
  color: rgba(255,255,255,0.4);
  margin: 0;
}

/* ── Footer ───────────────────────────────────────────────────────── */
.ex-footer {
  border-top: 1px solid var(--ex-rule);
  padding: 2rem 1.5rem;
  text-align: center;
  background: var(--ex-bg);
}

.ex-footer-inner {
  max-width: 880px;
  margin: 0 auto;
}

.ex-footer-brand a {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 1.1rem;
  font-weight: 600;
  color: var(--ex-fg);
  text-decoration: none;
}

.ex-footer-tagline {
  font-size: 0.8rem;
  color: var(--ex-muted);
  margin: 0.25rem 0 0.75rem;
}

.ex-footer-nav {
  display: flex;
  justify-content: center;
  gap: 1.5rem;
}

.ex-footer-nav a {
  font-size: 0.8rem;
  color: var(--ex-muted);
  text-decoration: none;
}
.ex-footer-nav a:hover { color: var(--ex-accent); }

/* ── Responsive ───────────────────────────────────────────────────── */
@media (max-width: 600px) {
  .ex-header-inner { padding: 0.75rem 1.1rem; }
  .ex-header-nav { gap: 1rem; }
  .ex-hero { padding: 2.5rem 1.1rem 2.5rem; }
  .ex-main-inner { padding: 0 1.1rem; }
  .ex-example-header { padding: 0.75rem 1.1rem; flex-wrap: wrap; }
  .ex-brief-card .ex-brief-hero { padding: 1.25rem 1.1rem 1rem; }
  .ex-brief-body { padding: 0 1.1rem 1.25rem; }
  .ex-paste-cta { padding: 1rem 1.1rem 1.1rem; }
  .ex-paste-form { flex-direction: column; }
  .ex-paste-input, .ex-paste-btn { width: 100%; }
  .ex-bottom-cta { padding: 2.5rem 1.5rem; border-radius: 12px; }
  .ex-bottom-form { flex-direction: column; align-items: stretch; }
  .ex-bottom-input { max-width: 100%; }
}

@media (max-width: 380px) {
  .ex-headline { font-size: 2.2rem; }
}
/* ── Vendor grid ──────────────────────────────────────────────────── */
.ex-vendor-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 1rem;
}

.ex-vendor-card {
  background: #fff;
  border: 1px solid var(--ex-rule);
  border-radius: 12px;
  padding: 1.25rem 1.4rem 1.35rem;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}

.ex-vendor-category {
  font-size: 0.65rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--ex-accent);
}

.ex-vendor-name {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 1.15rem;
  font-weight: 400;
  color: var(--ex-fg);
  margin: 0;
  line-height: 1.2;
}

.ex-vendor-location {
  display: flex;
  align-items: center;
  gap: 0.3rem;
  font-size: 0.78rem;
  color: var(--ex-muted);
  margin: 0.1rem 0 0;
}
.ex-vendor-location svg { flex-shrink: 0; opacity: 0.7; }

.ex-vendor-desc {
  font-size: 0.875rem;
  color: var(--ex-muted);
  line-height: 1.5;
  margin: 0.15rem 0 0;
}

@media (max-width: 600px) {
  .ex-vendor-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 400px) {
  .ex-vendor-grid { grid-template-columns: 1fr; }
}

/* ── How it works section ────────────────────────────────────────── */
.ex-howitworks {
  margin-top: -1rem;
}

.ex-howitworks-inner {
  background: var(--ex-surface);
  border: 1px solid var(--ex-rule);
  border-radius: 14px;
  padding: 2rem 1.75rem 2.25rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.ex-howitworks-headline {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 400;
  line-height: 1.25;
  color: var(--ex-fg);
  margin: 0;
}

.ex-howitworks-steps {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  border-top: 1px solid var(--ex-rule);
}

.ex-how-step {
  padding: 1.5rem 1.25rem 0;
  border-right: 1px solid var(--ex-rule);
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.ex-how-step:last-child { border-right: none; padding-right: 0; }
.ex-how-step:first-child { padding-left: 0; }

.ex-how-step-num {
  font-size: 0.7rem;
  letter-spacing: 0.12em;
  color: var(--ex-accent);
  font-weight: 600;
  text-transform: uppercase;
}

.ex-how-step h3 {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.2;
  color: var(--ex-fg);
  margin: 0;
}

.ex-how-step p {
  font-size: 0.85rem;
  color: var(--ex-muted);
  line-height: 1.55;
  margin: 0;
}

.ex-how-form {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
  align-items: center;
  padding-top: 0.75rem;
  border-top: 1px solid var(--ex-rule);
}

.ex-how-input {
  flex: 1;
  min-width: 220px;
  padding: 0.7rem 1rem;
  border: 1px solid var(--ex-rule);
  border-radius: 8px;
  font-size: 0.9rem;
  font-family: inherit;
  background: #fff;
  color: var(--ex-fg);
  outline: none;
  transition: border-color 0.15s;
}
.ex-how-input:focus { border-color: var(--ex-accent); }

.ex-how-btn {
  padding: 0.7rem 1.3rem;
  background: var(--ex-accent);
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 0.9rem;
  font-weight: 500;
  font-family: inherit;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.15s;
}
.ex-how-btn:hover { background: #b35a30; }

.ex-how-hint {
  font-size: 0.78rem;
  color: var(--ex-muted);
  margin: -0.5rem 0 0;
}

@media (max-width: 720px) {
  .ex-howitworks-steps { grid-template-columns: 1fr; }
  .ex-how-step { border-right: none; border-bottom: 1px solid var(--ex-rule); padding: 1.25rem 0; }
  .ex-how-step:last-child { border-bottom: none; padding-bottom: 0; }
  .ex-how-form { flex-direction: column; align-items: stretch; }
  .ex-how-input, .ex-how-btn { width: 100%; }
}

/* ── Email capture ───────────────────────────────────────────────── */
.ex-email-capture {
  background: var(--ex-bg);
  border-top: 1px solid var(--ex-rule);
  padding: 4rem 1.5rem;
}

.ex-email-capture-inner {
  max-width: 520px;
  margin: 0 auto;
  text-align: center;
}

.ex-email-headline {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  font-weight: 400;
  color: var(--ex-fg);
  margin: 0 0 0.5rem;
}

.ex-email-sub {
  font-size: 0.95rem;
  color: var(--ex-muted);
  margin: 0 0 1.75rem;
  line-height: 1.5;
}

.ex-email-form {
  display: flex;
  gap: 0.6rem;
  flex-wrap: wrap;
  justify-content: center;
}

.ex-email-input {
  flex: 1;
  min-width: 180px;
  max-width: 260px;
  padding: 0.75rem 1rem;
  border: 1px solid var(--ex-rule);
  border-radius: 8px;
  font-size: 0.9rem;
  font-family: inherit;
  background: #fff;
  color: var(--ex-fg);
  outline: none;
  transition: border-color 0.15s;
}
.ex-email-input:focus { border-color: var(--ex-accent); }

.ex-email-btn {
  padding: 0.75rem 1.4rem;
  background: var(--ex-accent);
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 0.9rem;
  font-weight: 500;
  font-family: inherit;
  cursor: pointer;
  transition: background 0.15s;
}
.ex-email-btn:hover { background: #b35a30; }

.ex-email-success {
  font-size: 0.9rem;
  color: #2d7a4a;
  font-weight: 500;
  display: none;
}

.ex-email-error {
  font-size: 0.8rem;
  color: #c44;
  margin-top: 0.5rem;
  display: none;
}

@media (max-width: 600px) {
  .ex-email-form { flex-direction: column; align-items: stretch; }
  .ex-email-input, .ex-email-btn { width: 100%; max-width: 100%; }
}
