/* ============================================================
   Customer Visit News — scoped styles
   Container class: .gc-news-cv-page  (must NOT leak to global WP/Kadence)
   Brand tokens: --blue #0052cc | --navy #0f2747 | --accent #00a3c4
   ============================================================ */
.gc-news-cv-page {
  --blue:#0052cc;
  --navy:#0f2747;
  --accent:#00a3c4;
  --ink:#1f2933;
  --muted:#5b6770;
  --line:#e3e8ee;
  --soft:#f5f8fb;
  --soft2:#eef4f9;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,"PingFang SC","Microsoft YaHei",sans-serif;
  color:var(--ink);
  line-height:1.7;
  font-size:16px;
  background:#ffffff;
  max-width:1140px;
  margin:0 auto;
  padding:0 20px 64px;
}
.gc-news-cv-page * { box-sizing:border-box; }
.gc-news-cv-page p { margin:0 0 16px; color:var(--ink); }
.gc-news-cv-page a { color:var(--blue); text-decoration:none; }
.gc-news-cv-page a:hover { text-decoration:underline; }
.gc-news-cv-page ul, .gc-news-cv-page ol { margin:0 0 16px; padding-left:20px; }
.gc-news-cv-page li { margin:0 0 8px; }

/* Hero */
.gc-news-cv-hero {
  background:linear-gradient(180deg,#f7fafe 0%,#ffffff 100%);
  border:1px solid var(--line);
  border-radius:16px;
  padding:44px 40px 36px;
  margin:28px 0 30px;
}
.gc-news-cv-hero .gc-tag {
  display:inline-block; font-size:12px; font-weight:700; letter-spacing:.6px;
  text-transform:uppercase; color:var(--blue); background:var(--soft2);
  border:1px solid #cfe3f1; border-radius:999px; padding:5px 14px; margin-bottom:14px;
}
.gc-news-cv-hero h2 {
  font-size:33px; line-height:1.22; color:var(--navy);
  margin:0 0 12px; font-weight:800; letter-spacing:-0.3px;
}
.gc-news-cv-hero .gc-news-cv-lede { font-size:16.5px; color:var(--muted); margin:0; }

/* Group photo placeholder (authorized on-site image to be inserted) */
.gc-news-cv-photo {
  width:100%; aspect-ratio:16/7; border:1px dashed #b9c6d4; border-radius:12px;
  background:repeating-linear-gradient(135deg,#f3f6fa,#f3f6fa 14px,#eef3f8 14px,#eef3f8 28px);
  display:flex; align-items:center; justify-content:center; text-align:center;
  color:#6b7884; font-size:14px; padding:24px; margin:22px 0 8px;
}
.gc-news-cv-photo b { color:var(--navy); display:block; font-size:15px; margin-bottom:4px; }
.gc-news-cv-cap { font-size:13px; color:var(--muted); margin:0 0 24px; }

/* Buttons / CTA */
.gc-news-cv-btn {
  display:inline-block; background:var(--blue); color:#fff !important; border:none;
  padding:14px 28px; border-radius:8px; font-weight:700; font-size:15px; cursor:pointer;
  text-decoration:none !important; box-shadow:0 6px 16px rgba(0,82,204,.18);
  transition:background .15s ease, transform .15s ease;
}
.gc-news-cv-btn:hover { background:#003fa0; transform:translateY(-1px); }
.gc-news-cv-btn.ghost { background:transparent; color:var(--blue) !important; border:1.5px solid var(--blue); box-shadow:none; }
.gc-news-cv-btnrow { display:flex; flex-wrap:wrap; gap:14px; }

/* Section + headings */
.gc-news-cv-section { margin:40px 0; }
.gc-news-cv-section > h2 {
  font-size:24px; color:var(--navy); margin:0 0 6px; font-weight:800;
  padding-left:14px; border-left:5px solid var(--blue); line-height:1.3;
}
.gc-news-cv-sub { color:var(--muted); font-size:15px; margin:0 0 18px; padding-left:19px; }

/* At-a-glance info row */
.gc-news-cv-glance {
  display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin:8px 0 4px;
}
.gc-news-cv-glance .gc-cell { background:var(--soft); border:1px solid var(--line); border-radius:12px; padding:16px 16px; }
.gc-news-cv-glance .gc-cell .k { font-size:12px; text-transform:uppercase; letter-spacing:.5px; color:var(--muted); margin-bottom:6px; }
.gc-news-cv-glance .gc-cell .v { font-size:16px; font-weight:800; color:var(--navy); line-height:1.3; }

/* Two-column image+text */
.gc-news-cv-grid2 { display:grid; grid-template-columns:1fr 1fr; gap:28px; align-items:center; }
.gc-news-cv-grid2 .gc-col-img img { width:100%; height:auto; border-radius:12px; border:1px solid var(--line); display:block; background:#fff; }
.gc-news-cv-grid2 h3 { font-size:18px; color:var(--navy); margin:0 0 10px; }

/* Process list (corrected, distinct per process) */
.gc-news-cv-proc { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin:10px 0 0; }
.gc-news-cv-proc .gc-card { background:#fff; border:1px solid var(--line); border-radius:12px; padding:18px 20px; box-shadow:0 2px 8px rgba(15,39,71,.04); }
.gc-news-cv-proc .gc-card h4 { margin:0 0 6px; color:var(--navy); font-size:15.5px; }
.gc-news-cv-proc .gc-card p { font-size:14px; color:var(--muted); margin:0; }

/* Image + caption row */
.gc-news-cv-figs { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin:10px 0 0; }
.gc-news-cv-figs figure { margin:0; }
.gc-news-cv-figs img { width:100%; height:auto; border-radius:12px; border:1px solid var(--line); display:block; background:#fff; }
.gc-news-cv-figs figcaption { font-size:12.5px; color:var(--muted); margin-top:8px; }

/* Tables */
.gc-news-cv-table { width:100%; border-collapse:collapse; margin:8px 0 4px; font-size:14.5px; overflow:hidden; border-radius:10px; border:1px solid var(--line); }
.gc-news-cv-table th, .gc-news-cv-table td { text-align:left; padding:12px 14px; border-bottom:1px solid var(--line); vertical-align:top; }
.gc-news-cv-table thead th { background:var(--navy); color:#fff; font-weight:700; font-size:13.5px; letter-spacing:.3px; }
.gc-news-cv-table tbody tr:nth-child(even) { background:var(--soft); }
.gc-news-cv-table tbody tr:last-child td { border-bottom:none; }

/* Callout / note */
.gc-news-cv-note { background:#fff7ed; border:1px solid #f3d3aa; border-left:5px solid #e08a1e; border-radius:10px; padding:16px 20px; margin:14px 0; }
.gc-news-cv-note p { margin:0; color:#7a4d12; font-size:14px; }

.gc-news-cv-tip { background:var(--soft2); border:1px solid var(--line); border-left:5px solid var(--accent); border-radius:10px; padding:16px 20px; margin:14px 0; }
.gc-news-cv-tip p { margin:0; color:var(--ink); font-size:14.5px; }

/* Author byline */
.gc-news-cv-author { display:flex; gap:16px; align-items:center; border:1px solid var(--line); border-radius:14px; padding:20px 24px; margin:34px 0 0; background:var(--soft); }
.gc-news-cv-author .gc-a-name { font-weight:800; color:var(--navy); font-size:15.5px; }
.gc-news-cv-author .gc-a-role { color:var(--muted); font-size:13px; margin-top:2px; }

/* Related links */
.gc-news-cv-links { display:flex; flex-wrap:wrap; gap:12px; margin:10px 0 0; }
.gc-news-cv-links a { display:block; border:1px solid var(--line); border-radius:10px; padding:12px 16px; font-size:14px; color:var(--navy); background:#fff; font-weight:600; }
.gc-news-cv-links a:hover { border-color:var(--blue); background:var(--soft); text-decoration:none; }

/* Trust strip */
.gc-news-cv-trust { display:flex; flex-wrap:wrap; gap:22px; justify-content:center; margin:30px 0 0; padding-top:22px; border-top:1px solid var(--line); color:var(--muted); font-size:13px; text-align:center; }
.gc-news-cv-trust span b { color:var(--navy); }

/* In-page quote modal — same pattern as other Goldcattle pages */
.gc-news-cv-modal { position:fixed; inset:0; z-index:99999; display:none; }
.gc-news-cv-modal.is-open { display:block; }
.gc-news-cv-modal-overlay { position:absolute; inset:0; background:rgba(15,39,71,.55); }
.gc-news-cv-modal-box { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:min(960px,92vw); height:min(86vh,820px); background:#fff; border-radius:14px; overflow:hidden; box-shadow:0 24px 70px rgba(0,0,0,.32); }
.gc-news-cv-modal-close { position:absolute; top:10px; right:12px; z-index:3; width:38px; height:38px; border:none; border-radius:50%; background:rgba(15,39,71,.82); color:#fff; font-size:22px; line-height:1; cursor:pointer; transition:background .15s ease; }
.gc-news-cv-modal-close:hover { background:var(--navy); }
.gc-news-cv-modal-iframe { width:100%; height:100%; border:0; display:block; }

/* Responsive */
@media (max-width:860px) {
  .gc-news-cv-hero { padding:32px 22px; }
  .gc-news-cv-hero h2 { font-size:26px; }
  .gc-news-cv-glance { grid-template-columns:repeat(2,1fr); }
  .gc-news-cv-grid2 { grid-template-columns:1fr; }
  .gc-news-cv-proc { grid-template-columns:1fr; }
  .gc-news-cv-figs { grid-template-columns:1fr; }
}
@media (max-width:480px) {
  .gc-news-cv-glance { grid-template-columns:1fr; }
}
