/* A quiet editorial surface inside the existing WoodMart header and footer. */
body.tsbl-page .wd-page-title.title-blog {
  display:none!important;
}
body.tsbl-page .main-page-wrapper {
  margin-top:0!important;
  padding-top:0!important;
  padding-bottom:0!important;
  background:#fff!important;
}
body.tsbl-page #main-content {
  width:100%!important;
  max-width:none!important;
  margin-top:0!important;
  padding-top:0!important;
  padding-right:0!important;
  padding-left:0!important;
}
body.tsbl-page #main-content > .tsbl-root,
body.tsbl-page #main-content > .wd-content-area:has(.tsbl-root) {
  grid-column:1 / -1!important;
  min-width:0;
}
body.tsbl-page .tsbl-root,
body.tsbl-page .tsbl-root * {
  box-sizing:border-box;
}
body.tsbl-page .tsbl-root {
  --tsbl-ink:#292632;
  --tsbl-muted:#716a79;
  --tsbl-accent:#c8334e;
  --tsbl-line:#ecebf0;
  width:100%;
  max-width:1400px;
  min-width:0;
  margin:0 auto;
  padding:0 30px 48px;
  color:var(--tsbl-ink);
  font-family:inherit;
}
body.tsbl-page .tsbl-breadcrumb {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:9px;
  min-height:20px;
  margin:20px 0 12px;
  padding:0;
  color:#716a79;
  font-size:12px;
  font-weight:400;
  line-height:1.6;
}
body.tsbl-page .tsbl-breadcrumb a {
  color:#716a79;
  text-decoration:none;
}
body.tsbl-page .tsbl-breadcrumb a:hover {
  color:var(--tsbl-accent);
}
body.tsbl-page .tsbl-hero {
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
  align-items:center;
  gap:56px;
  min-height:326px;
  margin:0;
  padding:18px 0 32px;
}
body.tsbl-page .tsbl-hero-copy {
  min-width:0;
  padding:0 0 4px;
}
body.tsbl-page .tsbl-eyebrow {
  display:block;
  margin:0;
  padding:0;
  color:var(--tsbl-accent);
  font-size:11px;
  font-weight:600;
  line-height:1.5;
  letter-spacing:1.7px;
  text-transform:uppercase;
}
body.tsbl-page .tsbl-hero-copy h1 {
  max-width:600px;
  margin:15px 0 0;
  padding:0;
  color:var(--tsbl-ink);
  font-family:inherit;
  font-size:clamp(38px,3.2vw,50px);
  font-weight:700;
  line-height:1.15;
  letter-spacing:-1.6px;
  text-transform:none;
  overflow-wrap:break-word;
}
body.tsbl-page .tsbl-hero-copy h1 > span {
  display:block;
}
body.tsbl-page .tsbl-hero-copy > p {
  max-width:450px;
  margin:20px 0 0;
  padding:0;
  color:var(--tsbl-muted);
  font-size:15px;
  font-weight:400;
  line-height:1.8;
}
body.tsbl-page .tsbl-hero-visual {
  min-width:0;
  width:100%;
  height:294px;
  margin:0;
  padding:13px;
  border:1px solid #eeedf1;
  border-radius:20px;
  background:#f5f5f7;
}
body.tsbl-page .tsbl-visual-grid {
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);
  grid-template-rows:minmax(0,1fr) minmax(0,1fr);
  gap:12px;
  width:100%;
  height:100%;
  min-width:0;
}
body.tsbl-page figure.tsbl-visual-card {
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  min-height:0;
  margin:0;
  padding:15px;
  overflow:hidden;
  border:1px solid #eeedf1;
  border-radius:12px;
  background:#fff;
  box-shadow:0 3px 12px rgba(41,38,50,.025);
}
body.tsbl-page .tsbl-visual-main {
  grid-column:1;
  grid-row:1 / span 2;
}
body.tsbl-page .tsbl-visual-top {
  grid-column:2;
  grid-row:1;
}
body.tsbl-page .tsbl-visual-bottom {
  grid-column:2;
  grid-row:2;
}
body.tsbl-page .tsbl-visual-card img {
  display:block;
  width:100%;
  max-width:100%;
  height:100%;
  max-height:100%;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  object-fit:contain;
  object-position:center;
  box-shadow:none;
  filter:none;
}
body.tsbl-page .tsbl-journal {
  min-width:0;
  margin:0;
  padding:27px 0 10px;
  border-top:1px solid var(--tsbl-line);
}
body.tsbl-page .tsbl-section-head {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin:0 0 22px;
  padding:0;
}
body.tsbl-page .tsbl-section-head > div {
  min-width:0;
}
body.tsbl-page .tsbl-section-head h2 {
  margin:7px 0 0;
  padding:0;
  color:var(--tsbl-ink);
  font-family:inherit;
  font-size:29px;
  font-weight:600;
  line-height:1.3;
  letter-spacing:-.7px;
  text-transform:none;
}
body.tsbl-page .tsbl-section-head > p {
  max-width:350px;
  margin:0 0 3px;
  padding:0;
  color:#716a79;
  font-size:12px;
  line-height:1.7;
  text-align:right;
}
body.tsbl-page .tsbl-empty {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:205px;
  margin:0;
  padding:30px 24px;
  border:1px solid var(--tsbl-line);
  border-radius:15px;
  background:linear-gradient(180deg,#fbfbfc 0%,#fff 100%);
  text-align:center;
}
body.tsbl-page .tsbl-empty-icon {
  display:flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  flex:0 0 46px;
  margin:0 0 14px;
  border:1px solid #f3dfe5;
  border-radius:13px;
  background:#fff7f9;
  color:var(--tsbl-accent);
}
body.tsbl-page .tsbl-empty-icon svg {
  display:block;
  width:23px;
  height:23px;
}
body.tsbl-page .tsbl-empty h3 {
  margin:0;
  padding:0;
  color:#393342;
  font-family:inherit;
  font-size:20px;
  font-weight:600;
  line-height:1.4;
  letter-spacing:-.3px;
}
body.tsbl-page .tsbl-empty > p {
  max-width:580px;
  margin:9px 0 0;
  padding:0;
  color:#716a79;
  font-size:12px;
  line-height:1.8;
}
body.tsbl-page .tsbl-post-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:32px 25px;
  width:100%;
  min-width:0;
}
body.tsbl-page article.tsbl-post-card {
  display:flex;
  flex-direction:column;
  min-width:0;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
body.tsbl-page a.tsbl-post-image {
  display:block;
  width:100%;
  aspect-ratio:16 / 10;
  margin:0;
  overflow:hidden;
  border:1px solid var(--tsbl-line);
  border-radius:12px;
  background:#f8f8fa;
}
body.tsbl-page .tsbl-post-image img {
  display:block;
  width:100%;
  max-width:100%;
  height:100%;
  margin:0;
  padding:12px;
  border:0;
  object-fit:contain;
  object-position:center;
}
body.tsbl-page .tsbl-post-body {
  display:flex;
  flex-direction:column;
  flex:1 1 auto;
  align-items:flex-start;
  min-width:0;
  padding:17px 2px 0;
}
body.tsbl-page .tsbl-post-body time {
  margin:0;
  color:#716a79;
  font-size:11px;
  line-height:1.6;
}
body.tsbl-page .tsbl-post-body h3 {
  width:100%;
  margin:9px 0 0;
  padding:0;
  font-family:inherit;
  font-size:19px;
  font-weight:600;
  line-height:1.5;
  letter-spacing:-.3px;
  overflow-wrap:break-word;
}
body.tsbl-page .tsbl-post-body h3 > a {
  color:var(--tsbl-ink);
  text-decoration:none;
}
body.tsbl-page .tsbl-post-body h3 > a:hover {
  color:var(--tsbl-accent);
}
body.tsbl-page .tsbl-post-body > p {
  display:-webkit-box;
  width:100%;
  margin:11px 0 0;
  padding:0;
  overflow:hidden;
  color:var(--tsbl-muted);
  font-size:13px;
  line-height:1.8;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
}
body.tsbl-page .tsbl-post-link {
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin:16px 0 0;
  padding:0;
  color:var(--tsbl-accent);
  font-size:12px;
  font-weight:600;
  line-height:1.6;
  text-decoration:none;
}
body.tsbl-page .tsbl-post-link:hover {
  text-decoration:underline;
}
body.tsbl-page .tsbl-pagination {
  margin:30px 0 0;
  padding:0;
  text-align:center;
}
body.tsbl-page .tsbl-pagination ul.page-numbers {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:7px;
  margin:0;
  padding:0;
  list-style:none;
}
body.tsbl-page .tsbl-pagination li {
  margin:0;
  padding:0;
  list-style:none;
}
body.tsbl-page .tsbl-pagination :is(a,span).page-numbers {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:35px;
  height:35px;
  margin:3px;
  padding:0 10px;
  border:1px solid var(--tsbl-line);
  border-radius:7px;
  color:#746d7e;
  background:#fff;
  font-size:12px;
  line-height:1;
  text-decoration:none;
}
body.tsbl-page .tsbl-pagination a.page-numbers:hover,
body.tsbl-page .tsbl-pagination .page-numbers.current {
  border-color:#edc8d1;
  color:var(--tsbl-accent);
  background:#fff7f9;
}
body.tsbl-page .tsbl-root a:focus-visible {
  outline:2px solid var(--tsbl-accent);
  outline-offset:4px;
}
@media(max-width:1100px) {
  body.tsbl-page .tsbl-root { padding-right:24px;padding-left:24px; }
  body.tsbl-page .tsbl-hero { gap:32px; }
  body.tsbl-page .tsbl-hero-copy h1 { font-size:42px;letter-spacing:-1.3px; }
  body.tsbl-page .tsbl-hero-visual { height:276px; }
}
@media(max-width:850px) {
  body.tsbl-page .tsbl-hero { grid-template-columns:minmax(0,1fr);gap:25px;padding-top:18px; }
  body.tsbl-page .tsbl-hero-copy h1 { max-width:none;font-size:43px; }
  body.tsbl-page .tsbl-hero-copy > p { max-width:540px;margin-top:16px; }
  body.tsbl-page .tsbl-hero-visual { max-width:640px;height:276px;margin:0 auto; }
  body.tsbl-page .tsbl-post-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px; }
}
@media(max-width:600px) {
  body.tsbl-page .tsbl-root { padding:0 17px 32px; }
  body.tsbl-page .tsbl-breadcrumb { gap:7px;margin:15px 0 9px;font-size:11px; }
  body.tsbl-page .tsbl-hero { gap:22px;min-height:0;padding:16px 0 25px; }
  body.tsbl-page .tsbl-eyebrow { font-size:10px;letter-spacing:1.4px; }
  body.tsbl-page .tsbl-hero-copy h1 { margin-top:12px;font-size:35px;line-height:1.18;letter-spacing:-1.1px; }
  body.tsbl-page .tsbl-hero-copy > p { margin-top:15px;font-size:13px;line-height:1.8; }
  body.tsbl-page .tsbl-hero-visual { height:222px;padding:10px;border-radius:16px; }
  body.tsbl-page .tsbl-visual-grid { grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr);gap:8px; }
  body.tsbl-page figure.tsbl-visual-card { padding:9px;border-radius:9px; }
  body.tsbl-page .tsbl-journal { padding:23px 0 6px; }
  body.tsbl-page .tsbl-section-head { align-items:flex-start;gap:12px;margin-bottom:18px; }
  body.tsbl-page .tsbl-section-head h2 { font-size:25px; }
  body.tsbl-page .tsbl-section-head > p { max-width:160px;margin:3px 0 0;font-size:11px;text-align:right; }
  body.tsbl-page .tsbl-empty { min-height:196px;padding:27px 17px;border-radius:12px; }
  body.tsbl-page .tsbl-empty h3 { font-size:18px; }
  body.tsbl-page .tsbl-empty > p { max-width:300px;font-size:11px; }
  body.tsbl-page .tsbl-post-grid { grid-template-columns:minmax(0,1fr);gap:29px; }
  body.tsbl-page .tsbl-post-body h3 { font-size:18px; }
  body.tsbl-page .tsbl-post-body { padding-top:14px; }
}
@media(prefers-reduced-motion:reduce) {
  body.tsbl-page .tsbl-root a { scroll-behavior:auto; }
}

body.tsbl-page .tsbl-post-placeholder { display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;color:#403747;background:#f5f2f5;font-size:23px;font-weight:700;line-height:1.5; }
body.tsbl-page .tsbl-post-placeholder > span { color:#c8334e;font-size:15px;font-weight:500;letter-spacing:2px; }
