/* StressTherapy Solutions — inner pages (page.php / single.php / index.php /
   404.php). Scoped under .sts-site; tokens + chrome come from global.css. */

.sts-main{flex:1 0 auto}

/* page / post header band */
.sts-pagehead{background:radial-gradient(120% 120% at 15% 0%,var(--surface),var(--surface-2));border-bottom:1px solid var(--line);padding-block:clamp(32px,6vw,60px)}
.sts-pagehead .sts-eyebrow{margin-bottom:10px}
.sts-pagehead .sts-eyebrow a{color:inherit;text-decoration:none}
.sts-pagehead .sts-eyebrow a:hover{color:var(--green-deep)}
.sts-pagetitle{font-size:clamp(28px,5vw,44px);font-weight:800;letter-spacing:-.02em;color:var(--ink);margin:0;line-height:1.1}
.sts-pagemeta{margin-top:12px;color:var(--ink-faint);font-size:14px;display:flex;gap:14px;flex-wrap:wrap}

/* content column */
.sts-content{padding-block:clamp(32px,6vw,64px)}
.sts-entry{max-width:760px;color:var(--ink-soft);font-size:17px}
.sts-feature-img{border-radius:14px;margin-bottom:1.4em}
.sts-entry > *:first-child{margin-top:0}
.sts-entry p{margin:0 0 1.1em}
.sts-entry h2{font-size:1.65em;font-weight:800;color:var(--ink);letter-spacing:-.01em;margin:1.5em 0 .5em}
.sts-entry h3{font-size:1.32em;font-weight:800;color:var(--ink);margin:1.4em 0 .5em}
.sts-entry h4{font-size:1.1em;font-weight:800;color:var(--ink);margin:1.3em 0 .4em}
.sts-entry a{color:var(--green-deep);text-decoration:underline;text-underline-offset:2px;text-decoration-color:color-mix(in srgb,var(--green) 45%,transparent)}
.sts-entry a:hover{text-decoration-color:var(--green)}
.sts-entry ul,.sts-entry ol{padding-left:1.35em;margin:0 0 1.1em}
.sts-entry li{margin:.35em 0}
.sts-entry img{border-radius:12px}
.sts-entry blockquote{margin:1.4em 0;padding:6px 0 6px 20px;border-left:4px solid var(--green);color:var(--ink);font-family:var(--serif);font-style:italic}
.sts-entry code{background:var(--surface-2);padding:2px 6px;border-radius:6px;font-size:.9em}
.sts-entry pre{background:var(--surface-2);padding:16px;border-radius:12px;overflow:auto}
.sts-entry table{width:100%;border-collapse:collapse;margin:0 0 1.2em;font-size:15px;display:block;overflow-x:auto}
.sts-entry th,.sts-entry td{border:1px solid var(--line);padding:10px 12px;text-align:left}
.sts-entry th{background:var(--surface-2);color:var(--ink)}
.sts-entry figure{margin:1.4em 0}
.sts-entry figcaption{font-size:14px;color:var(--ink-faint);margin-top:6px}
.sts-entry hr{border:0;border-top:1px solid var(--line);margin:2em 0}

/* page accordions ([sts_accordions] / [sts_accordion]) */
.sts-page-accs{margin:1.6em 0}
.sts-page-acc{border:1px solid var(--line);border-radius:14px;margin:0 0 14px;background:var(--surface);overflow:hidden}
.sts-page-acc>summary{cursor:pointer;list-style:none;padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.sts-page-acc>summary::-webkit-details-marker{display:none}
.sts-page-acc>summary::after{content:"+";font-size:24px;font-weight:700;line-height:1;color:var(--green);flex:0 0 auto}
.sts-page-acc[open]>summary::after{content:"\2013"}
.sts-page-acc-title{font-size:1.2em;font-weight:800;letter-spacing:-.01em;color:var(--ink)}
.sts-page-acc>summary:hover .sts-page-acc-title{color:var(--green-deep)}
.sts-page-acc-body{padding:0 22px 20px}
.sts-page-acc-body>*:first-child{margin-top:0}
.sts-page-acc-meta{font-size:13.5px;color:var(--ink-faint);margin:0 0 1.2em;padding-bottom:12px;border-bottom:1px solid var(--line)}
.sts-page-acc-meta a{color:var(--ink-faint)}
.sts-page-acc-updated{font-weight:700;color:var(--ink-soft)}

/* post grid (blog / archives / search) */
.sts-cardgrid{display:grid;gap:22px}
@media (min-width:640px){.sts-cardgrid{grid-template-columns:1fr 1fr}}
@media (min-width:960px){.sts-cardgrid{grid-template-columns:repeat(3,1fr)}}
.sts-postcard{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 1px 2px rgba(22,29,24,.04),0 16px 36px -26px rgba(27,82,51,.28)}
.sts-postcard-media{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--surface-2)}
.sts-postcard-media img{width:100%;height:100%;object-fit:cover}
.sts-postcard-title{font-size:19px;font-weight:800;letter-spacing:-.01em;margin:0;padding:18px 18px 0}
.sts-postcard-title a{color:var(--ink);text-decoration:none}
.sts-postcard-title a:hover{color:var(--green)}
.sts-postcard-excerpt{color:var(--ink-soft);font-size:15px;margin:0;padding:10px 18px 0}
.sts-postcard .sts-link{margin:14px 18px 18px;align-self:flex-start}

/* pagination (the_posts_pagination) */
.sts-content .navigation.pagination{margin-top:40px}
.sts-content .nav-links{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.sts-content .page-numbers{display:inline-flex;min-width:42px;height:42px;align-items:center;justify-content:center;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink-soft);text-decoration:none;font-weight:700}
.sts-content .page-numbers.current{background:var(--green);color:#fff;border-color:var(--green)}
:root[data-theme="dark"] .sts-content .page-numbers.current{color:#0f1611}
.sts-content a.page-numbers:hover{border-color:var(--green);color:var(--green)}

/* search form (core default markup) */
.sts-content .search-form,.sts-404 .search-form{display:flex;gap:8px;flex-wrap:wrap}
.sts-content .search-field,.sts-404 .search-field{flex:1 1 220px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font-family:inherit;font-size:15px}
.sts-content .search-submit,.sts-404 .search-submit{padding:12px 20px;border:0;border-radius:10px;background:var(--green);color:#fff;font-weight:700;cursor:pointer}
:root[data-theme="dark"] .sts-404 .search-submit,:root[data-theme="dark"] .sts-content .search-submit{color:#0f1611}

/* 404 */
.sts-404{text-align:center;padding-block:clamp(48px,10vw,110px)}
.sts-404 h1{font-size:clamp(60px,14vw,120px);font-weight:800;color:var(--green);margin:0;line-height:1}
.sts-404 p{color:var(--ink-soft);font-size:18px;margin:.5em auto 1.4em;max-width:44ch}
.sts-404 .search-form{max-width:420px;margin:0 auto}

/* ---- affiliation / certification marks (About Us) ------------------------ */
/* Supplied at wildly different sizes and aspect ratios — a 1094x1094 square GIF next
   to a 1548x829 landscape JPEG — so they are normalised to a common HEIGHT rather
   than a common width. Matching widths would leave the square mark towering over the
   wide one; matching heights is how a row of logos reads as a set. */
.sts-cert-logos{display:flex;flex-wrap:wrap;align-items:center;gap:26px 34px;margin:18px 0 0}
.sts-cert-logo{display:inline-flex;align-items:center;justify-content:center;
  text-decoration:none;border:0;padding:0}
.sts-cert-logo img{display:block;width:auto;height:74px;max-width:210px;object-fit:contain;
  transition:transform .15s ease,filter .15s ease}
.sts-cert-logo:hover img{transform:translateY(-2px)}
/* These are third-party marks on white plates. On the dark ground they would sit in
   glaring white boxes, so they get a slight knock-back rather than an invert — an
   inverted trademark is a different mark. */
:root[data-theme="dark"] .sts-site .sts-cert-logo img{filter:brightness(.94) saturate(.96)}
@media (max-width:520px){
  .sts-cert-logos{gap:20px 24px}
  .sts-cert-logo img{height:58px;max-width:150px}
}
