@charset "UTF-8";
/* Suggesco — base typography & colour overrides */

:root{
  --sg-paper:#FAF9F6;
  --sg-ink:#14110E;
  --sg-ink-2:#6E6A63;
  --sg-ink-3:#9A968D;
  --sg-line:#E5E2DA;
  --sg-display:"Shippori Mincho", serif;
  --sg-sans:"Zen Kaku Gothic New", "Hiragino Sans", sans-serif;
  --sg-mono:"Space Mono", ui-monospace, monospace;
}

/* ---------- base typography ---------- */
body,
.post_content,
.p-postList__title,
.c-widget,
.l-sidebar{
  font-family:var(--sg-sans);
  letter-spacing:.012em;
}
body{ color:var(--sg-ink); }

/* headings → 明朝 */
.c-postTitle__ttl,
.p-articleHead .c-postTitle__ttl,
.post_content h1,
.post_content h2,
.post_content h3,
.post_content h4,
.p-postList__title,
.c-widget__title,
.p-archiveLabel__ttl,
.c-sectionTitle{
  font-family:var(--sg-display) !important;
  font-weight:600;
  letter-spacing:.01em;
}

/* article title */
.c-postTitle__ttl{
  font-weight:700;
  line-height:1.3;
  letter-spacing:.005em;
}

/* ---------- meta / dates → 等幅 ---------- */
.c-postTitle__date,
.c-postTimes,
.p-postList__times,
.c-postMeta,
.p-breadcrumb,
.c-gnav__subMenu .c-gnav__maskText,
.u-thin{
  font-family:var(--sg-mono) !important;
  letter-spacing:.06em;
  color:var(--sg-ink-2);
}

/* ---------- post content typography ---------- */
.post_content{
  font-size:17px;
  line-height:1.95;
  color:var(--sg-ink);
}
.post_content h2{
  margin-top:2.4em;
  padding-top:.7em;
  border-top:1px solid var(--sg-line);
  border-bottom:0;
  background:transparent;
  font-size:clamp(22px,2.6vw,29px);
  line-height:1.4;
}
.post_content h2::before,
.post_content h2::after{ display:none !important; }
.post_content h3{
  font-size:clamp(18px,2vw,22px);
  border:0;
  padding-left:0;
  line-height:1.5;
}
.post_content h3::before{ display:none !important; }
.post_content a{
  color:var(--sg-ink);
  border-bottom:1px solid var(--sg-ink);
  text-decoration:none;
  transition:opacity .2s;
}
.post_content a:hover{ opacity:.55; }
.post_content blockquote{
  border-left:2px solid var(--sg-ink);
  background:transparent;
  font-family:var(--sg-display);
  color:var(--sg-ink);
}

/* ---------- header ---------- */
.l-header{
  border-bottom:1px solid var(--sg-line);
  box-shadow:none !important;
}
.l-header__bar{ box-shadow:none !important; }
.c-gnav__item > a,
.c-gnav__itemLink{
  font-family:var(--sg-mono);
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--sg-ink-2);
}
.c-gnav__item > a:hover{ color:var(--sg-ink); }

/* ---------- post list / cards (archive + related) ---------- */
.p-postList__item{
  border-bottom:1px solid var(--sg-line);
}
.p-postList.-type-card .p-postList__body{
  box-shadow:none;
  border:1px solid var(--sg-line);
  border-radius:0;
}
.p-postList__title{
  font-weight:600;
  line-height:1.45;
  letter-spacing:.01em;
}
.p-postList__link:hover .p-postList__title{ opacity:.6; }

/* thumbnails → monochrome for editorial consistency */
.c-postThumb__img{
  filter:grayscale(1);
  border-radius:0;
}

/* ---------- breadcrumb ---------- */
.p-breadcrumb{
  font-size:11px;
  letter-spacing:.1em;
  text-transform:uppercase;
}

/* ---------- footer ---------- */
.l-footer{
  border-top:1px solid var(--sg-line);
}

/* ---------- buttons (SWELL btn blocks) ---------- */
.wp-block-button__link,
.swell-block-button__link,
.p-postList__readMore{
  border-radius:0 !important;
  font-family:var(--sg-mono);
  letter-spacing:.1em;
  font-size:13px;
}

/* rounded corners → squared, editorial */
.c-postThumb,
.p-postList__body,
.c-card,
.wp-block-image img{
  border-radius:0 !important;
}
