/* WOC 2026 — product finishing system. Scoped, repeatable primitives.
   Article native media, measured footer and disciplined home modules. */

:root { --footer-bg:#282a2e; --footer-muted:#c4c0bb; }
.article-body figure.wp-block-embed,
.article-body figure.wp-block-video,
.article-body figure.wp-block-jetpack-videopress {max-width:780px;margin:30px 0}
.article-body figure.wp-block-embed figcaption,
.article-body figure.wp-block-video figcaption,
.article-body figure.wp-block-jetpack-videopress figcaption {
  font:500 12px/1.5 var(--sans);color:var(--muted);
  margin-top:9px;border-left:2px solid var(--line);padding-left:10px;
}
.article-body .woc-video-player,
.article-body .wp-block-jetpack-videopress .jetpack-videopress-player__wrapper{
  width:100%;aspect-ratio:16/9;background:#141618;
  overflow:hidden;border-radius:5px;position:relative
}
.article-body .woc-video-player iframe,
.article-body .jetpack-videopress-player iframe{
  border:0;display:block;width:100%!important;height:100%!important;
  aspect-ratio:16/9;max-width:none
}
.article-body video{display:block;max-width:100%;width:100%;height:auto!important;max-height:75vh;object-fit:contain;background:#101114;border-radius:4px}
.article-body figure.wp-block-video video{width:auto;max-width:100%;margin-inline:auto}
.article-body .wp-block-embed.is-provider-twitter{max-width:720px;margin:24px 0}
.article-body blockquote.twitter-tweet{
  box-sizing:border-box;max-width:560px;
  margin:20px auto;padding:16px 18px;
  border:1px solid var(--line);border-left:3px solid var(--red);
  border-radius:7px;background:#fff;
  font:500 14px/1.5 var(--sans);color:var(--ink);
}
.article-body blockquote.twitter-tweet p{font:inherit;margin:0 0 7px}
.article-body blockquote.twitter-tweet a{font:750 13px/1.4 var(--sans);color:var(--red)}
.article-body iframe.twitter-tweet-rendered{width:100%;max-width:100%;margin:18px auto!important}
.article-body .wp-block-embed__wrapper{width:100%}
/* Existing X failover is a native source link; never overlay our own card. */
.woc-x-card{display:none}

/* Branded editorial emphasis without duplicated topic blocks. */
.section + .section{margin-top:0}
.section-head{padding-bottom:10px;border-bottom:1px solid var(--line)}
.section-head h2{font-weight:690;letter-spacing:-.022em}
.section-head .section-more{align-self:center;text-transform:none}
.section-more{font:800 12px/1.2 var(--sans);color:var(--red)}
.section-head p{font:500 13px/1.5 var(--sans);color:var(--muted)}
.article-sidebar .sidebar-box{border-top:2px solid var(--ink)}
.article-sidebar .sidebar-author{display:none}
.article-tags{padding-top:16px;border-top:1px solid var(--line);margin-top:38px}
.author-box{
  max-width:760px;
  margin:24px auto 36px;
  background:#f3f0e9;
  border-top:2px solid var(--red);
  padding:18px 22px;align-items:center;
  box-shadow:none
}
.author-box h3{font-weight:660}
.author-box-img{width:76px;height:76px}
.related-section{max-width:1180px;margin:0 auto;padding-top:28px}

/* One footer with a shared baseline, no floating W and three unrelated narrow columns. */
.site-footer{background:var(--footer-bg)!important;color:#f4f2ef;margin-top:auto;border-top:3px solid var(--red)}
.site-footer .footer-top{
  display:grid!important;
  grid-template-columns:minmax(280px,1.5fr) repeat(3,minmax(135px,.82fr));
  align-items:start;justify-items:stretch;
  gap:42px;max-width:1320px;
  padding:42px 18px 35px;min-height:0
}
.site-footer .footer-top>div{min-width:0;align-self:start}
.site-footer .footer-about{display:flex;flex-direction:column;align-items:flex-start}
.site-footer .footer-lockup{display:flex;align-items:center;gap:15px;margin:0 0 14px;color:#fff;line-height:1.1}
.site-footer .footer-lockup img{
  width:62px!important;height:65px!important;max-height:65px;
  object-fit:contain;background:transparent!important;
  margin:0!important
}
.site-footer .footer-lockup .footer-brand-name{
  display:block!important;
  font:800 24px/1.06 var(--sans);
  letter-spacing:-.045em;color:#f7f4f1;
}
.site-footer .footer-about p{
  margin:0 0 15px;max-width:380px;
  color:var(--footer-muted);
  font:500 13px/1.65 var(--sans)
}
.site-footer .footer-about>a:last-child{
  font:750 13px/1.35 var(--sans);
  color:#fff;overflow-wrap:anywhere
}
.site-footer .footer-top h4{
  font:850 11px/1.4 var(--sans);
  text-transform:uppercase;letter-spacing:.11em;
  color:#f1efed;margin:12px 0 14px
}
.site-footer .footer-top>div:not(.footer-about)>a{
  color:#d3cfca;font:600 12px/1.3 var(--sans);
  padding:6px 0;text-decoration:none
}
.site-footer .footer-top a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.site-footer .footer-bottom{
  max-width:1320px;border-top:1px solid #494b4f;
  padding:18px 18px 22px;
  color:#aaa7a2;font:500 11px/1.5 var(--sans)
}
/* Newsletter/most-read widgets should never be simulated without a backend. */
@media(max-width:1020px){
  .site-footer .footer-top{grid-template-columns:repeat(3,minmax(0,1fr));gap:27px}
  .site-footer .footer-about{grid-column:1/-1}
  .site-footer .footer-about p{max-width:610px}
}
@media(max-width:620px){
  .site-footer .footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding:32px 16px}
  .site-footer .footer-about{grid-column:1/-1}
  .site-footer .footer-top>div:last-child{grid-column:1/-1}
  .site-footer .footer-top h4{margin-top:2px}
  .site-footer .footer-lockup .footer-brand-name{font-size:22px}
  .article-body figure.wp-block-embed{max-width:100%}
}

/* App rails must use the current Panda brand, not the obsolete W icon. */
.sidebar-app{background:#f4f0e9;border-color:#e0d9cf}
.sidebar-app img{width:120px;height:auto;max-height:76px;object-fit:contain;object-position:left center;margin:0 0 10px;mix-blend-mode:darken}
.sidebar-app b{font:700 18px/1.12 var(--serif);letter-spacing:-.015em}
.sidebar-app p{font:500 12px/1.5 var(--sans)}

.article-body .woc-video-source{margin:9px 0 0;font:700 12px/1.4 var(--sans)}
.article-body .woc-video-source a{color:var(--red);text-decoration:underline;text-underline-offset:3px}
