/*
Theme Name: Billboards Theme By Prayoga Web
Theme URI: https://wp.suarsavara.com/
Description: Billboard-style child theme for Sounds Of Concert, built on parent Newsblock.
Author: Prayoga Web
Template: newsblock
Version: 5.5.0-single-post-billboard-layout
Text Domain: billboards-theme-by-prayoga-web
*/

/* =========================================================
   SOC V21 — SOC category labels, Billboard-style layout
   Header/navbar/footer parent Newsblock tidak diubah.
   ========================================================= */

.soc-bb,
.soc-bb *{ box-sizing:border-box; }
.soc-bb{ --black:#000; --text:#111; --muted:#666; --line:#dadada; --soft:#f3f3f3; --blue:#1f50ff; --white:#fff; color:var(--text); font-family:inherit; }
.soc-bb a{ color:inherit; text-decoration:none; }
.soc-bb a:hover{ opacity:.78; text-decoration:none; }
.soc-bb img{ display:block; width:100%; height:auto; }
.soc-bb .thumb{ display:block; overflow:hidden; background:#dedede; }
.soc-bb .ph{ display:block; width:100%; aspect-ratio:16/9; background:linear-gradient(135deg,#ddd,#f7f7f7); }
.soc-bb .kicker{ display:block; margin:0 0 8px; color:#000; font-size:11px; line-height:1.1; font-weight:900; letter-spacing:.16em; text-transform:uppercase; }
.soc-bb .meta{ margin-top:9px; color:var(--muted); font-size:12px; line-height:1.45; font-weight:400; }
.soc-bb .readmore{ display:inline-flex; align-items:center; margin-bottom:10px; font-size:11px; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }

/* HOME WRAP */
.soc-bb-home{ width:100%; max-width:1200px; margin:0 auto; padding:34px 0 70px; }

/* TOP GRID */
.soc-bb-top{ margin:0 0 54px; }
.soc-bb-top-grid{ display:grid; grid-template-columns:240px minmax(0, 1fr) 320px; gap:28px; align-items:start; }
.soc-bb-side-list{ display:grid; gap:32px; }
.soc-bb-side-card .thumb img{ aspect-ratio:195/111; object-fit:cover; }
.soc-bb-side-label{ position:relative; margin:15px 0 13px; padding-bottom:11px; font-size:13px; line-height:1; font-weight:900; letter-spacing:.01em; }
.soc-bb-side-label:after{ content:""; position:absolute; left:0; bottom:0; width:60px; height:3px; background:var(--blue); }
.soc-bb-side-title{ margin:0; font-size:21px; line-height:1.11; font-weight:900; letter-spacing:-.04em; }
.soc-bb-hero .thumb img{ aspect-ratio:662/474; object-fit:cover; }
.soc-bb-hero .kicker{ margin-top:14px; }
.soc-bb-hero-title{ max-width:96%; margin:0; font-size:42px; line-height:1.01; font-weight:900; letter-spacing:-.06em; }

.soc-bb-latest-box{ background:#fff; border-top:6px solid #000; padding:19px 18px 16px; }
.soc-bb-latest-title{ margin:0 0 18px; font-size:30px; line-height:1; font-weight:900; letter-spacing:-.055em; }
.soc-bb-news-item{ padding:0 0 18px; margin:0 0 18px; border-bottom:1px solid #e6e6e6; }
.soc-bb-news-item:last-child{ margin-bottom:0; padding-bottom:0; border-bottom:0; }
.soc-bb-news-title{ margin:0 0 9px; font-size:18px; line-height:1.15; font-weight:900; letter-spacing:-.035em; }
.soc-bb-date{ color:#666; font-size:11px; line-height:1.3; font-weight:700; letter-spacing:.05em; text-transform:uppercase; }

/* SECTION COMMON */
.soc-bb-section{ margin:0 0 58px; }
.soc-bb-section-head{ position:relative; display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin-bottom:24px; padding-top:18px; border-top:0; }
.soc-bb-section-head:before{ content:""; position:absolute; left:0; top:0; width:132px; height:6px; background:#000; }
.soc-bb-section-title{ margin:0; font-size:30px; line-height:1; font-weight:900; letter-spacing:-.055em; }
.soc-bb-more{ font-size:12px; line-height:1; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }

/* EDITOR PICKS / GENERIC 4 */
.soc-bb-picks-grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:26px; }
.soc-bb-pick-card .thumb img{ aspect-ratio:4/3; object-fit:cover; }
.soc-bb-pick-card .kicker{ margin-top:12px; }
.soc-bb-pick-title{ margin:0; font-size:21px; line-height:1.12; font-weight:900; letter-spacing:-.04em; }

/* VIDEO: big left + list right */
.soc-bb-video-grid{ display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,.95fr); gap:28px; }
.soc-bb-video-main .thumb,.soc-bb-video-small .thumb{ position:relative; }
.soc-bb-video-main .thumb:after,.soc-bb-video-small .thumb:after{ content:"▶"; position:absolute; left:14px; bottom:14px; width:42px; height:42px; border-radius:50%; display:flex; align-items:center; justify-content:center; background:rgba(0,0,0,.74); color:#fff; font-size:16px; }
.soc-bb-video-main .thumb img{ aspect-ratio:16/10; object-fit:cover; }
.soc-bb-video-title{ margin:12px 0 0; font-size:34px; line-height:1.03; font-weight:900; letter-spacing:-.055em; }
.soc-bb-video-list{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.soc-bb-video-small .thumb img{ aspect-ratio:4/3; object-fit:cover; }
.soc-bb-video-small-title{ margin:10px 0 0; font-size:19px; line-height:1.14; font-weight:900; letter-spacing:-.035em; }

/* CATEGORY FLOW: main first + 4 cards */
.soc-bb-flow-grid{ display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.95fr); gap:28px; align-items:start; }
.soc-bb-flow-main .thumb img{ aspect-ratio:16/9; object-fit:cover; }
.soc-bb-flow-main .kicker{ margin-top:14px; }
.soc-bb-flow-main-title{ margin:0; font-size:34px; line-height:1.02; font-weight:900; letter-spacing:-.055em; }
.soc-bb-flow-cards{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.soc-bb-flow-card .thumb img{ aspect-ratio:4/3; object-fit:cover; }
.soc-bb-flow-card .kicker{ margin-top:12px; }
.soc-bb-flow-card-title{ margin:0; font-size:19px; line-height:1.15; font-weight:900; letter-spacing:-.035em; }

/* MAG STRIP */
.soc-bb-mag-grid{ display:grid; grid-template-columns:1fr 1fr; gap:28px; }
.soc-bb-mag-card{ display:grid; grid-template-columns:180px minmax(0,1fr); gap:18px; align-items:start; background:#fff; padding:14px; }
.soc-bb-mag-card .thumb img{ aspect-ratio:4/3; object-fit:cover; }
.soc-bb-mag-title{ margin:0 0 8px; font-size:22px; line-height:1.12; font-weight:900; letter-spacing:-.04em; }
.soc-bb-excerpt{ color:#444; font-size:14px; line-height:1.55; }

/* SINGLE POST */
.soc-bb-single{ max-width:1200px; margin:0 auto; padding:34px 0 70px; }
.soc-single-layout{ display:grid; grid-template-columns:minmax(0,760px) 320px; gap:44px; align-items:start; }
.soc-single-kicker{ margin-bottom:12px; }
.soc-single-title{ margin:0 0 14px; font-size:54px; line-height:.98; font-weight:900; letter-spacing:-.065em; }
.soc-single-meta{ margin-bottom:24px; color:#666; font-size:13px; }
.soc-single-featured img{ aspect-ratio:16/9; object-fit:cover; margin-bottom:30px; }
.soc-single-content{ font-size:18px; line-height:1.75; }
.soc-single-content p{ margin:0 0 1.35em; }
.soc-single-content h2,.soc-single-content h3{ line-height:1.1; letter-spacing:-.04em; }
.soc-author-box{ margin-top:44px; padding-top:24px; border-top:6px solid #000; }
.soc-author-box-title{ margin:0 0 8px; font-size:22px; line-height:1; font-weight:900; letter-spacing:-.04em; }
.soc-single-sidebar{ position:sticky; top:110px; }
.soc-single-sidebar-box{ background:#fff; border-top:6px solid #000; padding:18px; }
.soc-single-sidebar-title{ margin:0 0 18px; font-size:28px; line-height:1; font-weight:900; letter-spacing:-.055em; }

@media (max-width: 1199px){
  .soc-bb-home,.soc-bb-single{ max-width:100%; padding-left:18px; padding-right:18px; }
  .soc-bb-top-grid{ grid-template-columns:220px minmax(0,1fr) 300px; gap:24px; }
  .soc-bb-hero-title{ font-size:38px; }
}
@media (max-width: 1024px){
  .soc-bb-top-grid{ grid-template-columns:1fr; }
  .soc-bb-hero{ order:1; }
  .soc-bb-side-list{ order:2; grid-template-columns:1fr 1fr; }
  .soc-bb-latest{ order:3; }
  .soc-bb-hero-title{ max-width:100%; font-size:40px; }
  .soc-bb-picks-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .soc-bb-video-grid,.soc-bb-flow-grid,.soc-single-layout{ grid-template-columns:1fr; }
  .soc-single-sidebar{ position:static; }
}
@media (max-width: 767px){
  .soc-bb-home,.soc-bb-single{ padding:22px 14px 48px; }
  .soc-bb-section{ margin-bottom:44px; }
  .soc-bb-section-title,.soc-bb-latest-title{ font-size:24px; }
  .soc-bb-side-list,.soc-bb-picks-grid,.soc-bb-video-list,.soc-bb-flow-cards,.soc-bb-mag-grid{ grid-template-columns:1fr; }
  .soc-bb-hero-title{ font-size:34px; }
  .soc-bb-video-title,.soc-bb-flow-main-title{ font-size:29px; }
  .soc-bb-mag-card{ grid-template-columns:1fr; }
  .soc-single-title{ font-size:38px; }
  .soc-single-content{ font-size:16px; }
}


/* v20 safety: no global header/footer override. Homepage only. */
.soc-bb-home{ clear:both; }
.soc-bb-section-video{ background:#000; color:#fff; padding:26px; }
.soc-bb-section-video .soc-bb-section-head:before{ background:#fff; }
.soc-bb-section-video .soc-bb-section-title,
.soc-bb-section-video .soc-bb-more,
.soc-bb-section-video .soc-bb-date,
.soc-bb-section-video .soc-bb-video-title,
.soc-bb-section-video .soc-bb-video-small-title{ color:#fff; }
@media (max-width: 767px){
  .soc-bb-section-head:before{ width:96px; height:5px; }
  .soc-bb-section-video{ padding:18px 16px; }
}


/* =========================================================
   SOC V22 — Single post bottom layout like reference screenshot
   Scoped only inside .soc-single-page, header/footer parent safe.
   ========================================================= */
.soc-single-page,
.soc-single-page *{ box-sizing:border-box; }
.soc-single-page{
  max-width: 860px;
  margin: 0 auto;
  padding: 34px 18px 56px;
  color:#111;
  font-family:inherit;
}
.soc-single-page a{ color:inherit; text-decoration:none; }
.soc-single-page a:hover{ opacity:.82; text-decoration:none; }
.soc-single-category{
  display:block;
  margin:0 0 12px;
  font-size:12px;
  line-height:1;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.soc-single-page-title{
  margin:0 0 16px;
  font-size:56px;
  line-height:.98;
  font-weight:900;
  letter-spacing:-.065em;
}
.soc-single-page-meta{
  margin:0 0 26px;
  color:#666;
  font-size:13px;
  line-height:1.5;
}
.soc-single-featured-media{ margin:0 0 30px; }
.soc-single-featured-media img{
  width:100%;
  height:auto;
  display:block;
  aspect-ratio:16/9;
  object-fit:cover;
}
.soc-single-page-content{
  font-size:18px;
  line-height:1.75;
}
.soc-single-page-content p{ margin:0 0 1.25em; }
.soc-single-page-content h2,
.soc-single-page-content h3{
  margin:1.4em 0 .7em;
  line-height:1.12;
  letter-spacing:-.04em;
}
.soc-single-bottom{
  margin-top:10px;
}
.soc-single-tags{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 28px;
}
.soc-single-tag-pill{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 14px 6px;
  border-radius:999px;
  background:#8e9298;
  color:#fff !important;
  border:2px solid #c5c7ca;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);
  font-size:14px;
  line-height:1;
  font-weight:800;
}
.soc-single-divider{
  width:100%;
  height:1px;
  background:#e1e1e1;
  margin:0 0 22px;
}
.soc-single-author-box{
  display:grid;
  grid-template-columns:96px minmax(0,1fr);
  gap:28px;
  align-items:center;
  max-width:520px;
  margin:0 0 22px;
}
.soc-single-author-avatar img,
.soc-single-author-avatar .avatar{
  width:96px;
  height:96px;
  border-radius:50%;
  object-fit:cover;
  display:block;
}
.soc-single-author-label{
  margin:0 0 10px;
  font-size:14px;
  line-height:1;
  font-weight:900;
}
.soc-single-author-name{
  margin:0;
  font-size:22px;
  line-height:1.1;
  font-weight:900;
  letter-spacing:-.04em;
}
.soc-single-comments-wrap{
  text-align:center;
  padding-top:6px;
}
.soc-single-comments-button{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  min-width:250px;
  min-height:52px;
  padding:13px 32px;
  border:1.5px solid #111;
  border-radius:999px;
  background:transparent;
  color:#000 !important;
  font-size:15px;
  line-height:1;
  font-weight:900;
}
.soc-single-comments-anchor{ display:block; height:1px; }
@media (max-width: 767px){
  .soc-single-page{ padding:24px 16px 44px; }
  .soc-single-page-title{ font-size:38px; }
  .soc-single-page-content{ font-size:16px; }
  .soc-single-tags{ justify-content:flex-start; margin-bottom:22px; }
  .soc-single-author-box{ grid-template-columns:72px minmax(0,1fr); gap:18px; }
  .soc-single-author-avatar img,
  .soc-single-author-avatar .avatar{ width:72px; height:72px; }
  .soc-single-comments-button{ min-width:220px; }
}


/* =========================================================
   SOC V23 — Fix huge blank gap before tags/author/comments
   ========================================================= */
.soc-single-page-content{
  margin-bottom:0 !important;
  padding-bottom:0 !important;
}
.soc-single-page-content > *:last-child{
  margin-bottom:0 !important;
  padding-bottom:0 !important;
}
.soc-single-page-content + .soc-single-bottom,
.soc-single-bottom{
  margin-top:10px !important;
}
/* Matikan slot iklan/blank spacer yang sering nyangkut di akhir artikel dan bikin jarak raksasa. */
.soc-single-page-content > div:empty,
.soc-single-page-content > p:empty,
.soc-single-page-content > .wp-block-spacer,
.soc-single-page-content .adsbygoogle,
.soc-single-page-content ins.adsbygoogle,
.soc-single-page-content .google-auto-placed,
.soc-single-page-content [id^="google_ads"],
.soc-single-page-content [id*="google_ads"],
.soc-single-page-content [class*="adsbygoogle"],
.soc-single-page-content [class*="ad-inserter"],
.soc-single-page-content [class*="ai-viewport"],
.soc-single-page-content [class*="ai_viewport"],
.soc-single-page-content [class*="code-block"]:empty{
  display:none !important;
  height:0 !important;
  min-height:0 !important;
  max-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
}
@media (max-width: 767px){
  .soc-single-page-content + .soc-single-bottom,
  .soc-single-bottom{ margin-top:8px !important; }
  .soc-single-tags{ margin-bottom:20px !important; }
  .soc-single-divider{ margin-bottom:22px !important; }
  .soc-single-author-box{ margin-bottom:22px !important; }
}


/* =========================================================
   SOC V24 — Feature layout for NEWS SOC & NEWS RELEASE + refined video
   ========================================================= */
.soc-bb-feature-grid{ display:grid; grid-template-columns:minmax(0,1.42fr) minmax(0,1.38fr); gap:22px; align-items:start; }
.soc-bb-feature-grid .soc-bb-flow-main .thumb img{ aspect-ratio:16/14; object-fit:cover; }
.soc-bb-feature-grid .soc-bb-flow-main-title{ font-size:30px; }
.soc-bb-feature-grid .soc-bb-feature-cards{ display:grid; grid-template-columns:1fr 1fr; gap:18px 20px; }
.soc-bb-feature-grid .soc-bb-flow-card{ padding-left:0; }
.soc-bb-feature-grid .soc-bb-flow-card .thumb img{ aspect-ratio:4/3; object-fit:cover; }
.soc-bb-feature-grid .soc-bb-flow-card .readmore{ display:none; }
.soc-bb-feature-grid .soc-bb-flow-card .kicker{ margin-top:12px; font-size:12px; letter-spacing:.14em; }
.soc-bb-feature-grid .soc-bb-flow-card-title{ font-size:18px; line-height:1.12; }
.soc-bb-feature-grid .soc-bb-feature-cards > article:nth-child(n+3){ border-top:1px solid #d9d9d9; padding-top:18px; }

/* refined video section more like Billboard editorial blocks */
.soc-bb-section-video .soc-bb-video-grid{ grid-template-columns:minmax(0,1.28fr) minmax(0,1fr); gap:24px; }
.soc-bb-section-video .soc-bb-video-main .thumb img{ aspect-ratio:16/10; }
.soc-bb-section-video .soc-bb-video-title{ font-size:32px; }
.soc-bb-section-video .soc-bb-video-list{ gap:18px 20px; }
.soc-bb-section-video .soc-bb-video-small{ border-top:1px solid rgba(255,255,255,.14); padding-top:14px; }
.soc-bb-section-video .soc-bb-video-small:nth-child(-n+2){ border-top:0; padding-top:0; }
.soc-bb-section-video .soc-bb-video-small-title{ font-size:18px; }

@media (max-width: 1024px){
  .soc-bb-feature-grid{ grid-template-columns:1fr; }
  .soc-bb-feature-grid .soc-bb-feature-cards{ grid-template-columns:1fr 1fr; }
}
@media (max-width: 767px){
  .soc-bb-feature-grid .soc-bb-feature-cards{ grid-template-columns:1fr; gap:18px; }
  .soc-bb-feature-grid .soc-bb-feature-cards > article:nth-child(n+2){ border-top:1px solid #d9d9d9; padding-top:18px; }
  .soc-bb-feature-grid .soc-bb-flow-main-title,
  .soc-bb-section-video .soc-bb-video-title{ font-size:28px; }
}


/* =========================================================
   SOC V25 — Runtutan section sesuai request:
   NEWS SOC & NEWS RELEASE = Music style
   SUBMIT KARYA LO & PRESS CONFERENCE = Scenes style
   LIFESTYLE = Market style
   ========================================================= */
.soc-bb-section-music-style .soc-bb-section-head,
.soc-bb-section-scenes-style .soc-bb-section-head,
.soc-bb-section-market-style .soc-bb-section-head{ margin-bottom:26px; }

/* Foto 1 style: 1 lead besar + 2 kolom artikel kecil */
.soc-bb-music-layout{
  display:grid;
  grid-template-columns:minmax(0,1.48fr) minmax(0,.72fr) minmax(0,.72fr);
  gap:0;
  align-items:start;
}
.soc-bb-music-layout > *{ min-width:0; }
.soc-bb-music-main{ padding-right:28px; }
.soc-bb-music-col{ padding-left:22px; padding-right:22px; border-left:1px solid #111; display:grid; gap:34px; }
.soc-bb-music-col:last-child{ padding-right:0; }
.soc-bb-music-main .soc-bb-flow-main .thumb img{ aspect-ratio:1/1; object-fit:cover; filter:grayscale(100%); }
.soc-bb-music-main .soc-bb-flow-main-title{ font-size:34px; line-height:1.02; }
.soc-bb-music-col .soc-bb-flow-card .thumb img{ aspect-ratio:4/3; object-fit:cover; }
.soc-bb-music-col .soc-bb-flow-card .readmore{ display:none; }
.soc-bb-music-col .soc-bb-flow-card .kicker{ margin-top:15px; position:relative; padding-bottom:12px; font-size:12px; letter-spacing:.12em; }
.soc-bb-music-col .soc-bb-flow-card .kicker:after{ content:""; position:absolute; left:0; bottom:0; width:62px; height:3px; background:var(--blue); }
.soc-bb-music-col .soc-bb-flow-card-title{ font-size:19px; line-height:1.13; }

/* Foto 2 style: 3 cards rata */
.soc-bb-scenes-layout{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:38px; }
.soc-bb-scenes-layout .soc-bb-flow-card .thumb img{ aspect-ratio:16/9; object-fit:cover; }
.soc-bb-scenes-layout .soc-bb-flow-card .readmore{ display:none; }
.soc-bb-scenes-layout .soc-bb-flow-card .kicker{ margin-top:18px; position:relative; padding-bottom:12px; font-size:12px; letter-spacing:.12em; }
.soc-bb-scenes-layout .soc-bb-flow-card .kicker:after{ content:""; position:absolute; left:0; bottom:0; width:62px; height:3px; background:var(--blue); }
.soc-bb-scenes-layout .soc-bb-flow-card-title{ font-size:21px; line-height:1.14; }

/* Foto 3 style: market lead horizontal + 4 cards bawah */
.soc-bb-market-layout{ display:grid; gap:28px; }
.soc-bb-market-feature{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; background:#fff; }
.soc-bb-market-feature .thumb img{ aspect-ratio:16/9; object-fit:cover; }
.soc-bb-market-feature-content{ padding:34px; }
.soc-bb-market-feature .kicker{ position:relative; padding-bottom:12px; margin-bottom:18px; }
.soc-bb-market-feature .kicker:after{ content:""; position:absolute; left:0; bottom:0; width:62px; height:3px; background:var(--blue); }
.soc-bb-market-title{ margin:0; font-size:30px; line-height:1.08; font-weight:900; letter-spacing:-.05em; }
.soc-bb-market-cards{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; }
.soc-bb-market-cards .soc-bb-flow-card .thumb img{ aspect-ratio:16/10; object-fit:cover; }
.soc-bb-market-cards .soc-bb-flow-card .readmore{ display:none; }
.soc-bb-market-cards .soc-bb-flow-card .kicker{ position:relative; padding-bottom:12px; margin-top:16px; font-size:12px; letter-spacing:.12em; }
.soc-bb-market-cards .soc-bb-flow-card .kicker:after{ content:""; position:absolute; left:0; bottom:0; width:62px; height:3px; background:var(--blue); }
.soc-bb-market-cards .soc-bb-flow-card-title{ font-size:18px; line-height:1.14; }

@media (max-width: 1024px){
  .soc-bb-music-layout{ grid-template-columns:1fr; gap:28px; }
  .soc-bb-music-main{ padding-right:0; }
  .soc-bb-music-col{ border-left:0; padding:0; grid-template-columns:1fr 1fr; gap:24px; }
  .soc-bb-scenes-layout{ grid-template-columns:1fr 1fr; gap:26px; }
  .soc-bb-market-feature{ grid-template-columns:1fr; }
  .soc-bb-market-cards{ grid-template-columns:1fr 1fr; }
}
@media (max-width: 767px){
  .soc-bb-music-col,
  .soc-bb-scenes-layout,
  .soc-bb-market-cards{ grid-template-columns:1fr; }
  .soc-bb-music-main .soc-bb-flow-main-title{ font-size:29px; }
  .soc-bb-market-feature-content{ padding:22px; }
  .soc-bb-market-title{ font-size:26px; }
}


/* SOC V26 — Press Conference menggunakan layout foto 2 */
.soc-bb-section-press-conference .soc-bb-scenes-layout{ grid-template-columns:repeat(3,minmax(0,1fr)); }

/* =========================================================
   SOC V28 — Video section below Submit Karya Lo + video post + custom footer
   ========================================================= */
.soc-bb-section-video{ background:#000; color:#fff; padding:34px; }
.soc-bb-section-video .soc-bb-section-title,
.soc-bb-section-video .soc-bb-more,
.soc-bb-section-video .soc-bb-date,
.soc-bb-section-video .soc-bb-video-title,
.soc-bb-section-video .soc-bb-video-small-title{ color:#fff; }
.soc-bb-section-video .soc-bb-section-head:before{ background:#fff; }
.soc-video-youtube-link{ display:inline-flex; margin:14px 0 6px; padding:6px 10px; background:#fff; color:#000 !important; font-size:11px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.soc-bb-section-video .soc-video-youtube-link{ background:#fff; color:#000 !important; }

.soc-single-page{ max-width:1200px; }
.soc-single-content-layout{ display:grid; grid-template-columns:minmax(0,760px) 320px; gap:52px; align-items:start; }
.soc-single-main-col{ min-width:0; }
.soc-single-sidebar-col{ min-width:0; }
.soc-single-sidebar-box{ position:sticky; top:90px; }
.soc-single-sidebar-title{ margin:0 0 22px; font-size:28px; line-height:1; font-weight:900; letter-spacing:-.055em; }
.soc-single-sidebar-item{ margin:0 0 30px; }
.soc-single-sidebar-item .thumb img{ aspect-ratio:16/10; object-fit:cover; }
.soc-single-sidebar-item .kicker{ margin-top:12px; position:relative; padding-bottom:10px; font-size:11px; letter-spacing:.16em; }
.soc-single-sidebar-item .kicker:after{ content:""; position:absolute; left:0; bottom:0; width:62px; height:3px; background:var(--blue,#1f50ff); }
.soc-single-sidebar-item h3{ margin:10px 0 8px; font-size:21px; line-height:1.14; font-weight:900; letter-spacing:-.04em; }
.soc-single-video-hero{ margin:0 0 34px; background:#000; }
.soc-video-player{ position:relative; width:100%; aspect-ratio:16/9; background:#000; overflow:hidden; }
.soc-video-player iframe,
.soc-video-player img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; border:0; }
.soc-single-video-page .soc-single-featured-media{ display:none; }
.soc-single-video-page .soc-single-page-title{ font-size:48px; }
.soc-single-video-page .soc-single-page-content iframe{ max-width:100%; }

.soc-custom-footer{ margin-top:70px; }
.soc-footer-dark{ background:#111; color:#fff; }
.soc-footer-grid{ max-width:1200px; margin:0 auto; display:grid; grid-template-columns:240px minmax(0,1fr) 320px; gap:40px; padding:48px 18px; }
.soc-footer-cover-card{ min-height:270px; background:#1b1b1b; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:24px; }
.soc-footer-cover-card .custom-logo-link img{ max-width:180px; height:auto; }
.soc-footer-brand-text{ font-size:32px; line-height:.95; font-weight:900; letter-spacing:-.05em; }
.soc-footer-cover-card span{ margin-top:16px; font-size:11px; font-weight:900; letter-spacing:.16em; }
.soc-footer-menu-col{ border-left:1px solid rgba(255,255,255,.18); border-right:1px solid rgba(255,255,255,.18); padding:0 34px; }
.soc-custom-footer h3{ margin:0 0 16px; font-size:18px; line-height:1; font-weight:900; letter-spacing:-.04em; }
.soc-footer-socials{ display:flex; gap:12px; margin-bottom:28px; padding-bottom:24px; border-bottom:1px solid rgba(255,255,255,.18); }
.soc-footer-socials a{ width:34px; height:34px; border:1px solid rgba(255,255,255,.45); border-radius:50%; display:flex; align-items:center; justify-content:center; color:#fff; font-size:12px; font-weight:900; }
.soc-footer-link-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.soc-custom-footer ul{ list-style:none; margin:0; padding:0; }
.soc-custom-footer li{ margin:0 0 9px; }
.soc-custom-footer a{ color:#fff; text-decoration:none; }
.soc-custom-footer p{ margin:0 0 12px; color:rgba(255,255,255,.72); font-size:13px; line-height:1.55; }
.soc-footer-info-col .custom-logo-link img{ max-width:190px; height:auto; margin-bottom:16px; }
.soc-footer-logo-text{ font-size:26px; font-weight:900; letter-spacing:-.05em; margin-bottom:16px; }
.soc-footer-publisher{ background:#fff; color:#111; text-align:center; padding:30px 18px 26px; }
.soc-footer-publisher img{ display:block; max-height:42px; width:auto; margin:0 auto 12px; }
.soc-footer-publisher p{ margin:0 auto 4px; max-width:760px; font-size:11px; line-height:1.45; color:#111; }

@media (max-width:1024px){
  .soc-single-content-layout{ grid-template-columns:1fr; gap:34px; }
  .soc-single-sidebar-box{ position:static; }
  .soc-footer-grid{ grid-template-columns:1fr; gap:28px; }
  .soc-footer-menu-col{ border-left:0; border-right:0; padding:28px 0; border-top:1px solid rgba(255,255,255,.18); border-bottom:1px solid rgba(255,255,255,.18); }
}
@media (max-width:767px){
  .soc-bb-section-video{ padding:24px 16px; }
  .soc-single-video-page .soc-single-page-title{ font-size:36px; }
  .soc-footer-link-grid{ grid-template-columns:1fr; gap:18px; }
  .soc-footer-cover-card{ min-height:190px; }
}


/* =========================================================
   V29 — Single post normalizer + clean editable footer
   ========================================================= */
.soc-single-page{ max-width:1200px; padding-top:34px; }
.soc-single-header-block{ max-width:1000px; margin:0 0 34px; }
.soc-single-header-block .soc-single-page-title{ max-width:1000px; }
.soc-single-page-title{ font-size:48px; line-height:1.02; letter-spacing:-.055em; }
.soc-single-page-meta{ margin-bottom:24px; }
.soc-single-featured-media{ margin:22px 0 0; }
.soc-single-featured-media img{ max-height:620px; object-fit:cover; }
.soc-single-content-layout{ grid-template-columns:minmax(0,760px) 330px; gap:58px; }
.soc-single-page-content{ font-size:18px; line-height:1.72; }
.soc-single-sidebar-box{ padding-top:0; }

/* Clean footer: no social/follow, no forced logo/cover image */
.soc-custom-footer{ margin-top:70px; }
.soc-footer-grid{ grid-template-columns:240px minmax(0,1fr) 360px; }
.soc-footer-cover-card{ min-height:230px; background:#1a1a1a; border:1px solid rgba(255,255,255,.08); }
.soc-footer-logo-slot{ width:100%; min-height:160px; display:flex; align-items:center; justify-content:center; border:1px dashed rgba(255,255,255,.22); color:rgba(255,255,255,.4); font-size:12px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.soc-footer-socials,.soc-footer-follow-title{ display:none !important; }
.soc-footer-link-grid{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.soc-footer-address{ color:rgba(255,255,255,.74); font-size:13px; line-height:1.6; }
.soc-footer-contact p{ margin-bottom:6px; }
.soc-footer-publisher{ padding:28px 18px 24px; }
.soc-footer-publisher-logo-slot{ width:150px; min-height:34px; margin:0 auto 10px; display:flex; align-items:center; justify-content:center; border:1px dashed #bbb; color:#999; font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }

@media (max-width:1024px){
  .soc-single-content-layout{ grid-template-columns:1fr; gap:36px; }
  .soc-single-header-block{ max-width:100%; }
  .soc-footer-grid{ grid-template-columns:1fr; }
}
@media (max-width:767px){
  .soc-single-page{ padding-left:16px; padding-right:16px; }
  .soc-single-page-title{ font-size:36px; }
  .soc-single-featured-media img{ max-height:none; }
  .soc-footer-logo-slot{ min-height:120px; }
}


/* =========================================================
   V30 — Clean article page + Billboard-like Latest News sidebar
   ========================================================= */
.soc-article-page,
.soc-article-page *{ box-sizing:border-box; }
.soc-article-page{
  max-width:1200px;
  margin:0 auto;
  padding:42px 18px 64px;
  color:#111;
  font-family:inherit;
}
.soc-article-page a{ color:inherit; text-decoration:none; }
.soc-article-page a:hover{ opacity:.82; text-decoration:none; }
.soc-article-header{ max-width:1040px; margin:0 0 26px; }
.soc-article-kicker{
  margin:0 0 14px;
  font-size:12px;
  line-height:1;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.soc-article-title{
  max-width:1040px;
  margin:0 0 14px;
  font-size:56px;
  line-height:1.02;
  font-weight:900;
  letter-spacing:-.06em;
}
.soc-article-meta{
  margin:0;
  color:#666;
  font-size:13px;
  line-height:1.5;
}
.soc-article-featured,
.soc-article-video-hero{ margin:0 0 34px; }
.soc-article-featured img{
  width:100%;
  max-height:620px;
  object-fit:cover;
  display:block;
  aspect-ratio:16/9;
}
.soc-article-video-hero{ background:#000; }
.soc-article-layout{
  display:grid;
  grid-template-columns:minmax(0,760px) 330px;
  gap:58px;
  align-items:start;
}
.soc-article-main{ min-width:0; }
.soc-article-content{
  font-size:18px;
  line-height:1.74;
}
.soc-article-content p{ margin:0 0 1.28em; }
.soc-article-content h2,
.soc-article-content h3{ margin:1.45em 0 .7em; line-height:1.12; letter-spacing:-.04em; }
.soc-article-content iframe,
.soc-article-content img{ max-width:100%; }
.soc-article-bottom{ margin-top:12px; }
.soc-article-content > *:last-child{ margin-bottom:0 !important; }

.soc-article-sidebar{ min-width:0; }
.soc-article-sidebar-box{
  position:sticky;
  top:96px;
  padding-top:0;
}
.soc-article-sidebar-title{
  position:relative;
  margin:0 0 24px;
  padding-top:18px;
  font-size:30px;
  line-height:1;
  font-weight:900;
  letter-spacing:-.055em;
}
.soc-article-sidebar-title:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:6px;
  background:#000;
}
.soc-article-side-item{ margin:0 0 34px; }
.soc-article-side-item:last-child{ margin-bottom:0; }
.soc-article-side-item .thumb{ display:block; overflow:hidden; background:#ddd; }
.soc-article-side-item .thumb img{ width:100%; aspect-ratio:16/10; object-fit:cover; display:block; }
.soc-article-side-kicker{
  position:relative;
  margin:14px 0 12px;
  padding-bottom:11px;
  font-size:11px;
  line-height:1;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.soc-article-side-kicker:after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:62px;
  height:3px;
  background:var(--blue,#1f50ff);
}
.soc-article-side-title{
  margin:0 0 8px;
  font-size:22px;
  line-height:1.12;
  font-weight:900;
  letter-spacing:-.04em;
}

/* Override older single styles supaya tidak bentrok */
.soc-single-page .soc-single-content-layout,
.soc-single-page .soc-single-sidebar-col,
.soc-single-page .soc-single-sidebar-box{ all:unset; }

@media (max-width:1024px){
  .soc-article-layout{ grid-template-columns:1fr; gap:40px; }
  .soc-article-sidebar-box{ position:static; }
  .soc-article-title{ font-size:46px; }
}
@media (max-width:767px){
  .soc-article-page{ padding:28px 16px 50px; }
  .soc-article-title{ font-size:36px; line-height:1.04; }
  .soc-article-content{ font-size:16px; line-height:1.72; }
  .soc-article-featured img{ max-height:none; }
  .soc-article-sidebar-title{ font-size:26px; }
  .soc-article-side-title{ font-size:20px; }
}

/* =========================================================
   Footer Editable Final — Widget + Customizer ready
   ========================================================= */
.soc-footer-editable .soc-footer-grid{
  max-width:1200px;
  margin:0 auto;
  display:grid;
  grid-template-columns:260px minmax(0,1fr) 340px;
  gap:36px;
  padding:48px 18px;
  align-items:start;
}
.soc-footer-editable .soc-footer-cover-card,
.soc-footer-editable .soc-footer-editable-box{
  min-height:250px;
  background:#1a1a1a;
  border:1px solid rgba(255,255,255,.12);
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:rgba(255,255,255,.72);
  padding:22px;
  font-size:13px;
  line-height:1.55;
}
.soc-footer-editable .soc-footer-editable-box strong{ color:#fff; font-size:15px; text-transform:uppercase; letter-spacing:.08em; }
.soc-footer-editable .soc-footer-editable-box span{ color:rgba(255,255,255,.45); font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.soc-footer-editable .soc-footer-menu-col{
  border-left:1px solid rgba(255,255,255,.18);
  border-right:1px solid rgba(255,255,255,.18);
  padding:0 36px;
}
.soc-footer-editable .soc-footer-link-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.soc-footer-editable h3,
.soc-footer-editable .soc-footer-widget-title{ margin:0 0 16px; font-size:18px; line-height:1; font-weight:900; letter-spacing:-.035em; }
.soc-footer-editable ul{ list-style:none; margin:0; padding:0; }
.soc-footer-editable li{ margin:0 0 8px; }
.soc-footer-editable a{ color:#fff; text-decoration:none; }
.soc-footer-editable .soc-footer-info-col p,
.soc-footer-editable .soc-footer-widget{ color:rgba(255,255,255,.74); font-size:13px; line-height:1.6; }
.soc-footer-editable .soc-footer-right-logo{ display:block; max-width:190px; height:auto; margin:0 0 18px; }
.soc-footer-editable .soc-footer-publisher{ background:#fff; color:#111; text-align:center; padding:28px 18px 24px; }
.soc-footer-editable .soc-footer-bottom-logo{ display:block; width:auto; height:auto; max-height:95px; margin:0 auto 8px; }
.soc-footer-editable .soc-footer-bottom-title{ margin:0 0 10px; color:#111; font-size:13px; line-height:1; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
.soc-footer-editable .soc-footer-publisher p{ max-width:760px; margin:0 auto 4px; color:#111; font-size:11px; line-height:1.45; }
.soc-footer-editable .soc-footer-publisher .soc-footer-widget{ color:#111; }
.soc-footer-editable .soc-footer-publisher a{ color:#111; }
@media (max-width:1024px){
  .soc-footer-editable .soc-footer-grid{ grid-template-columns:1fr; gap:28px; }
  .soc-footer-editable .soc-footer-menu-col{ border-left:0; border-right:0; border-top:1px solid rgba(255,255,255,.18); border-bottom:1px solid rgba(255,255,255,.18); padding:28px 0; }
}
@media (max-width:767px){
  .soc-footer-editable .soc-footer-grid{ padding:36px 18px; }
  .soc-footer-editable .soc-footer-link-grid{ grid-template-columns:1fr; gap:20px; }
  .soc-footer-editable .soc-footer-cover-card,
  .soc-footer-editable .soc-footer-editable-box{ min-height:130px; }
  .soc-footer-editable .soc-footer-bottom-logo{ max-width:220px !important; max-height:80px; }
}


/* =========================================================
   V33 — Homepage section fix: black NEWS SOC/NEWS RELEASE + sane Press Conference mobile
   ========================================================= */
.soc-bb-section-news-soc,
.soc-bb-section-news-release{
  background:#000;
  color:#fff;
  padding:34px;
}
.soc-bb-section-news-soc .soc-bb-section-head:before,
.soc-bb-section-news-release .soc-bb-section-head:before{
  background:#fff;
}
.soc-bb-section-news-soc .soc-bb-section-title,
.soc-bb-section-news-release .soc-bb-section-title,
.soc-bb-section-news-soc .soc-bb-more,
.soc-bb-section-news-release .soc-bb-more,
.soc-bb-section-news-soc .kicker,
.soc-bb-section-news-release .kicker,
.soc-bb-section-news-soc .soc-bb-flow-main-title,
.soc-bb-section-news-release .soc-bb-flow-main-title,
.soc-bb-section-news-soc .soc-bb-flow-card-title,
.soc-bb-section-news-release .soc-bb-flow-card-title{
  color:#fff;
}
.soc-bb-section-news-soc .meta,
.soc-bb-section-news-release .meta{
  color:rgba(255,255,255,.62);
}
.soc-bb-section-news-soc .soc-bb-music-col,
.soc-bb-section-news-release .soc-bb-music-col{
  border-left-color:rgba(255,255,255,.22);
}
.soc-bb-section-news-soc .soc-bb-music-main .soc-bb-flow-main .thumb img,
.soc-bb-section-news-release .soc-bb-music-main .soc-bb-flow-main .thumb img{
  filter:none;
}

/* Press Conference desktop: black video-like editorial block */
.soc-bb-section-press-conference{
  background:#000;
  color:#fff;
  padding:34px;
}
.soc-bb-section-press-conference .soc-bb-section-head:before{ background:#fff; }
.soc-bb-section-press-conference .soc-bb-section-title,
.soc-bb-section-press-conference .soc-bb-more,
.soc-bb-section-press-conference .soc-bb-date,
.soc-bb-section-press-conference .soc-bb-video-title,
.soc-bb-section-press-conference .soc-bb-video-small-title{
  color:#fff;
}
.soc-bb-section-press-conference .soc-bb-video-grid{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(0,.95fr);
  gap:30px;
  align-items:start;
}
.soc-bb-section-press-conference .soc-bb-video-main .thumb img{
  aspect-ratio:16/10;
  object-fit:cover;
}
.soc-bb-section-press-conference .soc-bb-video-title{
  margin-top:18px;
  font-size:34px;
  line-height:1.05;
  letter-spacing:-.05em;
}
.soc-bb-section-press-conference .soc-bb-video-list{
  display:grid;
  gap:0;
}
.soc-bb-section-press-conference .soc-bb-video-small{
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  gap:14px;
  align-items:start;
  padding:0 0 18px;
  margin:0 0 18px;
  border-bottom:1px solid rgba(255,255,255,.32);
}
.soc-bb-section-press-conference .soc-bb-video-small:last-child{
  border-bottom:0;
  margin-bottom:0;
  padding-bottom:0;
}
.soc-bb-section-press-conference .soc-bb-video-small .thumb img{
  aspect-ratio:1/1;
  object-fit:cover;
}
.soc-bb-section-press-conference .soc-bb-video-small-title{
  margin:0 0 8px;
  font-size:18px;
  line-height:1.08;
  letter-spacing:-.035em;
}

@media (max-width:1024px){
  .soc-bb-section-press-conference .soc-bb-video-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width:767px){
  /* Mobile NEWS SOC + NEWS RELEASE: stacked, readable, black */
  .soc-bb-section-news-soc,
  .soc-bb-section-news-release{
    margin-left:-14px;
    margin-right:-14px;
    padding:32px 20px;
  }
  .soc-bb-section-news-soc .soc-bb-section-title,
  .soc-bb-section-news-release .soc-bb-section-title,
  .soc-bb-section-press-conference .soc-bb-section-title{
    font-size:32px;
    line-height:1;
  }
  .soc-bb-section-news-soc .soc-bb-music-layout,
  .soc-bb-section-news-release .soc-bb-music-layout{
    display:grid;
    grid-template-columns:1fr;
    gap:28px;
  }
  .soc-bb-section-news-soc .soc-bb-music-col,
  .soc-bb-section-news-release .soc-bb-music-col{
    display:grid;
    grid-template-columns:1fr;
    gap:22px;
    border-left:0;
    padding:0;
  }
  .soc-bb-section-news-soc .soc-bb-music-main .soc-bb-flow-main .thumb img,
  .soc-bb-section-news-release .soc-bb-music-main .soc-bb-flow-main .thumb img{
    aspect-ratio:16/10;
    object-fit:cover;
  }
  .soc-bb-section-news-soc .soc-bb-music-main .soc-bb-flow-main-title,
  .soc-bb-section-news-release .soc-bb-music-main .soc-bb-flow-main-title{
    font-size:34px;
    line-height:1.05;
  }
  .soc-bb-section-news-soc .soc-bb-flow-card,
  .soc-bb-section-news-release .soc-bb-flow-card{
    display:grid;
    grid-template-columns:96px minmax(0,1fr);
    gap:14px;
    align-items:start;
    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.28);
  }
  .soc-bb-section-news-soc .soc-bb-flow-card .thumb img,
  .soc-bb-section-news-release .soc-bb-flow-card .thumb img{
    aspect-ratio:1/1;
    object-fit:cover;
  }
  .soc-bb-section-news-soc .soc-bb-flow-card .kicker,
  .soc-bb-section-news-release .soc-bb-flow-card .kicker,
  .soc-bb-section-news-soc .soc-bb-flow-card .readmore,
  .soc-bb-section-news-release .soc-bb-flow-card .readmore{
    display:none;
  }
  .soc-bb-section-news-soc .soc-bb-flow-card-title,
  .soc-bb-section-news-release .soc-bb-flow-card-title{
    margin:0;
    font-size:21px;
    line-height:1.08;
  }

  /* Mobile Press Conference: white background, one clean lead + list, no skinny 3 columns */
  .soc-bb-section-press-conference{
    background:#fff;
    color:#111;
    padding:0;
  }
  .soc-bb-section-press-conference .soc-bb-section-head:before{
    background:#000;
  }
  .soc-bb-section-press-conference .soc-bb-section-title,
  .soc-bb-section-press-conference .soc-bb-more,
  .soc-bb-section-press-conference .soc-bb-date,
  .soc-bb-section-press-conference .soc-bb-video-title,
  .soc-bb-section-press-conference .soc-bb-video-small-title{
    color:#111;
  }
  .soc-bb-section-press-conference .soc-bb-video-grid{
    grid-template-columns:1fr;
    gap:24px;
  }
  .soc-bb-section-press-conference .soc-bb-video-main .thumb img{
    aspect-ratio:16/10;
  }
  .soc-bb-section-press-conference .soc-bb-video-title{
    font-size:32px;
    line-height:1.05;
    margin-top:16px;
  }
  .soc-bb-section-press-conference .soc-bb-video-small{
    grid-template-columns:96px minmax(0,1fr);
    gap:14px;
    border-bottom:1px solid #d8d8d8;
  }
  .soc-bb-section-press-conference .soc-bb-video-small-title{
    font-size:20px;
    line-height:1.1;
  }

  /* Safety: any old 3-card scenes section should stack on mobile */
  .soc-bb-section-press-conference .soc-bb-scenes-layout,
  .soc-bb-section-submit-karya-lo .soc-bb-scenes-layout{
    grid-template-columns:1fr !important;
    gap:26px !important;
  }
  .soc-bb-section-press-conference .soc-bb-scenes-layout .soc-bb-flow-card-title,
  .soc-bb-section-submit-karya-lo .soc-bb-scenes-layout .soc-bb-flow-card-title{
    font-size:26px;
    line-height:1.08;
  }
}


/* =========================================================
   SOC V34 — Remove play icons from normal Press Conference cards
   Press Conference posts are regular articles, not video posts.
   Real Video section icons remain active.
   ========================================================= */
.soc-bb-section-press-conference .thumb:after,
.soc-bb-section-press-conference .soc-bb-video-main .thumb:after,
.soc-bb-section-press-conference .soc-bb-video-small .thumb:after{
  content:none !important;
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
}
.soc-bb-section-press-conference .thumb{
  position:relative;
}


/* =========================================================
   SOC V35 FOOTER BUILDER — editable photo slots + unlimited links
   ========================================================= */
.soc-footer-v35 .soc-footer-grid{
  max-width:1200px;
  grid-template-columns:260px minmax(0,1fr) 330px;
  gap:42px;
  align-items:start;
}
.soc-footer-v35 .soc-footer-photo-slot{
  display:flex;
  width:100%;
  min-height:270px;
  align-items:center;
  justify-content:center;
  background:#1a1a1a;
  border:1px solid rgba(255,255,255,.14);
  overflow:hidden;
  text-decoration:none;
}
.soc-footer-v35 .soc-footer-photo-slot img{
  display:block;
  width:100%;
  height:100%;
  min-height:270px;
  object-fit:cover;
}
.soc-footer-v35 .soc-footer-empty-photo span{
  color:rgba(255,255,255,.46);
  font-size:12px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.soc-footer-v35 .soc-footer-menu-col{
  padding:0 38px;
  border-left:1px solid rgba(255,255,255,.18);
  border-right:1px solid rgba(255,255,255,.18);
}
.soc-footer-v35 .soc-footer-link-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:34px;
}
.soc-footer-v35 .soc-footer-link-grid h3,
.soc-footer-v35 .soc-footer-widget-title{
  font-size:20px;
  line-height:1;
  margin:0 0 20px;
  letter-spacing:-.04em;
}
.soc-footer-v35 .soc-footer-link-grid li{ margin:0 0 10px; }
.soc-footer-v35 .soc-footer-link-grid a{
  color:#fff;
  font-size:14px;
  line-height:1.25;
  font-weight:500;
}
.soc-footer-v35 .soc-footer-info-col{ color:rgba(255,255,255,.72); font-size:13px; line-height:1.58; }
.soc-footer-v35 .soc-footer-right-logo-link{ display:inline-block; }
.soc-footer-v35 .soc-footer-right-logo{
  display:block;
  max-width:190px;
  width:auto;
  height:auto;
  margin:0 0 24px;
}
.soc-footer-v35 .soc-footer-info-col h3,
.soc-footer-v35 .soc-footer-info-col > p:first-of-type{ display:none; }
.soc-footer-v35 .soc-footer-address p{ margin:0 0 24px; color:rgba(255,255,255,.66); }
.soc-footer-v35 .soc-footer-contact p{ margin:0 0 7px; color:rgba(255,255,255,.72); }
.soc-footer-v35 .soc-footer-contact a{ color:#fff; font-weight:700; }
.soc-footer-v35 .soc-footer-publisher{
  background:#fff;
  color:#111;
  text-align:center;
  padding:32px 18px 28px;
}
.soc-footer-v35 .soc-footer-bottom-logo-link{ display:inline-block; }
.soc-footer-v35 .soc-footer-bottom-logo{
  display:block;
  width:auto;
  height:auto;
  max-height:100px;
  margin:0 auto 9px;
}
.soc-footer-v35 .soc-footer-bottom-title{
  margin:0 0 12px;
  color:#111;
  font-size:15px;
  line-height:1;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.soc-footer-v35 .soc-footer-publisher p{
  max-width:780px;
  margin:0 auto 5px;
  color:#111;
  font-size:12px;
  line-height:1.45;
}
.soc-footer-v35 .soc-footer-powered{ margin-top:4px !important; }
.soc-footer-v35 .soc-footer-powered a{ color:#111; font-weight:800; text-decoration:none; }
@media (max-width: 900px){
  .soc-footer-v35 .soc-footer-grid{ grid-template-columns:1fr; gap:32px; padding:40px 22px; }
  .soc-footer-v35 .soc-footer-menu-col{ padding:28px 0; border-left:0; border-right:0; border-top:1px solid rgba(255,255,255,.18); border-bottom:1px solid rgba(255,255,255,.18); }
  .soc-footer-v35 .soc-footer-link-grid{ grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
  .soc-footer-v35 .soc-footer-link-grid h3{ font-size:22px; margin-bottom:18px; }
  .soc-footer-v35 .soc-footer-link-grid a{ font-size:16px; line-height:1.28; }
  .soc-footer-v35 .soc-footer-info-col{ text-align:center; max-width:620px; margin:0 auto; }
  .soc-footer-v35 .soc-footer-right-logo{ margin:0 auto 22px; max-width:230px; }
  .soc-footer-v35 .soc-footer-photo-slot{ min-height:180px; }
  .soc-footer-v35 .soc-footer-photo-slot img{ min-height:180px; }
}
@media (max-width: 520px){
  .soc-footer-v35 .soc-footer-grid{ padding:36px 18px; }
  .soc-footer-v35 .soc-footer-link-grid{ gap:16px; }
  .soc-footer-v35 .soc-footer-link-grid h3{ font-size:19px; }
  .soc-footer-v35 .soc-footer-link-grid a{ font-size:14px; }
  .soc-footer-v35 .soc-footer-bottom-logo{ max-width:250px !important; max-height:90px; }
  .soc-footer-v35 .soc-footer-publisher p{ font-size:12px; }
}

/* =========================================================
   SOC V36 FOOTER POLISH — final footer tweaks
   ========================================================= */
.soc-footer-v35 .soc-footer-bottom-title{ display:none !important; }
.soc-footer-v35 .soc-footer-powered,
.soc-footer-v35 .soc-footer-powered span,
.soc-footer-v35 .soc-footer-powered a{
  font-weight:400 !important;
  font-size:12px;
  line-height:1.45;
}
.soc-footer-v35 .soc-footer-powered a{ color:#111; text-decoration:none; }
.soc-footer-v35 .soc-footer-powered a:hover{ text-decoration:underline; }
@media (max-width: 900px){
  .soc-footer-v35 .soc-footer-cover-col{ display:flex; justify-content:center; }
  .soc-footer-v35 .soc-footer-photo-slot{
    width:min(76vw, 610px);
    max-width:610px;
    min-height:0;
    aspect-ratio:auto;
    background:transparent;
    border:0;
  }
  .soc-footer-v35 .soc-footer-photo-slot img{
    width:100%;
    height:auto;
    min-height:0;
    object-fit:contain;
  }
}
@media (max-width: 520px){
  .soc-footer-v35 .soc-footer-photo-slot{ width:78vw; max-width:330px; }
  .soc-footer-v35 .soc-footer-bottom-logo{
    max-width:250px !important;
    max-height:82px !important;
    margin-bottom:12px;
  }
}


/* =========================================================
   SOC V37 — Event desktop + Submit Karya magazine-style section
   ========================================================= */
.soc-bb-section-event .soc-bb-section-title{ text-transform:uppercase; }
.soc-bb-section-event .soc-bb-video-grid{ grid-template-columns:minmax(0,1.52fr) 380px; gap:34px; }
.soc-bb-section-event .soc-bb-video-main .thumb:after,
.soc-bb-section-event .soc-bb-video-small .thumb:after{ display:none !important; content:none !important; }
.soc-bb-section-event .soc-bb-video-main .thumb img{ aspect-ratio:16/10; object-fit:cover; }
.soc-bb-section-event .soc-bb-video-list{ grid-template-columns:1fr !important; gap:0 !important; }
.soc-bb-section-event .soc-bb-video-small{ grid-template-columns:104px minmax(0,1fr); gap:14px; padding:0 0 16px; margin:0 0 16px; border-bottom:1px solid rgba(255,255,255,.3); }
.soc-bb-section-event .soc-bb-video-small .thumb img{ aspect-ratio:1/1; object-fit:cover; }
.soc-bb-section-event .soc-bb-video-small-title{ font-size:17px; line-height:1.05; margin:0 0 8px; letter-spacing:-.04em; }
.soc-bb-section-event .soc-bb-date{ font-size:10px; }

.soc-bb-section-submit-magazine{ background:#eee; padding:38px 34px; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); padding-left:max(34px, calc((100vw - 1200px) / 2)); padding-right:max(34px, calc((100vw - 1200px) / 2)); }
.soc-bb-section-submit-magazine .soc-bb-section-head{ max-width:1200px; margin-left:auto; margin-right:auto; }
.soc-bb-submit-mag-layout{ max-width:1200px; margin:0 auto; display:grid; grid-template-columns:minmax(0,.92fr) minmax(360px,.95fr); gap:34px; align-items:center; }
.soc-bb-submit-list{ display:grid; gap:20px; }
.soc-bb-submit-item{ display:grid; grid-template-columns:210px minmax(0,1fr); gap:18px; align-items:center; padding-bottom:20px; border-bottom:1px solid rgba(0,0,0,.12); }
.soc-bb-submit-item:last-child{ border-bottom:0; padding-bottom:0; }
.soc-bb-submit-item .thumb img{ aspect-ratio:16/9; object-fit:cover; }
.soc-bb-submit-item-title{ margin:0 0 10px; font-size:20px; line-height:1.08; font-weight:900; letter-spacing:-.04em; }
.soc-bb-submit-excerpt{ margin:0; color:#333; font-size:14px; line-height:1.5; }
.soc-bb-submit-poster{ display:block; justify-self:end; width:min(100%,470px); }
.soc-bb-submit-poster img{ display:block; width:100%; height:auto; object-fit:contain; }
@media (max-width:1024px){ .soc-bb-section-event .soc-bb-video-grid,.soc-bb-submit-mag-layout{ grid-template-columns:1fr; } .soc-bb-submit-poster{ justify-self:center; order:-1; width:min(100%,520px); } }
@media (max-width:767px){ .soc-bb-section-submit-magazine{ padding:32px 18px; margin-left:-14px; margin-right:-14px; } .soc-bb-submit-item{ grid-template-columns:118px minmax(0,1fr); gap:14px; } .soc-bb-submit-item-title{ font-size:20px; line-height:1.08; } .soc-bb-submit-excerpt{ display:none; } .soc-bb-submit-poster{ width:min(88vw,420px); } .soc-bb-section-event{ background:#000; color:#fff; padding:28px 18px; margin-left:-14px; margin-right:-14px; } .soc-bb-section-event .soc-bb-section-head:before{ background:#fff; } .soc-bb-section-event .soc-bb-section-title,.soc-bb-section-event .soc-bb-more,.soc-bb-section-event .soc-bb-date,.soc-bb-section-event .soc-bb-video-title,.soc-bb-section-event .soc-bb-video-small-title{ color:#fff; } }


/* =========================================================
   SOC V40 — FULL-BLEED BLACK CATEGORY LAYOUT
   Bikin section hitam benar-benar full layar, bukan kotak tengah.
   Berlaku untuk desktop dan mobile.
   ========================================================= */
.soc-bb-home{ overflow:visible !important; }
.soc-bb-section-video,
.soc-bb-section-news-soc,
.soc-bb-section-news-release,
.soc-bb-section-event,
.soc-bb-section-press-conference{
  background:#000 !important;
  color:#fff !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  padding-top:42px !important;
  padding-bottom:46px !important;
  padding-left:max(28px, calc((100vw - 1200px) / 2)) !important;
  padding-right:max(28px, calc((100vw - 1200px) / 2)) !important;
  box-sizing:border-box !important;
}
.soc-bb-section-video .soc-bb-section-head,
.soc-bb-section-news-soc .soc-bb-section-head,
.soc-bb-section-news-release .soc-bb-section-head,
.soc-bb-section-event .soc-bb-section-head,
.soc-bb-section-press-conference .soc-bb-section-head,
.soc-bb-section-video .soc-bb-video-grid,
.soc-bb-section-news-soc .soc-bb-music-layout,
.soc-bb-section-news-release .soc-bb-music-layout,
.soc-bb-section-event .soc-bb-video-grid,
.soc-bb-section-press-conference .soc-bb-video-grid{
  max-width:1200px;
  margin-left:auto;
  margin-right:auto;
}
.soc-bb-section-video .soc-bb-section-head:before,
.soc-bb-section-news-soc .soc-bb-section-head:before,
.soc-bb-section-news-release .soc-bb-section-head:before,
.soc-bb-section-event .soc-bb-section-head:before,
.soc-bb-section-press-conference .soc-bb-section-head:before{ background:#fff !important; }
.soc-bb-section-video .soc-bb-section-title,
.soc-bb-section-news-soc .soc-bb-section-title,
.soc-bb-section-news-release .soc-bb-section-title,
.soc-bb-section-event .soc-bb-section-title,
.soc-bb-section-press-conference .soc-bb-section-title,
.soc-bb-section-video .soc-bb-more,
.soc-bb-section-news-soc .soc-bb-more,
.soc-bb-section-news-release .soc-bb-more,
.soc-bb-section-event .soc-bb-more,
.soc-bb-section-press-conference .soc-bb-more,
.soc-bb-section-video .kicker,
.soc-bb-section-news-soc .kicker,
.soc-bb-section-news-release .kicker,
.soc-bb-section-event .kicker,
.soc-bb-section-press-conference .kicker,
.soc-bb-section-video .soc-bb-video-title,
.soc-bb-section-event .soc-bb-video-title,
.soc-bb-section-press-conference .soc-bb-video-title,
.soc-bb-section-video .soc-bb-video-small-title,
.soc-bb-section-event .soc-bb-video-small-title,
.soc-bb-section-press-conference .soc-bb-video-small-title,
.soc-bb-section-news-soc .soc-bb-flow-main-title,
.soc-bb-section-news-release .soc-bb-flow-main-title,
.soc-bb-section-news-soc .soc-bb-flow-card-title,
.soc-bb-section-news-release .soc-bb-flow-card-title{ color:#fff !important; }
.soc-bb-section-video .meta,
.soc-bb-section-news-soc .meta,
.soc-bb-section-news-release .meta,
.soc-bb-section-event .meta,
.soc-bb-section-press-conference .meta,
.soc-bb-section-video .soc-bb-date,
.soc-bb-section-event .soc-bb-date,
.soc-bb-section-press-conference .soc-bb-date{ color:rgba(255,255,255,.62) !important; }
.soc-bb-section-video .soc-bb-video-small,
.soc-bb-section-event .soc-bb-video-small,
.soc-bb-section-press-conference .soc-bb-video-small,
.soc-bb-section-news-soc .soc-bb-flow-card,
.soc-bb-section-news-release .soc-bb-flow-card{ border-color:rgba(255,255,255,.28) !important; }
@media (max-width:1199px){
  .soc-bb-section-video,
  .soc-bb-section-news-soc,
  .soc-bb-section-news-release,
  .soc-bb-section-event,
  .soc-bb-section-press-conference{
    margin-left:-18px !important;
    margin-right:-18px !important;
    padding-left:28px !important;
    padding-right:28px !important;
  }
}
@media (max-width:767px){
  .soc-bb-section-video,
  .soc-bb-section-news-soc,
  .soc-bb-section-news-release,
  .soc-bb-section-event,
  .soc-bb-section-press-conference{
    margin-left:-14px !important;
    margin-right:-14px !important;
    padding:32px 22px 38px !important;
    background:#000 !important;
    color:#fff !important;
  }
  .soc-bb-section-press-conference .soc-bb-section-title,
  .soc-bb-section-event .soc-bb-section-title,
  .soc-bb-section-video .soc-bb-section-title,
  .soc-bb-section-news-soc .soc-bb-section-title,
  .soc-bb-section-news-release .soc-bb-section-title{ font-size:34px !important; }
  .soc-bb-section-press-conference .soc-bb-video-grid,
  .soc-bb-section-event .soc-bb-video-grid,
  .soc-bb-section-video .soc-bb-video-grid,
  .soc-bb-section-news-soc .soc-bb-music-layout,
  .soc-bb-section-news-release .soc-bb-music-layout{ max-width:100%; }
  .soc-bb-section-press-conference .soc-bb-video-small,
  .soc-bb-section-event .soc-bb-video-small,
  .soc-bb-section-video .soc-bb-video-small{ border-bottom:1px solid rgba(255,255,255,.28) !important; }
}


/* =========================================================
   SOC V41 — MOBILE FULL-BLACK FIX
   Desktop v40 sudah aman; ini khusus bikin section hitam di HP
   benar-benar full lebar layar, bukan kotak hitam di tengah.
   ========================================================= */
@media (max-width: 767px){
  html, body{ overflow-x:hidden !important; }
  body.home .site,
  body.home .site-content,
  body.home .content-area,
  body.home .entry-content,
  body.home .site-main,
  body.home .cs-container,
  body.home .container,
  body.home .main-content,
  body.home .page-content{ overflow:visible !important; }

  .soc-bb-home{ width:100% !important; max-width:none !important; padding-left:14px !important; padding-right:14px !important; overflow:visible !important; }

  .soc-bb-section-video,
  .soc-bb-section-news-soc,
  .soc-bb-section-news-release,
  .soc-bb-section-event,
  .soc-bb-section-press-conference{
    position:relative !important;
    left:50% !important;
    right:50% !important;
    width:100vw !important;
    max-width:100vw !important;
    margin-left:-50vw !important;
    margin-right:-50vw !important;
    padding:34px 22px 42px !important;
    background:#000 !important;
    color:#fff !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
  }

  .soc-bb-section-video > *,
  .soc-bb-section-news-soc > *,
  .soc-bb-section-news-release > *,
  .soc-bb-section-event > *,
  .soc-bb-section-press-conference > *{ width:100% !important; max-width:100% !important; margin-left:auto !important; margin-right:auto !important; }

  .soc-bb-section-video .soc-bb-section-head,
  .soc-bb-section-news-soc .soc-bb-section-head,
  .soc-bb-section-news-release .soc-bb-section-head,
  .soc-bb-section-event .soc-bb-section-head,
  .soc-bb-section-press-conference .soc-bb-section-head{ padding-top:16px !important; margin-bottom:22px !important; }

  .soc-bb-section-video .soc-bb-section-head:before,
  .soc-bb-section-news-soc .soc-bb-section-head:before,
  .soc-bb-section-news-release .soc-bb-section-head:before,
  .soc-bb-section-event .soc-bb-section-head:before,
  .soc-bb-section-press-conference .soc-bb-section-head:before{ background:#fff !important; width:120px !important; height:5px !important; }

  .soc-bb-section-video .soc-bb-section-title,
  .soc-bb-section-news-soc .soc-bb-section-title,
  .soc-bb-section-news-release .soc-bb-section-title,
  .soc-bb-section-event .soc-bb-section-title,
  .soc-bb-section-press-conference .soc-bb-section-title{ color:#fff !important; font-size:34px !important; line-height:.96 !important; }

  .soc-bb-section-video .soc-bb-more,
  .soc-bb-section-news-soc .soc-bb-more,
  .soc-bb-section-news-release .soc-bb-more,
  .soc-bb-section-event .soc-bb-more,
  .soc-bb-section-press-conference .soc-bb-more,
  .soc-bb-section-video a,
  .soc-bb-section-news-soc a,
  .soc-bb-section-news-release a,
  .soc-bb-section-event a,
  .soc-bb-section-press-conference a{ color:#fff !important; }

  .soc-bb-section-video .soc-bb-video-grid,
  .soc-bb-section-event .soc-bb-video-grid,
  .soc-bb-section-press-conference .soc-bb-video-grid,
  .soc-bb-section-news-soc .soc-bb-music-layout,
  .soc-bb-section-news-release .soc-bb-music-layout{ display:grid !important; grid-template-columns:1fr !important; gap:22px !important; }

  .soc-bb-section-video .soc-bb-video-list,
  .soc-bb-section-event .soc-bb-video-list,
  .soc-bb-section-press-conference .soc-bb-video-list,
  .soc-bb-section-news-soc .soc-bb-music-col,
  .soc-bb-section-news-release .soc-bb-music-col{ display:grid !important; grid-template-columns:1fr !important; gap:0 !important; }

  .soc-bb-section-video .soc-bb-video-main .thumb img,
  .soc-bb-section-event .soc-bb-video-main .thumb img,
  .soc-bb-section-press-conference .soc-bb-video-main .thumb img,
  .soc-bb-section-news-soc .soc-bb-flow-main .thumb img,
  .soc-bb-section-news-release .soc-bb-flow-main .thumb img{ width:100% !important; aspect-ratio:16/10 !important; object-fit:cover !important; }

  .soc-bb-section-video .soc-bb-video-title,
  .soc-bb-section-event .soc-bb-video-title,
  .soc-bb-section-press-conference .soc-bb-video-title,
  .soc-bb-section-news-soc .soc-bb-flow-main-title,
  .soc-bb-section-news-release .soc-bb-flow-main-title{ color:#fff !important; font-size:32px !important; line-height:1.02 !important; letter-spacing:-.055em !important; }

  .soc-bb-section-video .soc-bb-video-small,
  .soc-bb-section-event .soc-bb-video-small,
  .soc-bb-section-press-conference .soc-bb-video-small,
  .soc-bb-section-news-soc .soc-bb-flow-card,
  .soc-bb-section-news-release .soc-bb-flow-card{ border-bottom:1px solid rgba(255,255,255,.30) !important; padding:16px 0 !important; margin:0 !important; }

  .soc-bb-section-video .soc-bb-video-small-title,
  .soc-bb-section-event .soc-bb-video-small-title,
  .soc-bb-section-press-conference .soc-bb-video-small-title,
  .soc-bb-section-news-soc .soc-bb-flow-card-title,
  .soc-bb-section-news-release .soc-bb-flow-card-title{ color:#fff !important; font-size:22px !important; line-height:1.08 !important; letter-spacing:-.04em !important; }

  .soc-bb-section-video .meta,
  .soc-bb-section-event .meta,
  .soc-bb-section-press-conference .meta,
  .soc-bb-section-news-soc .meta,
  .soc-bb-section-news-release .meta,
  .soc-bb-section-video .soc-bb-date,
  .soc-bb-section-event .soc-bb-date,
  .soc-bb-section-press-conference .soc-bb-date{ color:rgba(255,255,255,.58) !important; }
}

/* =========================================================
   SOC V42 — Baca Juga Related Articles Shortcode
   ========================================================= */
.soc-baca-juga{
  margin:32px 0 34px !important;
  padding:20px 0 0 !important;
  border-top:4px solid #000;
  border-bottom:1px solid #ddd;
  font-family:inherit;
}
.soc-baca-juga-head{
  margin:0 0 18px !important;
  color:#111;
  font-size:22px;
  line-height:1;
  font-weight:900;
  letter-spacing:-.04em;
  text-transform:none;
}
.soc-baca-juga-list{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:22px; }
.soc-baca-juga-item{ margin:0 0 20px !important; min-width:0; }
.soc-baca-juga-thumb{ display:block; overflow:hidden; background:#e6e6e6; text-decoration:none !important; }
.soc-baca-juga-thumb img{ display:block; width:100%; aspect-ratio:16/10; height:auto; object-fit:cover; }
.soc-baca-juga-ph{ display:block; width:100%; aspect-ratio:16/10; background:linear-gradient(135deg,#e2e2e2,#f8f8f8); }
.soc-baca-juga-kicker{ margin:12px 0 8px; padding-bottom:7px; color:#111; font-size:11px; line-height:1; font-weight:900; letter-spacing:.14em; text-transform:uppercase; position:relative; }
.soc-baca-juga-kicker:after{ content:""; position:absolute; left:0; bottom:0; width:42px; height:3px; background:#1f50ff; }
.soc-baca-juga-title{ margin:0 !important; color:#111; font-size:20px !important; line-height:1.08 !important; font-weight:900 !important; letter-spacing:-.04em !important; }
.soc-baca-juga-title a{ color:inherit !important; text-decoration:none !important; }
.soc-baca-juga-date{ margin-top:10px; color:#666; font-size:11px; line-height:1.3; font-weight:700; text-transform:uppercase; }

@media (max-width: 767px){
  .soc-baca-juga{ margin:26px 0 28px !important; padding-top:18px !important; }
  .soc-baca-juga-head{ font-size:24px; margin-bottom:16px !important; }
  .soc-baca-juga-list{ grid-template-columns:1fr; gap:0; }
  .soc-baca-juga-item{ display:grid; grid-template-columns:112px minmax(0,1fr); gap:14px; align-items:start; padding:15px 0; border-top:1px solid #e4e4e4; margin:0 !important; }
  .soc-baca-juga-item:first-child{ border-top:0; padding-top:0; }
  .soc-baca-juga-thumb img,
  .soc-baca-juga-ph{ aspect-ratio:1/1; }
  .soc-baca-juga-kicker{ margin:0 0 8px; font-size:10px; }
  .soc-baca-juga-title{ font-size:19px !important; line-height:1.08 !important; letter-spacing:-.035em !important; }
  .soc-baca-juga-date{ margin-top:8px; font-size:10px; }
}


/* =========================================================
   SOC V43 - Submit Karya mobile box fix
   Rapihin item artikel di section Submit Karya Lo supaya tidak keluar dari kotak.
   ========================================================= */
.soc-bb-section-submit-magazine,
.soc-bb-section-submit-magazine *{ box-sizing:border-box; }
.soc-bb-section-submit-magazine{ overflow:hidden; }
.soc-bb-submit-list{ min-width:0; width:100%; }
.soc-bb-submit-item{ width:100%; min-width:0; overflow:hidden; }
.soc-bb-submit-item-content{ min-width:0; max-width:100%; overflow:hidden; }
.soc-bb-submit-item-title,
.soc-bb-submit-item-title a{ max-width:100%; overflow-wrap:break-word; word-break:normal; hyphens:auto; }
.soc-bb-submit-item .thumb,
.soc-bb-submit-item .thumb img,
.soc-bb-submit-item .thumb .ph{ max-width:100%; min-width:0; }
@media (max-width:767px){
  .soc-bb-section-submit-magazine{ width:100vw !important; margin-left:calc(50% - 50vw) !important; margin-right:calc(50% - 50vw) !important; padding:32px 18px 34px !important; }
  .soc-bb-section-submit-magazine .soc-bb-section-head,
  .soc-bb-submit-mag-layout{ width:100% !important; max-width:none !important; margin-left:0 !important; margin-right:0 !important; }
  .soc-bb-submit-list{ display:grid !important; gap:0 !important; width:100% !important; }
  .soc-bb-submit-item{ display:grid !important; grid-template-columns:112px minmax(0,1fr) !important; gap:14px !important; align-items:center !important; padding:18px 0 !important; margin:0 !important; border-bottom:1px solid rgba(0,0,0,.14) !important; overflow:hidden !important; }
  .soc-bb-submit-item:last-child{ border-bottom:0 !important; }
  .soc-bb-submit-item .thumb{ width:112px !important; max-width:112px !important; overflow:hidden !important; background:#e3e3e3 !important; }
  .soc-bb-submit-item .thumb img,
  .soc-bb-submit-item .thumb .ph{ width:112px !important; height:68px !important; aspect-ratio:auto !important; object-fit:cover !important; }
  .soc-bb-submit-item-content{ width:100% !important; min-width:0 !important; overflow:hidden !important; }
  .soc-bb-submit-item-title{ margin:0 !important; font-size:21px !important; line-height:1.08 !important; letter-spacing:-.045em !important; max-width:100% !important; }
  .soc-bb-submit-item-title a{ display:block !important; max-width:100% !important; }
}
@media (max-width:380px){
  .soc-bb-submit-item{ grid-template-columns:96px minmax(0,1fr) !important; gap:12px !important; }
  .soc-bb-submit-item .thumb,
  .soc-bb-submit-item .thumb img,
  .soc-bb-submit-item .thumb .ph{ width:96px !important; max-width:96px !important; height:60px !important; }
  .soc-bb-submit-item-title{ font-size:19px !important; }
}


/* =========================================================
   SOC V44 - Mobile order + full black background fix
   - EVENT dipindah setelah LIFESTYLE via front-page.php
   - Section hitam di mobile dibuat full lebar dan full tinggi section
   ========================================================= */
@media (max-width: 767px){
  html, body{ overflow-x:hidden !important; }
  body.home .site,
  body.home .site-content,
  body.home .content-area,
  body.home .site-main,
  body.home .entry-content,
  body.home .cs-container,
  body.home .container,
  body.home .main-content,
  body.home .page-content{
    overflow:visible !important;
  }

  body.home .soc-bb-home{
    width:100% !important;
    max-width:none !important;
    padding-left:14px !important;
    padding-right:14px !important;
    overflow:visible !important;
  }

  body.home .soc-bb .soc-bb-section-video,
  body.home .soc-bb .soc-bb-section-news-soc,
  body.home .soc-bb .soc-bb-section-news-release,
  body.home .soc-bb .soc-bb-section-event,
  body.home .soc-bb .soc-bb-section-press-conference{
    display:block !important;
    position:relative !important;
    left:50% !important;
    right:auto !important;
    transform:translateX(-50%) !important;
    width:100vw !important;
    max-width:100vw !important;
    min-width:100vw !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding:36px 22px 42px !important;
    background:#000 !important;
    color:#fff !important;
    box-shadow:0 0 0 100vmax #000 !important;
    clip-path:inset(0 -100vmax) !important;
    overflow:visible !important;
    box-sizing:border-box !important;
    isolation:isolate;
  }

  body.home .soc-bb .soc-bb-section-video::before,
  body.home .soc-bb .soc-bb-section-news-soc::before,
  body.home .soc-bb .soc-bb-section-news-release::before,
  body.home .soc-bb .soc-bb-section-event::before,
  body.home .soc-bb .soc-bb-section-press-conference::before{
    content:"";
    position:absolute;
    z-index:-1;
    top:0;
    bottom:0;
    left:50%;
    width:100vw;
    transform:translateX(-50%);
    background:#000;
  }

  body.home .soc-bb .soc-bb-section-video > *,
  body.home .soc-bb .soc-bb-section-news-soc > *,
  body.home .soc-bb .soc-bb-section-news-release > *,
  body.home .soc-bb .soc-bb-section-event > *,
  body.home .soc-bb .soc-bb-section-press-conference > *{
    width:100% !important;
    max-width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    box-sizing:border-box !important;
  }

  body.home .soc-bb .soc-bb-section-video .soc-bb-section-head,
  body.home .soc-bb .soc-bb-section-news-soc .soc-bb-section-head,
  body.home .soc-bb .soc-bb-section-news-release .soc-bb-section-head,
  body.home .soc-bb .soc-bb-section-event .soc-bb-section-head,
  body.home .soc-bb .soc-bb-section-press-conference .soc-bb-section-head{
    padding-top:16px !important;
    margin-bottom:22px !important;
  }

  body.home .soc-bb .soc-bb-section-video .soc-bb-section-head:before,
  body.home .soc-bb .soc-bb-section-news-soc .soc-bb-section-head:before,
  body.home .soc-bb .soc-bb-section-news-release .soc-bb-section-head:before,
  body.home .soc-bb .soc-bb-section-event .soc-bb-section-head:before,
  body.home .soc-bb .soc-bb-section-press-conference .soc-bb-section-head:before{
    background:#fff !important;
  }

  body.home .soc-bb .soc-bb-section-video .soc-bb-video-grid,
  body.home .soc-bb .soc-bb-section-event .soc-bb-video-grid,
  body.home .soc-bb .soc-bb-section-press-conference .soc-bb-video-grid,
  body.home .soc-bb .soc-bb-section-news-soc .soc-bb-music-layout,
  body.home .soc-bb .soc-bb-section-news-release .soc-bb-music-layout{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:22px !important;
    background:#000 !important;
  }

  body.home .soc-bb .soc-bb-section-video .soc-bb-video-list,
  body.home .soc-bb .soc-bb-section-event .soc-bb-video-list,
  body.home .soc-bb .soc-bb-section-press-conference .soc-bb-video-list,
  body.home .soc-bb .soc-bb-section-news-soc .soc-bb-music-col,
  body.home .soc-bb .soc-bb-section-news-release .soc-bb-music-col{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:0 !important;
    background:#000 !important;
  }

  body.home .soc-bb .soc-bb-section-video .soc-bb-video-small,
  body.home .soc-bb .soc-bb-section-event .soc-bb-video-small,
  body.home .soc-bb .soc-bb-section-press-conference .soc-bb-video-small,
  body.home .soc-bb .soc-bb-section-news-soc .soc-bb-flow-card,
  body.home .soc-bb .soc-bb-section-news-release .soc-bb-flow-card{
    background:#000 !important;
    border-color:rgba(255,255,255,.30) !important;
  }

  body.home .soc-bb .soc-bb-section-video a,
  body.home .soc-bb .soc-bb-section-news-soc a,
  body.home .soc-bb .soc-bb-section-news-release a,
  body.home .soc-bb .soc-bb-section-event a,
  body.home .soc-bb .soc-bb-section-press-conference a,
  body.home .soc-bb .soc-bb-section-video .soc-bb-section-title,
  body.home .soc-bb .soc-bb-section-news-soc .soc-bb-section-title,
  body.home .soc-bb .soc-bb-section-news-release .soc-bb-section-title,
  body.home .soc-bb .soc-bb-section-event .soc-bb-section-title,
  body.home .soc-bb .soc-bb-section-press-conference .soc-bb-section-title{
    color:#fff !important;
  }
}


/* =========================================================
   SOC V48 - Clean Chart Strip di bawah navbar
   - Desktop: strip chart center di bawah nav, rapat seperti referensi.
   - Mobile: strip full width langsung di bawah header, tidak bikin jarak aneh.
   ========================================================= */
.soc-bb-chart-strip,
.soc-bb-chart-strip *{ box-sizing:border-box; }
.soc-bb-chart-strip{
  width:100vw !important;
  max-width:100vw !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
  padding:0 !important;
  background:#eeeeee !important;
  border-top:0 !important;
  border-bottom:1px solid rgba(0,0,0,.08) !important;
  overflow:hidden !important;
  clear:both !important;
  position:relative !important;
  z-index:4 !important;
}
.soc-bb-chart-strip-inner{
  width:100% !important;
  max-width:640px !important;
  min-height:56px !important;
  margin:0 auto !important;
  padding:0 18px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:34px !important;
}
.soc-bb-chart-strip-link{
  min-height:56px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:#111 !important;
  text-decoration:none !important;
  font-size:17px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:-.02em !important;
  white-space:nowrap !important;
}
.soc-bb-chart-strip-link:hover{ opacity:.7 !important; }
body.home .soc-bb-chart-strip + .soc-bb-home,
body.home .soc-bb-chart-strip ~ .soc-bb-home{
  padding-top:34px !important;
}
@media (min-width: 1024px){
  .soc-bb-chart-strip{
    background:#efefef !important;
  }
  .soc-bb-chart-strip-inner{
    min-height:56px !important;
    max-width:560px !important;
    gap:36px !important;
  }
  .soc-bb-chart-strip-link{
    min-height:56px !important;
    font-size:17px !important;
  }
}
@media (max-width: 767px){
  .soc-bb-chart-strip{
    background:#fff !important;
    border-bottom:1px solid rgba(0,0,0,.08) !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    -webkit-overflow-scrolling:touch !important;
  }
  .soc-bb-chart-strip-inner{
    max-width:none !important;
    min-width:max-content !important;
    min-height:72px !important;
    padding:0 36px !important;
    gap:36px !important;
    justify-content:center !important;
  }
  .soc-bb-chart-strip-link{
    min-height:72px !important;
    font-size:20px !important;
    line-height:1 !important;
    font-weight:900 !important;
  }
  body.home .soc-bb-chart-strip + .soc-bb-home,
  body.home .soc-bb-chart-strip ~ .soc-bb-home{
    padding-top:28px !important;
  }
}
@media (max-width: 390px){
  .soc-bb-chart-strip-inner{
    padding:0 24px !important;
    gap:28px !important;
  }
  .soc-bb-chart-strip-link{
    font-size:18px !important;
  }
}


/* =========================================================
   V51 — POST DEFAULT STABLE
   Artikel/posting single dikembalikan ke template parent Newsblock.
   File single.php custom dihapus agar isi artikel tidak acak-acakan.
   CSS di bawah ini hanya safety: matikan wrapper custom jika cache lama masih nyangkut.
   ========================================================= */
.soc-article-page:empty,
.soc-single-page:empty{ display:none !important; }
body.single-post .soc-article-page:not(:has(.soc-article-wrap)){
  display:none !important;
}


/* =========================================================
   V52 — Billboard-inspired single post layout + Latest News sidebar
   Scoped only to single.php .soc-article-page-v52.
   ========================================================= */
body.single-post .soc-article-page-v52,
body.single-post .soc-article-page-v52 *{ box-sizing:border-box; }
body.single-post .soc-article-page-v52{
  --soc-black:#000;
  --soc-text:#111;
  --soc-muted:#626262;
  --soc-line:#d7d7d7;
  --soc-bg:#e7e7e7;
  --soc-blue:#1f4fff;
  width:100%;
  max-width:none;
  margin:0;
  padding:0 0 64px;
  color:var(--soc-text);
  font-family:inherit;
  background:#fff;
}
body.single-post .soc-article-page-v52 a{ color:inherit; text-decoration:none; }
body.single-post .soc-article-page-v52 a:hover{ opacity:.82; text-decoration:none; }
body.single-post .soc-article-hero-block{
  width:100%;
  background:#dedede;
  padding:54px 18px 34px;
}
body.single-post .soc-article-hero-inner{
  width:100%;
  max-width:1200px;
  margin:0 auto;
}
body.single-post .soc-article-kicker-badge{
  display:inline-flex;
  align-items:center;
  padding:4px 7px;
  margin:0 0 20px;
  background:#1d4ea8;
  color:#fff !important;
  font-size:12px;
  line-height:1;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.single-post .soc-article-title{
  max-width:900px;
  margin:0 0 18px;
  font-size:50px;
  line-height:1.02;
  font-weight:900;
  letter-spacing:-.06em;
}
body.single-post .soc-article-dek{
  max-width:760px;
  margin:0 0 18px;
  color:#414141;
  font-size:20px;
  line-height:1.22;
  font-weight:400;
}
body.single-post .soc-article-meta-line{
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
  align-items:center;
  color:#111;
  font-size:11px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.03em;
  text-transform:uppercase;
}
body.single-post .soc-article-meta-line span:not(:first-child):before{
  content:"•";
  margin-right:12px;
  color:#777;
}
body.single-post .soc-article-wrap{
  width:100%;
  max-width:1200px;
  margin:0 auto;
  padding:42px 18px 0;
}
body.single-post .soc-article-layout{
  display:grid;
  grid-template-columns:minmax(0, 760px) 330px;
  gap:58px;
  align-items:start;
}
body.single-post .soc-article-main,
body.single-post .soc-article-sidebar{ min-width:0; }
body.single-post .soc-article-featured,
body.single-post .soc-article-video-hero{
  margin:0 0 34px;
}
body.single-post .soc-article-featured img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:16/9;
  object-fit:cover;
}
body.single-post .soc-article-body{
  display:grid;
  grid-template-columns:70px minmax(0,1fr);
  gap:26px;
  align-items:start;
}
body.single-post .soc-article-share-rail{
  position:sticky;
  top:108px;
  display:flex;
  flex-direction:column;
  gap:18px;
  align-items:center;
}
body.single-post .soc-article-share-rail a{
  width:34px;
  height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:1px solid transparent;
  color:#000;
  font-size:22px;
  line-height:1;
  font-weight:800;
}
body.single-post .soc-article-content{
  min-width:0;
  color:#111;
  font-size:18px;
  line-height:1.72;
}
body.single-post .soc-article-content p{ margin:0 0 1.35em; }
body.single-post .soc-article-content h2,
body.single-post .soc-article-content h3{
  margin:1.45em 0 .7em;
  line-height:1.08;
  font-weight:900;
  letter-spacing:-.045em;
}
body.single-post .soc-article-content img,
body.single-post .soc-article-content iframe{ max-width:100%; }
body.single-post .soc-article-after{
  width:calc(100% - 96px);
  margin:34px 0 0 96px;
}
body.single-post .soc-article-tags{
  display:flex;
  flex-wrap:wrap;
  gap:10px 12px;
  padding:0 0 30px;
  border-bottom:1px solid var(--soc-line);
}
body.single-post .soc-article-tag{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 15px;
  border-radius:999px;
  background:#aeb2b7;
  color:#fff !important;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.28);
  font-size:13px;
  line-height:1;
  font-weight:900;
  text-transform:capitalize;
}
body.single-post .soc-article-author-box{
  display:grid;
  grid-template-columns:88px minmax(0,1fr);
  gap:22px;
  align-items:center;
  padding:34px 0;
  border-bottom:1px solid var(--soc-line);
}
body.single-post .soc-article-author-avatar img,
body.single-post .soc-article-author-avatar .avatar{
  display:block;
  width:88px;
  height:88px;
  border-radius:50%;
  object-fit:cover;
}
body.single-post .soc-article-author-label{
  margin:0 0 9px;
  font-size:13px;
  line-height:1;
  font-weight:900;
}
body.single-post .soc-article-author-name{
  font-size:24px;
  line-height:1.05;
  font-weight:900;
  letter-spacing:-.04em;
}
body.single-post .soc-article-comment-button{
  display:flex;
  width:max-content;
  min-width:250px;
  min-height:54px;
  align-items:center;
  justify-content:center;
  margin:30px auto 0;
  padding:10px 32px;
  border:2px solid #111;
  border-radius:999px;
  color:#111 !important;
  background:#fff;
  font-size:15px;
  line-height:1;
  font-weight:900;
}
body.single-post .soc-article-comments-anchor{ height:1px; }
body.single-post .soc-article-sidebar-box{
  position:sticky;
  top:96px;
  padding-top:0;
}
body.single-post .soc-article-sidebar-title{
  position:relative;
  margin:0 0 24px;
  padding-top:18px;
  font-size:30px;
  line-height:1;
  font-weight:900;
  letter-spacing:-.055em;
}
body.single-post .soc-article-sidebar-title:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:6px;
  background:#000;
}
body.single-post .soc-article-side-item{
  margin:0 0 34px;
  padding:0 0 26px;
  border-bottom:1px solid rgba(0,0,0,.08);
}
body.single-post .soc-article-side-item:last-child{ margin-bottom:0; border-bottom:0; }
body.single-post .soc-article-side-thumb{
  display:block;
  overflow:hidden;
  background:#ddd;
  margin:0 0 14px;
}
body.single-post .soc-article-side-thumb img{
  display:block;
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
}
body.single-post .soc-article-side-ph{
  display:block;
  width:100%;
  aspect-ratio:16/10;
  background:linear-gradient(135deg,#d7d7d7,#f7f7f7);
}
body.single-post .soc-article-side-meta{
  display:flex;
  flex-wrap:wrap;
  gap:4px 8px;
  align-items:center;
  margin:0 0 9px;
  color:#555;
  font-size:10px;
  line-height:1.1;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
}
body.single-post .soc-article-side-kicker{
  position:relative;
  display:inline-flex;
  padding-bottom:9px;
  margin-right:4px;
  color:#000 !important;
  font-size:11px;
  line-height:1;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
body.single-post .soc-article-side-kicker:after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:62px;
  height:3px;
  background:var(--soc-blue);
}
body.single-post .soc-article-side-title{
  margin:0;
  font-size:22px;
  line-height:1.12;
  font-weight:900;
  letter-spacing:-.04em;
}
@media (max-width:1024px){
  body.single-post .soc-article-layout{ grid-template-columns:1fr; gap:42px; }
  body.single-post .soc-article-sidebar-box{ position:static; }
  body.single-post .soc-article-title{ font-size:44px; }
}
@media (max-width:767px){
  body.single-post .soc-article-hero-block{ padding:36px 18px 28px; }
  body.single-post .soc-article-title{ font-size:34px; line-height:1.04; }
  body.single-post .soc-article-dek{ font-size:17px; line-height:1.32; }
  body.single-post .soc-article-wrap{ padding:28px 18px 0; }
  body.single-post .soc-article-body{ display:block; }
  body.single-post .soc-article-share-rail{ display:none; }
  body.single-post .soc-article-content{ font-size:17px; line-height:1.75; }
  body.single-post .soc-article-after{ width:100%; margin:26px 0 0; }
  body.single-post .soc-article-tags{ padding-bottom:24px; }
  body.single-post .soc-article-author-box{ grid-template-columns:72px minmax(0,1fr); gap:18px; padding:28px 0; }
  body.single-post .soc-article-author-avatar img,
  body.single-post .soc-article-author-avatar .avatar{ width:72px; height:72px; }
  body.single-post .soc-article-author-name{ font-size:22px; }
  body.single-post .soc-article-comment-button{ min-width:220px; min-height:52px; }
  body.single-post .soc-article-sidebar-title{ font-size:27px; }
  body.single-post .soc-article-side-item{
    display:grid;
    grid-template-columns:112px minmax(0,1fr);
    gap:14px;
    align-items:start;
  }
  body.single-post .soc-article-side-thumb{ margin:0; }
  body.single-post .soc-article-side-thumb img,
  body.single-post .soc-article-side-ph{ aspect-ratio:1/1; }
  body.single-post .soc-article-side-title{ font-size:18px; }
}

/* =========================================================
   V53 — Single post layout stabilizer.
   Membetulkan halaman artikel agar full-width, tidak gepeng,
   dan sidebar Latest News rapi seperti layout editorial.
   ========================================================= */
body.single-post .soc-article-page-v53,
body.single-post .soc-article-page-v53 *{ box-sizing:border-box; }
body.single-post .soc-article-page-v53{
  --soc-black:#000;
  --soc-text:#111;
  --soc-muted:#666;
  --soc-bg:#e7e7e7;
  --soc-line:#d8d8d8;
  --soc-blue:#1f55d6;
  position:relative;
  width:100vw !important;
  max-width:100vw !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  padding:0 0 64px !important;
  background:#fff;
  color:var(--soc-text);
  overflow-x:hidden;
}
body.single-post .soc-article-page-v53 a{ color:inherit; text-decoration:none; }
body.single-post .soc-article-page-v53 a:hover{ opacity:.82; text-decoration:none; }
body.single-post .soc-article-top-band{
  width:100%;
  background:var(--soc-bg);
  padding:54px 20px 46px;
}
body.single-post .soc-article-top-grid,
body.single-post .soc-article-content-grid{
  width:100%;
  max-width:1220px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0, 800px) 330px;
  gap:64px;
  align-items:start;
}
body.single-post .soc-article-hero-copy{ min-width:0; }
body.single-post .soc-article-kicker-badge{
  display:inline-flex;
  align-items:center;
  padding:4px 7px;
  margin:0 0 20px;
  background:#1d4ea8;
  color:#fff !important;
  font-size:12px;
  line-height:1;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.single-post .soc-article-title{
  max-width:850px;
  margin:0 0 18px;
  font-size:52px;
  line-height:1.02;
  font-weight:900;
  letter-spacing:-.06em;
}
body.single-post .soc-article-dek{
  max-width:760px;
  margin:0 0 18px;
  color:#414141;
  font-size:20px;
  line-height:1.24;
  font-weight:400;
}
body.single-post .soc-article-meta-line{
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
  align-items:center;
  color:#111;
  font-size:11px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.03em;
  text-transform:uppercase;
}
body.single-post .soc-article-meta-line span:not(:first-child):before{
  content:"•";
  margin-right:12px;
  color:#777;
}
body.single-post .soc-article-content-grid{
  padding:42px 20px 0;
}
body.single-post .soc-article-main,
body.single-post .soc-article-latest{ min-width:0; }
body.single-post .soc-article-featured,
body.single-post .soc-article-video-hero{ margin:0 0 36px; }
body.single-post .soc-article-featured img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:16/9;
  object-fit:cover;
}
body.single-post .soc-article-video-hero iframe,
body.single-post .soc-article-video-hero video{
  display:block;
  width:100%;
  aspect-ratio:16/9;
  height:auto;
  background:#000;
}
body.single-post .soc-article-body-row{
  display:grid;
  grid-template-columns:58px minmax(0,1fr);
  gap:30px;
  align-items:start;
}
body.single-post .soc-article-share-rail{
  position:sticky;
  top:108px;
  display:flex;
  flex-direction:column;
  gap:18px;
  align-items:center;
}
body.single-post .soc-article-share-rail a{
  width:34px;
  height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#000;
  font-size:22px;
  line-height:1;
  font-weight:800;
}
body.single-post .soc-article-content{
  min-width:0;
  max-width:660px;
  color:#111;
  font-size:18px;
  line-height:1.72;
}
body.single-post .soc-article-content p{ margin:0 0 1.35em; }
body.single-post .soc-article-content h2,
body.single-post .soc-article-content h3{
  margin:1.45em 0 .7em;
  line-height:1.08;
  font-weight:900;
  letter-spacing:-.045em;
}
body.single-post .soc-article-content img,
body.single-post .soc-article-content iframe{ max-width:100%; }
body.single-post .soc-article-after{
  width:calc(100% - 88px);
  max-width:660px;
  margin:34px 0 0 88px;
}
body.single-post .soc-article-tags{
  display:flex;
  flex-wrap:wrap;
  gap:10px 12px;
  padding:0 0 30px;
  border-bottom:1px solid var(--soc-line);
}
body.single-post .soc-article-tag{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 15px;
  border-radius:999px;
  background:#aeb2b7;
  color:#fff !important;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.28);
  font-size:13px;
  line-height:1;
  font-weight:900;
  text-transform:capitalize;
}
body.single-post .soc-article-author-box{
  display:grid;
  grid-template-columns:88px minmax(0,1fr);
  gap:22px;
  align-items:center;
  padding:34px 0;
  border-bottom:1px solid var(--soc-line);
}
body.single-post .soc-article-author-avatar img,
body.single-post .soc-article-author-avatar .avatar{
  display:block;
  width:88px;
  height:88px;
  border-radius:50%;
  object-fit:cover;
}
body.single-post .soc-article-author-label{
  margin:0 0 9px;
  font-size:13px;
  line-height:1;
  font-weight:900;
}
body.single-post .soc-article-author-name{
  font-size:24px;
  line-height:1.05;
  font-weight:900;
  letter-spacing:-.04em;
}
body.single-post .soc-article-comment-button{
  display:flex;
  width:max-content;
  min-width:250px;
  min-height:54px;
  align-items:center;
  justify-content:center;
  margin:30px auto 0;
  padding:10px 32px;
  border:2px solid #111;
  border-radius:999px;
  color:#111 !important;
  background:#fff;
  font-size:15px;
  line-height:1;
  font-weight:900;
}
body.single-post .soc-article-comments-anchor{ height:1px; }
body.single-post .soc-article-latest-top{ display:block; }
body.single-post .soc-article-latest-bottom{ display:none; }
body.single-post .soc-article-sidebar-title{
  position:relative;
  margin:0 0 24px;
  padding-top:18px;
  font-size:30px;
  line-height:1;
  font-weight:900;
  letter-spacing:-.055em;
}
body.single-post .soc-article-sidebar-title:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:6px;
  background:#000;
}
body.single-post .soc-article-side-item{
  margin:0 0 28px;
  padding:0 0 24px;
  border-bottom:1px solid rgba(0,0,0,.10);
}
body.single-post .soc-article-side-item:last-child{ margin-bottom:0; border-bottom:0; }
body.single-post .soc-article-side-thumb{
  display:block;
  overflow:hidden;
  background:#ddd;
  margin:0 0 14px;
}
body.single-post .soc-article-side-thumb img{
  display:block;
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
}
body.single-post .soc-article-side-ph{
  display:block;
  width:100%;
  aspect-ratio:16/10;
  background:linear-gradient(135deg,#d7d7d7,#f7f7f7);
}
body.single-post .soc-article-side-meta{
  display:flex;
  flex-wrap:wrap;
  gap:4px 8px;
  align-items:center;
  margin:0 0 9px;
  color:#555;
  font-size:10px;
  line-height:1.1;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
}
body.single-post .soc-article-side-kicker{
  position:relative;
  display:inline-flex;
  padding-bottom:9px;
  margin-right:4px;
  color:#000 !important;
  font-size:11px;
  line-height:1;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
body.single-post .soc-article-side-kicker:after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:62px;
  height:3px;
  background:var(--soc-blue);
}
body.single-post .soc-article-side-title{
  margin:0;
  font-size:22px;
  line-height:1.12;
  font-weight:900;
  letter-spacing:-.04em;
}
@media (max-width:1024px){
  body.single-post .soc-article-top-grid,
  body.single-post .soc-article-content-grid{ grid-template-columns:1fr; gap:40px; max-width:760px; }
  body.single-post .soc-article-title{ font-size:44px; }
  body.single-post .soc-article-latest-top{ display:none; }
  body.single-post .soc-article-latest-bottom{ display:block; }
}
@media (max-width:767px){
  body.single-post .soc-article-page-v53{ padding-bottom:48px !important; }
  body.single-post .soc-article-top-band{ padding:34px 18px 28px; }
  body.single-post .soc-article-title{ font-size:34px; line-height:1.04; letter-spacing:-.055em; }
  body.single-post .soc-article-dek{ font-size:17px; line-height:1.32; }
  body.single-post .soc-article-meta-line{ font-size:10px; }
  body.single-post .soc-article-content-grid{ padding:28px 18px 0; gap:34px; }
  body.single-post .soc-article-featured,
  body.single-post .soc-article-video-hero{ margin-bottom:28px; }
  body.single-post .soc-article-body-row{ display:block; }
  body.single-post .soc-article-share-rail{ display:none; }
  body.single-post .soc-article-content{ max-width:none; font-size:17px; line-height:1.75; }
  body.single-post .soc-article-after{ width:100%; max-width:none; margin:26px 0 0; }
  body.single-post .soc-article-tags{ padding-bottom:24px; }
  body.single-post .soc-article-author-box{ grid-template-columns:72px minmax(0,1fr); gap:18px; padding:28px 0; }
  body.single-post .soc-article-author-avatar img,
  body.single-post .soc-article-author-avatar .avatar{ width:72px; height:72px; }
  body.single-post .soc-article-author-name{ font-size:22px; }
  body.single-post .soc-article-comment-button{ min-width:220px; min-height:52px; }
  body.single-post .soc-article-sidebar-title{ font-size:27px; }
  body.single-post .soc-article-side-item{
    display:grid;
    grid-template-columns:112px minmax(0,1fr);
    gap:14px;
    align-items:start;
    margin-bottom:22px;
    padding-bottom:22px;
  }
  body.single-post .soc-article-side-thumb{ margin:0; }
  body.single-post .soc-article-side-thumb img,
  body.single-post .soc-article-side-ph{ aspect-ratio:1/1; }
  body.single-post .soc-article-side-meta{ grid-column:2; margin-top:-2px; }
  body.single-post .soc-article-side-title{ grid-column:2; font-size:18px; }
}

/* =========================================================
   SOC V54 — Single post stable Billboard-style layout
   ========================================================= */
body.single .soc-single-v54,
body.single-post .soc-single-v54{
  --soc54-bg:#e5e5e5;
  --soc54-text:#111;
  --soc54-muted:#555;
  --soc54-line:rgba(0,0,0,.14);
  --soc54-blue:#2454d8;
  background:var(--soc54-bg);
  color:var(--soc54-text);
  width:100%;
  margin:0;
  padding:0 0 76px;
  font-family:inherit;
  overflow:hidden;
}
body.single .soc-single-v54 *,
body.single-post .soc-single-v54 *{ box-sizing:border-box; }
body.single .soc-single-v54 a,
body.single-post .soc-single-v54 a{ color:inherit; text-decoration:none; }
body.single .soc-single-v54 a:hover,
body.single-post .soc-single-v54 a:hover{ opacity:.78; text-decoration:none; }
body.single .soc-v54-wrap,
body.single-post .soc-v54-wrap{
  width:min(1180px, calc(100% - 48px));
  margin:0 auto;
}
body.single .soc-v54-hero-band,
body.single-post .soc-v54-hero-band{
  background:#d9d9d9;
  padding:56px 0 44px;
}
body.single .soc-v54-hero-copy,
body.single-post .soc-v54-hero-copy{
  max-width:850px;
}
body.single .soc-v54-kicker,
body.single-post .soc-v54-kicker{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  margin:0 0 24px;
  padding:3px 7px;
  background:var(--soc54-blue);
  color:#fff !important;
  font-size:12px;
  line-height:1;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
}
body.single .soc-v54-title,
body.single-post .soc-v54-title{
  max-width:900px;
  margin:0;
  color:#0b0b0b;
  font-size:clamp(42px, 4.55vw, 72px);
  line-height:.96;
  font-weight:900;
  letter-spacing:-.07em;
}
body.single .soc-v54-dek,
body.single-post .soc-v54-dek{
  max-width:760px;
  margin:22px 0 0;
  color:#343434;
  font-size:20px;
  line-height:1.28;
  font-weight:400;
  letter-spacing:-.02em;
}
body.single .soc-v54-meta,
body.single-post .soc-v54-meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 14px;
  margin-top:26px;
  color:#111;
  font-size:11px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.055em;
  text-transform:uppercase;
}
body.single .soc-v54-meta span + span:before,
body.single-post .soc-v54-meta span + span:before{
  content:"";
  display:inline-block;
  width:4px;
  height:4px;
  margin:0 14px 2px 0;
  border-radius:50%;
  background:#111;
}
body.single .soc-v54-layout,
body.single-post .soc-v54-layout{
  display:grid;
  grid-template-columns:minmax(0, 780px) minmax(290px, 330px);
  gap:56px;
  align-items:start;
  padding-top:48px;
}
body.single .soc-v54-main,
body.single-post .soc-v54-main{
  min-width:0;
}
body.single .soc-v54-featured,
body.single-post .soc-v54-featured{
  margin:0 0 38px;
  width:100%;
  overflow:hidden;
  background:#d2d2d2;
}
body.single .soc-v54-featured img,
body.single-post .soc-v54-featured img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:16/9;
  object-fit:cover;
}
body.single .soc-v54-video-hero,
body.single-post .soc-v54-video-hero{
  margin:0 0 38px;
  background:#000;
}
body.single .soc-v54-video-hero .soc-video-player,
body.single-post .soc-v54-video-hero .soc-video-player{ aspect-ratio:16/9; }
body.single .soc-v54-video-hero iframe,
body.single-post .soc-v54-video-hero iframe{
  width:100%;
  height:100%;
  border:0;
  display:block;
}
body.single .soc-v54-body-row,
body.single-post .soc-v54-body-row{
  display:grid;
  grid-template-columns:62px minmax(0, 1fr);
  gap:28px;
  align-items:start;
}
body.single .soc-v54-share,
body.single-post .soc-v54-share{
  position:sticky;
  top:96px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
  padding-top:2px;
}
body.single .soc-v54-share a,
body.single-post .soc-v54-share a{
  display:flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border-radius:50%;
  color:#000 !important;
  font-size:24px;
  line-height:1;
  font-weight:900;
}
body.single .soc-v54-content,
body.single-post .soc-v54-content{
  min-width:0;
  color:#111;
  font-size:19px;
  line-height:1.76;
  font-weight:400;
  letter-spacing:-.01em;
}
body.single .soc-v54-content p,
body.single-post .soc-v54-content p{ margin:0 0 1.35em; }
body.single .soc-v54-content h2,
body.single .soc-v54-content h3,
body.single-post .soc-v54-content h2,
body.single-post .soc-v54-content h3{
  margin:1.5em 0 .7em;
  line-height:1.08;
  font-weight:900;
  letter-spacing:-.045em;
}
body.single .soc-v54-content img,
body.single .soc-v54-content iframe,
body.single-post .soc-v54-content img,
body.single-post .soc-v54-content iframe{
  max-width:100%;
  height:auto;
}
body.single .soc-v54-content iframe,
body.single-post .soc-v54-content iframe{
  width:100%;
  aspect-ratio:16/9;
}
body.single .soc-v54-after,
body.single-post .soc-v54-after{
  width:calc(100% - 90px);
  margin:36px 0 0 90px;
}
body.single .soc-v54-tags,
body.single-post .soc-v54-tags{
  display:flex;
  flex-wrap:wrap;
  gap:10px 12px;
  padding:0 0 30px;
  border-bottom:1px solid var(--soc54-line);
}
body.single .soc-v54-tag,
body.single-post .soc-v54-tag{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:6px 16px;
  border-radius:999px;
  background:#aeb2b7;
  color:#fff !important;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.28);
  font-size:13px;
  line-height:1;
  font-weight:900;
  text-transform:capitalize;
}
body.single .soc-v54-author-box,
body.single-post .soc-v54-author-box{
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  gap:22px;
  align-items:center;
  padding:34px 0;
  border-bottom:1px solid var(--soc54-line);
}
body.single .soc-v54-author-avatar img,
body.single .soc-v54-author-avatar .avatar,
body.single-post .soc-v54-author-avatar img,
body.single-post .soc-v54-author-avatar .avatar{
  display:block;
  width:92px;
  height:92px;
  border-radius:50%;
  object-fit:cover;
}
body.single .soc-v54-author-label,
body.single-post .soc-v54-author-label{
  margin:0 0 8px;
  font-size:13px;
  line-height:1;
  font-weight:900;
}
body.single .soc-v54-author-name,
body.single-post .soc-v54-author-name{
  font-size:26px;
  line-height:1.05;
  font-weight:900;
  letter-spacing:-.045em;
}
body.single .soc-v54-comment-button,
body.single-post .soc-v54-comment-button{
  display:flex;
  width:max-content;
  min-width:250px;
  min-height:54px;
  align-items:center;
  justify-content:center;
  margin:30px auto 0;
  padding:10px 32px;
  border:2px solid #111;
  border-radius:999px;
  color:#111 !important;
  background:#fff;
  font-size:15px;
  line-height:1;
  font-weight:900;
}
body.single .soc-v54-comments-anchor,
body.single-post .soc-v54-comments-anchor{ height:1px; }
body.single .soc-v54-sidebar,
body.single-post .soc-v54-sidebar{
  min-width:0;
  position:sticky;
  top:84px;
}
body.single .soc-v54-sidebar-title,
body.single-post .soc-v54-sidebar-title{
  position:relative;
  margin:0 0 25px;
  padding-top:20px;
  color:#111;
  font-size:32px;
  line-height:1;
  font-weight:900;
  letter-spacing:-.055em;
}
body.single .soc-v54-sidebar-title:before,
body.single-post .soc-v54-sidebar-title:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:6px;
  background:#000;
}
body.single .soc-v54-side-card,
body.single-post .soc-v54-side-card{
  margin:0 0 28px;
  padding:0 0 26px;
  border-bottom:1px solid var(--soc54-line);
}
body.single .soc-v54-side-card:last-child,
body.single-post .soc-v54-side-card:last-child{ border-bottom:0; }
body.single .soc-v54-side-thumb,
body.single-post .soc-v54-side-thumb{
  display:block;
  overflow:hidden;
  width:100%;
  margin:0 0 14px;
  background:#d7d7d7;
}
body.single .soc-v54-side-thumb img,
body.single-post .soc-v54-side-thumb img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:16/9;
  object-fit:cover;
}
body.single .soc-v54-side-placeholder,
body.single-post .soc-v54-side-placeholder{
  display:block;
  width:100%;
  aspect-ratio:16/9;
  background:linear-gradient(135deg,#d7d7d7,#f6f6f6);
}
body.single .soc-v54-side-meta,
body.single-post .soc-v54-side-meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px 10px;
  margin:0 0 10px;
  color:#555;
  font-size:11px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.055em;
  text-transform:uppercase;
}
body.single .soc-v54-side-kicker,
body.single-post .soc-v54-side-kicker{
  position:relative;
  display:inline-block;
  color:#111 !important;
  padding-bottom:8px;
  font-weight:900;
}
body.single .soc-v54-side-kicker:after,
body.single-post .soc-v54-side-kicker:after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:64px;
  height:3px;
  background:#2454d8;
}
body.single .soc-v54-side-title,
body.single-post .soc-v54-side-title{
  margin:0;
  color:#111;
  font-size:22px;
  line-height:1.08;
  font-weight:900;
  letter-spacing:-.045em;
}

@media (max-width: 1024px){
  body.single .soc-v54-layout,
  body.single-post .soc-v54-layout{
    grid-template-columns:minmax(0, 1fr);
    gap:46px;
  }
  body.single .soc-v54-sidebar,
  body.single-post .soc-v54-sidebar{
    position:static;
    max-width:760px;
  }
  body.single .soc-v54-side-card,
  body.single-post .soc-v54-side-card{
    display:grid;
    grid-template-columns:210px minmax(0,1fr);
    gap:18px 22px;
    align-items:start;
  }
  body.single .soc-v54-side-thumb,
  body.single-post .soc-v54-side-thumb{
    grid-row:1 / span 2;
    margin:0;
  }
}
@media (max-width: 767px){
  body.single .soc-single-v54,
  body.single-post .soc-single-v54{ padding-bottom:52px; }
  body.single .soc-v54-wrap,
  body.single-post .soc-v54-wrap{
    width:100%;
    padding-left:22px;
    padding-right:22px;
  }
  body.single .soc-v54-hero-band,
  body.single-post .soc-v54-hero-band{
    padding:38px 0 36px;
  }
  body.single .soc-v54-title,
  body.single-post .soc-v54-title{
    font-size:clamp(34px, 10.5vw, 46px);
    line-height:.98;
    letter-spacing:-.075em;
  }
  body.single .soc-v54-dek,
  body.single-post .soc-v54-dek{
    font-size:17px;
    line-height:1.33;
  }
  body.single .soc-v54-layout,
  body.single-post .soc-v54-layout{
    padding-top:34px;
    gap:40px;
  }
  body.single .soc-v54-featured,
  body.single-post .soc-v54-featured,
  body.single .soc-v54-video-hero,
  body.single-post .soc-v54-video-hero{
    margin-bottom:28px;
  }
  body.single .soc-v54-body-row,
  body.single-post .soc-v54-body-row{
    display:block;
  }
  body.single .soc-v54-share,
  body.single-post .soc-v54-share{
    position:static;
    flex-direction:row;
    justify-content:flex-start;
    gap:16px;
    margin:0 0 20px;
  }
  body.single .soc-v54-content,
  body.single-post .soc-v54-content{
    font-size:18px;
    line-height:1.72;
  }
  body.single .soc-v54-after,
  body.single-post .soc-v54-after{
    width:100%;
    margin:30px 0 0;
  }
  body.single .soc-v54-author-box,
  body.single-post .soc-v54-author-box{
    grid-template-columns:82px minmax(0,1fr);
    gap:18px;
  }
  body.single .soc-v54-author-avatar img,
  body.single .soc-v54-author-avatar .avatar,
  body.single-post .soc-v54-author-avatar img,
  body.single-post .soc-v54-author-avatar .avatar{
    width:82px;
    height:82px;
  }
  body.single .soc-v54-comment-button,
  body.single-post .soc-v54-comment-button{
    width:100%;
    min-width:0;
  }
  body.single .soc-v54-sidebar,
  body.single-post .soc-v54-sidebar{
    max-width:none;
  }
  body.single .soc-v54-side-card,
  body.single-post .soc-v54-side-card{
    display:grid;
    grid-template-columns:118px minmax(0,1fr);
    gap:0 16px;
    padding-bottom:22px;
  }
  body.single .soc-v54-side-thumb,
  body.single-post .soc-v54-side-thumb{
    grid-row:1 / span 2;
  }
  body.single .soc-v54-side-title,
  body.single-post .soc-v54-side-title{
    font-size:20px;
  }
}

/* =========================================================
   V55 — Stable Billboard-like single post template
   Scope only .soc-post-v55. Header/footer/homepage untouched.
   ========================================================= */
.soc-post-v55,
.soc-post-v55 *{ box-sizing:border-box; }
.soc-post-v55{ --soc-black:#000; --soc-text:#111; --soc-muted:#666; --soc-gray:#d9d9d9; --soc-line:#dadada; --soc-blue:#1f50ff; color:var(--soc-text); font-family:inherit; }
.soc-post-v55 a{ color:inherit; text-decoration:none; }
.soc-post-v55 a:hover{ opacity:.82; text-decoration:none; }
.soc-post-v55 img{ max-width:100%; height:auto; display:block; }
.soc-post-v55-wrap{ width:min(1180px, calc(100% - 44px)); margin:0 auto; }
.soc-post-v55-hero{ background:var(--soc-gray); padding:54px 0 46px; margin:0 0 36px; }
.soc-post-v55-kicker{ display:inline-block; margin:0 0 18px; padding:6px 8px; background:#2456ad; color:#fff !important; font-size:12px; line-height:1; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.soc-post-v55-title{ max-width:900px; margin:0 0 16px; font-size:56px; line-height:1.01; font-weight:900; letter-spacing:-.06em; }
.soc-post-v55-dek{ max-width:920px; margin:0 0 18px; color:#333; font-size:22px; line-height:1.18; font-weight:400; letter-spacing:-.025em; }
.soc-post-v55-meta{ display:flex; flex-wrap:wrap; gap:8px 12px; align-items:center; color:#111; font-size:11px; line-height:1.3; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.soc-post-v55-meta span + span:before{ content:"•"; margin-right:12px; color:#666; }
.soc-post-v55-grid{ display:grid; grid-template-columns:minmax(0,760px) 320px; gap:58px; align-items:start; padding-bottom:70px; }
.soc-post-v55-main{ min-width:0; }
.soc-post-v55-featured{ margin:0 0 34px; }
.soc-post-v55-featured img{ width:100%; aspect-ratio:16/9; object-fit:cover; }
.soc-post-v55-video-hero{ margin:0 0 34px; background:#000; }
.soc-post-v55-bodyrow{ display:grid; grid-template-columns:58px minmax(0,1fr); gap:24px; align-items:start; }
.soc-post-v55-share{ display:flex; flex-direction:column; gap:18px; align-items:center; position:sticky; top:110px; padding-top:4px; }
.soc-post-v55-share a{ width:34px; height:34px; display:flex; align-items:center; justify-content:center; border-radius:50%; color:#000; font-size:20px; line-height:1; font-weight:900; }
.soc-post-v55-content{ min-width:0; max-width:680px; font-size:18px; line-height:1.76; color:#111; overflow-wrap:break-word; }
.soc-post-v55-content p{ margin:0 0 1.35em; }
.soc-post-v55-content h2,
.soc-post-v55-content h3{ margin:1.5em 0 .7em; line-height:1.12; font-weight:900; letter-spacing:-.04em; }
.soc-post-v55-content iframe,
.soc-post-v55-content img{ max-width:100%; }
.soc-post-v55-content .wp-block-image{ margin:2em 0; }
.soc-post-v55-content > *:last-child{ margin-bottom:0 !important; }
.soc-post-v55-after{ max-width:680px; margin:32px 0 0 82px; padding-top:22px; border-top:1px solid var(--soc-line); }
.soc-post-v55-tags{ display:flex; flex-wrap:wrap; gap:12px; margin:0 0 32px; }
.soc-post-v55-tag{ display:inline-flex; align-items:center; min-height:32px; padding:7px 16px; border-radius:999px; background:#a7adb4; color:#fff !important; box-shadow:inset 0 0 0 2px rgba(255,255,255,.45); font-size:13px; line-height:1; font-weight:900; text-transform:capitalize; }
.soc-post-v55-author{ display:grid; grid-template-columns:92px minmax(0,1fr); gap:24px; align-items:center; padding:26px 0; border-top:1px solid var(--soc-line); border-bottom:1px solid var(--soc-line); }
.soc-post-v55-author-avatar img,
.soc-post-v55-author-avatar .avatar{ width:92px; height:92px; border-radius:50%; object-fit:cover; }
.soc-post-v55-author-label{ margin:0 0 8px; font-size:13px; line-height:1; font-weight:900; }
.soc-post-v55-author-name{ font-size:24px; line-height:1.08; font-weight:900; letter-spacing:-.04em; }
.soc-post-v55-comments{ width:max-content; min-width:260px; max-width:100%; margin:30px auto 0; padding:16px 32px; border:2px solid #000; border-radius:999px; display:flex; align-items:center; justify-content:center; font-size:16px; line-height:1; font-weight:900; }
.soc-post-v55-comments-anchor{ display:block; height:1px; }
.soc-post-v55-sidebar{ min-width:0; }
.soc-post-v55-sidebar-title{ position:relative; margin:0 0 24px; padding-top:20px; font-size:28px; line-height:1; font-weight:900; letter-spacing:-.055em; }
.soc-post-v55-sidebar-title:before{ content:""; position:absolute; left:0; top:0; width:100%; height:6px; background:#000; }
.soc-post-v55-side-card{ margin:0 0 34px; padding:0 0 30px; border-bottom:1px solid #e4e4e4; }
.soc-post-v55-side-card:last-child{ border-bottom:0; padding-bottom:0; margin-bottom:0; }
.soc-post-v55-side-thumb{ display:block; overflow:hidden; background:#ddd; margin:0 0 14px; }
.soc-post-v55-side-thumb img,
.soc-post-v55-side-ph{ width:100%; aspect-ratio:16/10; object-fit:cover; display:block; background:linear-gradient(135deg,#ddd,#f4f4f4); }
.soc-post-v55-side-meta{ display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin:0 0 12px; color:#666; font-size:10px; line-height:1.3; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.soc-post-v55-side-kicker{ position:relative; padding-bottom:10px; color:#111 !important; letter-spacing:.16em; }
.soc-post-v55-side-kicker:after{ content:""; position:absolute; left:0; bottom:0; width:62px; height:3px; background:var(--soc-blue); }
.soc-post-v55-side-title{ margin:0; font-size:22px; line-height:1.12; font-weight:900; letter-spacing:-.045em; }
.soc-post-v55-video .soc-post-v55-hero{ background:#000; color:#fff; margin-bottom:0; }
.soc-post-v55-video .soc-post-v55-dek,
.soc-post-v55-video .soc-post-v55-meta{ color:rgba(255,255,255,.74); }
.soc-post-v55-video .soc-post-v55-kicker{ background:#2456ad; color:#fff !important; }

@media (max-width:1024px){
  .soc-post-v55-wrap{ width:min(100% - 32px, 900px); }
  .soc-post-v55-grid{ grid-template-columns:1fr; gap:42px; }
  .soc-post-v55-sidebar{ max-width:680px; margin-left:82px; }
  .soc-post-v55-title{ font-size:46px; }
}
@media (max-width:767px){
  .soc-post-v55-wrap{ width:calc(100% - 32px); }
  .soc-post-v55-hero{ padding:34px 0 30px; margin-bottom:28px; }
  .soc-post-v55-title{ font-size:36px; line-height:1.04; letter-spacing:-.055em; }
  .soc-post-v55-dek{ font-size:18px; line-height:1.3; }
  .soc-post-v55-meta{ font-size:10px; gap:6px 9px; }
  .soc-post-v55-meta span + span:before{ margin-right:9px; }
  .soc-post-v55-grid{ padding-bottom:46px; }
  .soc-post-v55-bodyrow{ display:block; }
  .soc-post-v55-share{ position:static; flex-direction:row; justify-content:flex-start; gap:12px; margin:0 0 18px; }
  .soc-post-v55-share a{ width:30px; height:30px; font-size:18px; }
  .soc-post-v55-content{ max-width:100%; font-size:17px; line-height:1.76; }
  .soc-post-v55-after{ max-width:100%; margin:26px 0 0; padding-top:20px; }
  .soc-post-v55-tags{ gap:10px; margin-bottom:24px; }
  .soc-post-v55-tag{ font-size:12px; min-height:30px; padding:7px 14px; }
  .soc-post-v55-author{ grid-template-columns:74px minmax(0,1fr); gap:18px; padding:22px 0; }
  .soc-post-v55-author-avatar img,
  .soc-post-v55-author-avatar .avatar{ width:74px; height:74px; }
  .soc-post-v55-author-name{ font-size:22px; }
  .soc-post-v55-comments{ min-width:220px; padding:14px 24px; font-size:15px; }
  .soc-post-v55-sidebar{ max-width:100%; margin-left:0; }
  .soc-post-v55-sidebar-title{ font-size:26px; }
  .soc-post-v55-side-card{ display:grid; grid-template-columns:112px minmax(0,1fr); gap:14px; align-items:start; margin-bottom:22px; padding-bottom:22px; }
  .soc-post-v55-side-thumb{ margin:0; }
  .soc-post-v55-side-thumb img,
  .soc-post-v55-side-ph{ aspect-ratio:1/1; }
  .soc-post-v55-side-meta{ grid-column:2; grid-row:1; margin-top:0; margin-bottom:8px; }
  .soc-post-v55-side-title{ grid-column:2; grid-row:1; margin-top:26px; font-size:19px; }
}

/* =========================================================
   V56 — Single post final polish from video reference
   Keep homepage/header/footer untouched; only stabilize single posts.
   ========================================================= */
body.single .soc-post-v55,
body.single-post .soc-post-v55{
  width:100%;
  overflow-x:hidden;
  background:#fff;
}
body.single .soc-post-v55-wrap,
body.single-post .soc-post-v55-wrap{
  max-width:1180px;
}
body.single .soc-post-v55-hero,
body.single-post .soc-post-v55-hero{
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}
body.single .soc-post-v55-grid,
body.single-post .soc-post-v55-grid{
  grid-template-columns:minmax(0,760px) minmax(280px,320px);
  column-gap:64px;
}
body.single .soc-post-v55-main,
body.single-post .soc-post-v55-main,
body.single .soc-post-v55-content,
body.single-post .soc-post-v55-content{
  min-width:0;
}
body.single .soc-post-v55-featured img,
body.single-post .soc-post-v55-featured img{
  width:100%;
  height:auto;
  max-height:none;
}
body.single .soc-post-v55-content iframe,
body.single-post .soc-post-v55-content iframe,
body.single .soc-post-v55-content .wp-block-embed iframe,
body.single-post .soc-post-v55-content .wp-block-embed iframe{
  width:100%;
  max-width:100%;
  aspect-ratio:16/9;
  height:auto;
  display:block;
}
body.single .soc-post-v55-content .wp-block-embed,
body.single-post .soc-post-v55-content .wp-block-embed{
  margin:34px 0;
}
body.single .soc-post-v55-sidebar,
body.single-post .soc-post-v55-sidebar{
  position:sticky;
  top:92px;
  align-self:start;
}
body.single .soc-post-v55-side-title,
body.single-post .soc-post-v55-side-title{
  word-break:normal;
  overflow-wrap:break-word;
}
/* Hide possible parent-theme related blocks on single pages, because sidebar already handles Latest News. */
body.single .related-posts,
body.single .post-related,
body.single .entry-related,
body.single .cs-entry__related,
body.single .cnvs-block-posts.related,
body.single .cnvs-related-posts,
body.single-post .related-posts,
body.single-post .post-related,
body.single-post .entry-related,
body.single-post .cs-entry__related,
body.single-post .cnvs-block-posts.related,
body.single-post .cnvs-related-posts{
  display:none !important;
}
@media (max-width:1100px){
  body.single .soc-post-v55-grid,
  body.single-post .soc-post-v55-grid{
    grid-template-columns:minmax(0,1fr) 300px;
    gap:44px;
  }
}
@media (max-width:900px){
  body.single .soc-post-v55-grid,
  body.single-post .soc-post-v55-grid{
    display:block;
  }
  body.single .soc-post-v55-sidebar,
  body.single-post .soc-post-v55-sidebar{
    position:static;
    margin:44px 0 0;
  }
}
@media (max-width:767px){
  body.single .soc-post-v55-wrap,
  body.single-post .soc-post-v55-wrap{
    width:calc(100% - 32px);
  }
  body.single .soc-post-v55-hero,
  body.single-post .soc-post-v55-hero{
    padding:34px 0 28px;
    margin-bottom:26px;
  }
  body.single .soc-post-v55-featured,
  body.single-post .soc-post-v55-featured,
  body.single .soc-post-v55-video-hero,
  body.single-post .soc-post-v55-video-hero{
    margin-bottom:24px;
  }
  body.single .soc-post-v55-content,
  body.single-post .soc-post-v55-content{
    font-size:18px;
    line-height:1.72;
  }
  body.single .soc-post-v55-content p,
  body.single-post .soc-post-v55-content p{
    margin-bottom:1.25em;
  }
  body.single .soc-post-v55-side-card,
  body.single-post .soc-post-v55-side-card{
    grid-template-columns:108px minmax(0,1fr);
  }
}


/* =========================================================
   V57 — Single post polish: title alignment, tighter tag/author, share rail.
   Only affects .soc-post-v55 single post template.
   ========================================================= */
body.single .soc-post-v55-hero,
body.single-post .soc-post-v55-hero{
  overflow:hidden;
  padding:46px 0 42px;
}
body.single .soc-post-v55-hero .soc-post-v55-wrap,
body.single-post .soc-post-v55-hero .soc-post-v55-wrap{
  width:min(1180px, calc(100vw - 88px));
  max-width:1180px;
  padding-left:0;
  padding-right:0;
}
body.single .soc-post-v55-title,
body.single-post .soc-post-v55-title{
  max-width:820px;
  font-size:clamp(38px, 4vw, 54px);
  line-height:1.04;
  letter-spacing:-.058em;
  overflow-wrap:normal;
  word-break:normal;
}
body.single .soc-post-v55-dek,
body.single-post .soc-post-v55-dek{
  max-width:820px;
  font-size:20px;
  line-height:1.28;
}
body.single .soc-post-v55-grid,
body.single-post .soc-post-v55-grid{
  margin-top:0;
}
body.single .soc-post-v55-share,
body.single-post .soc-post-v55-share{
  gap:13px;
}
body.single .soc-post-v55-share a,
body.single-post .soc-post-v55-share a{
  width:34px;
  height:34px;
  border-radius:50%;
  border:1px solid rgba(0,0,0,.12);
  background:#fff;
  font-size:15px;
  font-weight:900;
  letter-spacing:-.02em;
}
body.single .soc-post-v55-share .soc-share-wa,
body.single-post .soc-post-v55-share .soc-share-wa,
body.single .soc-post-v55-share .soc-share-tg,
body.single-post .soc-post-v55-share .soc-share-tg{
  font-size:10px;
}
body.single .soc-post-v55-after,
body.single-post .soc-post-v55-after{
  margin-top:22px;
  padding-top:18px;
}
body.single .soc-post-v55-tags,
body.single-post .soc-post-v55-tags{
  margin-bottom:18px;
}
body.single .soc-post-v55-author,
body.single-post .soc-post-v55-author{
  padding:20px 0;
}
body.single .soc-post-v55-comments,
body.single-post .soc-post-v55-comments{
  margin-top:24px;
}
body.single .soc-post-v55-content > *:last-child,
body.single-post .soc-post-v55-content > *:last-child{
  margin-bottom:0 !important;
}
@media (min-width:901px){
  body.single .soc-post-v55-featured,
  body.single-post .soc-post-v55-featured,
  body.single .soc-post-v55-video-hero,
  body.single-post .soc-post-v55-video-hero{
    margin-bottom:30px;
  }
  body.single .soc-post-v55-sidebar,
  body.single-post .soc-post-v55-sidebar{
    top:100px;
  }
}
@media (max-width:900px){
  body.single .soc-post-v55-hero .soc-post-v55-wrap,
  body.single-post .soc-post-v55-hero .soc-post-v55-wrap{
    width:calc(100% - 44px);
  }
  body.single .soc-post-v55-title,
  body.single-post .soc-post-v55-title{
    font-size:clamp(34px, 8vw, 44px);
  }
}
@media (max-width:767px){
  body.single .soc-post-v55-hero,
  body.single-post .soc-post-v55-hero{
    padding:30px 0 28px;
  }
  body.single .soc-post-v55-hero .soc-post-v55-wrap,
  body.single-post .soc-post-v55-hero .soc-post-v55-wrap{
    width:calc(100% - 32px);
  }
  body.single .soc-post-v55-title,
  body.single-post .soc-post-v55-title{
    max-width:100%;
    font-size:34px;
    line-height:1.06;
    letter-spacing:-.055em;
  }
  body.single .soc-post-v55-dek,
  body.single-post .soc-post-v55-dek{
    font-size:17px;
    line-height:1.36;
  }
  body.single .soc-post-v55-share,
  body.single-post .soc-post-v55-share{
    flex-direction:row;
    gap:9px;
    margin:0 0 16px;
  }
  body.single .soc-post-v55-share a,
  body.single-post .soc-post-v55-share a{
    width:31px;
    height:31px;
    font-size:14px;
  }
  body.single .soc-post-v55-share .soc-share-wa,
  body.single-post .soc-post-v55-share .soc-share-wa,
  body.single .soc-post-v55-share .soc-share-tg,
  body.single-post .soc-post-v55-share .soc-share-tg{
    font-size:9px;
  }
  body.single .soc-post-v55-after,
  body.single-post .soc-post-v55-after{
    margin-top:18px;
    padding-top:16px;
  }
  body.single .soc-post-v55-tags,
  body.single-post .soc-post-v55-tags{
    margin-bottom:16px;
  }
  body.single .soc-post-v55-author,
  body.single-post .soc-post-v55-author{
    padding:18px 0;
  }
}
