.cp-anim{ opacity: 0; transform: translateY(16px); transition: opacity .4s ease-out, transform .4s ease-out; }
.cp-anim[data-motion="slide-left"]{ transform: translateX(-16px); }
.cp-anim[data-motion="slide-right"]{ transform: translateX(16px); }
.cp-anim[data-motion="zoom"]{ transform: scale(0.98); }
.cp-anim.is-inview{ opacity: 1; transform: none; }

.entry{
  max-width: 860px;
  margin: 0 auto;
  padding: clamp(22px, 4vw, 40px);
  background: #fff;
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: var(--radius-lg);
  box-shadow: 0 6px 16px rgba(8, 24, 36, 0.12);
  display: grid;
  gap: 22px;
}
.entry-head{ display: grid; gap: 10px; text-align: left; }
.entry-title{
  margin: 0;
  font-weight: 900;
  font-size: clamp(26px, 3.6vw, 40px);
  line-height: 1.25;
}
.breadcrumbs{
  display:flex;
  gap: 6px;
  flex-wrap: wrap;
  font-size: 12px;
  font-weight: 700;
  color: var(--muted);
  margin: 0 0 10px;
}
.breadcrumbs a{ color: inherit; text-decoration: none; }
.breadcrumbs a:hover{ color: var(--accent); }
.crumb-sep{ opacity: 0.6; }
.entry-meta{
  display:flex;
  gap: 10px 16px;
  flex-wrap: wrap;
  color: var(--muted);
  font-weight: 800;
  font-size: 12px;
  margin: 0;
}
.entry-content{
  color: var(--ink);
  font-size: 16px;
  line-height: 1.9;
  display: grid;
  gap: 16px;
}
.entry-content > *{ margin: 0; }
.entry-content h2,
.entry-content h3{
  padding-left: 12px;
  border-left: 3px solid var(--accent);
  line-height: 1.4;
  text-align: left;
}
.entry-content h2{ font-size: clamp(20px, 2.4vw, 26px); }
.entry-content h3{ font-size: clamp(17px, 2.1vw, 22px); border-left-width: 2px; color: #103045; }
.entry-content ul,
.entry-content ol{
  padding-left: 20px;
  margin: 0;
  display: grid;
  gap: 6px;
}
.entry-content blockquote{
  margin: 0;
  padding: 14px 16px;
  border-left: 3px solid var(--accent);
  background: var(--accent-soft);
  border-radius: var(--radius-md);
  color: var(--ink);
  font-weight: 700;
}
.entry-content img{ border-radius: var(--radius-md); }
.entry-hero{ margin: 0; border-radius: var(--radius-lg); overflow: hidden; }
.entry-hero img{ width: 100%; height: auto; }
.entry .btn:hover{ box-shadow: none; }
.entry .btn:focus-visible{ box-shadow: none; }
.entry .section-title{
  text-align: left;
  font-size: clamp(18px, 2.2vw, 24px);
}
.share,
.entry-related{
  border-top: 1px solid rgba(0,0,0,0.08);
  padding-top: 18px;
  margin-top: 10px;
}
.entry-related{ margin-top: 28px; }
.entry-related-list{
  list-style: none;
  margin: 10px 0 0;
  padding: 0;
  display: grid;
  gap: 8px;
}
.entry-related-item{
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: baseline;
}
.entry-related-date{ color: var(--muted); font-size: 12px; font-weight: 800; }
.pagination { margin-top: 22px; }

.news-board { display: grid; gap: 10px; }
.news-item {
  background: #fff;
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: var(--radius-lg);
  padding: 14px 14px;
}
.news-date { color: var(--muted); font-weight: 900; font-size: 12px; }
.news-title { margin: 6px 0 0; font-weight: 900; font-size: 16px; }
.guidelines-links{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.blog-excerpt{
  margin: 8px 0 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.6;
}

.works-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
@media (min-width: 700px) { .works-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .works-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.works-card {
  background: #fff;
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: var(--radius-lg);
  overflow: hidden;
}
.works-thumb { aspect-ratio: 16/9; background: #eee; }
.works-thumb img { width: 100%; height: 100%; object-fit: cover; }
.works-title { margin: 0; padding: 12px 14px; font-weight: 900; font-size: 16px; }

