:root {
  --ccw-ink: #eaf2ed;
  --ccw-paper: #f6f8f4;
  --ccw-deep: #18392b;
  --ccw-deeper: #10271e;
  --ccw-deep-panel: #214735;
  --ccw-accent: #3f7a3d;
  --ccw-accent-soft: #7fb35f;
  --ccw-gray-100: #f0f2f1;
  --ccw-gray-300: #c5cdca;
  --ccw-gray-500: #6f7c76;
  --ccw-gray-700: #44514c;
  --ccw-line: rgba(234, 242, 237, 0.16);
  --ccw-muted: #b9c8be;
}

body.wp-theme-twentytwentyfive {
  background: linear-gradient(180deg, #10271e 0%, #18392b 28%, #edf1ef 28%, #edf1ef 100%);
  color: #143025;
}

body.wp-theme-twentytwentyfive .wp-site-blocks {
  color: #143025;
}

body.wp-theme-twentytwentyfive header.wp-block-template-part,
body.wp-theme-twentytwentyfive footer.wp-block-template-part {
  color: var(--ccw-ink);
}

body.wp-theme-twentytwentyfive header.wp-block-template-part {
  position: sticky;
  top: 0;
  z-index: 40;
  backdrop-filter: blur(14px);
}

body.wp-theme-twentytwentyfive header.wp-block-template-part > .wp-block-group {
  background: rgba(16, 39, 30, 0.9);
  border-bottom: 1px solid rgba(197, 205, 202, 0.18);
}

body.wp-theme-twentytwentyfive header.wp-block-template-part a,
body.wp-theme-twentytwentyfive footer.wp-block-template-part a {
  color: var(--ccw-ink);
}

body.wp-theme-twentytwentyfive main.wp-block-group {
  margin-top: 0 !important;
  padding-top: 1.25rem;
}

body.home.wp-theme-twentytwentyfive main.wp-block-group {
  padding-top: 0;
}

.ccw-home-card {
  border: 1px solid var(--ccw-gray-300);
  border-radius: 18px;
  background: #f6f8f4;
  padding: 1.2rem;
  box-shadow: 0 20px 50px rgba(68, 81, 76, 0.12);
  backdrop-filter: blur(6px);
}

.ccw-pending-works {
  border-radius: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0;
  backdrop-filter: none;
}

.ccw-quote-card,
.ccw-picture-card,
.ccw-latest-posts {
  background: linear-gradient(90deg, #1d3f30 0%, #214735 100%);
  border: 1px solid rgba(234, 242, 237, 0.18);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.ccw-quote-card,
.ccw-picture-card {
  min-height: 190px;
}

.ccw-latest-posts {
  width: 100%;
}

.ccw-section-heading {
  margin-bottom: 0.8rem;
}

.ccw-kicker {
  margin: 0 0 0.35rem;
  color: var(--ccw-accent);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-size: 0.78rem;
}

.ccw-quote-card .ccw-kicker,
.ccw-picture-card .ccw-kicker,
.ccw-latest-posts .ccw-kicker {
  color: #8ebd65;
}

.ccw-work-list,
.ccw-post-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.ccw-work-item,
.ccw-post-list li {
  display: flex;
  gap: 0.85rem;
  padding: 0.35rem 0;
  border-top: 0;
}

.ccw-work-item:first-child,
.ccw-post-list li:first-child {
  border-top: 0;
  padding-top: 0;
}

.ccw-work-item h3,
.ccw-post-list a {
  margin: 0;
  color: var(--ccw-deeper);
}

.ccw-work-track {
  position: relative;
  width: 100%;
  min-height: 52px;
  border-radius: 18px;
  overflow: hidden;
  background: linear-gradient(90deg, #1d3f30 0%, #214735 100%);
  border: 1px solid rgba(234, 242, 237, 0.18);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.ccw-work-overlay {
  position: relative;
  z-index: 2;
  min-height: 52px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.45rem 1rem;
}

.ccw-work-main {
  min-width: 0;
}

.ccw-work-main h3 {
  color: #ffffff !important;
  font-size: 0.96rem;
  font-weight: 600;
  line-height: 1.15;
  margin-bottom: 0.12rem;
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
}

.ccw-status,
.ccw-wordcount,
.ccw-post-list span,
.ccw-quote-source,
.ccw-picture-frame figcaption {
  color: var(--ccw-gray-700);
  font-size: 0.88rem;
}

.ccw-quote-card h2,
.ccw-picture-card h2,
.ccw-latest-posts h2,
.ccw-quote-card p,
.ccw-picture-card p,
.ccw-latest-posts p,
.ccw-quote-card .ccw-quote-body,
.ccw-quote-card .ccw-quote-source,
.ccw-picture-card .ccw-picture-frame figcaption,
.ccw-picture-card .ccw-picture-frame,
.ccw-latest-posts .ccw-post-list span,
.ccw-latest-posts .ccw-post-list a {
  color: #f3f8f4 !important;
}

.ccw-work-item .ccw-status,
.ccw-work-item .ccw-wordcount {
  color: #f3f8f4 !important;
  font-weight: 500;
  font-size: 0.84rem;
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.22);
}

.ccw-quote-body {
  margin: 0;
  color: var(--ccw-deeper);
  font-size: 1.05rem;
  line-height: 1.7;
}

.ccw-picture-frame {
  margin: 0;
}

.ccw-picture-frame img {
  width: 100%;
  height: auto;
  border-radius: 10px;
  display: block;
}

.ccw-progress {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  background: rgba(255, 255, 255, 0.03);
  overflow: hidden;
}

.ccw-progress-bar {
  display: block;
  height: 100%;
  min-width: 14px;
  border-radius: 0 24px 24px 0;
  background: linear-gradient(90deg, #5d9248 0%, #8ebd65 100%);
}

body.wp-theme-twentytwentyfive .wp-block-post-title,
body.wp-theme-twentytwentyfive .entry-content,
body.wp-theme-twentytwentyfive .wp-block-post-content,
body.wp-theme-twentytwentyfive .wp-block-group,
body.wp-theme-twentytwentyfive p,
body.wp-theme-twentytwentyfive li {
  color: inherit;
}

body.wp-theme-twentytwentyfive main,
body.wp-theme-twentytwentyfive main .wp-block-post-content,
body.wp-theme-twentytwentyfive main .entry-content {
  color: #183327;
}

body.wp-theme-twentytwentyfive main .has-background:not(.alignfull),
body.wp-theme-twentytwentyfive main .wp-block-group.has-background:not(.alignfull),
body.wp-theme-twentytwentyfive main .wp-block-columns.has-background:not(.alignfull),
body.wp-theme-twentytwentyfive main .wp-block-cover:not(.alignfull) {
  color: var(--ccw-deeper);
}

body.wp-theme-twentytwentyfive main .has-background:not(.alignfull) a {
  color: var(--ccw-accent);
}

body.wp-theme-twentytwentyfive a {
  color: var(--ccw-accent);
}

body.wp-theme-twentytwentyfive main strong,
body.wp-theme-twentytwentyfive main b {
  color: var(--ccw-deeper);
}

body.wp-theme-twentytwentyfive .wp-element-button,
body.wp-theme-twentytwentyfive .wp-block-button__link {
  background: var(--ccw-accent) !important;
  color: #f7fbf8 !important;
  border-radius: 999px;
}

body.wp-theme-twentytwentyfive .wp-block-post-title,
body.wp-theme-twentytwentyfive main h1,
body.wp-theme-twentytwentyfive main h2,
body.wp-theme-twentytwentyfive main h3 {
  color: #11261d;
}

body.wp-theme-twentytwentyfive main h4,
body.wp-theme-twentytwentyfive main h5,
body.wp-theme-twentytwentyfive main h6 {
  color: #31433b;
}

body.wp-theme-twentytwentyfive main p,
body.wp-theme-twentytwentyfive main li,
body.wp-theme-twentytwentyfive main blockquote,
body.wp-theme-twentytwentyfive main figcaption {
  color: #274136;
}

body.blog.wp-theme-twentytwentyfive .wp-block-query {
  color: #1d372c;
  background: #eef3ef;
  border-radius: 22px;
  padding: 1.25rem !important;
}

body.blog.wp-theme-twentytwentyfive .wp-block-query .wp-block-post-title,
body.blog.wp-theme-twentytwentyfive .wp-block-query .wp-block-post-title a,
body.blog.wp-theme-twentytwentyfive .wp-block-query h2,
body.blog.wp-theme-twentytwentyfive .wp-block-query h3 {
  color: #143025 !important;
  opacity: 1 !important;
}

body.blog.wp-theme-twentytwentyfive .wp-block-query .entry-content,
body.blog.wp-theme-twentytwentyfive .wp-block-query .entry-content p,
body.blog.wp-theme-twentytwentyfive .wp-block-query .wp-block-post-excerpt,
body.blog.wp-theme-twentytwentyfive .wp-block-query .wp-block-post-excerpt p,
body.blog.wp-theme-twentytwentyfive .wp-block-query .wp-block-post-date,
body.blog.wp-theme-twentytwentyfive .wp-block-query .wp-block-post-author,
body.blog.wp-theme-twentytwentyfive .wp-block-query .wp-block-post-terms {
  color: #315044 !important;
  opacity: 1 !important;
}

body.blog.wp-theme-twentytwentyfive .wp-block-query a {
  color: #1f5631;
}

body.blog.wp-theme-twentytwentyfive .wp-block-query-pagination,
body.blog.wp-theme-twentytwentyfive .wp-block-query-pagination a,
body.blog.wp-theme-twentytwentyfive .wp-block-query-pagination span {
  color: #214735 !important;
}

body.blog.wp-theme-twentytwentyfive .wp-block-post-template {
  gap: 1rem !important;
}

body.blog.wp-theme-twentytwentyfive .wp-block-post-template > li {
  background: #f7faf8;
  border: 1px solid rgba(197, 205, 202, 0.9);
  border-radius: 18px;
  padding: 1.4rem !important;
  box-shadow: 0 14px 40px rgba(68, 81, 76, 0.08);
}

body.blog.wp-theme-twentytwentyfive .wp-block-post-template > li * {
  color: inherit;
  opacity: 1 !important;
}

body.blog.wp-theme-twentytwentyfive .wp-block-post-template .wp-block-post-date {
  display: block;
  margin-top: 1rem;
  color: #4b6258 !important;
}

body.wp-theme-twentytwentyfive main .has-background[style*="#18392b"] p,
body.wp-theme-twentytwentyfive main .has-background[style*="#18392b"] h1,
body.wp-theme-twentytwentyfive main .has-background[style*="#18392b"] h2,
body.wp-theme-twentytwentyfive main .has-background[style*="#18392b"] h3,
body.wp-theme-twentytwentyfive main .has-background[style*="#10271e"] p,
body.wp-theme-twentytwentyfive main .has-background[style*="#10271e"] h1,
body.wp-theme-twentytwentyfive main .has-background[style*="#10271e"] h2,
body.wp-theme-twentytwentyfive main .has-background[style*="#10271e"] h3 {
  color: #eef5f0;
}

body.wp-theme-twentytwentyfive .entry-content > .wp-block-group.alignfull:first-child {
  margin-top: 0;
}

body.home.wp-theme-twentytwentyfive .wp-block-post-title {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
}

body.home.wp-theme-twentytwentyfive main > .wp-block-group.alignfull {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
}

body.home.wp-theme-twentytwentyfive main > .wp-block-group.alignfull.has-global-padding {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
}

body.home.wp-theme-twentytwentyfive .entry-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.home.wp-theme-twentytwentyfive main > .wp-block-group.alignfull > .wp-block-buttons,
body.home.wp-theme-twentytwentyfive main > .wp-block-group.alignfull > .wp-block-columns,
body.home.wp-theme-twentytwentyfive main > .wp-block-group.alignfull > .wp-block-spacer,
body.home.wp-theme-twentytwentyfive main > .wp-block-group.alignfull > .wp-block-post-featured-image {
  display: none !important;
}

body.wp-theme-twentytwentyfive .entry-content > .wp-block-columns,
body.wp-theme-twentytwentyfive .entry-content > .wp-block-group,
body.wp-theme-twentytwentyfive .entry-content > .wp-block-group.alignwide {
  margin-top: 1.2rem;
  margin-bottom: 0;
}

body.wp-theme-twentytwentyfive .entry-content .wp-block-columns.alignwide {
  gap: 1.2rem;
}

body.home.wp-theme-twentytwentyfive .entry-content > .wp-block-columns.alignwide,
body.home.wp-theme-twentytwentyfive .entry-content > .wp-block-group.alignwide {
  max-width: var(--wp--style--global--wide-size);
  margin-left: auto !important;
  margin-right: auto !important;
}

body.wp-theme-twentytwentyfive footer.wp-block-template-part p,
body.wp-theme-twentytwentyfive footer.wp-block-template-part li,
body.wp-theme-twentytwentyfive footer.wp-block-template-part .wp-block-navigation-item__label {
  color: var(--ccw-gray-300);
}

body.wp-theme-twentytwentyfive footer.wp-block-template-part > .wp-block-group {
  background: #10271e;
  border-top: 1px solid rgba(197, 205, 202, 0.18);
}

@media (max-width: 780px) {
  .ccw-work-overlay {
    display: block;
  }

  .ccw-wordcount {
    margin-top: 0.45rem;
  }
}
