/* WACHI WORKS Templates 1.1.0 — neutral palette; edit CSS variables later. */
body.post-type-archive-works,
body.single-works {
  --wdl-works-ink: #252525;
  --wdl-works-muted: #777;
  --wdl-works-line: #e8e8e8;
  --wdl-works-card-bg: #efefef;
}
/* Override previously added generic archive grid rules without modifying the theme. */
body.post-type-archive-works .site-main.wdl-works-archive,
body.single-works .site-main.wdl-works-single {
  display: block !important;
  padding: 0;
  margin: 0;
  background: transparent;
}
body.post-type-archive-works .content-area.wdl-works-area,
body.single-works .content-area.wdl-works-area {
  width: 100%;
  float: none;
  min-width: 0;
}
.wdl-works-archive,
.wdl-works-single { box-sizing: border-box; padding: 0 20px 55px !important; color: var(--wdl-works-ink); }
.wdl-works-heading { text-align: center; margin: 35px 0 28px; }
.wdl-works-kicker { margin: 0 0 6px; color: var(--wdl-works-muted); font-size: 10px; letter-spacing: .2em; }
.wdl-works-heading h1 { margin: 0; color: var(--wdl-works-ink); font-size: 30px; font-weight: 400; letter-spacing: .18em; line-height: 1.4; }
.wdl-works-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 12px; }
.wdl-works-grid .wdl-works-card { margin: 0; padding: 0; background: transparent; min-width: 0; }
.wdl-works-card-link { color: inherit; display: block; text-decoration: none; }
.wdl-works-card-link:hover, .wdl-works-card-link:focus { color: inherit; }
.wdl-works-card-image { aspect-ratio: 4 / 3; overflow: hidden; background: var(--wdl-works-card-bg); }
.wdl-works-card-image img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.wdl-works-card-link:hover img { transform: scale(1.025); }
.wdl-works-placeholder { width: 100%; height: 100%; }
.wdl-works-card-title { margin: 9px 0 4px; font-size: 12px; line-height: 1.5; font-weight: 500; overflow-wrap: anywhere; color: var(--wdl-works-ink); }
.wdl-works-card-meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 3px 8px; color: var(--wdl-works-muted); font-size: 9px; line-height: 1.6; }
.wdl-works-empty { padding: 40px 0; text-align: center; font-size: 13px; }
.wdl-works-archive .navigation.pagination { margin-top: 30px; }
.wdl-work-header { margin: 35px 0 28px; text-align: center; }
.wdl-work-header h1 { margin: 0; font-size: 22px; line-height: 1.6; letter-spacing: .06em; font-weight: 500; overflow-wrap: anywhere; }
.wdl-work-date { margin: 8px 0 0; color: var(--wdl-works-muted); font-size: 11px; }
.wdl-work-main-image, .wdl-work-extra-image { padding: 0; margin: 0 0 24px; }
.wdl-work-photo { width: 100%; height: auto; display: block; }
.wdl-work-description { margin: 25px 0; font-size: 13px; line-height: 2; overflow-wrap: anywhere; }
.wdl-work-description h2 { font-size: 11px; letter-spacing: .2em; font-weight: 500; margin-bottom: 12px; }
.wdl-work-meta { display: grid; grid-template-columns: 88px minmax(0, 1fr); margin: 24px 0 32px; padding: 16px 0; border-top: 1px solid var(--wdl-works-line); border-bottom: 1px solid var(--wdl-works-line); gap: 10px 12px; font-size: 11px; line-height: 1.7; }
.wdl-work-meta dt { color: var(--wdl-works-muted); font-size: 10px; letter-spacing: .08em; }
.wdl-work-meta dd { margin: 0; overflow-wrap: anywhere; }
.wdl-work-extra-content { margin: 24px 0; font-size: 13px; line-height: 1.8; }
.wdl-work-external a, .wdl-work-back a { color: var(--wdl-works-ink); text-decoration: none; font-size: 11px; letter-spacing: .06em; }
.wdl-work-external a { border-bottom: 1px solid currentColor; padding-bottom: 4px; }
.wdl-work-back { margin: 55px 0 0; text-align: center; }
.wdl-work-back a:hover, .wdl-work-external a:hover { opacity: .65; }
@media (max-width: 480px) {
  .wdl-works-archive, .wdl-works-single { padding-left: 16px !important; padding-right: 16px !important; }
  .wdl-works-grid { gap: 22px 10px; }
  .wdl-works-card-title { font-size: 11px; }
  .wdl-works-card-meta { font-size: 9px; }
}
@media (prefers-reduced-motion: reduce) { .wdl-works-card-image img { transition: none; } }

/* v1.1: Responsive Gutenberg image / gallery blocks in the work detail body. */
body.single-works .wdl-work-extra-content,
body.single-works .wdl-work-extra-content * { box-sizing: border-box; }
body.single-works .wdl-work-extra-content :is(img, video, iframe) { max-width: 100%; }
body.single-works .wdl-work-extra-content img { height: auto; }
body.single-works .wdl-work-extra-content figure { max-width: 100%; }
body.single-works .wdl-work-extra-content .wp-block-image,
body.single-works .wdl-work-extra-content .wp-block-gallery,
body.single-works .wdl-work-extra-content .wp-block-columns {
  margin-top: 0;
  margin-bottom: 24px;
}
body.single-works .wdl-work-extra-content .wp-block-gallery {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  padding: 0;
  list-style: none;
}
body.single-works .wdl-work-extra-content .wp-block-gallery .wp-block-image {
  margin: 0;
  min-width: 0;
}
body.single-works .wdl-work-extra-content .wp-block-gallery img {
  display: block;
  max-width: 100%;
}
body.single-works .wdl-work-extra-content .wp-block-gallery.has-nested-images figure.wp-block-image figcaption,
body.single-works .wdl-work-extra-content figure figcaption {
  font-size: 11px;
  line-height: 1.6;
  color: var(--wdl-works-muted);
}
body.single-works .wdl-work-extra-content .wp-block-gallery.is-layout-flex > figure,
body.single-works .wdl-work-extra-content .wp-block-columns > .wp-block-column { min-width: 0; }
@media (max-width: 480px) {
  body.single-works .wdl-work-extra-content .wp-block-gallery { gap: 8px; }
  body.single-works .wdl-work-extra-content .wp-block-gallery.columns-3 > figure,
  body.single-works .wdl-work-extra-content .wp-block-gallery.columns-4 > figure,
  body.single-works .wdl-work-extra-content .wp-block-gallery.columns-5 > figure { width: calc(50% - 4px); }
}

/* Home page latest-works cards share archive layout. */
.wdl-works-shortcode { --wdl-works-ink:#252525; --wdl-works-muted:#777; --wdl-works-card-bg:#efefef; max-width:100%; margin:0; padding:0; color:var(--wdl-works-ink); }
.wdl-works-shortcode .wdl-works-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 12px; }
.wdl-works-shortcode .wdl-works-card { padding:0; margin:0; min-width:0; background:none; }
@media(max-width:480px){ .wdl-works-shortcode .wdl-works-grid { gap:22px 10px; }}
