/* Single blog — flat article column; sidebar as distinct tinted panel */

#te-blog-single > .te-container{
  margin-top:1.25rem;
}
@media(min-width:640px){
  #te-blog-single > .te-container{
    margin-top:1.75rem;
  }
}

html{
  scroll-behavior:smooth;
  scroll-padding-top:88px;
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
}

.te-blog-single-layout{
  display:grid;
  gap:2.5rem;
  align-items:start;
}
@media(min-width:1024px){
  .te-blog-single-layout{
    grid-template-columns:minmax(0,1fr) minmax(240px,280px);
    gap:3.5rem;
  }
}

.te-blog-single-layout__main{min-width:0}
.te-blog-sidebar{min-width:0}

/* Sticky on the aside only — overflow on the same node breaks sticky in Chrome */
#te-blog-single,
#te-blog-single > .te-container,
.te-blog-single-layout{
  overflow:visible;
}

/* Sidebar shell — visually distinct from article column */
.te-blog-sidebar__inner{
  box-sizing:border-box;
  background:linear-gradient(165deg,#f8fafc 0%,#f1f5f9 55%,#ecfdf5 100%);
  border:1px solid #d1d5db;
  border-radius:14px;
  padding:1.25rem 1.1rem 1.1rem;
  box-shadow:
    0 1px 2px rgba(15,23,42,.04),
    inset 0 1px 0 rgba(255,255,255,.85);
}

@media(min-width:1024px){
  .te-blog-sidebar{
    align-self:start;
    position:sticky;
    top:88px;
    z-index:20;
  }
  .te-blog-sidebar__inner{
    max-height:calc(100vh - 88px);
    overflow-y:auto;
    overflow-x:hidden;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    padding-right:calc(1.1rem - 2px);
  }
}

.te-blog-sidebar__panel{
  padding:0 0 1.1rem;
  margin-bottom:1.1rem;
  border-bottom:1px solid rgba(148,163,184,.45);
}
.te-blog-sidebar__panel:last-child{
  border-bottom:none;
  margin-bottom:0;
  padding-bottom:0;
}
.te-blog-sidebar__panel--widgets{
  padding-top:.35rem;
}

.te-blog-sidebar__panel-title{
  display:flex;
  align-items:center;
  gap:.5rem;
  font-size:.75rem;
  font-weight:800;
  color:#0f172a;
  letter-spacing:.06em;
  text-transform:uppercase;
  margin:0 0 .75rem;
}
.te-blog-sidebar__panel-title::before{
  content:'';
  width:3px;
  height:1rem;
  border-radius:2px;
  background:#00AA6C;
  flex-shrink:0;
}

.te-blog-widget__title{
  display:flex;
  align-items:center;
  gap:.45rem;
  font-size:.75rem;
  font-weight:800;
  color:#0f172a;
  letter-spacing:.04em;
  margin:0 0 .65rem;
  text-transform:uppercase;
}
.te-blog-widget__title::before{
  content:'';
  width:3px;
  height:.85rem;
  border-radius:2px;
  background:#94a3b8;
  flex-shrink:0;
}

.te-blog-widget{margin-bottom:1.25rem}
.te-blog-widget:last-child{margin-bottom:0}

/* Table of contents */
.te-blog-sidebar__panel--toc .te-blog-sidebar__panel-title{margin-bottom:.5rem}
.te-blog-toc__list{
  list-style:none;
  margin:0;
  padding:0;
}
.te-blog-toc__item{
  margin:0;
  padding:0;
  line-height:1.35;
}
.te-blog-toc__item--depth-2{margin-bottom:.35rem}
.te-blog-toc__item--depth-3{padding-left:.75rem;margin-bottom:.3rem}
.te-blog-toc__item--depth-4{padding-left:1.35rem;margin-bottom:.25rem}
.te-blog-toc__item--depth-5{padding-left:1.9rem;margin-bottom:.25rem}
.te-blog-toc__item--depth-6{padding-left:2.45rem;margin-bottom:.25rem}
.te-blog-toc__link{
  display:block;
  font-size:.8125rem;
  color:#475569;
  text-decoration:none;
  padding:.35rem .45rem;
  margin-left:-.45rem;
  margin-right:-.45rem;
  border-radius:6px;
  transition:color .15s ease,background .15s ease;
}
.te-blog-toc__link:hover{
  color:#00AA6C;
  background:rgba(0,170,108,.08);
}

/* WhatsApp CTA */
.te-blog-sidebar__panel--cta{
  padding-bottom:1.1rem;
}
.te-blog-cta-wa{
  display:flex;
  align-items:center;
  gap:.65rem;
  width:100%;
  box-sizing:border-box;
  padding:.9rem 1rem;
  border-radius:10px;
  background:#25D366;
  color:#fff;
  font-size:.9375rem;
  font-weight:700;
  text-decoration:none;
  line-height:1.25;
  border:1px solid rgba(255,255,255,.2);
  box-shadow:0 2px 8px rgba(37,211,102,.35);
  transition:filter .15s ease,transform .15s ease,box-shadow .15s ease;
}
.te-blog-cta-wa:hover{
  color:#fff;
  filter:brightness(1.05);
  box-shadow:0 4px 14px rgba(37,211,102,.4);
}
.te-blog-cta-wa:focus-visible{
  outline:2px solid #111827;
  outline-offset:2px;
}
.te-blog-cta-wa__icon{
  flex-shrink:0;
  display:flex;
  opacity:.95;
}
.te-blog-cta-wa__text{flex:1;min-width:0}

/* In-article anchors — offset under sticky header */
.te-post-content h2,
.te-post-content h3,
.te-post-content h4,
.te-post-content h5,
.te-post-content h6{
  scroll-margin-top:88px;
}

/* Article shell — no shadow, no “card” */
.te-blog-article{
  margin:0;
  padding:0;
  background:transparent;
  box-shadow:none;
}

.te-blog-article__header{
  margin:0 0 1.5rem;
  padding:0 0 1.25rem;
  border-bottom:1px solid #e5e7eb;
}

.te-blog-article__title{
  font-size:clamp(1.75rem,4vw,2.25rem);
  font-weight:700;
  color:#111827;
  line-height:1.2;
  margin:0 0 .5rem;
  letter-spacing:-.02em;
}

.te-blog-article__meta{
  margin:0;
  font-size:.875rem;
  color:#6b7280;
}
.te-blog-article__meta a{
  color:#00AA6C;
  text-decoration:none;
  font-weight:500;
}
.te-blog-article__meta a:hover{text-decoration:underline}

.te-blog-article__figure{
  margin:0 0 2rem;
  padding:0;
  border:0;
}
.te-blog-article__img{
  display:block;
  width:100%;
  height:auto;
  max-height:min(420px,55vh);
  object-fit:cover;
  border-radius:4px;
}

/* Comfortable measure for reading only */
.te-blog-article__prose{
  max-width:40rem;
}

/* Article body */
.te-post-content{
  color:#374151;
  font-size:1.0625rem;
  line-height:1.75;
}
.te-post-content > *:first-child{margin-top:0}
.te-post-content > *:last-child{margin-bottom:0}

.te-post-content p{margin:0 0 1.125em}

.te-post-content h2,
.te-post-content h3,
.te-post-content h4,
.te-post-content .wp-block-heading{
  color:#111827;
  font-weight:700;
  line-height:1.25;
  margin-top:1.65em;
  margin-bottom:.45em;
}
.te-post-content h2:first-child,
.te-post-content h3:first-child,
.te-post-content h4:first-child{margin-top:0}

.te-post-content h2{
  font-size:clamp(1.25rem,2.2vw,1.5rem);
  padding-bottom:.35em;
  border-bottom:1px solid #e5e7eb;
}
.te-post-content h3{font-size:clamp(1.1rem,2vw,1.25rem)}
.te-post-content h4{font-size:1.05rem;color:#1f2937}

.te-post-content h5,
.te-post-content h6{
  color:#374151;
  font-weight:600;
  font-size:1rem;
  margin-top:1.4em;
  margin-bottom:.35em;
  line-height:1.35;
}

.te-post-content ul,
.te-post-content ol{
  margin:0 0 1.125em 1.25em;
  padding:0;
}
.te-post-content ul{list-style:disc}
.te-post-content ol{list-style:decimal}
.te-post-content li{margin-bottom:.35em}
.te-post-content li > ul,
.te-post-content li > ol{margin-top:.35em;margin-bottom:.35em}

.te-post-content blockquote{
  margin:1.25em 0;
  padding:.65em 0 .65em 1.1em;
  border-left:3px solid #00AA6C;
  background:transparent;
  color:#4b5563;
  font-style:normal;
}
.te-post-content blockquote p{margin-bottom:.5em}
.te-post-content blockquote p:last-child{margin-bottom:0}

.te-post-content hr{
  border:0;
  border-top:1px solid #e5e7eb;
  margin:2em 0;
}

.te-post-content a{color:#00AA6C;text-decoration:underline;text-underline-offset:2px}
.te-post-content a:hover{color:#007A50}

.te-post-content img,
.te-post-content .wp-block-image img{
  max-width:100%;
  height:auto;
  border-radius:4px;
}
.te-post-content .wp-block-image{margin:1.5em 0}
.te-post-content figcaption{
  font-size:.8125rem;
  color:#6b7280;
  margin-top:.5em;
}

.te-post-content pre,
.te-post-content code{
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  font-size:.9em;
}
.te-post-content pre{
  background:#1f2937;
  color:#e5e7eb;
  padding:1rem 1.1rem;
  border-radius:4px;
  overflow-x:auto;
  margin:1.25em 0;
}
.te-post-content :not(pre) > code{
  background:#f3f4f6;
  padding:.15em .4em;
  border-radius:3px;
  color:#1f2937;
}

.te-post-content table{
  width:100%;
  border-collapse:collapse;
  font-size:.9375rem;
  margin:1.25em 0;
}
.te-post-content th,
.te-post-content td{
  border:1px solid #e5e7eb;
  padding:.5em .75em;
  text-align:left;
}
.te-post-content th{background:#f9fafb;font-weight:600}

/* Prev / next */
.te-blog-adjacent{
  display:grid;
  gap:1.25rem;
  margin-top:2.5rem;
  padding-top:1.5rem;
  border-top:1px solid #e5e7eb;
}
@media(min-width:640px){
  .te-blog-adjacent{
    grid-template-columns:1fr 1fr;
    gap:2rem;
  }
}
.te-blog-adjacent__col--next{
  text-align:left;
}
@media(min-width:640px){
  .te-blog-adjacent__col--next{text-align:right}
}
.te-blog-adjacent__label{
  display:block;
  font-size:.75rem;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:#9ca3af;
  margin-bottom:.35rem;
}
.te-blog-adjacent__link{
  font-size:.9375rem;
  font-weight:600;
  color:#111827;
  text-decoration:none;
  line-height:1.35;
}
.te-blog-adjacent__link:hover{color:#00AA6C}

/* Related — flat list, no cards */
.te-related-posts{
  margin-top:2.5rem;
  padding-top:1.75rem;
  border-top:1px solid #e5e7eb;
}
.te-related-posts__title{
  font-size:1.0625rem;
  font-weight:700;
  color:#111827;
  margin:0 0 1rem;
}
.te-related-list{
  list-style:none;
  margin:0;
  padding:0;
}
.te-related-list__item{
  display:flex;
  gap:1rem;
  align-items:flex-start;
  padding:.875rem 0;
  border-bottom:1px solid #f3f4f6;
}
.te-related-list__item:first-child{padding-top:0}
.te-related-list__item:last-child{border-bottom:none;padding-bottom:0}
.te-related-list__thumb{
  flex-shrink:0;
  width:72px;
  height:72px;
  border-radius:4px;
  overflow:hidden;
  background:#f3f4f6;
}
.te-related-list__img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.te-related-list__text{
  min-width:0;
  flex:1;
  display:flex;
  flex-direction:column;
  gap:.25rem;
  justify-content:center;
}
.te-related-list__title{
  font-size:.9375rem;
  font-weight:600;
  color:#111827;
  text-decoration:none;
  line-height:1.35;
}
.te-related-list__title:hover{color:#00AA6C}
.te-related-list__date{
  font-size:.75rem;
  color:#9ca3af;
}
