/* ===== SINGLE POST LAYOUT ===== */
.oh-post-header{ max-width:720px; margin:0 auto; padding:0 6vw; }
.oh-post-breadcrumb{ font-size:13px; color:#9a9aab; margin-bottom:28px; padding-top:30px; }
.oh-post-breadcrumb a{ color:#9a9aab; text-decoration:none; }
.oh-post-breadcrumb a:hover{ color:var(--accent); }
.oh-post-breadcrumb span{ color:var(--ink); }
.oh-post-title{ font-family:'Kumbh Sans',sans-serif !important; font-size:clamp(28px,3.6vw,40px); font-weight:800; line-height:1.15; color:var(--ink); margin:0 0 16px; letter-spacing:-0.5px; }
.oh-post-meta{ display:flex; align-items:center; gap:20px; font-size:13.5px; color:#9a9aab; margin-bottom:16px; padding-bottom:16px; border-bottom:1px solid rgba(20,20,43,0.08); }
.oh-post-author-row{ display:flex; align-items:center; gap:10px; font-size:14px; color:#5b5b70; margin-bottom:28px; }
.oh-post-author-row strong{ color:var(--accent-2); }
.oh-post-avatar{ width:40px; height:40px; border-radius:50%; object-fit:cover; }
.oh-post-hero-img{ margin-bottom:36px; border-radius:18px; overflow:hidden; }
.oh-post-hero-img img{ width:100%; height:auto; display:block; border-radius:18px; }

.oh-post-body{ max-width:720px; margin:0 auto; padding:0 6vw; }
.oh-post-body h2{ font-family:'Kumbh Sans',sans-serif; font-size:24px; font-weight:700; color:var(--ink); margin:36px 0 14px; }
.oh-post-body h3{ font-family:'Kumbh Sans',sans-serif; font-size:20px; font-weight:700; color:var(--ink); margin:28px 0 12px; }
.oh-post-body p{ font-size:16px; line-height:1.75; color:#3a3a4a; margin-bottom:20px; }
.oh-post-body ul, .oh-post-body ol{ padding-left:24px; margin-bottom:20px; }
.oh-post-body li{ font-size:16px; line-height:1.75; color:#3a3a4a; margin-bottom:8px; }
.oh-post-body a{ color:var(--accent-2); text-decoration:underline; }
.oh-post-body blockquote{ border-left:3px solid var(--accent); padding:12px 24px; margin:24px 0; background:rgba(27,197,189,0.04); border-radius:0 12px 12px 0; }
.oh-post-body img{ max-width:100%; height:auto; border-radius:14px; margin:20px 0; }

.oh-post-tags{ max-width:720px; margin:30px auto 0; padding:20px 6vw 0; border-top:1px solid rgba(20,20,43,0.08); display:flex; flex-wrap:wrap; gap:8px; }

/* Hide the block template's own title rendering */
.oh-single-hero{ display:none !important; }

/* ===== BLOG ARCHIVE GRID ===== */
.oh-blog-grid{ display:grid; grid-template-columns:repeat(2, 1fr); gap:30px; max-width:1200px; margin:0 auto; }
@media (min-width:1000px){ .oh-blog-grid{ grid-template-columns:repeat(4, 1fr); gap:24px; } }
@media (max-width:600px){ .oh-blog-grid{ grid-template-columns:1fr; } }

.oh-blog-card{
  background:#fff; border:1px solid rgba(20,20,43,0.08); border-radius:16px; overflow:hidden;
  display:flex; flex-direction:column; transition:transform .3s ease, box-shadow .3s ease;
}
.oh-blog-card:hover{ transform:translateY(-5px); box-shadow:0 16px 40px rgba(20,20,43,0.1); }

.oh-blog-card-img{
  display:block; position:relative; height:200px; text-decoration:none;
  border-radius:16px 16px 0 0; overflow:hidden;
}
.oh-blog-badge{
  position:absolute; top:14px; left:14px; background:var(--accent); color:#06231F;
  font-family:'Kumbh Sans',sans-serif; font-size:11px; font-weight:700; letter-spacing:0.5px;
  padding:5px 12px; border-radius:6px; z-index:2;
}
.oh-blog-card-meta-overlay{
  position:absolute; bottom:12px; left:14px; right:14px; display:flex; align-items:center; gap:10px; z-index:2;
}
.oh-blog-read-time{
  background:rgba(10,10,20,0.7); color:#fff; font-size:11px; font-weight:600;
  padding:4px 10px; border-radius:6px; backdrop-filter:blur(6px);
}
.oh-blog-author-pill{
  display:flex; align-items:center; gap:6px; background:rgba(10,10,20,0.7);
  color:#fff; font-size:11px; font-weight:600; padding:4px 10px 4px 4px;
  border-radius:20px; backdrop-filter:blur(6px); margin-left:auto;
}
.oh-blog-avatar-sm{ width:22px; height:22px; border-radius:50%; object-fit:cover; }

.oh-blog-card-body{ padding:20px; display:flex; flex-direction:column; flex:1; }
.oh-blog-card-body h3{ font-family:'Kumbh Sans',sans-serif; font-size:17px; font-weight:700; line-height:1.3; margin:0 0 6px; color:var(--ink); }
.oh-blog-card-body h3 a{ color:inherit; text-decoration:none; }
.oh-blog-card-body h3 a:hover{ color:var(--accent-2); }
.oh-blog-date{ font-size:12px; color:#9a9aab; margin-bottom:12px; }
.oh-blog-card-body p{ font-size:13.5px; color:#5b5b70; line-height:1.6; margin:0 0 14px; flex:1; }
.oh-blog-readmore{ font-size:13px; font-weight:700; color:var(--accent-2); text-decoration:none; display:inline-block; margin-bottom:16px; }
.oh-blog-readmore:hover{ color:var(--accent); }

.oh-blog-footer{ border-top:1px solid rgba(20,20,43,0.06); padding-top:14px; }
.oh-blog-author{ display:flex; align-items:center; gap:8px; font-size:13px; color:#5b5b70; margin-bottom:10px; }
.oh-blog-author a{ color:var(--accent-2); font-weight:600; text-decoration:none; }
.oh-blog-avatar{ width:32px; height:32px; border-radius:50%; object-fit:cover; }

.oh-blog-tags{ display:flex; flex-wrap:wrap; gap:6px; }
.oh-blog-tag{
  font-size:11.5px; font-weight:600; color:var(--ink); background:var(--bg);
  border:1px solid rgba(20,20,43,0.1); padding:4px 12px; border-radius:6px;
  text-decoration:none; transition:border-color .2s, background .2s;
}
.oh-blog-tag:hover{ border-color:var(--accent); background:rgba(27,197,189,0.06); }

.oh-blog-pagination{ display:flex; justify-content:center; gap:6px; margin-top:50px; }
.oh-blog-pagination .page-numbers{
  display:inline-flex; align-items:center; justify-content:center;
  width:40px; height:40px; border-radius:10px; font-weight:600; font-size:14px;
  color:var(--ink); background:#fff; border:1px solid rgba(20,20,43,0.1);
  text-decoration:none; transition:background .2s, border-color .2s;
}
.oh-blog-pagination .page-numbers.current{ background:var(--accent-2); color:#fff; border-color:var(--accent-2); }
.oh-blog-pagination .page-numbers:hover:not(.current){ border-color:var(--accent); }

/* ===== HOMEPAGE LATEST INSIGHTS ===== */
.oh-insights-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; max-width:1200px; margin:0 auto; }
@media (max-width:820px){ .oh-insights-grid{ grid-template-columns:1fr; } }

.oh-insight-card{
  background:#fff; border:1px solid rgba(20,20,43,0.08); border-radius:18px; overflow:hidden;
  text-decoration:none !important; display:flex; flex-direction:column;
  transition:transform .3s ease, box-shadow .3s ease;
}
.oh-insight-card:hover{ transform:translateY(-6px); box-shadow:0 20px 50px rgba(20,20,43,0.1); }

.oh-insight-img{ height:200px; border-radius:14px; margin:10px 10px 0; overflow:hidden; }
.oh-insight-body{ padding:18px 20px 22px; }
.oh-insight-cat{ font-size:12.5px; font-weight:600; color:var(--accent-2); margin-right:10px; }
.oh-insight-time{ font-size:12.5px; color:#9a9aab; }
.oh-insight-card h3{
  font-family:'Kumbh Sans',sans-serif; font-size:18px; font-weight:700; line-height:1.3;
  color:var(--ink); margin:10px 0 0;
}
.oh-insight-card:hover h3{ color:var(--accent-2); }


/* ===== INSIGHTS CAROUSEL ===== */
.oh-carousel{
  position:relative;
  padding:0 50px;
}
.oh-carousel-track{
  display:flex;
  gap:24px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  padding:4px 0 20px;
}
.oh-carousel-track::-webkit-scrollbar{ display:none; }

.oh-carousel-track .oh-insight-card{
  flex:0 0 calc(33.333% - 16px);
  scroll-snap-align:start;
  min-width:0;
}

/* Arrows */
.oh-carousel-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-60%);
  width:42px; height:42px;
  border-radius:50%;
  background:#fff;
  border:1px solid rgba(20,20,43,0.12);
  box-shadow:0 2px 8px rgba(0,0,0,0.08);
  cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  color:#14142B;
  transition:background .2s, box-shadow .2s, opacity .2s;
  z-index:2;
  padding:0;
}
.oh-carousel-arrow:hover{
  background:#f0f0f4;
  box-shadow:0 4px 14px rgba(0,0,0,0.12);
}
.oh-carousel-arrow:disabled{
  opacity:0.3; cursor:default;
}
.oh-carousel-prev{ left:0; }
.oh-carousel-next{ right:0; }

/* Dots */
.oh-carousel-dots{
  display:flex;
  justify-content:center;
  gap:8px;
  margin-top:20px;
}
.oh-carousel-dot{
  width:8px; height:8px;
  border-radius:50%;
  background:rgba(20,20,43,0.18);
  border:none;
  padding:0;
  cursor:pointer;
  transition:background .25s, transform .25s;
}
.oh-carousel-dot.active{
  background:#1BC5BD;
  transform:scale(1.3);
}

/* Tablet — 2 cards visible */
@media(max-width:960px){
  .oh-carousel-track .oh-insight-card{
    flex:0 0 calc(50% - 12px);
  }
}

/* Mobile — 1 card, full width, no arrows */
@media(max-width:600px){
  .oh-carousel{ padding:0; }
  .oh-carousel-track .oh-insight-card{
    flex:0 0 100%;
  }
  .oh-carousel-arrow{ display:none; }
}
