/* Scoped review blocks (v2.0): disclosure + verdict */

body.parent-pageid-5 .inside-article .entry-content .gg-disclosure,
body.parent-pageid-5 .wp-block-post-content .gg-disclosure {
  box-sizing: border-box;
  max-width: 100%;
  margin: 16px 0 20px;
  padding: 12px 16px;
  background: #fff7ed;
  border: 1px solid #fed7aa;
  border-left: 4px solid #fb923c;
  border-radius: 0;
  font-size: 0.95rem;
}

body.parent-pageid-5 .inside-article .entry-content .gg-disclosure > :first-child,
body.parent-pageid-5 .wp-block-post-content .gg-disclosure > :first-child {
  margin-top: 0;
}

body.parent-pageid-5 .inside-article .entry-content .gg-disclosure > :last-child,
body.parent-pageid-5 .wp-block-post-content .gg-disclosure > :last-child {
  margin-bottom: 0;
}

body.parent-pageid-5 .inside-article .entry-content .gg-verdict,
body.parent-pageid-5 .wp-block-post-content .gg-verdict {
  box-sizing: border-box;
  max-width: 100%;
  margin: 18px 0 24px;
  padding: 18px 20px;
  background: #f8f9ff;
  border: 1px solid #e5e7eb;
  border-left: 4px solid #2563eb;
  border-radius: 16px;
}

body.parent-pageid-5 .inside-article .entry-content .gg-verdict > :first-child,
body.parent-pageid-5 .wp-block-post-content .gg-verdict > :first-child {
  margin-top: 0;
}

body.parent-pageid-5 .inside-article .entry-content .gg-verdict > :last-child,
body.parent-pageid-5 .wp-block-post-content .gg-verdict > :last-child {
  margin-bottom: 0;
}

body.parent-pageid-5 .inside-article .entry-content .gg-verdict p,
body.parent-pageid-5 .wp-block-post-content .gg-verdict p {
  margin: 0 0 12px;
  line-height: 1.6;
}

body.parent-pageid-5 .inside-article .entry-content .gg-verdict p:last-child,
body.parent-pageid-5 .wp-block-post-content .gg-verdict p:last-child {
  margin-bottom: 0;
}

/* ============================
   GadgetGems Review v2 – Polish
   Scope: AI Writing Tools children
   ============================ */
body.page-child.parent-pageid-5 .entry-content{
  font-size: 1.05rem;
  line-height: 1.75;
}

/* Improve readable line length */
body.page-child.parent-pageid-5 .inside-article{
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}

/* Hide the duplicate inner H1 produced by the generator (keep only the real page title) */
body.page-child.parent-pageid-5 .entry-content > h1{
  display:none;
}

/* ---------- Disclosure (compact notice) ---------- */
body.page-child.parent-pageid-5 .entry-content h2[id^="disclosure"]{
  display:flex;
  align-items:center;
  gap:10px;
  font-size: 1.05rem;
  font-weight: 700;
  margin: 12px 0 0;
  padding: 14px 16px 10px;
  background: #fff7f2;
  border: 1px solid #ffe1cf;
  border-left: 4px solid #ff8c42;
  border-radius: 12px 12px 0 0;
}

body.page-child.parent-pageid-5 .entry-content h2[id^="disclosure"] + p{
  margin: 0 0 20px;
  padding: 10px 16px 14px;
  background: #fff7f2;
  border: 1px solid #ffe1cf;
  border-top: 0;
  border-left: 4px solid #ff8c42;
  border-radius: 0 0 12px 12px;
  color:#374151;
  font-size: 0.95rem;
  line-height: 1.6;
}

/* ---------- Verdict Summary (hero card) ---------- */
body.page-child.parent-pageid-5 .entry-content h2[id*="verdict"]{
  margin: 26px 0 10px;
  font-size: 1.35rem;
  font-weight: 800;
}

/* First paragraph after verdict heading becomes the “card” */
body.page-child.parent-pageid-5 .entry-content h2[id*="verdict"] + p{
  margin: 0 0 14px;
  padding: 18px 18px;
  background: #f6fbff;
  border: 1px solid #dbeafe;
  border-radius: 14px;
  line-height: 1.75;
  font-size: 1.02rem;
}

/* Style “Verdict / Score” paragraph (usually the next <p>) */
body.page-child.parent-pageid-5 .entry-content h2[id*="verdict"] + p + p{
  margin: 0 0 22px;
  padding: 14px 16px;
  background: #ffffff;
  border: 1px solid #eef2f7;
  border-radius: 12px;
  font-size: 0.98rem;
}

/* Make the labels pop */
body.page-child.parent-pageid-5 .entry-content h2[id*="verdict"] + p + p strong{
  display:inline-block;
  min-width: 68px;
}

/* ---------- Section rhythm ---------- */
body.page-child.parent-pageid-5 .entry-content hr{
  margin: 34px 0;
  opacity: 0.12;
}

body.page-child.parent-pageid-5 .entry-content h2{
  margin-top: 34px;
}

body.page-child.parent-pageid-5 .entry-content h3{
  margin-top: 22px;
}

/* ---------- Tables: cleaner + not cramped ---------- */
body.page-child.parent-pageid-5 .entry-content table{
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  overflow: hidden;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  font-size: 0.95rem;
}

body.page-child.parent-pageid-5 .entry-content table th{
  background: #f3f4f6;
  font-weight: 700;
}

body.page-child.parent-pageid-5 .entry-content table th,
body.page-child.parent-pageid-5 .entry-content table td{
  padding: 12px 12px;
  border-bottom: 1px solid #e5e7eb;
}

body.page-child.parent-pageid-5 .entry-content table tr:last-child td{
  border-bottom: 0;
}
/* ============================
   GadgetGems Review v2 – FIXED
   Scope: review articles only
   ============================ */

/* Global review typography */
.entry-content {
  font-size: 1.05rem;
  line-height: 1.7;
}

/* ---------- Disclosure ---------- */
.entry-content h2[id^="disclosure"] {
  background: #fff6f0;
  border-left: 4px solid #ff8c42;
  padding: 14px 16px;
  margin-top: 0;
}

.entry-content h2[id^="disclosure"] + p {
  background: #fff6f0;
  padding: 12px 16px;
  margin-top: -10px;
  border-left: 4px solid #ff8c42;
  font-size: 0.95rem;
  color: #444;
}

/* ---------- Verdict Summary ---------- */
.entry-content h2[id*="verdict"] {
  margin-top: 2.5rem;
}

.entry-content h2[id*="verdict"] + p {
  background: #f5f9ff;
  border: 1px solid #dbe8ff;
  border-radius: 10px;
  padding: 18px 20px;
  font-size: 1.05rem;
}

/* ---------- Pros / Cons ---------- */
.entry-content h3[id^="pros"],
.entry-content h3[id^="cons"] {
  margin-top: 2rem;
}

.entry-content h3[id^="pros"] + ul li {
  color: #0a7a2f;
}

.entry-content h3[id^="cons"] + ul li {
  color: #a30000;
}

/* ---------- Tables ---------- */
.entry-content table {
  border-collapse: collapse;
  margin: 1.5rem 0;
  font-size: 0.95rem;
}

.entry-content table th {
  background: #f2f4f7;
  font-weight: 600;
}

.entry-content table th,
.entry-content table td {
  border: 1px solid #e5e7eb;
  padding: 10px 12px;
}

/* ---------- Section spacing ---------- */
.entry-content hr {
  margin: 3rem 0;
  opacity: 0.15;
}

body.page-child .gg-pros-cons{ grid-template-columns: 1fr; }
/* Pros/Cons blocks (no wrapper) */
body.page-child .entry-content h3#pros + ul,
body.page-child .entry-content h3#cons + ul{
  padding: 1rem 1.25rem;
  border: 1px solid var(--gg-border);
  border-radius: 10px;
  background: #fff;
}

body.page-child .entry-content h3#pros { color:#15803d; }
body.page-child .entry-content h3#cons { color:#b91c1c; }
/* ------------------------------------------------------------
   Review polish pass: typography, hierarchy, and readability
   Scoped to review pages only (parent-pageid-5).
------------------------------------------------------------ */

/* Reading width + baseline typography rhythm */
body.parent-pageid-5 .inside-article .entry-content,
body.parent-pageid-5 .wp-block-post-content {
  max-width: 720px;
}

body.parent-pageid-5 .inside-article .entry-content p,
body.parent-pageid-5 .wp-block-post-content p {
  font-size: 1rem;
  line-height: 1.7;
  margin: 0 0 1.15rem;
}

body.parent-pageid-5 .inside-article .entry-content li,
body.parent-pageid-5 .wp-block-post-content li {
  line-height: 1.7;
}

/* Section headings – stronger hierarchy */
body.parent-pageid-5 .inside-article .entry-content h2,
body.parent-pageid-5 .wp-block-post-content h2 {
  font-size: 1.45rem;
  margin-top: 3rem;
  margin-bottom: 1rem;
  position: relative;
}

body.parent-pageid-5 .inside-article .entry-content h2::before,
body.parent-pageid-5 .wp-block-post-content h2::before {
  content: "";
  position: absolute;
  left: -12px;
  top: 0.3em;
  height: 1em;
  width: 3px;
  background: #2563eb;
  border-radius: 2px;
}

body.parent-pageid-5 .inside-article .entry-content h3,
body.parent-pageid-5 .wp-block-post-content h3 {
  font-size: 1.15rem;
  margin-top: 1.75rem;
  margin-bottom: 0.75rem;
}

/* Disclosure box – calmer typography */
body.parent-pageid-5 .inside-article .entry-content .gg-disclosure,
body.parent-pageid-5 .wp-block-post-content .gg-disclosure {
  font-size: 0.95rem;
  line-height: 1.45;
}

body.parent-pageid-5 .inside-article .entry-content .gg-disclosure p,
body.parent-pageid-5 .wp-block-post-content .gg-disclosure p {
  margin-bottom: 0.75rem;
}

body.parent-pageid-5 .inside-article .entry-content .gg-disclosure h2,
body.parent-pageid-5 .wp-block-post-content .gg-disclosure h2 {
  font-size: 1.05rem;
  margin-top: 0;
  margin-bottom: 0.65rem;
}

/* Verdict / TL;DR box readability */
body.parent-pageid-5 .inside-article .entry-content .gg-verdict,
body.parent-pageid-5 .wp-block-post-content .gg-verdict,
body.parent-pageid-5 .inside-article .entry-content .gg-verdict-box,
body.parent-pageid-5 .wp-block-post-content .gg-verdict-box {
  line-height: 1.65;
}

body.parent-pageid-5 .inside-article .entry-content .gg-verdict p,
body.parent-pageid-5 .wp-block-post-content .gg-verdict p,
body.parent-pageid-5 .inside-article .entry-content .gg-verdict-box p,
body.parent-pageid-5 .wp-block-post-content .gg-verdict-box p {
  margin-bottom: 0.9rem;
}

/* Tables – readability + highlight ElevenLabs column */
body.parent-pageid-5 .inside-article .entry-content table,
body.parent-pageid-5 .wp-block-post-content table {
  font-size: 0.95rem;
}

body.parent-pageid-5 .inside-article .entry-content table th,
body.parent-pageid-5 .wp-block-post-content table th {
  font-weight: 600;
}

/* NOTE: nth-child below is for review tables, not hub bento */
body.parent-pageid-5 .inside-article .entry-content table th:nth-child(2),
body.parent-pageid-5 .inside-article .entry-content table td:nth-child(2),
body.parent-pageid-5 .wp-block-post-content table th:nth-child(2),
body.parent-pageid-5 .wp-block-post-content table td:nth-child(2) {
  background: #f8fafc;
  font-weight: 600;
}

/* Links – cleaner underline */
body.parent-pageid-5 .inside-article .entry-content a,
body.parent-pageid-5 .wp-block-post-content a {
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

body.parent-pageid-5 .inside-article .entry-content a:hover,
body.parent-pageid-5 .wp-block-post-content a:hover {
  text-decoration-thickness: 2px;
}

/* Section separators */
body.parent-pageid-5 .inside-article .entry-content hr,
body.parent-pageid-5 .wp-block-post-content hr {
  margin: 2rem 0;
  opacity: 0.35;
}
/* Disclosure: style #ad marker */
body.parent-pageid-5 .gg-disclosure p:first-child {
  position: relative;
  padding-left: 2.2rem;
}

body.parent-pageid-5 .gg-disclosure p:first-child::before {
  content: "AD";
  position: absolute;
  left: 0;
  top: 0.15em;
  font-size: 0.65rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: #92400e;
  background: #fde68a;
  padding: 0.15rem 0.45rem;
  border-radius: 4px;
}

/* Disclosure polish: tighter header, better text rhythm */
body.parent-pageid-5 .gg-disclosure {
  padding: 0.85rem 1.25rem;
}

body.parent-pageid-5 .gg-disclosure h2 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.35rem;
  line-height: 1.2;
}

body.parent-pageid-5 .gg-disclosure p {
  margin: 0;
  line-height: 1.55;
  font-size: 0.9rem;
}
/* -------------------------------------------------
   Review polish: disclosure, hierarchy, readability
   Scoped to review pages only (parent-pageid-5)
-------------------------------------------------- */

/* Disclosure box polish */
body.parent-pageid-5 .gg-disclosure {
  padding: 0.85rem 1.25rem;
}

body.parent-pageid-5 .gg-disclosure h2 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.35rem;
  line-height: 1.2;
}

body.parent-pageid-5 .gg-disclosure p {
  margin: 0;
  line-height: 1.55;
  font-size: 0.9rem;
}

/* Reading width + paragraph rhythm */
body.parent-pageid-5 .inside-article .entry-content,
body.parent-pageid-5 .wp-block-post-content {
  max-width: 720px;
}

body.parent-pageid-5 .entry-content p,
body.parent-pageid-5 .wp-block-post-content p {
  line-height: 1.7;
  margin-bottom: 1.1rem;
}

/* Section spacing */
body.parent-pageid-5 .entry-content h2 {
  margin-top: 2.2rem;
  margin-bottom: 0.75rem;
}

/* Verdict line emphasis */
body.parent-pageid-5 .entry-content .gg-verdict-inline {
  font-weight: 600;
}
/* --------------------------------------------------------------
   AI Content Studio hub (bento)
   Scope: .gg-hub--ai-content-studio wrapper
-------------------------------------------------------------- */

body:has(.gg-hub--ai-content-studio) .entry-header .entry-title {
  display: none !important;
}

/* Make the hub feel like a landing page (wider, more breathable) */
.gg-hub--ai-content-studio {
  max-width: 1040px;
  margin: 0 auto;
}
.gg-hub--ai-content-studio > h1 {
  margin-bottom: 0.35rem;
  letter-spacing: -0.02em;
}
.gg-hub--ai-content-studio > p {
  margin-top: 0;
  margin-bottom: 1.25rem;
  font-size: 1.05rem;
  line-height: 1.6;
  color: rgba(0,0,0,.72);
}

/* Bento grid: better spacing + stable rows */
.gg-hub--ai-content-studio .gg-hub-grid {
  display: grid;
  gap: 14px;
  align-items: stretch;
}

/* Cards: depth + better internal layout */
.gg-hub--ai-content-studio .gg-card {
  --gg-accent: #475569;
  --gg-accent-soft: #f1f5f9;
  --gg-accent-border: #cbd5e1;
  --gg-card-accent: var(--gg-accent);
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  background: #fff;
  padding: 18px 18px 16px;
  box-shadow: 0 12px 28px rgba(15,23,42,0.08);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  display: flex;
  flex-direction: column;
  min-height: 180px;
  height: 100%;
  position: relative;
  overflow: hidden;
}
.gg-hub--ai-content-studio .gg-card--tile:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 32px rgba(15,23,42,0.12);
  border-color: rgba(15,23,42,0.18);
}

.gg-hub--ai-content-studio .gg-card[data-accent="slate"] {
  --gg-accent: #475569;
  --gg-accent-soft: #f1f5f9;
  --gg-accent-border: #cbd5e1;
}

.gg-hub--ai-content-studio .gg-card[data-accent="violet"] {
  --gg-accent: #7c3aed;
  --gg-accent-soft: #f5f3ff;
  --gg-accent-border: #ddd6fe;
}

.gg-hub--ai-content-studio .gg-card[data-accent="cyan"] {
  --gg-accent: #0891b2;
  --gg-accent-soft: #ecfeff;
  --gg-accent-border: #a5f3fc;
}

.gg-hub--ai-content-studio .gg-card[data-accent="amber"] {
  --gg-accent: #d97706;
  --gg-accent-soft: #fffbeb;
  --gg-accent-border: #fde68a;
}

.gg-hub--ai-content-studio .gg-card[data-accent="lime"] {
  --gg-accent: #65a30d;
  --gg-accent-soft: #f7fee7;
  --gg-accent-border: #d9f99d;
}

.gg-hub--ai-content-studio .gg-card[data-accent="rose"] {
  --gg-accent: #e11d48;
  --gg-accent-soft: #fff1f2;
  --gg-accent-border: #fecdd3;
}

.gg-hub--ai-content-studio .gg-card::before {
  content: "✨";
  position: absolute;
  top: 14px;
  right: 14px;
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: var(--gg-accent-soft);
  border: 1px solid var(--gg-accent-border);
  font-size: 16px;
  z-index: 1;
}

.gg-hub--ai-content-studio .gg-card::after {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 4px;
  background: var(--gg-card-accent);
  z-index: 0;
}

.gg-hub--ai-content-studio .gg-card[data-icon="mic"]::before {
  content: "🎙️";
}

.gg-hub--ai-content-studio .gg-card[data-icon="voice"]::before {
  content: "🗣️";
}

.gg-hub--ai-content-studio .gg-card[data-icon="video"]::before {
  content: "🎬";
}

.gg-hub--ai-content-studio .gg-card[data-icon="pen"]::before {
  content: "✍️";
}

.gg-hub--ai-content-studio .gg-card[data-icon="robot"]::before {
  content: "🤖";
}

.gg-hub--ai-content-studio .gg-card[data-icon="spark"]::before {
  content: "✨";
}

.gg-hub--ai-content-studio .gg-card > * {
  position: relative;
  z-index: 2;
}

.gg-hub--ai-content-studio .gg-card-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 10px;
}
.gg-hub--ai-content-studio .gg-pill {
  font-size: 12px;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid var(--gg-accent-border);
  background: var(--gg-accent-soft);
  color: #334155;
}
.gg-hub--ai-content-studio .gg-badge {
  font-size: 12px;
  padding: 3px 8px;
  border-radius: 999px;
  border: 1px solid var(--gg-accent-border);
  background: var(--gg-accent-soft);
}

.gg-hub--ai-content-studio .gg-card-title {
  margin: 0 0 6px;
  font-size: 1.1rem;
  letter-spacing: -0.01em;
  line-height: 1.25;
}
.gg-hub--ai-content-studio .gg-card-blurb {
  margin: 0 0 12px;
  color: #475569;
  line-height: 1.6;
  max-width: 44ch;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* CTA: dark pill like homepage cards */
.gg-hub--ai-content-studio .gg-card-cta,
.gg-hub--ai-content-studio .gg-cta {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  width: fit-content;
  padding: 8px 12px;
  border-radius: 12px;
  border: 1px solid #111827;
  background: #111827;
  text-decoration: none;
  color: #ffffff;
}
.gg-hub--ai-content-studio .gg-card-cta:hover,
.gg-hub--ai-content-studio .gg-cta:hover {
  background: #0f172a;
  border-color: #0f172a;
  text-decoration: none;
}

/* Hero tile polish */
.gg-hub--ai-content-studio .gg-card--hero {
  border-color: var(--gg-accent);
  background: linear-gradient(135deg, #ffffff 0%, var(--gg-accent-soft) 100%);
  padding: 24px 24px 20px;
  min-height: 220px;
}

.gg-hub--ai-content-studio .gg-card--hero::after {
  content: "";
  position: absolute;
  inset: -40% 35% 40% -25%;
  background: radial-gradient(circle, rgba(255,255,255,.75) 0%, transparent 60%);
  opacity: 0.65;
  pointer-events: none;
}

.gg-hub--ai-content-studio .gg-card--hero .gg-card-title {
  font-size: 1.32rem;
  line-height: 1.2;
}

.gg-hub--ai-content-studio .gg-card--hero .gg-card-blurb {
  max-width: 52ch;
  -webkit-line-clamp: 4;
}

.gg-hub--ai-content-studio .gg-card--hero .gg-cta {
  background: #111827;
  border-color: #111827;
  color: #ffffff;
  box-shadow: 0 12px 24px rgba(15,23,42,0.15);
}

.gg-hub--ai-content-studio .gg-card--hero .gg-cta:hover {
  background: #0f172a;
  border-color: #0f172a;
}

/* Featured tiles: consistent height */
.gg-hub--ai-content-studio .gg-card--tile {
  min-height: 180px;
}

/* Desktop bento layout (no nth-child): spans are driven by hero/tile classes */
@media (min-width: 860px) {
  .gg-hub--ai-content-studio .gg-hub-featured .gg-hub-grid,
  .gg-hub--ai-content-studio .gg-hub-section .gg-hub-grid {
    grid-template-columns: repeat(12, 1fr);
  }
  .gg-hub--ai-content-studio .gg-hub-featured .gg-card.gg-card--hero { grid-column: span 6; }
  .gg-hub--ai-content-studio .gg-hub-featured .gg-card.gg-card--tile { grid-column: span 3; }
  .gg-hub--ai-content-studio .gg-hub-section .gg-card { grid-column: span 4; }
}
.gg-hub--ai-content-studio .gg-hub-featured,
.gg-hub--ai-content-studio .gg-hub-section {
  margin-bottom: 28px;
}

.gg-hub .gg-hub-index {
  margin: 20px 0 32px;
}

.gg-hub .gg-hub-index__tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 16px;
}

.gg-hub .gg-hub-index__tab {
  display: inline-flex;
  align-items: center;
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid rgba(0, 0, 0, 0.12);
  background: rgba(0, 0, 0, 0.03);
  color: #111827;
  font-weight: 600;
  text-decoration: none;
}

.gg-hub .gg-hub-index__tab.is-active {
  background: #111827;
  border-color: #111827;
  color: #ffffff;
}

.gg-hub .gg-hub-section__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.gg-hub .gg-hub-section__head h2 {
  margin: 0;
}

.gg-hub .gg-hub-section__link {
  font-weight: 600;
  text-decoration: none;
}

.gg-hub .gg-hub-index__empty {
  margin: 0;
  color: rgba(0, 0, 0, 0.6);
}

/* Back to hub banner (legacy pages) */
.gg-back-to-hub {
  margin: 12px 0 18px;
  padding: 10px 12px;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 12px;
  background: rgba(0,0,0,.03);
}

.gg-back-to-hub__link {
  text-decoration: none;
  font-weight: 700;
}

.gg-back-to-hub__link:hover {
  text-decoration: underline;
}

/* Header logo enforcement (GeneratePress branding) */
.gg-site-branding {
  display: flex;
  align-items: center;
}

.gg-site-branding .custom-logo-link {
  display: inline-flex;
  align-items: center;
}

.gg-site-branding .custom-logo {
  height: 40px !important;
  max-height: 40px;
  width: auto !important;
  max-width: 180px;
  object-fit: contain;
  display: block;
}

.gg-site-branding__text {
  font-weight: 800;
  font-size: 22px;
}

/* Header logo clamp (GeneratePress custom logo) */
.site-header .custom-logo-link,
.site-header .site-logo,
.site-header .site-branding {
  display: inline-flex;
  align-items: center;
}

.site-header img.custom-logo {
  height: auto !important;
  max-height: 44px !important;
  width: auto !important;
  max-width: 180px;
}

@media (max-width: 768px) {
  .site-header img.custom-logo {
    max-height: 38px !important;
    max-width: 160px;
  }
}

/* Prevent GeneratePress header-image from rendering as giant logo */
.site-header img.header-image.is-logo-image {
  display: none !important;
}

/* GG Page Shell (AI Content Studio pages) */
.gg-page {
  margin: 0 0 28px;
}

.gg-page--studio {
  max-width: 860px;
}

.gg-page--studio h2 {
  margin: 26px 0 12px;
  font-size: 1.55rem;
  letter-spacing: -0.01em;
}

.gg-page--studio > h2:first-child {
  margin-top: 0;
}

.gg-page--studio hr {
  border: 0;
  border-top: 1px solid rgba(0,0,0,.08);
  margin: 18px 0;
}

.gg-page--studio .gg-quick-picks {
  margin: 10px 0 22px;
}

.gg-page--studio .gg-quick-picks__title {
  margin: 0 0 12px;
  font-size: 1.05rem;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.gg-page--studio .gg-top-reviews {
  list-style: none;
  padding: 0;
  margin: 10px 0 0;
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.gg-page--studio .gg-top-reviews li {
  margin: 0;
}

.gg-page--studio .gg-top-reviews a {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.08);
  background: #fff;
  color: inherit;
  text-decoration: none;
  box-shadow: 0 6px 14px rgba(15, 23, 42, 0.06);
  transition: box-shadow 0.16s ease, border-color 0.16s ease, transform 0.16s ease;
}

.gg-page--studio .gg-top-reviews a:hover {
  border-color: rgba(0,0,0,.18);
  box-shadow: 0 10px 20px rgba(15, 23, 42, 0.12);
  transform: translateY(-1px);
}

@media (max-width: 960px) {
  .gg-page--studio .gg-top-reviews {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .gg-page--studio .gg-top-reviews {
    grid-template-columns: 1fr;
  }
}

.gg-related {
  margin: 28px 0 0;
}

.gg-related h2 {
  margin: 0 0 12px;
  font-size: 1.4rem;
}

/* Related module (Studio pages) */
body:has(.gg-page--studio) .gg-related {
  position: relative;
  margin: 32px 0 42px;
  padding: 18px 18px 20px;
  border-radius: 16px;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(2, 6, 23, 0.02);
}

body:has(.gg-page--studio) .gg-related::before {
  content: "";
  position: absolute;
  top: 0;
  left: 18px;
  right: 18px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(15, 23, 42, 0.35), rgba(15, 23, 42, 0.08));
}

body:has(.gg-page--studio) .gg-related h2 {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 4px 0 14px;
  font-size: 1.25rem;
  letter-spacing: -0.01em;
}

body:has(.gg-page--studio) .gg-related h2::before {
  content: "✨";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.08);
  font-size: 14px;
}

body:has(.gg-page--studio) .gg-related .gg-hub-grid {
  display: grid;
  gap: 14px;
}

body:has(.gg-page--studio) .gg-related .gg-card {
  border: 1px solid rgba(0,0,0,.1);
  border-radius: 14px;
  background: #fff;
  padding: 16px 16px 14px;
  min-height: 170px;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
  transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
  display: flex;
  flex-direction: column;
  position: relative;
  overflow: hidden;
}

body:has(.gg-page--studio) .gg-related .gg-card:hover {
  transform: translateY(-2px);
  border-color: rgba(0,0,0,.18);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.12);
}

body:has(.gg-page--studio) .gg-related .gg-card[data-accent]::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 14px;
  opacity: 0.08;
  background: linear-gradient(120deg, rgba(15, 23, 42, 0.2), transparent 50%);
  pointer-events: none;
}

body:has(.gg-page--studio) .gg-related .gg-card[data-accent="violet"] {
  border-left: 4px solid rgba(124, 58, 237, 0.45);
}

body:has(.gg-page--studio) .gg-related .gg-card[data-accent="cyan"] {
  border-left: 4px solid rgba(8, 145, 178, 0.45);
}

body:has(.gg-page--studio) .gg-related .gg-card[data-accent="amber"] {
  border-left: 4px solid rgba(217, 119, 6, 0.45);
}

body:has(.gg-page--studio) .gg-related .gg-card[data-accent="lime"] {
  border-left: 4px solid rgba(101, 163, 13, 0.45);
}

body:has(.gg-page--studio) .gg-related .gg-card[data-accent="slate"] {
  border-left: 4px solid rgba(71, 85, 105, 0.4);
}

body:has(.gg-page--studio) .gg-related .gg-card-title {
  margin: 0 0 6px;
  font-size: 1.05rem;
  line-height: 1.25;
}

body:has(.gg-page--studio) .gg-related .gg-card-blurb {
  margin: 0 0 10px;
  color: rgba(0,0,0,.7);
  line-height: 1.55;
}

body:has(.gg-page--studio) .gg-related .gg-card-cta {
  margin-top: auto;
  font-weight: 700;
}

@media (min-width: 860px) {
  body:has(.gg-page--studio) .gg-related .gg-hub-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

/* Home layout (manifest-driven) */
.gg-hub--home {
  max-width: 1100px;
  margin: 0 auto;
  padding: 12px 0 36px;
}

.gg-hub--home .gg-home-hero {
  margin: 12px 0 28px;
}

.gg-hub--home .gg-home-hero__title {
  font-size: clamp(2.2rem, 4vw, 3rem);
  line-height: 1.12;
  margin: 0 0 0.5rem;
}

.gg-hub--home .gg-home-hero__subhead {
  margin: 0 0 1rem;
  color: rgba(0,0,0,.7);
  max-width: 60ch;
}

.gg-hub--home .gg-home-hero__cta,
.gg-hub--home .gg-cta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  border-radius: 10px;
  border: 1px solid #111827;
  background: #111827;
  text-decoration: none;
  font-weight: 700;
  color: #ffffff;
}

.gg-hub--home .gg-cta:hover {
  background: #0f172a;
  border-color: #0f172a;
}

.gg-hub--home .gg-home-section {
  margin: 0 0 32px;
}

.gg-hub--home .gg-home-section__header {
  margin: 0 0 14px;
}

.gg-hub--home .gg-home-section__title {
  margin: 0 0 6px;
  font-size: 1.4rem;
}

.gg-hub--home .gg-home-section__lead {
  margin: 0;
  color: rgba(0,0,0,.68);
  max-width: 68ch;
}

.gg-hub--home .gg-hub-grid {
  display: grid;
  gap: 14px;
}

.gg-hub--home .gg-card {
  --gg-accent: #475569;
  --gg-accent-soft: #f1f5f9;
  --gg-accent-border: #cbd5e1;
  --gg-card-accent: var(--gg-accent);
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  background: #ffffff;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  position: relative;
  overflow: hidden;
  box-shadow: 0 12px 28px rgba(15,23,42,0.08);
}

.gg-hub--home .gg-card[data-accent="slate"] {
  --gg-accent: #475569;
  --gg-accent-soft: #f1f5f9;
  --gg-accent-border: #cbd5e1;
}

.gg-hub--home .gg-card[data-accent="violet"] {
  --gg-accent: #7c3aed;
  --gg-accent-soft: #f5f3ff;
  --gg-accent-border: #ddd6fe;
}

.gg-hub--home .gg-card[data-accent="cyan"] {
  --gg-accent: #0891b2;
  --gg-accent-soft: #ecfeff;
  --gg-accent-border: #a5f3fc;
}

.gg-hub--home .gg-card[data-accent="amber"] {
  --gg-accent: #d97706;
  --gg-accent-soft: #fffbeb;
  --gg-accent-border: #fde68a;
}

.gg-hub--home .gg-card[data-accent="lime"] {
  --gg-accent: #65a30d;
  --gg-accent-soft: #f7fee7;
  --gg-accent-border: #d9f99d;
}

.gg-hub--home .gg-card[data-accent="rose"] {
  --gg-accent: #e11d48;
  --gg-accent-soft: #fff1f2;
  --gg-accent-border: #fecdd3;
}

.gg-hub--home .gg-card::before {
  content: "✨";
  position: absolute;
  top: 12px;
  right: 12px;
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: var(--gg-accent-soft);
  border: 1px solid var(--gg-accent-border);
  font-size: 15px;
  z-index: 1;
}

.gg-hub--home .gg-card::after {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 4px;
  background: var(--gg-card-accent);
}

.gg-hub--home .gg-card[data-icon="mic"]::before { content: "🎙️"; }
.gg-hub--home .gg-card[data-icon="voice"]::before { content: "🗣️"; }
.gg-hub--home .gg-card[data-icon="video"]::before { content: "🎬"; }
.gg-hub--home .gg-card[data-icon="pen"]::before { content: "✍️"; }
.gg-hub--home .gg-card[data-icon="robot"]::before { content: "🤖"; }
.gg-hub--home .gg-card[data-icon="spark"]::before { content: "✨"; }

.gg-hub--home .gg-card > * {
  position: relative;
  z-index: 2;
}

.gg-hub--home .gg-card-title {
  margin: 0;
  font-size: 1.05rem;
  line-height: 1.25;
}

.gg-hub--home .gg-card-blurb {
  margin: 0;
  color: #475569;
  line-height: 1.55;
}

.gg-hub--home .gg-card-cta {
  margin-top: auto;
  background: #111827;
  border-color: #111827;
  color: #ffffff;
  border-radius: 12px;
}

.gg-hub--home .gg-card-cta:hover {
  background: #0f172a;
  border-color: #0f172a;
}

.gg-hub--home .gg-home-trust {
  margin: 0;
  padding-left: 18px;
  color: rgba(0,0,0,.7);
}

@media (min-width: 860px) {
  .gg-hub--home .gg-hub-grid {
    grid-template-columns: repeat(12, 1fr);
  }
  .gg-hub--home .gg-card {
    grid-column: span 4;
  }
  .gg-hub--home .gg-card--hero {
    grid-column: span 6;
  }
}
