/* WordPress-specific layer on top of the approved compiled Tailwind design. */
html { scroll-behavior: smooth; }
body.admin-bar .site-header { top: 32px; }
@media (max-width: 782px) { body.admin-bar .site-header { top: 46px; } }

.site-header.is-scrolled {
  background: rgba(255,255,255,.95);
  backdrop-filter: blur(12px);
  box-shadow: 0 4px 20px -2px rgba(15,23,42,.05);
  border-color: transparent;
}

.header-search-form { display:flex; width:0; opacity:0; overflow:hidden; transition:width .3s ease, opacity .3s ease, margin .3s ease; }
.header-search-form.is-open { width:200px; opacity:1; margin-right:.5rem; }
.header-mobile-search { display:none; }
.mobile-menu { max-height: 0; overflow: hidden; transition: max-height .3s ease; }
.mobile-menu.is-open { max-height: 720px; }

.themedtrio-image-placeholder {
  background:
    radial-gradient(circle at 20% 25%, rgba(37,99,235,.22), transparent 32%),
    radial-gradient(circle at 78% 72%, rgba(15,118,110,.18), transparent 30%),
    linear-gradient(135deg, #eaf0f8 0%, #f8fafc 55%, #eef2f7 100%);
}

.themedtrio-ad-slot { width: 100%; text-align: center; }
.themedtrio-ad-slot .widget,
.themedtrio-ad-slot .themedtrio-widget { margin: 0; }
.themedtrio-ad-slot iframe,
.themedtrio-ad-slot ins { max-width: 100%; }

/* Article content */
.article-content { font-family: var(--font-sans); color: rgba(15,23,42,.92); font-size: 18px; line-height: 1.8; }
.article-content > * { margin-bottom: 1.75rem; }
.article-content p { margin-bottom: 1.75rem; }
.article-content h2 { font-family: 'Poppins', system-ui, sans-serif; font-size: 28px; line-height: 1.3; font-weight: 600; color: #0f172a; margin-top: 4rem; margin-bottom: 1.5rem; }
.article-content h3 { font-family: 'Poppins', system-ui, sans-serif; font-size: 22px; line-height: 1.35; font-weight: 600; color: #0f172a; margin-top: 3rem; margin-bottom: 1rem; }
.article-content a { color: #2563eb; text-decoration: underline; text-underline-offset: 3px; }
.article-content ul, .article-content ol { margin: 1.5rem 0 2rem 1.4rem; }
.article-content ul { list-style: disc; }
.article-content ol { list-style: decimal; }
.article-content li { margin-bottom: .65rem; }
.article-content figure { margin: 2.75rem 0; }
.article-content figcaption { color: #64748b; font-size: 13px; line-height: 1.5; font-style: italic; text-align: center; margin-top: .75rem; }
.article-content img { border-radius: 16px; }
.article-content blockquote,
.article-content .wp-block-quote.is-style-themedtrio-pull-quote {
  margin: 3.5rem -3rem;
  padding: 2.25rem 1rem;
  border-top: 2px solid #e2e8f0;
  border-bottom: 2px solid #e2e8f0;
  border-left: 0;
  text-align: center;
  background: linear-gradient(90deg, transparent, rgba(37,99,235,.04), transparent);
}
.article-content blockquote p { font-family: 'Poppins', system-ui, sans-serif; font-size: 26px; line-height: 1.45; font-style: italic; font-weight: 500; margin: 0; }
.article-content .wp-block-group.is-style-themedtrio-key-points {
  background: rgba(241,245,249,.8);
  border-left: 4px solid #2563eb;
  border-radius: 12px;
  padding: 2rem;
  margin: 3rem 0;
}
.article-content .wp-block-group.is-style-themedtrio-key-points h2,
.article-content .wp-block-group.is-style-themedtrio-key-points h3 { margin-top: 0; font-size: 16px; text-transform: uppercase; letter-spacing: .08em; }

/* Comments are intentionally hidden in v1 unless a site owner opts into them later. */

/* WordPress pagination */
.nav-links { display:flex; flex-wrap:wrap; justify-content:center; gap:.5rem; margin-top:4rem; }
.page-numbers { display:inline-flex; min-width:44px; min-height:44px; align-items:center; justify-content:center; border:1px solid #e2e8f0; background:#fff; border-radius:999px; padding:.65rem 1rem; font:600 13px/1 Inter, sans-serif; color:#0f172a; }
.page-numbers.current, .page-numbers:hover { background:#0f172a; color:#fff; border-color:#0f172a; }

/* Forms */
.themedtrio-form input,
.themedtrio-form select,
.themedtrio-form textarea { width:100%; background:#fff; border:1px solid #e2e8f0; border-radius:12px; padding:1rem 1.25rem; color:#0f172a; box-shadow:0 1px 2px rgba(15,23,42,.04); }
.themedtrio-form input:focus,
.themedtrio-form select:focus,
.themedtrio-form textarea:focus { outline:2px solid rgba(37,99,235,.18); outline-offset:1px; border-color:#2563eb; }
.themedtrio-form label { display:block; font-size:13px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; margin-bottom:.75rem; }
.contact-status { border-radius:12px; padding:1rem 1.25rem; margin-bottom:1.5rem; font:500 14px/1.5 Inter,sans-serif; }
.contact-status.success { background:#f0fdfa; color:#0f766e; border:1px solid #99f6e4; }
.contact-status.error { background:#fef2f2; color:#b91c1c; border:1px solid #fecaca; }

/* About scope cards */
.scope-card { transition: box-shadow .3s ease, transform .3s ease, border-color .3s ease; }
.scope-card:hover { transform: translateY(-2px); box-shadow:0 8px 30px -4px rgba(15,23,42,.07); }

/* WordPress utility */
.screen-reader-text { position:absolute!important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

@media (max-width: 1023px) {
  /* Mobile/tablet search opens as a full-width dropdown below the header row.
     This prevents the logo/search/menu row from growing horizontally. */
  .header-search-form { display:none !important; }
  .header-mobile-search {
    display:block;
    max-height:0;
    opacity:0;
    overflow:hidden;
    pointer-events:none;
    transform:translateY(-8px);
    padding:0;
    transition:max-height .3s ease, opacity .2s ease, transform .3s ease, padding .3s ease;
  }
  .header-mobile-search.is-open {
    max-height:88px;
    opacity:1;
    pointer-events:auto;
    transform:translateY(0);
    padding:0 0 14px;
  }
  .header-mobile-search__form {
    position:relative;
    width:100%;
  }
  .header-mobile-search__input {
    display:block;
    width:100%;
    height:48px;
    padding:0 50px 0 16px;
    border:1px solid var(--themedtrio-border, #d6dad7);
    border-radius:14px;
    background:var(--themedtrio-surface, #fafaf8);
    color:#15273a;
    font:500 15px/1 Inter,sans-serif;
    box-sizing:border-box;
    box-shadow:0 4px 16px rgba(21,39,58,.05);
  }
  .header-mobile-search__input:focus {
    outline:3px solid rgba(39,95,143,.14);
    outline-offset:1px;
    border-color:#275f8f;
  }
  .header-mobile-search__submit {
    position:absolute;
    right:5px;
    top:50%;
    width:40px;
    height:40px;
    display:flex;
    align-items:center;
    justify-content:center;
    transform:translateY(-50%);
    border:0;
    border-radius:10px;
    background:transparent;
    color:#425466;
    cursor:pointer;
  }
  .header-mobile-search__submit:hover,
  .header-mobile-search__submit:focus-visible { color:#275f8f; background:rgba(39,95,143,.07); }
}

@media (max-width: 767px) {
  .article-content { font-size: 16.5px; line-height: 1.75; }
  .article-content h2 { font-size: 24px; margin-top: 3rem; }
  .article-content h3 { font-size: 20px; margin-top: 2.5rem; }
  .article-content blockquote,
  .article-content .wp-block-quote.is-style-themedtrio-pull-quote { margin: 3rem 0; padding: 1.75rem .5rem; }
  .article-content blockquote p { font-size: 21px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .scope-card,
  .header-mobile-search { transition:none; }
}

.themedtrio-hero-gradient { background: linear-gradient(to top, rgba(15,23,42,.96) 0%, rgba(15,23,42,.5) 52%, rgba(15,23,42,.05) 100%); }
.themedtrio-history-warm { background: linear-gradient(to top, rgba(54,26,6,.92), rgba(54,26,6,.42), transparent); }
.themedtrio-history-cool { background: linear-gradient(to top, rgba(15,23,42,.94), rgba(15,23,42,.42), transparent); }
.themedtrio-category-blue { background: linear-gradient(to bottom, rgba(59,130,246,.05), transparent); }
.themedtrio-category-red { background: linear-gradient(to bottom, rgba(239,68,68,.05), transparent); }
.themedtrio-category-amber { background: linear-gradient(to bottom, rgba(245,158,11,.08), transparent); }
.themedtrio-category-teal { background: linear-gradient(to bottom, rgba(20,184,166,.07), transparent); }
.themedtrio-hp { position:absolute!important; left:-9999px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.themedtrio-custom-logo .custom-logo-link { display:block; line-height:0; }
.themedtrio-custom-logo img { max-height:42px; width:auto; }

/* Site wordmark / Custom Logo */
.themedtrio-logo-link,
.themedtrio-wordmark {
  display:inline-flex;
  align-items:baseline;
  flex-shrink:0;
  line-height:1;
  text-decoration:none !important;
}
.themedtrio-logo-link { align-items:center; line-height:0; }
.themedtrio-logo-image,
.themedtrio-logo-link img {
  display:block;
  width:auto;
  height:auto;
  max-width:220px;
  max-height:42px;
  object-fit:contain;
}
.themedtrio-wordmark {
  font-family:'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size:1.4rem;
  letter-spacing:-.045em;
  color:#0f172a;
}
.themedtrio-wordmark-the,
.themedtrio-wordmark-trio { font-weight:700; color:inherit; }
.themedtrio-wordmark-med { font-weight:500; font-style:italic; color:#2563eb; }
.themedtrio-wordmark--light { color:#fff; }
.themedtrio-wordmark--light .themedtrio-wordmark-med { color:#93c5fd; }
@media (max-width: 390px) {
  .themedtrio-wordmark { font-size:1.22rem; }
  .themedtrio-logo-image,
  .themedtrio-logo-link img { max-width:165px; max-height:36px; }
}

/* --------------------------------------------------------------------------
   v1.2 layout fidelity fixes
   These semantic styles intentionally do not depend on Tailwind utilities
   that may not have existed in the original React build output.
   -------------------------------------------------------------------------- */

/* Reusable editorial UI */
.themedtrio-eyebrow {
  display:inline-block;
  margin-bottom:.75rem;
  font:700 11px/1.2 Inter, sans-serif;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#2563eb;
}
.themedtrio-pill-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:.9rem 1.75rem;
  border:0;
  border-radius:999px;
  background:#0f172a;
  color:#fff;
  font:700 13px/1 Inter, sans-serif;
  letter-spacing:.07em;
  text-transform:uppercase;
  text-decoration:none;
  cursor:pointer;
  transition:background-color .25s ease, transform .25s ease, box-shadow .25s ease;
  box-shadow:0 4px 14px rgba(15,23,42,.08);
}
.themedtrio-pill-button:hover { background:#2563eb; color:#fff; transform:translateY(-1px); }
.themedtrio-pill-button:focus-visible { outline:3px solid rgba(37,99,235,.25); outline-offset:3px; }

/* Always-visible AdSense preview slots. Once a widget contains real AdSense,
   the placeholder is automatically replaced by that widget's markup. */
.themedtrio-ad-slot {
  width:100%;
  text-align:center;
}
.themedtrio-ad-label {
  margin:0 0 .65rem;
  color:#94a3b8;
  font:700 9px/1.2 Inter,sans-serif;
  letter-spacing:.15em;
  text-transform:uppercase;
  text-align:center;
}
.themedtrio-ad-placeholder {
  min-height:96px;
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:.35rem;
  padding:1.25rem;
  border:1px dashed #cbd5e1;
  border-radius:12px;
  background:linear-gradient(135deg,rgba(248,250,252,.95),rgba(241,245,249,.75));
  color:#64748b;
}
.themedtrio-ad-placeholder__eyebrow {
  font:700 9px/1.2 Inter,sans-serif;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#94a3b8;
}
.themedtrio-ad-placeholder strong { font:600 14px/1.3 Inter,sans-serif; color:#475569; }
.themedtrio-ad-placeholder small { font:400 11px/1.3 Inter,sans-serif; color:#94a3b8; }
.themedtrio-inline-ad .themedtrio-ad-placeholder { min-height:120px; }
.themedtrio-category-ad-column { margin-top:1.5rem; }
@media (min-width:1024px) {
  .themedtrio-category-ad-column { margin-top:0; }
  .themedtrio-category-ad-inner { position:sticky; top:6rem; }
  .themedtrio-category-ad-column .themedtrio-ad-placeholder { min-height:250px; }
}

/* Single post featured media must remain centered regardless of attachment
   dimensions or WordPress-generated image classes. */
.single-featured-media {
  display:block;
  width:100%;
  max-width:1000px;
  margin-left:auto !important;
  margin-right:auto !important;
}
.single-featured-media__frame {
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  margin-inline:auto;
}
.single-featured-media__frame img,
.single-featured-media .wp-post-image {
  display:block !important;
  width:100% !important;
  height:100% !important;
  margin:0 auto !important;
  object-fit:cover;
  object-position:center;
}

/* About page */
.themedtrio-about-page {
  padding:clamp(3.5rem,7vw,6.5rem) 0 clamp(5rem,9vw,8rem);
}
.themedtrio-about-hero {
  width:min(900px,calc(100% - 2rem));
  margin:0 auto;
  text-align:center;
}
.themedtrio-about-hero h1 {
  margin:0 0 1.25rem;
  font-family:'Poppins',system-ui,sans-serif;
  font-size:clamp(2.5rem,5vw,3.5rem);
  line-height:1.08;
  font-weight:700;
  letter-spacing:-.035em;
  color:#0f172a;
}
.themedtrio-about-hero p {
  max-width:720px;
  margin:0 auto;
  color:#64748b;
  font:400 clamp(1.05rem,2vw,1.35rem)/1.7 Inter,sans-serif;
}
.themedtrio-about-visual-wrap {
  width:min(1050px,calc(100% - 2rem));
  margin:3rem auto clamp(4rem,7vw,6rem);
}
.themedtrio-about-visual {
  position:relative;
  aspect-ratio:2.55/1;
  overflow:hidden;
  border:1px solid rgba(226,232,240,.9);
  border-radius:24px;
  background:#eef3f8;
  box-shadow:0 12px 38px -18px rgba(15,23,42,.24);
}
.themedtrio-about-image {
  width:100% !important;
  height:100% !important;
  object-fit:cover;
  object-position:center;
  transition:transform 1.2s cubic-bezier(.2,0,0,1);
}
.themedtrio-about-visual:hover .themedtrio-about-image { transform:scale(1.025); }
.themedtrio-about-visual-fallback {
  position:absolute;
  inset:0;
  overflow:hidden;
  background:
    radial-gradient(circle at 72% 25%,rgba(37,99,235,.16),transparent 22%),
    radial-gradient(circle at 23% 72%,rgba(15,118,110,.12),transparent 26%),
    linear-gradient(125deg,#f7f9fc 0%,#eaf0f7 52%,#f8fafc 100%);
}
.themedtrio-about-orb { position:absolute; border:1px solid rgba(37,99,235,.18); border-radius:999px; }
.themedtrio-about-orb--one { width:260px;height:260px;right:10%;top:-34%; }
.themedtrio-about-orb--two { width:130px;height:130px;left:12%;bottom:-22%;border-color:rgba(15,118,110,.2); }
.themedtrio-about-line { position:absolute;height:1px;background:linear-gradient(90deg,transparent,rgba(71,85,105,.2),transparent);transform-origin:center; }
.themedtrio-about-line--one { width:58%;left:22%;top:40%;transform:rotate(7deg); }
.themedtrio-about-line--two { width:48%;left:31%;top:62%;transform:rotate(-9deg); }
.themedtrio-about-pulse { position:absolute;left:50%;top:50%;width:84px;height:84px;border:1px solid rgba(37,99,235,.22);border-radius:999px;transform:translate(-50%,-50%);box-shadow:0 0 0 18px rgba(37,99,235,.035),0 0 0 36px rgba(37,99,235,.02); }
.themedtrio-about-main {
  width:min(1000px,calc(100% - 2rem));
  margin:0 auto;
}
.themedtrio-about-section { margin-bottom:clamp(4.5rem,8vw,7rem); }
.themedtrio-about-section-heading { max-width:720px; margin:0 auto 2.5rem; text-align:center; }
.themedtrio-about-section-heading h2 {
  margin:0 0 .75rem;
  font-family:'Poppins',system-ui,sans-serif;
  font-size:clamp(1.75rem,3.5vw,2.25rem);
  line-height:1.15;
  font-weight:700;
  letter-spacing:-.025em;
  color:#0f172a;
}
.themedtrio-about-section-heading p { margin:0; color:#64748b; font:400 16px/1.7 Inter,sans-serif; }
.themedtrio-about-scope-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; }
.themedtrio-about-scope-card {
  display:flex;
  flex-direction:column;
  min-height:190px;
  padding:1.75rem;
  border:1px solid #e2e8f0;
  border-radius:18px;
  background:rgba(248,250,252,.72);
  color:#0f172a;
  text-decoration:none;
}
.themedtrio-about-scope-card p { margin:.95rem 0 1.5rem; color:#475569; font:400 15px/1.68 Inter,sans-serif; }
.themedtrio-about-scope-card__link { margin-top:auto; color:#2563eb; font:700 11px/1.3 Inter,sans-serif; letter-spacing:.06em; text-transform:uppercase; }
.themedtrio-approach-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }
.themedtrio-approach-item { padding:1.6rem 1.25rem; border-top:1px solid #cbd5e1; text-align:left; }
.themedtrio-approach-item > span { display:block; margin-bottom:1.2rem; color:#2563eb; font:700 10px/1 Inter,sans-serif; letter-spacing:.12em; }
.themedtrio-approach-item h3 { margin:0 0 .55rem; font:700 16px/1.3 Inter,sans-serif; color:#0f172a; }
.themedtrio-approach-item p { margin:0; color:#64748b; font:400 14px/1.65 Inter,sans-serif; }
.themedtrio-about-editor-content { max-width:760px; margin-left:auto; margin-right:auto; }
.themedtrio-about-cta {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:2rem;
  padding:2.25rem 0 0;
  border-top:1px solid #e2e8f0;
}
.themedtrio-about-cta h2 { margin:0; font:700 clamp(1.35rem,2.7vw,1.8rem)/1.25 'Poppins',system-ui,sans-serif; color:#0f172a; }

/* Contact page — explicit grid prevents the 5/7 layout from collapsing when a
   Tailwind utility was not part of the compiled React CSS. */
.themedtrio-contact-page { padding:clamp(3.5rem,7vw,7rem) 0 clamp(5rem,8vw,8rem); }
.themedtrio-contact-shell { width:min(1280px,calc(100% - 2rem)); margin:0 auto; }
.themedtrio-contact-layout { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:clamp(3rem,6vw,6rem); align-items:center; }
.themedtrio-contact-context { min-width:0; }
.themedtrio-contact-context h1 {
  margin:0 0 1.5rem;
  font-family:'Poppins',system-ui,sans-serif;
  font-size:clamp(3.25rem,6.2vw,5.5rem);
  line-height:1.03;
  font-weight:700;
  letter-spacing:-.045em;
  color:#0f172a;
}
.themedtrio-contact-lead { max-width:500px; margin:0 0 2.75rem; color:#64748b; font:400 clamp(1.05rem,1.7vw,1.25rem)/1.7 Inter,sans-serif; }
.themedtrio-contact-routes { display:grid; gap:1.65rem; padding-top:2rem; border-top:1px solid #e2e8f0; }
.themedtrio-contact-routes h3 { margin:0 0 .55rem; font:700 12px/1.25 Inter,sans-serif; letter-spacing:.09em; text-transform:uppercase; color:#0f172a; }
.themedtrio-contact-routes > div:nth-child(2) h3 { color:#2563eb; }
.themedtrio-contact-routes p { max-width:520px; margin:0; color:#64748b; font:400 15px/1.65 Inter,sans-serif; }
.themedtrio-contact-panel {
  min-width:0;
  padding:clamp(1.5rem,4vw,4rem);
  border:1px solid rgba(226,232,240,.95);
  border-radius:24px;
  background:rgba(241,245,249,.55);
}
.themedtrio-contact-form { width:100%; max-width:720px; margin:0 auto; }
.themedtrio-contact-form-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; }
.themedtrio-field { margin-bottom:1.55rem; min-width:0; }
.themedtrio-contact-form .themedtrio-field label { margin-bottom:.7rem; }
.themedtrio-contact-form input,
.themedtrio-contact-form select,
.themedtrio-contact-form textarea { min-height:54px; background:#fff; }
.themedtrio-contact-form textarea { min-height:190px; }
.themedtrio-contact-submit { margin-top:.25rem; }

/* Search page — mirrors the approved React page rather than the earlier
   left-aligned WordPress approximation. */
.themedtrio-search-header {
  padding:clamp(3rem,6vw,5rem) 1rem clamp(2.5rem,5vw,3.75rem);
  border-bottom:1px solid rgba(226,232,240,.75);
  background:rgba(241,245,249,.45);
}
.themedtrio-search-header-inner { width:min(800px,100%); margin:0 auto; text-align:center; }
.themedtrio-search-header h1 {
  margin:0 0 1.5rem;
  color:#0f172a;
  font:700 clamp(2rem,4vw,2.5rem)/1.1 'Poppins',system-ui,sans-serif;
  letter-spacing:-.025em;
}
.themedtrio-search-form { position:relative; width:min(600px,100%); margin:0 auto; }
.themedtrio-search-form input {
  display:block;
  width:100%;
  min-height:56px;
  padding:.9rem 4rem .9rem 1.5rem;
  border:1px solid #e2e8f0;
  border-radius:999px;
  background:#fff;
  color:#0f172a;
  font:400 16px/1.4 Inter,sans-serif;
  box-shadow:0 2px 8px rgba(15,23,42,.035);
  outline:none;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.themedtrio-search-form input:focus { border-color:#2563eb; box-shadow:0 0 0 3px rgba(37,99,235,.1); }
.themedtrio-search-form button {
  position:absolute;
  top:50%;
  right:.65rem;
  display:flex;
  width:42px;
  height:42px;
  align-items:center;
  justify-content:center;
  transform:translateY(-50%);
  border-radius:999px;
  background:#0f172a;
  color:#fff;
  cursor:pointer;
  transition:background-color .2s ease;
}
.themedtrio-search-form button:hover { background:#2563eb; }
.themedtrio-search-main { width:min(1000px,calc(100% - 2rem)); margin:0 auto; padding:clamp(3rem,6vw,5rem) 0 clamp(5rem,8vw,7rem); }
.themedtrio-search-summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:2.5rem; padding-bottom:1rem; border-bottom:1px solid rgba(226,232,240,.8); }
.themedtrio-search-summary p { margin:0; color:#64748b; font:400 16px/1.5 Inter,sans-serif; }
.themedtrio-search-summary span { flex-shrink:0; color:#94a3b8; font:400 14px/1.5 Inter,sans-serif; }
.themedtrio-search-results { display:flex; flex-direction:column; gap:2rem; }
.themedtrio-search-result-mobile { display:none; }
.themedtrio-search-empty { padding:5rem 1.5rem; border:1px solid #e2e8f0; border-radius:18px; background:#fff; text-align:center; }
.themedtrio-search-empty svg { margin:0 auto 1.5rem; color:#cbd5e1; }
.themedtrio-search-empty h2 { margin:0 0 1rem; color:#0f172a; font:600 clamp(1.5rem,3vw,1.8rem)/1.25 'Poppins',system-ui,sans-serif; }
.themedtrio-search-empty p { max-width:520px; margin:0 auto 2rem; color:#64748b; font:400 16px/1.7 Inter,sans-serif; }
.themedtrio-search-prompt { padding:5rem 1rem; text-align:center; }
.themedtrio-search-prompt h2 { color:#64748b; font:500 1.5rem/1.4 'Poppins',system-ui,sans-serif; }

/* Generic WordPress pages including Privacy Policy. */
.themedtrio-standard-page {
  padding:clamp(4rem,7vw,7rem) 1rem clamp(5rem,9vw,8rem);
}
.themedtrio-standard-page__inner {
  width:min(860px,100%);
  margin:0 auto;
  padding:clamp(1.75rem,4vw,3rem);
  border:1px solid rgba(226,232,240,.85);
  border-radius:20px;
  background:rgba(255,255,255,.72);
  box-shadow:0 12px 38px -30px rgba(15,23,42,.25);
}
.themedtrio-standard-page__header { margin-bottom:2.5rem; padding-bottom:1.5rem; border-bottom:1px solid #e2e8f0; }
.themedtrio-standard-page__header h1 {
  margin:0;
  color:#0f172a;
  font:700 clamp(2.25rem,5vw,3.5rem)/1.1 'Poppins',system-ui,sans-serif;
  letter-spacing:-.035em;
}
.themedtrio-standard-page__content { max-width:760px; }
.themedtrio-standard-page__content > :first-child { margin-top:0; }

@media (max-width: 900px) {
  .themedtrio-contact-layout { grid-template-columns:1fr; gap:3.25rem; }
  .themedtrio-contact-context h1 { font-size:clamp(2.75rem,10vw,4.75rem); }
  .themedtrio-contact-lead { margin-bottom:2rem; }
  .themedtrio-approach-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; }
}

@media (max-width: 640px) {
  .themedtrio-about-page { padding-top:3rem; padding-bottom:5rem; }
  .themedtrio-about-visual-wrap { margin-top:2.25rem; margin-bottom:3.75rem; }
  .themedtrio-about-visual { aspect-ratio:16/8.5; border-radius:18px; }
  .themedtrio-about-scope-grid { grid-template-columns:1fr; gap:1rem; }
  .themedtrio-about-scope-card { min-height:0; padding:1.4rem; }
  .themedtrio-approach-grid { grid-template-columns:1fr 1fr; gap:1rem; }
  .themedtrio-approach-item { padding:1.25rem .75rem; }
  .themedtrio-about-cta { align-items:flex-start; flex-direction:column; }

  .themedtrio-contact-page { padding-top:3rem; padding-bottom:5rem; }
  .themedtrio-contact-shell { width:min(100% - 1.5rem,1280px); }
  .themedtrio-contact-layout { gap:2.5rem; }
  .themedtrio-contact-context h1 { font-size:clamp(2.7rem,14vw,4rem); margin-bottom:1.15rem; }
  .themedtrio-contact-panel { padding:1.35rem; border-radius:18px; }
  .themedtrio-contact-form-row { grid-template-columns:1fr; gap:0; }
  .themedtrio-contact-submit { width:100%; }

  .themedtrio-search-header { padding-top:3rem; padding-bottom:2.5rem; }
  .themedtrio-search-main { width:min(100% - 1.5rem,1000px); padding-top:3rem; }
  .themedtrio-search-summary { align-items:flex-start; flex-direction:column; gap:.4rem; }
  .themedtrio-search-result-desktop { display:none; }
  .themedtrio-search-result-mobile { display:block; }
  .themedtrio-search-results { gap:1.5rem; }

  .themedtrio-standard-page { padding:3rem .75rem 5rem; }
  .themedtrio-standard-page__inner { padding:1.35rem; border-radius:16px; }
  .themedtrio-standard-page__header { margin-bottom:2rem; }
}

@media (prefers-reduced-motion: reduce) {
  .themedtrio-pill-button,
  .themedtrio-about-image { transition:none; }
  .themedtrio-pill-button:hover,
  .themedtrio-about-visual:hover .themedtrio-about-image { transform:none; }
}

/* Homepage News & Views filters are true in-place tabs, not archive links. */
.themedtrio-news-tablist {
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
  margin-bottom:2rem;
}
.themedtrio-news-tab {
  appearance:none;
  border:1px solid #e2e8f0;
  border-radius:999px;
  background:#fff;
  color:#64748b;
  padding:.52rem 1rem;
  font:500 12px/1.2 Inter,system-ui,sans-serif;
  letter-spacing:.025em;
  cursor:pointer;
  transition:color .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.themedtrio-news-tab:hover {
  border-color:#94a3b8;
  color:#334155;
}
.themedtrio-news-tab:focus-visible {
  outline:none;
  border-color:#2563eb;
  box-shadow:0 0 0 3px rgba(37,99,235,.12);
}
.themedtrio-news-tab.is-active {
  border-color:#2563eb;
  background:#2563eb;
  color:#fff;
}
.themedtrio-news-panel[hidden] { display:none !important; }
.themedtrio-news-panel.is-entering { animation:themedtrio-news-panel-in .24s ease both; }
.themedtrio-news-empty {
  padding:3.5rem 1rem;
  border-top:1px solid #e2e8f0;
  border-bottom:1px solid #e2e8f0;
  text-align:center;
}
.themedtrio-news-empty p { margin:0; color:#64748b; font:400 15px/1.6 Inter,system-ui,sans-serif; }
@keyframes themedtrio-news-panel-in {
  from { opacity:0; transform:translateY(6px); }
  to { opacity:1; transform:translateY(0); }
}
@media (min-width:768px) {
  .themedtrio-news-tablist { gap:.75rem; margin-bottom:3.5rem; }
  .themedtrio-news-tab { padding:.58rem 1.25rem; font-size:12.5px; }
}
@media (prefers-reduced-motion: reduce) {
  .themedtrio-news-panel.is-entering { animation:none; }
  .themedtrio-news-tab { transition:none; }
}


/* v1.4 softer editorial palette
   Reduces the stark-white feel without turning the publication dark. */
:root {
  --themedtrio-canvas:#f1f2ef;
  --themedtrio-paper:#f8f8f5;
  --themedtrio-paper-strong:#f5f6f2;
  --themedtrio-surface-dim:#e5e9e6;
  --themedtrio-ink:#17283a;
  --themedtrio-muted:#5f6f7d;
  --themedtrio-border:#cfd6d2;
  --themedtrio-blue:#285f89;
  --themedtrio-blue-soft:#dde6ed;
  --themedtrio-teal:#176f69;
  --themedtrio-teal-soft:#dce9e6;
  --themedtrio-amber:#9b5a16;
  --themedtrio-amber-soft:#ece1d2;
  --themedtrio-red:#a44747;
  --themedtrio-red-soft:#eee0df;
}

body { background-color:var(--themedtrio-canvas); color:var(--themedtrio-ink); }
.bg-background { background-color:var(--themedtrio-canvas) !important; }
.bg-surface, .bg-white { background-color:var(--themedtrio-paper) !important; }
.bg-surface-dim { background-color:var(--themedtrio-surface-dim) !important; }
.bg-surface-dim\/30 { background-color:rgba(229,233,230,.30) !important; }
.bg-surface-dim\/40 { background-color:rgba(229,233,230,.40) !important; }
.bg-surface-dim\/50 { background-color:rgba(229,233,230,.50) !important; }
.bg-surface-dim\/60 { background-color:rgba(229,233,230,.60) !important; }
.bg-surface-dim\/70 { background-color:rgba(229,233,230,.70) !important; }
.bg-foreground { background-color:var(--themedtrio-ink) !important; }
.text-foreground { color:var(--themedtrio-ink) !important; }
.text-background { color:var(--themedtrio-canvas) !important; }
.text-muted { color:var(--themedtrio-muted) !important; }
.border-border { border-color:var(--themedtrio-border) !important; }
.border-background { border-color:var(--themedtrio-canvas) !important; }

/* Primary accent becomes deeper and a little less electric. */
.bg-accent { background-color:var(--themedtrio-blue) !important; }
.bg-accent\/80 { background-color:rgba(40,95,137,.82) !important; }
.text-accent { color:var(--themedtrio-blue) !important; }
.border-accent { border-color:var(--themedtrio-blue) !important; }
.border-accent\/30 { border-color:rgba(40,95,137,.30) !important; }
.text-accent\/10 { color:rgba(40,95,137,.10) !important; }
.text-accent\/20 { color:rgba(40,95,137,.20) !important; }

/* Section accents: richer, muted, and editorial rather than pastel. */
.bg-teal { background-color:var(--themedtrio-teal) !important; }
.text-teal { color:var(--themedtrio-teal) !important; }
.border-teal { border-color:var(--themedtrio-teal) !important; }
.border-teal\/10 { border-color:rgba(23,111,105,.12) !important; }
.bg-teal-light { background-color:var(--themedtrio-teal-soft) !important; }
.bg-teal-light\/30 { background-color:rgba(220,233,230,.45) !important; }
.bg-teal-light\/40 { background-color:rgba(220,233,230,.56) !important; }
.bg-teal-50 { background-color:#e1ebe8 !important; }
.border-teal-200 { border-color:#b9d2cd !important; }
.text-teal-700 { color:#155f5a !important; }

.bg-amber { background-color:var(--themedtrio-amber) !important; }
.bg-amber\/80 { background-color:rgba(155,90,22,.84) !important; }
.text-amber { color:var(--themedtrio-amber) !important; }
.border-amber { border-color:var(--themedtrio-amber) !important; }
.border-amber\/10 { border-color:rgba(155,90,22,.13) !important; }
.bg-amber-light\/30 { background-color:rgba(236,225,210,.62) !important; }
.bg-amber-50 { background-color:#eee4d7 !important; }
.border-amber-200 { border-color:#d9c4a8 !important; }
.text-amber-700 { color:#7d4813 !important; }

.bg-red { background-color:var(--themedtrio-red) !important; }
.bg-red-50 { background-color:#eee0df !important; }
.border-red-200 { border-color:#d9b9b7 !important; }
.text-red-700 { color:#893a3a !important; }

.bg-blue-50 { background-color:#e2e9ef !important; }
.border-blue-200 { border-color:#bdcdd9 !important; }
.text-blue-700 { color:#285f89 !important; }

/* Slightly stronger neutral utility surfaces used in WP templates. */
.bg-slate-50, .bg-gray-100 { background-color:#e9ece9 !important; }
.border-slate-200 { border-color:var(--themedtrio-border) !important; }
.text-slate-700, .text-gray-600 { color:#4c5e6d !important; }

.site-header { background:rgba(248,248,245,.98) !important; border-color:var(--themedtrio-border); }
.site-header.is-scrolled {
  background:rgba(244,245,241,.94) !important;
  box-shadow:0 6px 24px -7px rgba(23,40,58,.12);
}
.themedtrio-wordmark { color:var(--themedtrio-ink); }
.themedtrio-wordmark-med { color:var(--themedtrio-blue); }

/* More visible structure on light sections. */
.themedtrio-news-tab {
  border-color:var(--themedtrio-border);
  background:var(--themedtrio-paper);
  color:var(--themedtrio-muted);
}
.themedtrio-news-tab:hover { border-color:#98a7a5; color:var(--themedtrio-ink); }
.themedtrio-news-tab:focus-visible { border-color:var(--themedtrio-blue); box-shadow:0 0 0 3px rgba(40,95,137,.14); }
.themedtrio-news-tab.is-active { border-color:var(--themedtrio-blue); background:var(--themedtrio-blue); }
.themedtrio-news-empty { border-color:var(--themedtrio-border); }
.themedtrio-news-empty p { color:var(--themedtrio-muted); }

.themedtrio-category-blue { background:linear-gradient(to bottom,rgba(40,95,137,.11),transparent) !important; }
.themedtrio-category-red { background:linear-gradient(to bottom,rgba(164,71,71,.10),transparent) !important; }
.themedtrio-category-amber { background:linear-gradient(to bottom,rgba(155,90,22,.12),transparent) !important; }
.themedtrio-category-teal { background:linear-gradient(to bottom,rgba(23,111,105,.11),transparent) !important; }

.themedtrio-image-placeholder {
  background:
    radial-gradient(circle at 20% 25%,rgba(40,95,137,.24),transparent 32%),
    radial-gradient(circle at 78% 72%,rgba(23,111,105,.20),transparent 30%),
    linear-gradient(135deg,#dfe5e7 0%,#eef0ed 55%,#e2e7e5 100%);
}

/* Ad placeholders remain neutral but no longer disappear into a white canvas. */
.themedtrio-ad-label { color:#7d898f; }
.themedtrio-ad-placeholder {
  border-color:#b8c3c0;
  background:linear-gradient(135deg,#e8ebe8,#dfe4e1);
  color:#5d6c73;
}
.themedtrio-ad-placeholder__eyebrow { color:#7d898f; }
.themedtrio-ad-placeholder strong { color:#43545e; }

/* Forms and pagination follow the softer paper/surface palette. */
.page-numbers {
  border-color:var(--themedtrio-border);
  background:var(--themedtrio-paper);
  color:var(--themedtrio-ink);
}
.page-numbers.current, .page-numbers:hover { background:var(--themedtrio-ink); border-color:var(--themedtrio-ink); }
.themedtrio-form input,
.themedtrio-form select,
.themedtrio-form textarea {
  background:var(--themedtrio-paper);
  border-color:var(--themedtrio-border);
  color:var(--themedtrio-ink);
}
.themedtrio-form input:focus,
.themedtrio-form select:focus,
.themedtrio-form textarea:focus { border-color:var(--themedtrio-blue); outline-color:rgba(40,95,137,.20); }

/* About / Contact / Search / generic pages had explicit whites in v1.2. */
.themedtrio-about-hero h1,
.themedtrio-about-section-heading h2,
.themedtrio-about-cta h2,
.themedtrio-contact-context h1,
.themedtrio-contact-routes h3,
.themedtrio-search-header h1,
.themedtrio-search-empty h2,
.themedtrio-standard-page__header h1 { color:var(--themedtrio-ink); }
.themedtrio-about-hero p,
.themedtrio-about-section-heading p,
.themedtrio-approach-item p,
.themedtrio-contact-lead,
.themedtrio-contact-routes p,
.themedtrio-search-summary p,
.themedtrio-search-empty p,
.themedtrio-search-prompt h2 { color:var(--themedtrio-muted); }
.themedtrio-about-visual {
  border-color:var(--themedtrio-border);
  background:#dde4e4;
  box-shadow:0 14px 38px -20px rgba(23,40,58,.25);
}
.themedtrio-about-visual-fallback {
  background:
    radial-gradient(circle at 72% 25%,rgba(40,95,137,.18),transparent 22%),
    radial-gradient(circle at 23% 72%,rgba(23,111,105,.15),transparent 26%),
    linear-gradient(125deg,#e9ece9 0%,#dfe5e5 52%,#eceeea 100%);
}
.themedtrio-about-scope-card {
  border-color:var(--themedtrio-border);
  background:rgba(248,248,245,.82);
  color:var(--themedtrio-ink);
}
.themedtrio-about-scope-card p { color:#4f616e; }
.themedtrio-about-scope-card__link,
.themedtrio-approach-item > span,
.themedtrio-contact-routes > div:nth-child(2) h3 { color:var(--themedtrio-blue); }
.themedtrio-approach-item { border-color:#bcc7c4; }
.themedtrio-about-cta,
.themedtrio-contact-routes { border-color:var(--themedtrio-border); }

.themedtrio-contact-panel {
  border-color:#c6cfcb;
  background:rgba(224,229,225,.72);
}
.themedtrio-contact-form input,
.themedtrio-contact-form select,
.themedtrio-contact-form textarea { background:var(--themedtrio-paper); }

.themedtrio-search-header {
  border-color:#cdd5d1;
  background:rgba(226,230,226,.72);
}
.themedtrio-search-form input {
  border-color:var(--themedtrio-border);
  background:var(--themedtrio-paper);
  color:var(--themedtrio-ink);
  box-shadow:0 3px 10px rgba(23,40,58,.04);
}
.themedtrio-search-form input:focus { border-color:var(--themedtrio-blue); box-shadow:0 0 0 3px rgba(40,95,137,.12); }
.themedtrio-search-form button { background:var(--themedtrio-ink); }
.themedtrio-search-form button:hover { background:var(--themedtrio-blue); }
.themedtrio-search-summary { border-color:var(--themedtrio-border); }
.themedtrio-search-summary span { color:#77858b; }
.themedtrio-search-empty {
  border-color:var(--themedtrio-border);
  background:var(--themedtrio-paper);
}

.themedtrio-standard-page__inner {
  border-color:#cbd3cf;
  background:rgba(248,248,245,.88);
  box-shadow:0 14px 42px -32px rgba(23,40,58,.28);
}
.themedtrio-standard-page__header { border-color:var(--themedtrio-border); }

/* Article reading remains light, but not stark white. */
.article-content { color:#263847; }
.article-content h2,
.article-content h3 { color:var(--themedtrio-ink); }
.article-content a { color:var(--themedtrio-blue); }
.article-content figcaption { color:var(--themedtrio-muted); }
.article-content blockquote,
.article-content .wp-block-quote.is-style-themedtrio-pull-quote {
  border-color:#cbd4d1;
  background:linear-gradient(90deg,transparent,rgba(40,95,137,.055),transparent);
}
.article-content .wp-block-group.is-style-themedtrio-key-points {
  background:rgba(226,231,228,.88);
  border-left-color:var(--themedtrio-blue);
}

/* Keep dark editorial hero/footer contrast, but tune their blue warmth to match. */
.themedtrio-hero-gradient { background:linear-gradient(to top,rgba(23,40,58,.96) 0%,rgba(23,40,58,.54) 52%,rgba(23,40,58,.08) 100%); }
.themedtrio-history-cool { background:linear-gradient(to top,rgba(23,40,58,.95),rgba(23,40,58,.46),transparent); }
.themedtrio-history-warm { background:linear-gradient(to top,rgba(70,40,12,.93),rgba(70,40,12,.46),transparent); }


/* --------------------------------------------------------------------------
   v1.5 conversion-fidelity audit
   Critical media sizing and semantic fallbacks below intentionally avoid
   depending on utility classes that were not emitted by the original Vite
   Tailwind build. This keeps the WordPress port visually stable as content
   dimensions vary.
   -------------------------------------------------------------------------- */
.text-decoration-none { text-decoration:none !important; }

.themedtrio-post-image {
  display:block;
  max-width:100%;
}
.img-zoom > .themedtrio-post-image,
.img-zoom > .themedtrio-image-placeholder,
.themedtrio-history-media > .themedtrio-post-image,
.themedtrio-history-media > .themedtrio-image-placeholder {
  width:100% !important;
  height:100% !important;
  object-fit:cover;
  object-position:center;
}
.themedtrio-history-media { overflow:hidden; }

/* Clinical Corner: featured media is a top, full-width image. WordPress image
   intrinsic dimensions must never turn this into a left-aligned thumbnail. */
.themedtrio-clinical-featured,
.themedtrio-clinical-featured > a,
.themedtrio-clinical-featured-media {
  display:block;
  width:100%;
  min-width:0;
}
.themedtrio-clinical-featured-media > img,
.themedtrio-clinical-featured-media > .themedtrio-image-placeholder {
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover;
  object-position:center;
}

.themedtrio-footer-description { max-width:250px; }
.themedtrio-empty-state-copy { max-width:36rem; }

/* Guard all common editorial media containers against intrinsic image widths. */
#news .img-zoom,
#factcheck .img-zoom,
#clinical .img-zoom,
.single-featured-media__frame,
.themedtrio-search-results .img-zoom {
  max-width:100%;
}

@media (max-width:767px) {
  .themedtrio-footer-description { max-width:32rem; }
}


/* Dedicated footer logo uploaded from Appearance > Customize > TheMedTrio Branding. */
.themedtrio-footer-logo-link { display:inline-flex; align-items:center; }
.themedtrio-footer-logo-image {
  width:auto;
  height:auto;
  max-width:220px;
  max-height:52px;
  object-fit:contain;
}
@media (max-width: 390px) {
  .themedtrio-footer-logo-image { max-width:180px; max-height:44px; }
}
