/* =====================================================================
   Түгээмэл Хөгжил — глобал CSS (дизайны санал)
   Хаана тавих вэ:
   - Elementor Pro: Elementor → Site Settings → Custom CSS
   - эсвэл WordPress: Appearance → Customize → Additional CSS
   Template-ууд энэ CSS-гүйгээр ч ажиллана; энэ нь хүртээмж, жижиг
   дэлгэцийн байрлалыг сайжруулна.
   ===================================================================== */

/* =====================================================================
   0. БРЭНДИЙН ӨНГӨ — цорын ганц эх сурвалж (2026-10-12)
   Эх файл: elementor-build/palette.py · үүсгэгч: tools/patch-brand-colors.py
   Контрастын шалгалт: python tools/contrast.py (унасан хослол 0 байх ёстой)
   ЭНЭ БЛОКИЙГ ГАРААР ЗАСАХГҮЙ — palette.py-г засаад patch-brand-colors.py-г ажиллуул.
   ===================================================================== */
:root {
  /* Брэндийн 6 өнгө */
  --th-sunray: #EDAE49;           /* гол CTA, дулаан онцлох (дэвсгэр) */
  --th-brick: #D1495B;            /* ховор акцент (icon, хүрээ) */
  --th-seaweed: #00798C;          /* үндсэн брэнд: холбоос, icon */
  --th-lapis: #30638E;            /* хоёрдогч акцент */
  --th-indigo: #003D5B;           /* үндсэн бараан текст, footer */
  --th-cream: #FBF6EC;            /* дулаан цайвар суурь */
  /* Үүсмэл өнгө */
  --th-white: #FFFFFF;
  --th-text: #2A4654;
  --th-muted: #53707F;
  --th-meta: #44606E;
  --th-line: #D5E0E5;
  --th-line2: #BCCFD8;
  --th-field: #6E8C9C;
  --th-surface: #EDF4F6;
  --th-surface2: #F3F8F9;
  --th-canvas: #F1F5F7;
  --th-sunray-d: #D69A33;
  --th-sunray-tx: #8A5A00;
  --th-brick-tx: #B23344;
  --th-brick-bg: #FBEEF0;
  --th-indigo-ln: #1B5370;
  --th-on-dark-mt: #BFD3DD;
  /* Хуучин нэрсийн alias (өмнөх CSS-ийн var() ажиллаж байхын тулд) */
  --th-ink: var(--th-indigo);
  --th-green: var(--th-seaweed);
  --th-pale: var(--th-surface);
  /* Хэлбэр, сүүдэр */
  --th-radius-card: 20px;
  --th-radius-lg: 26px;
  --th-shadow-sm: 0 8px 26px rgba(0, 61, 91, .07);
  --th-shadow-md: 0 14px 38px rgba(0, 61, 91, .12);
}

/* 1. Гарын товчлуураар шилжихэд тод харагдах focus */
a:focus-visible,
button:focus-visible,
[role="button"]:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
.elementor-button:focus-visible,
.e-n-accordion-item-title:focus-visible {
  outline: 3px solid var(--th-seaweed) !important;
  outline-offset: 3px !important;
  box-shadow: 0 0 0 6px var(--th-white) !important;
  border-radius: 6px;
}
.th-dark a:focus-visible,
.th-dark .elementor-button:focus-visible,
.th-hero a:focus-visible,
.th-hero .elementor-button:focus-visible {
  outline-color: var(--th-sunray) !important;
  box-shadow: 0 0 0 6px var(--th-indigo) !important;
}

/* 2. Текст доторх холбоосыг өнгөөр төдийгүй доогуур зураасаар ялгах */
.elementor-widget-text-editor a {
  color: var(--th-seaweed);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.th-dark .elementor-widget-text-editor a { color: var(--th-sunray); }
.th-textlink .elementor-button-text { text-decoration: underline; text-underline-offset: 4px; }

/* 3. Урт үг, и-мэйл, холбоос жижиг дэлгэц дээр хэвтээ гүйлгээ үүсгэхгүй */
.elementor-heading-title,
.elementor-widget-text-editor,
.elementor-icon-list-text,
.elementor-button-text {
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: manual;
}
.th-contact a, .th-contact .elementor-icon-list-text { overflow-wrap: anywhere; }
.elementor-button { white-space: normal; text-align: center; }

/* 4. Жижиг гарчиг (eyebrow) — semantic гарчиг биш, харагдах байдал л */
.th-eyebrow .elementor-heading-title { letter-spacing: .04em; }

/* 5. Карт: доод хэсэгт товчийг тэгшлэх */
.th-card > .e-con-inner, .th-card { height: 100%; }
.th-card .th-textlink { margin-top: auto; }

/* 6. Зургийн орон: харьцаа хадгалах (object-fit) */
.th-img img { width: 100%; height: auto; object-fit: cover; }
.th-ratio-4-3 img { aspect-ratio: 4 / 3; }
.th-ratio-16-9 img { aspect-ratio: 16 / 9; }
.th-ratio-3-2 img { aspect-ratio: 3 / 2; }

/* 7. Хөдөлгөөн багасгах тохиргоог хүндэтгэх */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}

/* 8. Зөвхөн дэлгэц уншигчид зориулсан текст */
.th-sr-only {
  position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

/* =====================================================================
   9. Мэдээний бичлэг, archive (theme-ээр рендерлэгддэг хэсгүүд)
   ===================================================================== */
.site-main { max-width: 1200px; margin: 0 auto; padding: 48px 20px 64px; }
.site-main .entry-title, .site-main h1 { font-family: Nunito, "Noto Sans", sans-serif; font-weight: 900; line-height: 1.2; }
.site-main .entry-content, .site-main .post-content { max-width: 760px; }
.site-main .entry-content p, .site-main .post-content p { font-size: 17px; line-height: 1.75; color: var(--th-text); }
.site-main .entry-content li { font-size: 17px; line-height: 1.7; color: var(--th-text); }
.site-main .entry-meta, .site-main .post-meta { color: var(--th-muted); font-size: 15px; }
.site-main article + article { border-top: 1px solid var(--th-line); padding-top: 28px; margin-top: 28px; }
.site-main .pagination, .site-main .navigation { margin-top: 32px; }
.site-main .page-numbers { display: inline-block; padding: 8px 14px; border: 1px solid var(--th-line); border-radius: 8px; margin-right: 6px; }
.site-main .page-numbers.current { background: var(--th-seaweed); color: var(--th-white); border-color: var(--th-seaweed); }

/* Видео, зураг жижиг дэлгэцэд багтах (хэвтээ гүйлгээ үүсгэхгүй) */
.site-main iframe, .entry-content iframe, .elementor-widget-container iframe { max-width: 100%; }
.entry-content iframe[src*="youtube"], .site-main iframe[src*="youtube"] { width: 100%; aspect-ratio: 16 / 9; height: auto; }
.site-main img, .entry-content img { max-width: 100%; height: auto; }

/* =====================================================================
   10. Нэвтрэх маягт ([th_login])
   ===================================================================== */
.th-login { background: var(--th-white); border: 1px solid var(--th-line); border-radius: 16px; padding: 24px; }
.th-login label { display: block; font-weight: 600; margin-bottom: 6px; color: var(--th-indigo); }
.th-login input[type="text"], .th-login input[type="password"] {
  width: 100%; padding: 12px 14px; border: 1px solid var(--th-field); border-radius: 10px; font-size: 16px; margin-bottom: 14px;
}
.th-login .login-remember label { font-weight: 400; display: inline-flex; align-items: center; gap: 8px; }
.th-login input[type="submit"], .th-login .th-btn {
  display: inline-block; background: var(--th-sunray); color: var(--th-indigo); border: 0; border-radius: 999px;
  padding: 13px 28px; font-size: 16px; font-weight: 700; cursor: pointer; text-decoration: none;
}
.th-login .th-btn--ghost { background: transparent; border: 1px solid var(--th-seaweed); color: var(--th-seaweed); }
.th-login__error { background: var(--th-brick-bg); border-left: 4px solid var(--th-brick); padding: 12px 14px; border-radius: 8px; color: var(--th-brick-tx); }
.th-login__lost { margin-top: 12px; font-size: 15px; }
.th-login__actions { display: flex; gap: 12px; flex-wrap: wrap; }

/* =====================================================================
   11. Төлөвийн хайрцаг (хөгжүүлэлтийн шатанд байгаа функц)
   ===================================================================== */
.th-status { border-left: 5px solid var(--th-sunray) !important; }

/* =====================================================================
   12. «Үндсэн агуулга руу шилжих» холбоос
   ===================================================================== */
.th-skip-link {
  position: absolute; left: -9999px; top: 0; z-index: 100000;
  background: var(--th-indigo); color: var(--th-white); padding: 12px 18px; border-radius: 0 0 8px 0; font-weight: 700;
}
.th-skip-link:focus { left: 0; }

/* =====================================================================
   13. Толгойн хэсэг — таблет/утсан дээр багтаах
   ===================================================================== */
/* ЧУХАЛ: .ehf-header нь <body>-гийн class тул сонгогчийг #masthead-аар хязгаарлана
   (эс тэгвээс дүрэм бүх хуудсанд тархаж, 1200px контейнерийг эвдэнэ). */
@media (max-width: 1024px) {
  #masthead .elementor-button { padding: 11px 20px; font-size: 15px; }
  #masthead .th-logo img { max-width: 72px; }
  .hfe-nav-menu__toggle { margin-inline: 4px; }
}
@media (max-width: 600px) {
  #masthead .elementor-button { padding: 10px 16px; font-size: 14px; }
  #masthead .th-logo img { max-width: 60px; }
}
/* HFE-ийн гар утасны цэс: тод фокус ба хэмжээ */
.hfe-nav-menu__toggle:focus-visible { outline: 3px solid var(--th-seaweed) !important; outline-offset: 3px; }
.hfe-nav-menu .sub-menu a, .hfe-nav-menu a.hfe-menu-item { min-height: 44px; display: flex; align-items: center; }
/* Дэд цэсний идэвхтэй мөр (2026-10-12): HFE зөвхөн дээд түвшний идэвхтэй мөрийг өнгөөр ялгадаг тул дэд мөр
   хөрш мөрүүдээсээ ялгарахгүй байв. Зөвхөн өнгөөр ялгахгүй (өнгө ялгах чадваргүй хэрэглэгчийн тулд) —
   зүүн талын зураас нэмэв. #masthead угтвар нь HFE-ийн өөрийн өнгөний дүрмээс давах specificity өгнө. */
#masthead .hfe-nav-menu .sub-menu .menu-item.current-menu-item > a.hfe-sub-menu-item,
#masthead .hfe-nav-menu .sub-menu .menu-item.current-menu-item > a.hfe-menu-item {
  color: var(--th-seaweed); font-weight: 800; box-shadow: inset 3px 0 0 var(--th-seaweed);
}
/* Толгойн товч шахагдаж хэтрэхээс сэргийлэх */
#masthead .elementor-widget-button { flex: 0 0 auto !important; }
#masthead .elementor-button { white-space: nowrap; }
#masthead .hfe-nav-menu-wrapper { min-width: 0; }

/* =====================================================================
   14. Мэдээний мета ба хайлт
   ===================================================================== */
.th-meta { color: var(--th-muted); font-size: 15px; margin: 0 0 16px; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.th-meta a { color: var(--th-seaweed); }
.th-search label { display: block; font-weight: 600; margin-bottom: 8px; color: var(--th-indigo); }
.th-search__row { display: flex; gap: 10px; flex-wrap: wrap; }
.th-search input[type="search"] {
  flex: 1 1 260px; padding: 12px 14px; border: 1px solid var(--th-field); border-radius: 10px; font-size: 16px; min-width: 0;
}
.th-search button {
  background: var(--th-seaweed); color: var(--th-white); border: 0; border-radius: 999px; padding: 12px 26px; font-size: 16px;
  font-weight: 700; cursor: pointer;
}
.th-search button:focus-visible { outline: 3px solid var(--th-indigo); outline-offset: 3px; }
/* HFE-ийн англи skip-link давхардуулахгүй (манай монгол хувилбар үлдэнэ) */
.hfe-skip-link { display: none !important; }
/* Урт шошготой товч жижиг дэлгэцэд багтах */
.elementor-widget-button { max-width: 100%; min-width: 0; }
.elementor-widget-button .elementor-button { max-width: 100%; }

/* =====================================================================
   15. Мэдээний карт (HFE Basic Posts) — брэндийн өнгөнд оруулах
   ===================================================================== */
.th-posts .hfe-post-card {
  background: var(--th-white); border: 1px solid var(--th-line); border-radius: 16px; overflow: hidden;
  display: flex; flex-direction: column; height: 100%;
}
.th-posts .hfe-post-content { padding: 22px 22px 24px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.th-posts .hfe-post-title { margin: 0; font-family: Nunito, "Noto Sans", sans-serif; font-weight: 800; }
.th-posts .hfe-post-title a { color: var(--th-indigo) !important; text-decoration: none; }
.th-posts .hfe-post-title a:hover,
.th-posts .hfe-post-title a:focus-visible { color: var(--th-seaweed) !important; text-decoration: underline; }
.th-posts .hfe-post-date, .th-posts .hfe-post-meta { color: var(--th-muted) !important; font-size: 14px; }
.th-posts .hfe-post-excerpt { color: var(--th-text); font-size: 16px; line-height: 1.65; }
.th-posts .hfe-post-card a.hfe-post-read-more,
.th-posts .hfe-post-content > a:last-child {
  color: var(--th-seaweed) !important; font-weight: 700; text-decoration: underline; text-underline-offset: 3px;
  margin-top: auto;
}
.th-posts .hfe-post-card img { width: 100%; height: auto; object-fit: cover; }
.th-posts .hfe-posts-grid { gap: 24px; }

/* =====================================================================
   16. Газрын зураг ба холбоо барих маягт
   ===================================================================== */
.elementor-widget-google_maps iframe, .th-map iframe { width: 100% !important; max-width: 100%; border: 0; border-radius: 16px; }
.th-map .elementor-custom-embed { border-radius: 16px; overflow: hidden; }

.th-form { background: var(--th-white); border: 1px solid var(--th-line); border-radius: 16px; padding: 28px; }
.th-form label { display: block; font-weight: 600; margin-bottom: 6px; color: var(--th-indigo); }
.th-form .th-req { color: var(--th-brick-tx); }
.th-form input[type="text"], .th-form input[type="email"], .th-form input[type="tel"],
.th-form select, .th-form textarea {
  width: 100%; padding: 12px 14px; border: 1px solid var(--th-field); border-radius: 10px;
  font-size: 16px; font-family: inherit; background: var(--th-white); color: var(--th-indigo);
}
.th-form p { margin: 0 0 16px; }
.th-form textarea { min-height: 140px; }
.th-form .wpcf7-list-item { margin: 0; }
.th-form .wpcf7-acceptance label { display: flex; gap: 10px; align-items: flex-start; font-weight: 400; font-size: 15px; }
.th-form input[type="submit"] {
  background: var(--th-sunray); color: var(--th-indigo); border: 0; border-radius: 999px; padding: 14px 34px;
  font-size: 16px; font-weight: 700; cursor: pointer;
}
.th-form input[type="submit"]:hover { background: var(--th-sunray-d); }
.th-form input:focus-visible, .th-form select:focus-visible, .th-form textarea:focus-visible {
  outline: 3px solid var(--th-seaweed); outline-offset: 2px; border-color: var(--th-seaweed);
}
.th-form .wpcf7-not-valid-tip { color: var(--th-brick-tx); font-size: 14px; margin-top: 4px; }
.th-form .wpcf7-response-output {
  border: 0 !important; border-left: 4px solid var(--th-seaweed) !important; background: var(--th-surface);
  border-radius: 8px; padding: 12px 14px !important; margin: 16px 0 0 !important;
}
.th-form .wpcf7 form.invalid .wpcf7-response-output { border-left-color: var(--th-brick-tx) !important; background: var(--th-brick-bg); }
.th-note { color: var(--th-muted); }

/* =====================================================================
   17. Толгойн CTA товч ба гар утасны цэсний хаах товч
   ===================================================================== */
/* Үндсэн цэсэнд «Холбоо барих» энгийн холбоос, товч нь тусдаа CTA («Санал хүсэлт илгээх») */
#masthead .th-cta .elementor-button { padding: 12px 22px; font-size: 15px; }
@media (max-width: 1320px) {
  #masthead .th-cta .elementor-button { padding: 11px 16px; font-size: 14px; }
}

/* Гар утасны цэсний хаах товч: хүрээгүй дугуй, баруун дээд буланд.
   Дэвсгэр: 2026-10-13-нд дулаан cream → брэндийн цайвар цэнхэр surface (хэрэглэгчийн «UI дэвсгэрт
   cream үлдээхгүй» шийдвэр). × тэмдэг нь indigo тул surface дээр 10.38:1 — WCAG AA-аас хамаагүй дээш. */
.hfe-nav-menu__toggle.hfe-active-menu {
  margin-left: auto;
  width: 44px; height: 44px; border-radius: 50%;
  display: inline-flex !important; align-items: center; justify-content: center;
  background: var(--th-surface);
}
.hfe-nav-menu__toggle.hfe-active-menu i,
.hfe-nav-menu__toggle.hfe-active-menu svg { display: inline-flex; align-items: center; justify-content: center; }
.hfe-nav-menu__toggle.hfe-active-menu i::before {
  content: "\00d7";                      /* цэвэр × тэмдэг, хүрээгүй */
  font-family: "Segoe UI", system-ui, -apple-system, sans-serif;
  font-size: 30px; line-height: 1; font-weight: 400; color: var(--th-indigo);
}
.hfe-nav-menu__toggle.hfe-active-menu svg { display: none; }
.hfe-nav-menu__toggle.hfe-active-menu:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 3px; }
/* Цэс нээлттэй үед CTA товчийг нууж, × баруун дээд буланд тод үлдээнэ */
@media (max-width: 1024px) {
  #masthead .e-con:has(.hfe-active-menu) .elementor-widget-button { display: none; }
}

/* =====================================================================
   18. Нүүр хуудасны шинэ визуал систем (2026-10)
   Цайвар canvas · цагаан navigation card · том бодит зурагт hero ·
   давхарласан мэдээллийн карт · ээлжилсэн үйлчилгээний мөр · bento
   ===================================================================== */

body { background: var(--th-canvas); }

/* ---------------------------------------------------- Header (цагаан card) */
#masthead { background: var(--th-canvas); padding: 14px 18px 0; }
#masthead .th-neo-header {
  max-width: 1320px; margin: 0 auto; border-radius: 18px;
  box-shadow: var(--th-shadow-sm);
}
#masthead .th-neo-header > .e-con-inner { min-height: 72px; max-width: 1320px; }
#masthead .th-logo img { max-height: 52px; width: auto; }
/* Desktop дээр нэг мөрөнд багтаах: цэсний нягтралыг сулруулна */
@media (min-width: 1025px) {
  /* Цэсийг лого ба CTA-гийн хооронд төвлүүлнэ */
  #masthead .th-neo-header > .e-con-inner > .e-con { flex: 1 1 auto; }
  #masthead .th-neo-header .elementor-widget-navigation-menu { margin-inline: auto; }
  #masthead .hfe-nav-menu { flex-wrap: nowrap !important; }
  #masthead .hfe-nav-menu a.hfe-menu-item { font-size: 14.5px; padding-inline: 7px !important; white-space: nowrap; }
  #masthead .th-cta .elementor-button { padding: 12px 20px; font-size: 14.5px; }
}
/* Mobile: лого | toggle + CTA — нэг мөрөнд, давхцахгүй */
@media (max-width: 1024px) {
  /* Elementor-ийн анхдагчаар дотоод container-ууд 100% өргөнтэй болж мөр мөрөөр эвхэгддэг.
     Толгойд лого | toggle + CTA-г нэг мөрөнд барина. */
  #masthead .th-neo-header .e-con { flex-wrap: nowrap !important; }
  #masthead .th-neo-header .e-con > .e-con { width: auto !important; flex: 0 1 auto !important; }
  #masthead .th-neo-header .elementor-widget-navigation-menu { width: auto !important; }
  #masthead .th-neo-header > .e-con-inner { flex-wrap: nowrap !important; min-height: 64px; }
  #masthead .th-logo img { max-height: 44px; }
  #masthead .th-cta .elementor-button { padding: 10px 14px; font-size: 13.5px; white-space: nowrap; }
}
@media (max-width: 420px) {
  #masthead { padding: 10px 10px 0; }
  #masthead .th-cta .elementor-button { padding: 9px 12px; font-size: 12.5px; }
  #masthead .th-logo img { max-height: 40px; }
}

/* ------------------------------------------------------------------ Hero */
.th-neo-hero-visual {
  position: relative; display: grid !important; isolation: isolate; overflow: hidden;
  min-height: 620px; border-radius: var(--th-radius-lg); background: var(--th-ink);
  box-shadow: 0 20px 54px rgba(0, 61, 91, .14);
}
/* Gradient зөвхөн текст уншигдах зүүн талд — зургийг бүхэлд нь харлуулахгүй */
.th-neo-hero-visual::after {
  content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background:
    linear-gradient(95deg, rgba(0, 40, 60, .88) 0%, rgba(0, 40, 60, .72) 30%,
                    rgba(0, 40, 60, .32) 55%, rgba(0, 40, 60, 0) 74%),
    linear-gradient(0deg, rgba(0, 40, 60, .34) 0%, rgba(0, 40, 60, 0) 34%);
}
.th-neo-hero-visual > * { grid-area: 1 / 1; }
.th-neo-hero-image { z-index: 0; height: 100%; }
.th-neo-hero-image .elementor-widget-container, .th-neo-hero-image img {
  width: 100%; height: 620px !important; object-fit: cover; object-position: 50% 42%;
}
.th-neo-hero-copy {
  z-index: 2; align-self: end; justify-self: start; width: min(590px, 55%);
  margin: 0 0 52px 52px; padding-right: 16px;
}
.th-neo-hero-copy .th-eyebrow .elementor-heading-title {
  display: inline-flex; padding: 7px 14px; border-radius: 999px;
  background: rgba(0, 40, 60, .62);          /* тод контраст — зургийн өнгөнөөс хамаарахгүй */
  border: 1px solid rgba(255, 255, 255, .22);
}
.th-neo-hero-copy .elementor-widget-text-editor { max-width: 540px; }
.th-neo-hero-fact {
  z-index: 3; align-self: end; justify-self: end; width: 338px;
  margin: 0 32px 32px 0; padding: 26px !important; border-radius: 20px;
  background: var(--th-white); box-shadow: 0 18px 44px rgba(0, 40, 60, .22);
}
.th-neo-hero-fact .elementor-widget-button .elementor-button { padding-block: 10px; }

/* ----------------------------------------- Ээлжилсэн үйлчилгээний мөрүүд */
.th-services .th-section-intro { margin-bottom: 20px; }
/* UP 2026-11-03c: desktop/tablet-д танилцуулга → эхний мөр 68 → 48px (контейнерийн gap 34px хангалттай) */
@media (min-width: 768px) { .th-services .th-section-intro { margin-bottom: 0; } }
/* Үйлчилгээний мөрүүд. 2026-10-13: өмнө нь дулаан `cream` ↔ хүйтэн `--th-pale` (= `--th-surface`)
   ЭЭЛЖИЛЖ байв (📏 хэмжсэн: 3 мөр → cream / surface / cream). Хэрэглэгчийн «UI дэвсгэрт cream
   үлдээхгүй» шийдвэрээр бүгдийг `--th-surface` болгов; `:nth-of-type(3)`-ын дүрэм илүүц болж ХАСАГДСАН.
   ЭЭЛЖЛЭЛИЙГ ЯАГААД СЭРГЭЭГЭЭГҮЙ: тэр нь дулаан↔хүйтэн зөрүү дээр тогтож байсан, харин хэрэглэгч яг
   тэр дулаан өнгийг арилгахыг шаардсан. Хүйтэн токенуудын хооронд уншигдах хэмнэл гаргах боломжгүй —
   `surface` (#EDF4F6) ба `surface2` (#F3F8F9) хоорондын контраст ≈ 1.04:1 (цагаантай 1.113 ба 1.071)
   тул хэмнэл мэдрэгдэхгүй, зөвхөн бүдгэрэл болно. Зааглалыг 1px `--th-line` хүрээ ба 24px радиус
   хариуцна — хэсгийн дэвсгэр ЦАГААН (📏) тул гурван ижил tint карт тод уншигдана. */
.th-services .th-service-row {
  padding: 20px !important; border: 1px solid var(--th-line); border-radius: 24px;
  background: var(--th-surface); overflow: hidden;
}
.th-services .th-service-copy { padding: 20px 26px !important; }
.th-service-image img {
  width: 100%; aspect-ratio: 16 / 9; height: auto !important;
  object-fit: cover; object-position: 50% 45%; border-radius: 18px; display: block;
}

/* ------------------------------------------------------------- Bento блок */
.th-bento-section .th-bento-image-card { overflow: hidden; border-radius: 22px; }
.th-bento-photo, .th-bento-photo .elementor-widget-container { height: 100%; }
.th-bento-photo img {
  width: 100%; height: 100% !important; min-height: 520px;
  object-fit: cover; object-position: 50% 72%; border-radius: 22px; display: block;
}
.th-bento-section .th-stat-card, .th-bento-section .th-bento-feature { box-shadow: var(--th-shadow-sm); }
.th-bento-section .th-stat-card { gap: 6px !important; padding: 26px !important; justify-content: center; }
.th-bento-section .th-stat-card .elementor-heading-title { line-height: 1.05; letter-spacing: -0.5px; }
.th-bento-section .th-bento-feature { gap: 10px !important; }

/* 7 дахь (бүтэн өргөнтэй) үйл ажиллагааны картыг хэвтээ байрлалтай болгоно */
@media (min-width: 768px) {
  #khutulbur .th-card:last-child {
    flex-direction: row !important; align-items: center; flex-wrap: wrap; gap: 10px 26px !important;
  }
  #khutulbur .th-card:last-child > .elementor-widget-icon { flex: 0 0 auto; }
  #khutulbur .th-card:last-child > .elementor-widget-heading { flex: 0 0 300px; }
  #khutulbur .th-card:last-child > .elementor-widget-text-editor { flex: 1 1 340px; }
  #khutulbur .th-card:last-child > .elementor-widget-button { flex: 0 0 auto; margin-left: auto; }
}

/* ------------------------------------------------- Картын нэгдсэн төрх */
.th-card { border-color: var(--th-line) !important; box-shadow: var(--th-shadow-sm); border-radius: 20px; }
.th-card:not(.th-stat-card):not(.th-bento-feature):not(.th-status) { box-shadow: none; }
.elementor-widget-icon .elementor-icon { font-size: inherit; }

/* Текстийн мөрийн урт, уншихад тохиромжтой өргөн */
.th-services .th-service-copy .elementor-widget-text-editor,
.th-bento-section .elementor-widget-text-editor { max-width: 62ch; }

/* Inline «Дэлгэрэнгүй» холбоос — 44px хүрэлцэх талбай */
.elementor-button-link.elementor-size-md,
.elementor-button-link.elementor-size-sm { min-height: 44px; display: inline-flex; align-items: center; }

/* ------------------------------------------------------------ Responsive */
@media (max-width: 1024px) {
  #masthead { padding: 10px 12px 0; }
  .th-bento-photo img { min-height: 420px; }
}

/* Tablet (≤1024px): hero-г давхарласан бус, уншихад хялбар давхаргат бүтэц болгоно.
   Ингэснээр урт монгол H1 болон цагаан мэдээллийн карт давхцахгүй. */
@media (max-width: 1024px) {
  .th-neo-hero-visual {
    display: flex !important; flex-direction: column; min-height: 0;
    border-radius: 22px; background: var(--th-ink);
  }
  .th-neo-hero-visual::after { display: none; }
  .th-neo-hero-image { order: 1; height: auto; }
  .th-neo-hero-image img { height: 360px !important; object-position: 50% 48%; border-radius: 0 !important; }
  .th-neo-hero-copy {
    order: 2; position: relative; width: 100%; margin: 0;
    padding: 32px 32px 28px !important; background: var(--th-ink);
  }
  .th-neo-hero-copy .th-eyebrow .elementor-heading-title { background: rgba(255, 255, 255, .12); }
  .th-neo-hero-fact {
    order: 3; position: relative; width: auto; margin: 0 20px 20px; padding: 24px !important;
  }
}

@media (max-width: 767px) {
  .th-neo-hero-visual { border-radius: 20px; }
  .th-neo-hero-image img { height: 330px !important; object-position: 50% 44%; }
  .th-neo-hero-copy { padding: 28px 22px 26px !important; }
  .th-neo-hero-fact { margin: 0 14px 16px; padding: 22px !important; }
  .th-services .th-service-row { padding: 14px !important; gap: 12px !important; }
  .th-services .th-service-copy { padding: 16px 12px 20px !important; }
  .th-services .th-service-row:nth-of-type(3) .th-service-media { order: 2; }
  .th-services .th-service-row:nth-of-type(3) .th-service-copy { order: 1; }
  .th-bento-photo img { min-height: 0; height: auto !important; aspect-ratio: 4 / 3; }
}

/* =====================================================================
   19. Түүхэн замнал — timeline (2026-10-06)
   Голд нимгэн босоо шугам, цагаан картууд зүүн/баруун ээлжилнэ, карт бүрд нэг connector node.
   Tablet/mobile (≤1024px): нэг багана, шугам зүүн талд. Animation байхгүй (reduced-motion-д аюулгүй).
   ===================================================================== */
.th-tl { position: relative; }
.th-tl::before {
  content: ""; position: absolute; top: 10px; bottom: 10px; left: 50%; width: 2px; margin-left: -1px;
  background: var(--th-line2); border-radius: 2px;
}
.th-tl__item { position: relative; }
.th-tl__item::after {
  content: ""; position: absolute; left: 50%; top: 30px; width: 16px; height: 16px; border-radius: 50%;
  background: var(--th-green); border: 3px solid var(--th-white); box-shadow: 0 0 0 2px var(--th-green);
  transform: translateX(-50%); z-index: 1;
}
.th-tl__card {
  box-shadow: var(--th-shadow-sm) !important; border: 1px solid var(--th-line) !important;
  border-radius: 20px !important; background: var(--th-white);
}
.th-tl__card .elementor-widget-divider { width: 100%; }
.th-tl__card .elementor-widget-divider .elementor-divider { padding: 2px 0; }
.th-tl__year .elementor-heading-title {
  display: inline-block; background: var(--th-pale); color: var(--th-green);
  padding: 4px 12px; border-radius: 999px; line-height: 1.3;
}
.th-tl__card .elementor-widget-text-editor p:last-child { margin-bottom: 0; }
@media (min-width: 1025px) {
  .th-tl__item--l .th-tl__card { margin-right: 4%; }
  .th-tl__item--r .th-tl__card { margin-left: 4%; }
}
@media (max-width: 1024px) {
  .th-tl::before { left: 15px; margin-left: 0; }
  .th-tl__item { padding-left: 44px; }
  .th-tl__item::after { left: 16px; transform: translateX(-50%); }
  .th-tl__card { width: 100% !important; }
}
@media (max-width: 767px) {
  .th-tl::before { left: 11px; }
  .th-tl__item { padding-left: 34px; }
  .th-tl__item::after { left: 12px; width: 14px; height: 14px; top: 26px; }
}

/* =====================================================================
   20. Байгууллагын мэндчилгээ — төвлөсөн медиа, уншихад тохиромжтой 800px текст
   ===================================================================== */
.th-greet__media-wrap .elementor-widget-image { width: 100%; }
.th-greet__media img { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.th-greet__quote { box-shadow: none !important; border-color: transparent !important; width: 100% !important; }
.th-greet__quote .elementor-widget-text-editor p { font-weight: 600; margin-bottom: 0; }
.th-greet__body .elementor-widget-text-editor { text-align: left; }
.th-greet__sign { padding-top: 18px; border-top: 1px solid var(--th-line); width: 100%; }
.th-greet__sign p { margin-bottom: 0; }

/* =====================================================================
   21. Нүүр — «Тоон үзүүлэлтээр» статистикийн картууд
   ===================================================================== */
.th-impact__card { box-shadow: var(--th-shadow-sm) !important; border: 1px solid var(--th-line) !important; }
.th-impact__card .th-stat__num .elementor-heading-title { letter-spacing: -0.02em; }
.th-impact__card .elementor-widget-text-editor p { margin-bottom: 0; }
@media (max-width: 767px) {
  .th-impact__card { width: 100% !important; }
}

/* =====================================================================
   22. Хүрэлцэх талбай ≥44px — харагдах байдлыг өөрчлөхгүйгээр (padding + сөрөг margin)
   Жагсаалтын холбоос (footer цэс, хамтрагч, холбоо барих) болон утасны цэсний товч.
   ===================================================================== */
.elementor-icon-list-items .elementor-icon-list-item > a {
  padding-top: 11px; padding-bottom: 11px; margin-top: -11px; margin-bottom: -11px;
  min-height: 44px; box-sizing: border-box;
}
.hfe-nav-menu__toggle { min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
.elementor-social-icons-wrapper .elementor-social-icon { min-width: 44px; min-height: 44px; }
#masthead .elementor-widget-image a { display: inline-block; padding: 2px; margin: -2px; }

/* =====================================================================
   23. Бидний тухай — redesign (2026-10-06): hero, collage, statement, stats strip, албаны карт, how, сүлжээ, CTA
   ===================================================================== */
.th-about-hero .elementor-widget.th-about-lead { max-width: 760px !important; margin-left: auto !important; margin-right: auto !important; }
.th-about-hero .elementor-widget-heading .elementor-heading-title { max-width: 840px; margin-left: auto; margin-right: auto; }
.th-about-collage img {
  width: 100%; height: auto; object-fit: cover; border: 1px solid var(--th-line); box-shadow: var(--th-shadow-sm);
}
.th-about-collage__wrap { margin: 0; }
@media (max-width: 1024px) {
  .th-about-collage__wrap--big { order: -1; }
}
.th-about-mission { box-shadow: none !important; }
.th-about-mission__text p { font-weight: 500; color: var(--th-ink); margin-bottom: 0; }
.th-about-stats { box-shadow: var(--th-shadow-sm) !important; }
.th-about-stat { padding: 26px 14px !important; }
.th-about-stat .elementor-widget-text-editor p { margin: 0; }
@media (min-width: 1025px) {
  .th-about-stat + .th-about-stat { border-left: 1px solid var(--th-line); }
}
@media (max-width: 1024px) {
  .th-about-stat:nth-child(even) { border-left: 1px solid var(--th-line); }
  .th-about-stat:nth-child(n+3) { border-top: 1px solid var(--th-line); }
}
.th-about-unit { transition: transform .18s ease, box-shadow .18s ease; }
.th-about-unit:hover, .th-about-unit:focus-within { transform: translateY(-3px); box-shadow: var(--th-shadow-md) !important; }
.th-about-unit .elementor-icon-list-items { width: 100%; }
.th-about-how__img img, .th-about-net__img img { box-shadow: var(--th-shadow-sm); width: 100%; height: auto; object-fit: cover; }
.th-about-how__copy .elementor-widget-text-editor { max-width: 56ch; }
.th-chip .elementor-heading-title {
  display: inline-block; background: var(--th-white); border: 1px solid var(--th-line); border-radius: 999px; padding: 8px 14px;
}
.th-about-net__label .elementor-heading-title { letter-spacing: .04em; text-transform: uppercase; font-size: 12px; }
.th-about-cta { box-shadow: none !important; }
.th-about-cta .elementor-widget-heading .elementor-heading-title { max-width: 720px; margin-left: auto; margin-right: auto; }
@media (prefers-reduced-motion: reduce) {
  .th-about-unit { transition: none; }
  .th-about-unit:hover, .th-about-unit:focus-within { transform: none; }
}
@media (max-width: 767px) {
  .th-about-how__row { gap: 20px !important; }
  .th-about-net { gap: 24px !important; }
}

/* =====================================================================
   24. Үйл ажиллагаа — landing (2026-10-06): hero, quick navigation, дэлгэрэнгүй anchor section, бодит ажлууд
   ===================================================================== */
.th-ratio-2-1 img { aspect-ratio: 2 / 1; }
.th-act-hero .elementor-widget.th-act-lead { max-width: 760px !important; margin-left: auto !important; margin-right: auto !important; }
.th-act-hero .elementor-widget-heading .elementor-heading-title { max-width: 840px; margin-left: auto; margin-right: auto; }
.th-act-hero__img img { width: 100%; height: auto; object-fit: cover; border: 1px solid var(--th-line); box-shadow: var(--th-shadow-md); }
.th-act-stats { box-shadow: var(--th-shadow-sm) !important; }
@media (max-width: 767px) {
  .th-act-stats .th-about-stat:nth-child(n+2) { border-top: 1px solid var(--th-line); border-left: 0; }
}
/* Anchor руу очиход гарчиг дээд ирмэгт наалдахгүй */
.th-act-detail, #chigleluud, #bodit-ajluud { scroll-margin-top: 28px; }
.th-act-nav__card { transition: transform .18s ease, box-shadow .18s ease; }
.th-act-nav__card:hover, .th-act-nav__card:focus-within { transform: translateY(-3px); box-shadow: var(--th-shadow-md) !important; }
.th-act-nav__card .elementor-widget-button { margin-top: auto; }
.th-act-detail__img img { width: 100%; height: auto; object-fit: cover; box-shadow: var(--th-shadow-sm); }
.th-act-detail__media .elementor-widget-button, .th-act-detail__card .elementor-widget-button { width: 100%; }
.th-act-detail__media .elementor-button, .th-act-detail__card .elementor-button { width: 100%; justify-content: flex-start; text-align: left; }
.th-act-detail__copy .elementor-widget-text-editor { max-width: 60ch; }
.th-act-links__label .elementor-heading-title { letter-spacing: .04em; text-transform: uppercase; font-size: 12px; }
.th-act-video__title .elementor-heading-title { margin-bottom: 2px; }
.th-act-work { transition: box-shadow .18s ease; }
.th-act-work:hover, .th-act-work:focus-within { box-shadow: var(--th-shadow-md) !important; }
.th-act-work .elementor-widget-video { width: 100%; }
.th-act-work .elementor-widget-video .elementor-video, .th-act-work .elementor-widget-video iframe { border-radius: 14px; }
@media (prefers-reduced-motion: reduce) {
  .th-act-nav__card, .th-act-work { transition: none; }
  .th-act-nav__card:hover, .th-act-nav__card:focus-within { transform: none; }
}
@media (max-width: 767px) {
  .th-act-detail__row { gap: 22px !important; }
}

/* =====================================================================
   25. Хүртээмжтэй орчин — «сэдвээ сонгоод дэлгэрүүлж унших» (2026-10-12 UI/UX цэгцлэлт).
   Hero → 5 мөрт Nested Accordion (.th-env-acc) → CTA. Мөрийн загвар нь «Үйл ажиллагаа» хуудасны
   .th-act-acc-тай нэг систем (1px хүрээ, 14px радиус, сүүдэргүй). Panel дотор давхар accordion, шинэ карт байхгүй.
   Эх: elementor-build/th-env.css (pages_env.py). Бүх selector .th-env / .th-env-acc дотор — бусад хуудсанд нөлөөлөхгүй.
   ===================================================================== */
.th-env .elementor-widget-text-editor p:last-child { margin-bottom: 0; }
.th-env .th-env-lead { max-width: 720px !important; }
.th-env .th-env-h2 .elementor-heading-title { max-width: 28ch; }
.th-env-pick__head .elementor-widget-text-editor { max-width: 760px; }

/* Холбоос: ≥44px дарах талбай, тод focus */
.th-env .th-textlink .elementor-button { min-height: 44px; display: inline-flex; align-items: center; }
.th-env a:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 3px; border-radius: 4px; }

/* 01 Hero — зураг хүрээ, сүүдэргүй */
.th-env-hero__img img { width: 100%; height: auto; object-fit: cover; border: 0; box-shadow: none; }
@media (max-width: 1024px) { .th-env-hero { gap: 32px !important; } .th-env-hero__media { max-width: 640px; } }

/* ---------------------------------------------------------------- 02 Сэдэв сонгох — 5 мөрт accordion */
.th-env-pick { scroll-margin-top: 28px; }
.th-env-acc .e-n-accordion { display: flex; flex-direction: column; gap: 10px; }
.th-env-acc .e-n-accordion-item {
  border: 1px solid var(--th-line); border-radius: 14px; background: var(--th-white); scroll-margin-top: 28px;
}
.th-env-acc .e-n-accordion-item[open] { border-color: var(--th-seaweed); }
/* Мөрийг бүхэлд нь дарж нээнэ (summary нь бүтэн өргөнтэй), сум нь баруун талд төлөвөө илэрхийлнэ */
.th-env-acc .e-n-accordion-item > .e-n-accordion-item-title {
  min-height: 60px; display: flex; align-items: center; gap: 12px; cursor: pointer;
  border: 0 !important; border-radius: 14px; background: var(--th-white);
  flex-direction: row !important; justify-content: space-between !important;
}
.th-env-acc .e-n-accordion-item[open] > .e-n-accordion-item-title { background: var(--th-surface); border-radius: 13px 13px 0 0; }
.th-env-acc .e-n-accordion-item > .e-n-accordion-item-title:hover { background: var(--th-surface2); }
.th-env-acc .e-n-accordion-item-title-text { display: flex; align-items: center; gap: 14px; margin: 0; font-size: 19px; line-height: 1.3; }
.th-env-acc .e-n-accordion-item-title-header { order: 0; flex: 1 1 auto; justify-content: flex-start !important; text-align: left; }
.th-env-acc .e-n-accordion-item-title-icon { order: 1; flex: 0 0 auto; color: var(--th-seaweed); margin-inline-start: auto; }
.th-env-acc .th-env-acc__icon {
  flex: 0 0 40px; width: 40px; height: 40px; border-radius: 50%; background: var(--th-surface); color: var(--th-seaweed);
  display: inline-flex; align-items: center; justify-content: center; font-size: 17px;
}
.th-env-acc .e-n-accordion-item[open] .th-env-acc__icon { background: var(--th-white); }
.th-env-acc .e-n-accordion-item-title:focus-visible {
  outline: 3px solid var(--th-seaweed) !important; outline-offset: 2px !important; box-shadow: 0 0 0 6px var(--th-white) !important;
}
@media (max-width: 767px) {
  .th-env-acc .e-n-accordion-item-title-text { font-size: 17px; gap: 10px; }
  .th-env-acc .th-env-acc__icon { flex-basis: 36px; width: 36px; height: 36px; font-size: 15px; }
}
@media (max-width: 360px) {
  .th-env-acc .e-n-accordion-item-title-text { font-size: 16px; gap: 8px; }
  .th-env-acc .th-env-acc__icon { flex-basis: 32px; width: 32px; height: 32px; font-size: 14px; }
  .th-env-acc .e-n-accordion-item > .e-n-accordion-item-title { padding-left: 14px !important; padding-right: 14px !important; }
}

/* Нээсэн бүлэг — хайрцаггүй, зөвхөн зай ба нимгэн шугам */
.th-env-panel { padding-top: 18px; }
.th-env-panel > .elementor-widget, .th-env-panel > .e-con { width: 100%; }
.th-env-panel__lead .elementor-heading-title, .th-env-panel__lead p { margin: 0; }
.th-env-panel .th-env-note { color: var(--th-muted); }
.th-env-panel .elementor-widget-text-editor { max-width: 76ch; }

/* Текст | зураг (DOM: эхлээд агуулга, дараа нь зураг). ≤1024px нэг багана, зураг доор */
@media (min-width: 1025px) {
  .th-env-split { align-items: flex-start; }
  .th-env-split > .th-env-fig { width: 38% !important; flex: 0 0 38%; }
  .th-env-split > .e-con:first-child { flex: 1 1 0; min-width: 0; }
}
@media (max-width: 1024px) {
  .th-env-split { gap: 28px !important; }
  .th-env-split > .th-env-fig { width: 100% !important; max-width: 560px; }
}
.th-env-fig__img img { width: 100%; height: auto; object-fit: cover; border: 0; box-shadow: none; }
.th-env-fig__cap p { margin: 0; }

/* Хүртээмжийн 4 хэмжээс — хүрээгүй 2×2 */
.th-env-dims { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 40px !important; }
.th-env-dims > .e-con { width: auto !important; max-width: none !important; }
@media (max-width: 767px) { .th-env-dims { grid-template-columns: 1fr; gap: 26px !important; } }

/* Дараалал: Очих зам → Орц → … (сум нь чимэглэл, дэлгэц уншигч уншихгүй) */
.th-env-route { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 0; }
.th-env-route li { font-weight: 700; color: var(--th-indigo); }
.th-env-route li + li::before { content: "\2192" / ""; color: var(--th-seaweed); margin: 0 12px; font-weight: 700; }
@media (max-width: 390px) { .th-env-route li + li::before { margin: 0 8px; } }

/* 01–06 шаардлага: дугаар | гарчиг + тайлбар, мөр хооронд нимгэн шугам */
.th-env-req { padding: 20px 0 !important; border-top: 1px solid var(--th-line); flex-direction: row !important; flex-wrap: nowrap !important; }
.th-env-req:first-child { border-top: 0; padding-top: 4px !important; }
.th-env-req:last-child { padding-bottom: 0 !important; }
.th-env-req__num { flex: 0 0 44px; width: 44px !important; max-width: 44px !important; }
.th-env-req__num .elementor-heading-title { font-variant-numeric: tabular-nums; }
.th-env-req__body { flex: 1 1 0; min-width: 0; }
@media (max-width: 390px) {
  .th-env-req { gap: 14px !important; }
  .th-env-req__num { flex-basis: 34px; width: 34px !important; max-width: 34px !important; }
}

/* Найман асуулт — дугаарласан жагсаалт (давхар accordion БИШ) */
.th-env-qs { margin: 0; padding-left: 1.6em; }
.th-env-qs li { margin: 0 0 14px; padding-left: 4px; }
.th-env-qs li:last-child { margin-bottom: 0; }
.th-env-qs li::marker { color: var(--th-seaweed); font-weight: 800; }
.th-env-qs strong { color: var(--th-indigo); display: block; }
@media (max-width: 390px) { .th-env-qs { padding-left: 1.3em; } }

/* Ажлын 3 мөр + он, тайлбарын жагсаалт */
.th-env-work { padding: 20px 0 !important; border-top: 1px solid var(--th-line); flex-direction: row !important; flex-wrap: nowrap !important; }
.th-env-work:first-child { border-top: 0; padding-top: 4px !important; }
.th-env-work:last-child { padding-bottom: 0 !important; }
.th-env-work > .elementor-widget-icon { flex: 0 0 32px; width: 32px !important; padding-top: 2px; }
.th-env-work > .e-con { flex: 1 1 0; min-width: 0; }
@media (max-width: 390px) {
  .th-env-work { gap: 14px !important; }
  .th-env-work > .elementor-widget-icon { flex-basis: 26px; width: 26px !important; }
}
.th-env-timeline { list-style: none; margin: 0; padding: 0; }
.th-env-timeline li { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 16px; padding: 12px 0; border-top: 1px solid var(--th-line); }
.th-env-timeline li:first-child { border-top: 0; }
.th-env-timeline strong { color: var(--th-seaweed); font-weight: 800; font-variant-numeric: tabular-nums; }
@media (max-width: 390px) { .th-env-timeline li { grid-template-columns: 56px minmax(0, 1fr); gap: 12px; } }

/* Материалын жагсаалт — desktop/tablet 2 багана, mobile 1; мөр бүр дээд шугамтай */
.th-env-mats { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 40px !important; row-gap: 0 !important; }
.th-env-mats > .e-con { width: auto !important; padding: 20px 0 !important; border-top: 1px solid var(--th-line); }
.th-env-mats > .e-con:nth-child(-n+2) { border-top: 0; padding-top: 4px !important; }
.th-env-mat__type .elementor-heading-title { text-transform: uppercase; }
@media (max-width: 767px) {
  .th-env-mats { grid-template-columns: 1fr; }
  .th-env-mats > .e-con:nth-child(2) { border-top: 1px solid var(--th-line); padding-top: 20px !important; }
}

/* ---------------------------------------------------------------- 03 CTA */
.th-env-cta { padding-top: 56px !important; border-top: 1px solid var(--th-line); }
.th-env-cta .elementor-widget-text-editor { max-width: 60ch; }
@media (max-width: 767px) { .th-env-cta { padding-top: 40px !important; } }

/* =====================================================================
   26. Header цэс — хүртээмжтэй дэд цэсний toggle (mu-plugin markup override, 2026-10-07)
   <a> үндсэн холбоос + <button class="th-submenu-toggle"> тусдаа; li.th-open → дэд цэс харагдана.
   ===================================================================== */
.th-nav-parent { display: flex; align-items: center; }
.th-nav-parent > a.hfe-menu-item { flex: 1 1 auto; }
.th-submenu-toggle {
  background: transparent; border: 0; padding: 0; margin: 0 0 0 2px; min-width: 44px; min-height: 44px;
  display: inline-flex; align-items: center; justify-content: center; cursor: pointer; color: inherit; font: inherit;
  border-radius: 8px;
}
.th-submenu-toggle .th-arrow:before {
  font-family: 'Font Awesome 5 Free'; font-weight: 900; content: "\f107"; font-size: 14px; line-height: 1;
  display: inline-block; transition: transform .2s ease;
}
li.th-open > .th-nav-parent .th-submenu-toggle .th-arrow:before { transform: rotate(180deg); }
.hfe-nav-menu li.menu-item-has-children.th-open > .sub-menu { visibility: visible !important; opacity: 1 !important; height: auto !important; }
@media (max-width: 1024px) {
  .hfe-active-menu + nav .hfe-nav-menu li.menu-item-has-children.th-open > .sub-menu { position: static !important; }
}
.th-submenu-toggle:focus-visible { outline: 3px solid var(--th-seaweed) !important; outline-offset: 2px !important; box-shadow: 0 0 0 6px var(--th-white) !important; }
@media (prefers-reduced-motion: reduce) { .th-submenu-toggle .th-arrow:before { transition: none; } }

/* §26 нэмэлт: Elementor kit-ийн глобал button загварыг (дэвсгэр, өнгө, padding) toggle-д хэрэглэхгүй — specificity */
.hfe-nav-menu button.th-submenu-toggle,
.hfe-nav-menu button.th-submenu-toggle:hover,
.hfe-nav-menu button.th-submenu-toggle:focus,
.hfe-nav-menu button.th-submenu-toggle:active {
  background: transparent; background-color: transparent; background-image: none; border: 0; box-shadow: none;
  color: var(--th-indigo); padding: 0; margin: 0 0 0 2px; min-width: 44px; min-height: 44px; border-radius: 8px;
  text-decoration: none; transform: none;
}
.hfe-nav-menu button.th-submenu-toggle:hover { background-color: var(--th-surface); }
.hfe-nav-menu button.th-submenu-toggle:focus-visible {
  outline: 3px solid var(--th-seaweed) !important; outline-offset: 2px !important; box-shadow: 0 0 0 6px var(--th-white) !important;
}

/* §26 засвар (2026-10-12): дэд цэс ЗӨВХӨН сумны товчоор нээгдэнэ — hover эсвэл focus-оор биш.
   Шалтгаан (plugin-ийн алдаа, HFE 2.9.4 inc/widgets-css/frontend.css):
     • мөр 195–199  .hfe-nav-menu__layout-horizontal .hfe-nav-menu .menu-item-has-children:hover > .sub-menu { visibility: visible }
     • мөр 226–231  ижил сонгогч дахин (transition-той)
     • мөр 201–205  .hfe-submenu-action-click … :hover > .sub-menu { visibility: hidden }  ← HFE-ийн «дарж нээх» горим,
       ижил specificity (0,5,0) атлаа ӨМНӨ нь бичигдсэн тул cascade-д ялагдана → horizontal layout дээр widget-ийн
       submenu_action тохиргооноос үл хамааран hover үргэлж нээдэг.
   Иймд widget-ийн тохиргоогоор залрахгүй; #masthead id-ээр (1,x,x) specificity өсгөж дарна. Plugin-ийн файлд хүрэхгүй.
   Нээлттэй төлөв зөвхөн li.th-open (th-site.php-ийн товчны JS) — тэр дүрэм !important тул эндээс давуу. */
#masthead .hfe-nav-menu li.menu-item-has-children:hover > .sub-menu,
#masthead .hfe-nav-menu li.menu-item-has-children:focus > .sub-menu,
#masthead .hfe-nav-menu li.menu-item-has-children.focus > .sub-menu,
#masthead .hfe-nav-menu li.menu-item-has-children:focus-within > .sub-menu {
  visibility: hidden;
  opacity: 0;
}
/* Нээлттэй дэд цэс: hover-ийн 300ms шилжилтийг хүлээхгүй, шууд гарна */
#masthead .hfe-nav-menu li.menu-item-has-children.th-open > .sub-menu {
  visibility: visible !important;
  opacity: 1 !important;
  transition: opacity .15s ease-out, visibility 0s !important;
}
/* Эцэг холбоос дээр hover хийхэд сумны товч «дарагдсан» мэт харагдахгүй (товч өөрөө л hover-тэй) */
#masthead .th-nav-parent:hover > .th-submenu-toggle { background-color: transparent; }
/* Хаалттай дэд цэс цохилт «залгихгүй»: HFE-ийн `transition: all .3s` нь visibility-г 300ms-ийн ЭЦЭСТ сольдог тул
   хаагдах явцад үл харагдах атлаа дарагддаг байв. visibility-г шууд солиулж, хаалттай үед pointer-events-ийг хаана. */
#masthead .hfe-nav-menu li.menu-item-has-children > .sub-menu {
  transition: opacity .15s ease-out, visibility 0s !important;
}
#masthead .hfe-nav-menu li.menu-item-has-children:not(.th-open) > .sub-menu {
  pointer-events: none;
}

/* 1025–1120 px: цэс ба баруун талын CTA товч багтахгүй шахагдана. Засварын өмнө 1056 px дээр «Холбоо барих»
   холбоосын ТӨВ цэг хүртэл товчоор хучигдаж байв (elementFromPoint нь товчийг буцаасан); 1088 ба 1120 px дээр
   мөн огтлолцож байв. Энэ мужид цэсний үсэг/зай, товчны padding-ийг багасгана — 1088 ба 1120 px бүрэн цэвэрлэгдэв.
   Сумны товч 44×44 хэвээр (хүрэх талбайн шаардлага). ҮЛДСЭН: 1025–1056 px дээр товч нь «Холбоо барих»-ийн
   баруун хэсгийг хэсэгчлэн хучсан хэвээр (📏 1025 px: −62 px, 1056 px: −31 px) — энэ нь засвараас өмнө ч байсан.
   Бүрэн шийдэх нь hamburger-ийн breakpoint-ийг 1024 → 1120 px болгох (дизайны шийдвэр, байгууллагаар батлуулна). */
@media (min-width: 1025px) and (max-width: 1120px) {
  #masthead .hfe-nav-menu a.hfe-menu-item { font-size: 13.5px; padding-left: 4px; padding-right: 4px; }
  #masthead .hfe-nav-menu > ul > li { margin-left: 0; margin-right: 0; }
  #masthead .elementor-widget-button .elementor-button { padding: 10px 14px; font-size: 13.5px; }
}
@media (prefers-reduced-motion: reduce) {
  #masthead .hfe-nav-menu li.menu-item-has-children.th-open > .sub-menu { transition: none !important; }
}

/* =====================================================================
   27. Тэнцүү card grid (2026-10-07) — зөвхөн .th-equal-card-grid дотор: env 4 хэмжээс, About 4 алба, Activities 7 чиглэл.
   Desktop: 24 баганат CSS grid (card = 6 багана → 4 ижил өргөн багана; 7 card-ын 2-р мөрийн 3-ыг 4/10/16-р баганаас
   эхлүүлж голлуулна — өргөн ижил хэвээр); grid-auto-rows:1fr → нэг grid-ийн бүх card ижил өндөр. Tablet 2 багана
   (7 дахь card голд, хагас өргөн; мөр 1fr), mobile 1 багана, мөр auto → утсан дээр илүү хоосон зай үүсэхгүй.
   Тогтмол height, overflow:hidden, line-clamp байхгүй — 200% zoom-д текст бүтнээрээ, card өндөрсөнө.
   Padding 28px (mobile 22px) / gap 12px / радиус 20px нь Elementor-ийн --padding-top…left, --row-gap, --border-radius
   хувьсагчаар (widget-ийн тохиргоо хүчинтэй, засаж болно); хүрээ 1px var(--th-line), фон var(--th-white), icon 44×44 (22px + 11px
   padding) widget-д ижил; гарчиг 19px (229px-д ≤2 мөр). Доорх утгууд ангиллын анхдагч (!important биш).
   ===================================================================== */
.th-equal-card-grid {
  display: grid !important; grid-template-columns: repeat(24, minmax(0, 1fr)); grid-auto-rows: 1fr;
  gap: 20px !important; align-items: stretch; justify-items: stretch; width: 100%;
}
.th-equal-card-grid > .th-equal-card {
  grid-column: span 6; width: 100% !important; max-width: 100% !important; min-width: 0; height: 100%; margin: 0 !important;
  display: flex; flex-direction: column; background: var(--th-white); border: 1px solid var(--th-line); box-shadow: none; overflow: visible;
  gap: var(--row-gap, 12px) var(--column-gap, 12px); border-radius: var(--border-radius, 20px);
  padding: var(--padding-top, 28px) var(--padding-right, 28px) var(--padding-bottom, 28px) var(--padding-left, 28px);
  transition: box-shadow .18s ease, transform .18s ease;
}
/* §27 нэмэлт (2026-10-13): 3 баганат хувилбар — /zuvluguu/-гийн зургаан сэдвийн карт (2 мөр × 3).
   24 баганат сүлжээнд span 8 = 3 тэнцүү багана. Таблет/утсан дээр ерөнхий дүрэм (2 → 1 багана) үйлчилнэ. */
.th-equal-card-grid--3 > .th-equal-card { grid-column: span 8; }
.th-equal-card-grid--7 > .th-equal-card:nth-child(5) { grid-column: 4 / span 6; }
.th-equal-card-grid--7 > .th-equal-card:nth-child(6) { grid-column: 10 / span 6; }
.th-equal-card-grid--7 > .th-equal-card:nth-child(7) { grid-column: 16 / span 6; }
.th-equal-card-grid > .th-equal-card:hover, .th-equal-card-grid > .th-equal-card:focus-within {
  box-shadow: var(--th-shadow-md) !important; transform: translateY(-2px);
}
.th-equal-card-grid > .th-equal-card > .elementor-widget { width: 100%; max-width: 100%; }
.th-equal-card-grid .th-equal-card__icon { margin: 0; }
.th-equal-card-grid .th-equal-card__title .elementor-heading-title { overflow-wrap: normal; word-break: normal; hyphens: manual; }
.th-equal-card-grid .th-equal-card__text p:last-child { margin-bottom: 0; }
.th-equal-card-grid .th-equal-card__text .elementor-icon-list-items { width: 100%; }
.th-equal-card-grid > .th-equal-card > .th-equal-card__link { margin-top: auto !important; }
.th-equal-card-grid .th-equal-card__link .elementor-button-link {
  min-height: 44px; display: inline-flex; align-items: center; justify-content: flex-start; text-align: left; white-space: normal;
}
@media (min-width: 1025px) {
  .th-equal-card-grid .th-equal-card__title .elementor-heading-title { min-height: 2.6em; }
}
@media (max-width: 1024px) {
  .th-equal-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .th-equal-card-grid > .th-equal-card { grid-column: auto / span 1 !important; }
  .th-equal-card-grid--7 > .th-equal-card:nth-child(7) { grid-column: 1 / span 2 !important; width: calc(50% - 10px) !important; justify-self: center; }
}
@media (max-width: 767px) {
  .th-equal-card-grid { grid-template-columns: minmax(0, 1fr); grid-auto-rows: auto; gap: 16px !important; }
  .th-equal-card-grid--7 > .th-equal-card:nth-child(7) { grid-column: auto / span 1 !important; width: 100% !important; justify-self: stretch; }
}
@media (prefers-reduced-motion: reduce) {
  .th-equal-card-grid > .th-equal-card { transition: none; }
  .th-equal-card-grid > .th-equal-card:hover, .th-equal-card-grid > .th-equal-card:focus-within { transform: none; }
}

/* =====================================================================
   27B. Мэдээ / Блог / Влог / Тайлан — динамик feed (mu-plugin th-feeds.php, 2026-10-07)
   (§28 «Зөвлөгөөний 4 хуудас»-ыг өөр session эзэмшдэг тул энэ хэсэг §28-ын ӨМНӨ байрлана.)
   Shortcode-ийн HTML: .th-feed, .th-filters, .th-post-card, .th-post-mini, .th-video-card, .th-video-featured,
   .th-report-card (+ .th-rmetric үзүүлэлт), .th-switch, .th-cover, .th-pagination. Зураг 16:9 (мэдээ, блог, видео), A4 босоо (тайлан).
   Тогтмол өндөр, line-clamp, overflow hidden текстэд байхгүй; 200% zoom-д нэг багана.
   ===================================================================== */
.th-feed { width: 100%; }
.th-feed__h, .th-feed__small-h { font-size: 26px; line-height: 1.2; margin: 0 0 18px; color: var(--th-indigo); }
.th-feed__small-h { font-size: 18px; margin-bottom: 12px; }
.th-feed__empty { color: var(--th-muted); font-size: 16px; }
.th-feed__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; align-items: stretch; }
.th-feed__top { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 28px; margin-bottom: 44px; align-items: start; }
.th-feed__featured { margin-bottom: 40px; }
.th-feed__top .th-feed__featured { margin-bottom: 0; }
.th-feed__list { margin-top: 8px; }
.th-feed__cta { text-align: center; margin: 32px 0 0; }

/* Ангиллын шүүлтүүр */
.th-filters { margin: 0 0 28px; }
.th-filters ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.th-filters a {
  display: inline-flex; align-items: center; min-height: 44px; padding: 8px 18px; border-radius: 999px; border: 1px solid var(--th-line);
  background: var(--th-white); color: var(--th-indigo); font-weight: 700; font-size: 15px; text-decoration: none; transition: background .18s ease, color .18s ease;
}
.th-filters a:hover { background: var(--th-surface); }
.th-filters a.is-active, .th-filters a[aria-current="page"] { background: var(--th-seaweed); border-color: var(--th-seaweed); color: var(--th-white); }
.th-filters a:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 2px; }

/* Нүүр зураг (16:9 / A4) + брэндийн fallback */
.th-cover { display: block; position: relative; width: 100%; aspect-ratio: 16 / 9; border-radius: 16px; overflow: hidden; background: var(--th-surface); }
/* A4 баримтын нүүр: 2026-10-13-нд cream → surface. Энэ нь ЗУРГИЙН өөрийн өнгө биш, зургийн ЦААДАХ
   UI дэвсгэр — `object-fit: contain` тул зураг бүтнээр багтаж, дэвсгэр нь letterbox хүрээ болж
   харагдана (📏 тайлангийн хуудсанд 260×368 хайрцагт 258×334 зураг). 16:9 хувилбар (`.th-cover`)
   АЛЬ ХЭДИЙН `--th-surface` байсан тул энэ солилт хоёр хувилбарыг НЭГ загварт оруулна. */
.th-cover--a4 { aspect-ratio: 210 / 297; background: var(--th-surface); }
.th-cover__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.th-cover--a4 .th-cover__img { object-fit: contain; background: var(--th-surface); }
.th-cover--fallback { background-color: var(--th-seaweed); background-image: linear-gradient(135deg, var(--th-seaweed) 0%, var(--th-indigo) 100%); display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-end; padding: 18px; }
.th-cover__icon { position: absolute; top: 16px; left: 16px; width: 48px; height: 48px; border-radius: 50%; background: rgba(255, 255, 255, .14); color: var(--th-sunray); display: inline-flex; align-items: center; justify-content: center; font-size: 20px; }
.th-cover__label { color: var(--th-white); font-weight: 800; font-size: 15px; letter-spacing: .04em; text-transform: uppercase; }
.th-cover__logo { position: absolute; right: 14px; bottom: 14px; width: 44px; height: 44px; object-fit: cover; border-radius: 10px; background: var(--th-white); padding: 3px; }
.th-cover--a4.th-cover--fallback { justify-content: center; align-items: center; }
.th-cover--a4 .th-cover__icon { position: static; width: 64px; height: 64px; font-size: 26px; margin-bottom: 12px; }

/* Мэдээ / блогийн карт */
.th-post-card { display: flex; flex-direction: column; height: 100%; background: var(--th-white); border: 1px solid var(--th-line); border-radius: 20px; overflow: visible; transition: box-shadow .18s ease, transform .18s ease; }
.th-post-card:hover, .th-post-card:focus-within { box-shadow: var(--th-shadow-md); transform: translateY(-2px); }
.th-post-card__media { display: block; padding: 10px 10px 0; }
.th-post-card__body { display: flex; flex-direction: column; gap: 10px; padding: 18px 22px 22px; flex: 1 1 auto; }
.th-post-card__meta, .th-post-mini__meta, .th-report-card__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0; font-size: 14px; color: var(--th-muted); }
.th-chip { display: inline-flex; align-items: center; padding: 4px 10px; border-radius: 999px; background: var(--th-surface); color: var(--th-seaweed); font-weight: 700; font-size: 13px; line-height: 1.3; }
.th-chip--ghost { background: var(--th-white); border: 1px solid var(--th-line); color: var(--th-text); }
.th-meta__date { font-size: 14px; color: var(--th-muted); }
.th-post-card__title { font-size: 20px; line-height: 1.3; margin: 0; color: var(--th-indigo); font-weight: 800; }
.th-post-card__title a, .th-post-mini__title a, .th-video-card__title a { color: inherit; text-decoration: none; }
.th-post-card__title a:hover, .th-post-mini__title a:hover, .th-video-card__title a:hover { text-decoration: underline; text-underline-offset: 3px; }
.th-post-card__excerpt, .th-video-card__desc, .th-report-card__summary { margin: 0; font-size: 16px; line-height: 1.6; color: var(--th-text); }
.th-post-card__more { margin-top: auto; align-self: flex-start; display: flex; width: fit-content; align-items: center; gap: 8px; min-height: 44px; color: var(--th-seaweed); font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.th-post-card--featured { flex-direction: column; }
.th-post-card--featured .th-post-card__title { font-size: 28px; line-height: 1.2; }
.th-post-card--featured .th-post-card__body { padding: 22px 28px 28px; }
.th-feed__featured--wide .th-post-card--featured { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; }
.th-feed__featured--wide .th-post-card--featured .th-post-card__media { padding: 10px 0 10px 10px; }

/* Жижиг карт */
.th-post-mini { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 14px; align-items: start; padding: 12px 0; border-top: 1px solid var(--th-line); }
.th-post-mini:first-of-type { border-top: 0; padding-top: 0; }
.th-post-mini__media .th-cover { border-radius: 10px; }
.th-post-mini__body { display: flex; flex-direction: column; gap: 6px; }
.th-post-mini__title { margin: 0; font-size: 17px; line-height: 1.35; font-weight: 800; color: var(--th-indigo); }

/* Видео */
.th-video-card { display: flex; flex-direction: column; height: 100%; background: var(--th-white); border: 1px solid var(--th-line); border-radius: 20px; transition: box-shadow .18s ease, transform .18s ease; }
.th-video-card:hover, .th-video-card:focus-within { box-shadow: var(--th-shadow-md); transform: translateY(-2px); }
.th-video-card__media { display: block; position: relative; padding: 10px 10px 0; border-radius: 16px; }
.th-video-card__media:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 2px; }
.th-video-card__play { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 56px; height: 56px; border-radius: 50%; background: rgba(0, 61, 91, .82); color: var(--th-white); display: inline-flex; align-items: center; justify-content: center; font-size: 20px; padding-left: 4px; transition: background .18s ease; }
.th-video-card__media:hover .th-video-card__play { background: var(--th-seaweed); }
.th-video-card__body { display: flex; flex-direction: column; gap: 8px; padding: 16px 22px 22px; flex: 1 1 auto; }
.th-video-card__title { margin: 0; font-size: 19px; line-height: 1.3; font-weight: 800; color: var(--th-indigo); }
.th-video-card__yt { margin: 0; font-size: 14px; color: var(--th-muted); }
.th-video-card__links { margin: auto 0 0; }
.th-textlink-plain { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: var(--th-seaweed); font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.th-video-featured { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 32px; align-items: center; margin-bottom: 44px; background: var(--th-white); border: 1px solid var(--th-line); border-radius: 24px; padding: 18px; }
.th-video-frame { position: relative; width: 100%; aspect-ratio: 16 / 9; border-radius: 16px; overflow: hidden; background: var(--th-indigo); }
.th-video-frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.th-video-frame--single { margin: 0 0 16px; }
.th-video-featured__copy { display: flex; flex-direction: column; gap: 10px; padding: 8px 10px 8px 0; }
.th-eyebrow-text { margin: 0; color: var(--th-seaweed); font-weight: 800; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; }
.th-video-featured__title { margin: 0; font-size: 28px; line-height: 1.2; color: var(--th-indigo); }
.th-video-featured__desc { margin: 0; font-size: 16px; line-height: 1.6; color: var(--th-text); }
.th-video-featured__links { margin: 6px 0 0; display: flex; flex-wrap: wrap; gap: 10px 18px; align-items: center; }
.th-btn-ghost, .th-btn-outline { display: inline-flex; align-items: center; gap: 10px; min-height: 48px; padding: 10px 22px; border-radius: 999px; border: 2px solid var(--th-indigo); color: var(--th-indigo); font-weight: 700; text-decoration: none; transition: background .18s ease, color .18s ease; }
.th-btn-ghost:hover, .th-btn-outline:hover { background: var(--th-indigo); color: var(--th-white); }
.th-btn-ghost:focus-visible, .th-btn-outline:focus-visible, .th-switch__item:focus-visible, .th-post-card__more:focus-visible, .th-textlink-plain:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 2px; }

/* Блог ↔ Влог шилжүүлэгч */
.th-switch { display: flex; justify-content: center; margin: 0; }
.th-switch__track { display: inline-flex; gap: 6px; padding: 6px; border-radius: 999px; background: var(--th-surface); border: 1px solid var(--th-line); }
.th-switch__item { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 8px 22px; border-radius: 999px; color: var(--th-indigo); font-weight: 700; text-decoration: none; }
.th-switch__item.is-active { background: var(--th-seaweed); color: var(--th-white); }
.th-switch__item:not(.is-active):hover { background: var(--th-white); }

/* Тайлан */
.th-report-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; align-items: stretch; }
.th-report-card { display: flex; flex-direction: column; height: 100%; background: var(--th-white); border: 1px solid var(--th-line); border-radius: 20px; transition: box-shadow .18s ease, transform .18s ease; }
.th-report-card:hover, .th-report-card:focus-within { box-shadow: var(--th-shadow-md); transform: translateY(-2px); }
.th-report-card__cover { padding: 14px 14px 0; }
.th-report-card__cover .th-cover { max-width: 240px; margin: 0 auto; border: 1px solid var(--th-line); }
.th-report-card__body { display: flex; flex-direction: column; gap: 10px; padding: 18px 22px 22px; flex: 1 1 auto; }
.th-report-card__title { margin: 0; font-size: 20px; line-height: 1.3; font-weight: 800; color: var(--th-indigo); }
.th-report-card__fh { margin: 4px 0 0; font-size: 13px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; color: var(--th-seaweed); }
.th-report-card__findings { margin: 0; padding-left: 20px; font-size: 15px; line-height: 1.55; color: var(--th-text); display: flex; flex-direction: column; gap: 6px; }
.th-report-card__actions { margin: auto 0 0; padding-top: 6px; }
.th-report-card--featured { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 28px; align-items: start; padding: 10px; }
.th-report-card--featured .th-report-card__cover { padding: 0; }
.th-report-card--featured .th-report-card__cover .th-cover { max-width: 300px; }
.th-report-card--featured .th-report-card__title { font-size: 28px; line-height: 1.2; }
.th-report-card--featured .th-report-card__body { padding: 16px 20px 20px 0; }
.th-report-preview { margin: 0; display: flex; flex-direction: column; align-items: center; gap: 10px; }
.th-report-preview a { display: block; width: min(100%, 260px); border-radius: 12px; }
.th-report-preview a:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 3px; }
.th-report-preview .th-cover { border: 1px solid var(--th-line); box-shadow: var(--th-shadow-md); }
.th-report-preview__cap { font-size: 15px; color: var(--th-text); text-align: center; }
.th-post-pdf, .th-post-back { margin-top: 28px; }

/* Тайлангийн үзүүлэлт — тухайн тайлангийн карт дотор, хүрээгүй нээлттэй мөр (2026-10-07). Тусдаа KPI grid байхгүй. */
.th-reports-scope { display: flex; gap: 12px; align-items: flex-start; max-width: 880px; margin: 0 auto 28px; padding: 14px 18px; background: var(--th-white); border-left: 4px solid var(--th-sunray); border-radius: 0 12px 12px 0; font-size: 16px; line-height: 1.6; color: var(--th-text); text-align: left; }
.th-reports-scope i { color: var(--th-seaweed); margin-top: 5px; }
.th-report-card__period { font-size: 14px; font-weight: 800; color: var(--th-indigo); }
.th-report-card__eyebrow { text-transform: none; letter-spacing: 0; font-size: 14px; line-height: 1.45; }
.th-rmetrics { margin: 4px 0 0; padding-top: 12px; border-top: 1px solid var(--th-line); }
.th-rmetrics__h { margin: 0 0 4px; font-size: 15px; font-weight: 800; color: var(--th-seaweed); }
.th-rmetrics__list { list-style: none; margin: 0; padding: 0; }
.th-rmetric { padding: 10px 0; border-bottom: 1px solid var(--th-canvas); }
.th-rmetric:last-child { border-bottom: 0; padding-bottom: 2px; }
.th-rmetric__main { margin: 0; font-size: 16px; line-height: 1.45; color: var(--th-indigo); overflow-wrap: break-word; }
.th-rmetric__num, .th-rmetric__pg { white-space: nowrap; }
.th-rmetric__value { font-size: 22px; font-weight: 900; color: var(--th-seaweed); }
.th-rmetric__unit { font-weight: 800; }
.th-rmetric__sep { color: var(--th-muted); }
.th-rmetric__scope, .th-rmetric__src { margin: 3px 0 0; font-size: 14px; line-height: 1.5; color: var(--th-meta); overflow-wrap: break-word; }
.th-rmetric__src a { color: var(--th-seaweed); text-decoration: underline; text-underline-offset: 3px; }
.th-rmetric__src a:hover { color: var(--th-indigo); }
.th-rmetric__src a:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 2px; border-radius: 4px; }

/* Хуудаслалт */
.th-pagination { margin-top: 32px; display: flex; flex-direction: column; align-items: center; gap: 8px; }
.th-pagination ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.th-pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-width: 44px; min-height: 44px; padding: 8px 14px; border-radius: 999px; border: 1px solid var(--th-line); background: var(--th-white); color: var(--th-indigo); font-weight: 700; text-decoration: none; }
.th-pagination .page-numbers.current { background: var(--th-seaweed); border-color: var(--th-seaweed); color: var(--th-white); }
.th-pagination .page-numbers.dots { border: 0; }
.th-pagination a.page-numbers:hover { background: var(--th-surface); }
.th-pagination a:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 2px; }
.th-pagination__info { margin: 0; font-size: 14px; color: var(--th-muted); }

/* Нэг нийтлэлийн хуудас (theme-ийн single): мета, буцах холбоос, YouTube холбоос, сэтгэгдлийн товч — contrast (canvas дэвсгэр дээр) */
.th-meta { font-size: 14px; color: var(--th-muted); }
.th-post-back a, .th-video-card__yt a, .th-post-pdf a, .th-meta a { color: var(--th-seaweed); text-decoration: underline; text-underline-offset: 3px; font-weight: 700; }
.th-post-back a:hover, .th-video-card__yt a:hover, .th-meta a:hover { color: var(--th-indigo); }
#commentform #submit, .comment-respond input[type="submit"] { background: var(--th-seaweed); color: var(--th-white); border: 0; border-radius: 999px; padding: 12px 24px; font-weight: 700; min-height: 44px; cursor: pointer; }
#commentform #submit:hover, #commentform #submit:focus-visible { background: var(--th-indigo); }
.comment-respond a, .comments-area a { color: var(--th-seaweed); text-decoration: underline; }
/* Theme-ийн хайлт/архивын хуудаслалт (nav-links) ба нийтлэлийн навигац — canvas дэвсгэр дээр contrast */
.nav-links a, .nav-previous a, .nav-next a, .post-navigation a, .pagination a { color: var(--th-seaweed); text-decoration: underline; text-underline-offset: 3px; font-weight: 700; }
.nav-links a:hover, .post-navigation a:hover { color: var(--th-indigo); }
/* Видео тоглуулагч (iframe) keyboard-аар focus авахад харагдах хүрээ */
.th-video-frame iframe:focus-visible, .elementor-widget-video iframe:focus-visible, .elementor-video:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 2px; }

/* Responsive */
@media (max-width: 1024px) {
  .th-feed__grid, .th-report-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .th-feed__top, .th-video-featured, .th-feed__featured--wide .th-post-card--featured { grid-template-columns: minmax(0, 1fr); }
  .th-report-card--featured { grid-template-columns: 220px minmax(0, 1fr); }
}
@media (max-width: 767px) {
  .th-feed__grid, .th-report-grid { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .th-feed__h { font-size: 23px; }
  .th-post-card--featured .th-post-card__title, .th-video-featured__title, .th-report-card--featured .th-report-card__title { font-size: 23px; }
  .th-post-card__body, .th-video-card__body, .th-report-card__body, .th-post-card--featured .th-post-card__body { padding: 16px 18px 20px; }
  .th-feed__featured--wide .th-post-card--featured .th-post-card__media { padding: 10px 10px 0; }
  .th-report-card--featured { grid-template-columns: minmax(0, 1fr); }
  .th-report-card--featured .th-report-card__cover .th-cover { max-width: 220px; margin: 0 auto; }
  .th-report-card--featured .th-report-card__body { padding: 16px 12px 12px; }
  .th-post-mini { grid-template-columns: 100px minmax(0, 1fr); }
  .th-switch__track { width: 100%; justify-content: stretch; }
  .th-switch__item { flex: 1 1 0; justify-content: center; padding: 8px 12px; }
  .th-reports-scope { font-size: 15px; padding: 12px 14px; }
  .th-video-featured { padding: 12px; gap: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .th-post-card, .th-video-card, .th-report-card { transition: none; }
  .th-post-card:hover, .th-video-card:hover, .th-report-card:hover, .th-post-card:focus-within, .th-video-card:focus-within, .th-report-card:focus-within { transform: none; }
}

/* =====================================================================
   28. Зөвлөгөөний 4 хуудас (2026-10-07) — Хууль эрх зүй, Бие даан амьдрах, Дэд бүтэц, Хөдөлмөр эрхлэлт.
   Зөвхөн .th-adv (section), .th-il-*, .th-work-*, .th-law-*, .th-infra-*, .th-advice-form ангиллын дотор — бусад хуудсанд
   нөлөөлөхгүй. Card: цагаан, 20px радиус; ижил мөрийн card ижил өндөр (CSS grid, grid-auto-rows:1fr), CTA доод түвшинд
   (margin-top:auto). Тогтмол height, overflow:hidden, line-clamp байхгүй — 200% zoom-д текст бүтэн, card өндөрсөнө.
   Эх файл: elementor-build/th-advice.css (build_css нь th-global.css-ийн төгсгөлд нэгтгэнэ).
   ===================================================================== */
.th-adv .th-adv-intro p, .th-adv .th-adv-lead p { margin-bottom: 0; }
.th-adv .th-adv-lead { max-width: 62ch; }
.th-adv-head--left { max-width: 820px; }
.th-adv .elementor-widget-text-editor p:last-child { margin-bottom: 0; }

/* Товч: ≥48px өндөр, утсан дээр бүтэн өргөн */
.th-adv .th-adv-btn .elementor-button { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; }
.th-adv .th-textlink .elementor-button { min-height: 44px; display: inline-flex; align-items: center; }
@media (max-width: 767px) {
  .th-adv .th-adv-btns { width: 100%; }
  .th-adv .th-adv-btns > .elementor-widget-button { width: 100%; }
  .th-adv .th-adv-btns .elementor-button { width: 100%; }
}

/* Hero */
.th-adv-hero__img img { aspect-ratio: 4 / 3; object-fit: cover; border-radius: 24px; }
.th-adv-hero__media { align-self: center; }

/* Тэнцүү card grid */
.th-adv-grid {
  display: grid !important; grid-template-columns: repeat(var(--th-cols, 3), minmax(0, 1fr)); grid-auto-rows: 1fr;
  gap: 24px !important; width: 100%; align-items: stretch;
}
.th-adv-grid--2 { --th-cols: 2; }
.th-adv-grid--3 { --th-cols: 3; }
.th-adv-grid--4 { --th-cols: 4; }
.th-adv-grid--5 { --th-cols: 6; }
.th-adv-grid > .th-adv-card {
  width: 100% !important; max-width: 100% !important; min-width: 0; height: 100%; margin: 0 !important;
  display: flex; flex-direction: column; background: var(--th-white);
}
.th-adv-grid--5 > .th-adv-card { grid-column: span 2; }
.th-adv-grid--5 > .th-adv-card:nth-child(4) { grid-column: 2 / span 2; }
.th-adv-grid--5 > .th-adv-card:nth-child(5) { grid-column: 4 / span 2; }
.th-adv-grid > .th-adv-card > .elementor-element { width: 100%; max-width: 100%; }
.th-adv-grid > .th-adv-card > .th-adv-card__top { width: auto; }
.th-adv-grid > .th-adv-card > .th-adv-card__link { margin-top: auto !important; }
.th-adv-card__title .elementor-heading-title { overflow-wrap: normal; word-break: normal; }
@media (max-width: 1024px) {
  .th-adv-grid, .th-adv-grid--4, .th-adv-grid--5 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .th-adv-grid--5 > .th-adv-card, .th-adv-grid--5 > .th-adv-card:nth-child(n) { grid-column: auto / span 1; }
  .th-adv-grid--3 > .th-adv-card:last-child:nth-child(odd), .th-adv-grid--5 > .th-adv-card:last-child:nth-child(odd) {
    grid-column: 1 / -1; justify-self: center; width: calc(50% - 12px) !important;
  }
}
@media (max-width: 767px) {
  .th-adv-grid, .th-adv-grid--4, .th-adv-grid--5 { grid-template-columns: minmax(0, 1fr); grid-auto-rows: auto; gap: 16px !important; }
  .th-adv-grid--3 > .th-adv-card:last-child:nth-child(odd), .th-adv-grid--5 > .th-adv-card:last-child:nth-child(odd) {
    grid-column: auto; justify-self: stretch; width: 100% !important;
  }
}

/* Дугаар, үсгийн тэмдэг */
.th-adv .th-adv-num .elementor-heading-title {
  display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 50%;
  background: var(--th-indigo); color: var(--th-white);
}
.th-adv .th-adv-letter .elementor-heading-title {
  display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 12px;
  background: var(--th-seaweed); color: var(--th-white);
}
.th-adv .th-adv-card__top { flex-wrap: nowrap; }
.th-adv .th-adv-card__top > .elementor-widget { width: auto; }

/* Accordion (нийтлэл, ярилцлага) */
.th-adv-acc .e-n-accordion-item-title { min-height: 56px; }
.th-adv-acc .th-adv-acc__full { max-width: 72ch; }
.th-adv-acc .th-adv-acc__full h4 { font-size: 18px; margin: 20px 0 8px; color: var(--th-indigo); }
.th-adv-points .elementor-icon-list-item { align-items: flex-start; }
.th-adv-points .elementor-icon-list-icon { padding-top: 5px; }

/* Видео card */
.th-adv-video .elementor-widget-video { width: 100%; }
.th-adv-video .elementor-wrapper { border-radius: 14px; overflow: hidden; }

/* #asuult — хурдан холбоо + маягт */
.th-adv-ask { scroll-margin-top: 96px; }
.th-adv-contact .elementor-icon-list-item > a { min-height: 44px; display: inline-flex; align-items: center; }
.th-adv-contact .elementor-icon-list-text { overflow-wrap: anywhere; }
/* Зөвлөгөөний маягтын (`.th-advice-form` / `.th-cform--advice`) ХАРАГДАЦЫГ §30 (th-cform.css) БҮРЭН
   хариуцна — §28-д маягтын дүрэм НЭГ Ч БАЙХГҮЙ. Хоёр шатаар цэвэрлэв (2026-10-13):

   1) 14 `.th-advice-form …` дүрэм — маягт `th-cf-*` класстай болсон бөгөөд §30 нь ижил specificity-тэй
      атлаа ДАРААГААР бичигдсэн тул бүгд дарагдаж дэмий болсон байв. ХЭМЖИЖ баталсан (таамаглаагүй):
      дүрмүүдийг CSSOM-оор устгаад маягтын 79 элементийн 634 computed property-г дахин уншихад
      4 хуудас × 1440/390/320 өргөнд ГЕОМЕТРИЙН ялгаа 0; үлдсэн 42 зөрүүгийн 40 нь
      `fieldset.hidden-fields-container` (CF7-ийн нуусан хайрцаг, `display: none` тул харагдахгүй),
      2 нь `fieldset.th-cf-method`-ийн `min-width`.
      📏 `tools/advice/qa-css-redundant.mjs` → `qa-local/advice/css-redundant-{1440,390,320}.json`.
   2) Дээрх `min-width`-ийн тулд үлдээсэн `.th-advice-form fieldset { min-width: 0 }` — [18730f] түүнийг
      §30-д `.th-cform fieldset { min-width: 0 }` болгож (ХОЁР маягтад хамаарна) нэмсэн тул үүнийг ч хасав.
      📏 Батлав: миний дүрмийг CSSOM-оор устгасны дараа `fieldset.th-cf-method`-ийн computed `min-width`
      320/390/1440 гурвуулд `0px` ХЭВЭЭР үлдэж, радио шошгыг зориуд урт болгосон үед ч хэвтээ гүйлгээ
      0 гарсан (сорил: `backup/advice-deadcode-pre-2026-10-13-1420/probe-fieldset.mjs`).

   ОНЦЛОХ — cream: хасагдсан `.th-a-privacy` нь `background: var(--th-cream)` тавьдаг байв. Хэрэглэгчийн
   «cream дэвсгэрийг арилгах» шаардлага нь `/taniltsuulga/mendchilgee/` ба `/uil-ajillagaa/` ХОЁР хуудсанд
   зааж өгөгдсөн тул маягтын нууцлалын анхааруулгад хамаарахгүй гэж тооцов; §30-д `.th-cf-privacy` нь
   cream-ээр хэвээр. Хэрэв cream-ийг САЙТ ДАЯАР арилгах шийдвэр гарвал §30-г засна.
   `.th-a-hint`, `.th-a-required-note` нь мөн аль хэдийн байхгүй болсон класс (одоо `.th-cf-hint`,
   `.th-cf-note`) — өөрөөр хэлбэл §28 нь БАЙХГҮЙ бүтцийг зааварлаж, уншигчийг төөрөгдүүлж байв. */

/* Холбогдох хуудасны chip */
.th-adv-chips .elementor-icon-list-items { gap: 10px; }
.th-adv-chips .elementor-icon-list-item { margin: 0 !important; }
.th-adv-chips .elementor-icon-list-item > a {
  display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 8px 16px; border: 1px solid var(--th-line2);
  border-radius: 999px; background: var(--th-white); color: var(--th-indigo); text-decoration: none;
}
.th-adv-chips .elementor-icon-list-item > a:hover { border-color: var(--th-seaweed); color: var(--th-seaweed); }
.th-adv-chips .elementor-icon-list-item::after { display: none !important; }

/* Бие даан амьдрах — инфографик */
.th-il-info { width: 100%; }
.th-il-hub__img img { max-width: 400px; margin: 0 auto; display: block; }
.th-il-hub__cap { max-width: 34ch; }
.th-il-compare .th-il-no .elementor-icon-list-icon i { color: var(--th-indigo); }
@media (max-width: 1024px) {
  .th-il-hub { order: -1; }
  .th-il-hub__img img { max-width: 340px; }
  .th-il-col { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px !important; }
  .th-il-col > .th-il-node { width: 100% !important; height: 100%; }
}
@media (max-width: 767px) {
  .th-il-hub__img img { max-width: 280px; }
  .th-il-col { grid-template-columns: minmax(0, 1fr); }
}
.th-il-example .th-adv-card__text p { margin: 0 0 8px; }

/* Хөдөлмөр эрхлэлт — эхний дэлгэц: H1 + нэг мөр + тэмдэглэл + 3 сонголт; доор нь дугаарласан алхам, туршлага,
   туслах видео. Хайрцгийн тоог цөөлж, алхмуудыг хүрээгүй жагсаалтаар харуулна. */
.th-work-hero__copy { max-width: 780px; }
.th-work-hero .th-adv-lead { max-width: 52ch; }
.th-work-note {
  max-width: 62ch; background: var(--th-white); border-left: 4px solid var(--th-seaweed); border-radius: 10px;
  padding: 12px 16px;
}
.th-work-pick { margin-top: 10px; }
.th-work-choice .th-adv-card__text { max-width: 38ch; }
.th-work-choice .th-adv-card__link .elementor-button { width: auto; }

/* Дугаарласан алхам — хайрцаггүй, desktop 2 багана, утсан дээр 1 */
.th-work-steps {
  display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 44px !important; width: 100%;
}
.th-work-steps > .th-work-step {
  width: 100% !important; max-width: 100% !important; min-width: 0; margin: 0 !important; padding-top: 18px;
  border-top: 2px solid var(--th-line);
}
.th-work-step__top { flex-wrap: nowrap !important; }
.th-work-step__top > .elementor-widget { width: auto; }
.th-work-step__top > .th-work-step__t { flex: 1 1 auto; min-width: 0; }
.th-work-step__t .elementor-heading-title { overflow-wrap: normal; word-break: normal; }
.th-work-step__b { max-width: 52ch; }
@media (max-width: 1024px) { .th-work-steps { gap: 26px 32px !important; } }
@media (max-width: 767px) { .th-work-steps { grid-template-columns: minmax(0, 1fr); gap: 22px !important; } }

/* Албан эх сурвалжийн жагсаалт */
.th-work-sources { max-width: 860px; }
.th-work-sources__list .elementor-icon-list-item > a { min-height: 44px; display: inline-flex; align-items: flex-start; }

/* Ажил олгогчийн гарын авлага (PDF) */
.th-work-guide { width: 100%; max-width: 860px; }
.th-work-guide__btns > .elementor-widget { width: auto; }
.th-work-employer .th-adv-fb .elementor-icon-list-item > a { min-height: 44px; display: inline-flex; align-items: center; }

/* Туслах видео (2020) — анхааруулга видеоны өмнө */
.th-work-warn {
  max-width: 68ch; background: var(--th-brick-bg); border-left: 4px solid var(--th-brick); border-radius: 10px;
  padding: 14px 16px;
}
.th-work-video .elementor-widget-video { width: 100%; }
.th-work-video .elementor-wrapper { border-radius: 14px; overflow: hidden; }
.th-work-video__copy { max-width: 52ch; }

/* Хэсгийн төгсгөлийн богино текст холбоос (том товч давтахгүй) */
.th-work-links-row > .elementor-widget { width: auto; }
.th-work-endlink .elementor-button { min-height: 44px; }

/* Сайн дурын оролцоо — богино туслах хэсэг */
.th-work-vol__text { max-width: 68ch; }

#ajil-khaigch, #turshlaga, #ajil-olgogch, #sain-dur, #zovlomj, #oilgolt, #yu-ve, #jishee, #demjleg, #niitlel { scroll-margin-top: 96px; }
@media (min-width: 1025px) {
  .th-il-info { align-items: stretch !important; }
  .th-il-col { justify-content: space-between; }
  .th-il-col > .th-il-node { flex: 1 1 0; }
  .th-il-hub { align-self: center; }
}
.th-adv-chips .elementor-inline-items { margin-inline: 0 !important; }

/* Дэд бүтэц — сэдвийн сонголт (2026-10-13): 8 хүрээтэй карт + сум → 4 бүлэг, хүрээгүй.
   Хайрцаг, сум, дүрс байхгүй; дараалал нь бүлгийн гарчиг, 01–08 дугаар, зай, тод холбоосоор уншигдана. */
.th-infra-groups { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px 32px !important; width: 100%; }
.th-infra-groups > .th-infra-group { width: auto !important; max-width: 100% !important; min-width: 0; margin: 0 !important; }
.th-infra-group__title .elementor-heading-title {
  padding-bottom: 8px; border-bottom: 2px solid var(--th-seaweed); display: block;
}
.th-infra-topic { padding: 2px 0; }
.th-infra-topic .th-infra-topic__num .elementor-heading-title { font-variant-numeric: tabular-nums; }
.th-infra-topic > .elementor-widget-heading { flex: 0 0 24px; width: 24px !important; }
.th-infra-topic > .elementor-widget-button { flex: 1 1 0; min-width: 0; }
.th-infra-topic .th-infra-topic__link .elementor-button {
  min-height: 44px; padding: 4px 0 !important; text-align: left; justify-content: flex-start;
  font-size: 16px; line-height: 1.35; width: 100%;
}
.th-infra-topic .th-infra-topic__link .elementor-button-text { text-decoration: underline; text-underline-offset: 3px; }
.th-infra-topic .th-infra-topic__link .elementor-button:hover .elementor-button-text { text-decoration-thickness: 2px; }
@media (max-width: 1024px) { .th-infra-groups { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 28px !important; } }
@media (max-width: 767px) { .th-infra-groups { grid-template-columns: 1fr; gap: 22px !important; } }
.th-infra-before { margin-top: 16px; padding-top: 28px; border-top: 1px solid var(--th-line); }
.th-infra-before__videos > .th-infra-video { flex: 1 1 320px; }
.th-infra-lesson { scroll-margin-top: 90px; }
.th-infra-video .elementor-widget-video { width: 100%; }
.th-infra-video .elementor-wrapper { border-radius: 12px; overflow: hidden; }
.th-infra-lesson .th-adv-card__text ul, .th-infra-legend ol { margin: 0; padding-left: 1.2em; }
.th-infra-lesson .th-adv-card__text li, .th-infra-legend li { margin-bottom: 6px; }
.th-infra-schema__img img { width: 100%; height: auto; background: var(--th-surface); border-radius: 12px; }
.th-infra-barriers .th-adv-card__icon .elementor-icon { background-color: var(--th-brick-bg) !important; }
.th-infra-barriers .th-adv-card__icon .elementor-icon i { color: var(--th-brick-tx) !important; }
.th-infra-std { padding-top: 4px; }
.th-infra-std .elementor-widget-heading { width: auto; }
#zam, #sedvuud, #yaaj, #asuult { scroll-margin-top: 90px; }

/* Хууль, эрх зүй */
.th-law-quick .th-adv-contact .elementor-icon-list-text { font-weight: 600; }
.th-law-doc .th-law-meta p { margin: 0; }
/* Баримтын хүчинтэй байдлын тэмдэглэл. Дэвсгэр: 2026-10-13-нд хэрэглэгчийн шийдвэрээр дулаан `cream`
   (#FBF6EC) → брэндийн цайвар цэнхэр `surface` (#EDF4F6) болов (сайт даяар нэг загварт оруулах).
   📏 Хэмжсэн: эцэг нь ЦАГААН (#FFF) тул ялгарал хадгалагдана — цагаантай харьцуулахад surface **1.113:1**,
   cream 1.077:1 (өөрөөр хэлбэл ялгарал БАГА ЗЭРЭГ САЙЖИРСАН). Текстийн контраст: indigo (#003D5B)
   surface дээр **10.38:1** (cream дээр 10.72) — WCAG AA 4.5-аас хамаагүй дээш, 15px энгийн текст.
   Зүүн 4px seaweed хүрээ нь гол ялгах тэмдэг — хэвээр (surface дээр 4.59:1). */
.th-law-doc .th-law-note { background: var(--th-surface); border-left: 4px solid var(--th-seaweed); padding: 10px 12px; border-radius: 8px; }
.th-law-topic { scroll-margin-top: 90px; }
.th-law-disclaimer { max-width: 760px; }

/* Видео: focus YouTube iframe дотор очиход widget-ийн эргэн тойронд тод хүрээ */
.th-adv .elementor-widget-video:focus-within { outline: 3px solid var(--th-seaweed); outline-offset: 4px; border-radius: 14px; }

/* =====================================================================
   29. Танилцуулга: «Байгууллагын мэндчилгээ», «Үйл ажиллагаа» цэгцлэлт (2026-10-07 орой)
   Зөвхөн .th-greet, .th-act-hero, .th-act-chig, .th-act-acc, .th-act-* ангиллын дотор — header, бусад хуудас, глобал өнгө
   өөрчлөгдөхгүй. Эх файл: elementor-build/th-intro.css (deploy нь th-global.css-ийн төгсгөлд нэгтгэнэ).
   ===================================================================== */

/* Мэндчилгээ — нэг цагаан section: H1 → зургийн галерей (1000px) → захидал (700px ≈ 70 тэмдэгт/мөр) */
.th-greet > .e-con-inner > .elementor-widget, .th-greet > .e-con-inner > .e-con { width: 100%; }
.th-greet .th-greet__title .elementor-heading-title { margin: 0; }
.th-greet .th-greet__body { max-width: 700px; margin-inline: auto; margin-top: 10px; }
.th-greet .th-greet__body .elementor-widget-text-editor { text-align: left; }
/* Догол мөр хооронд тодорхой зай — «нэг урт блок» шиг харагдахгүй */
.th-greet .th-greet__text p + p { margin-top: 1.05em; }
.th-greet .th-greet__text p:last-child { margin-bottom: 0; }

/* =====================================================================
   ЗУРГИЙН ГАЛЕРЕЙ (.th-gal) — «Байгууллагын мэндчилгээ» ба «Бидний тухай»
   Зочин сумны товч эсвэл жижиг зургаар ӨӨРӨӨ сольж үзнэ. АВТОМАТААР СОЛИГДОХГҮЙ (JS-д таймер байхгүй).
   Зураг бүр тусдаа Elementor Image widget — админаас шууд солигдоно.
   JS: mu-plugins/th-intro.php. JS байхгүй үед бүх зураг дэс дараалан харагдана.

   2026-10-13 (хоёр дахь засвар): ХҮРЭЭНИЙ ӨНДӨР ТОГТМОЛ.
   Өмнө нь JS нь идэвхтэй слайдын бодит өндрийг track-д пикселээр тавьж (`syncHeight`, `transition: height`)
   байсан тул зураг солигдох бүрт хүрээний өндөр өөрчлөгдөж, сум/тоолуур/жижиг зураг болон доорх бүх
   агуулга дээш доош үсэрдэг байв. Одоо өндрийг CSS-ийн `aspect-ratio` тогтооно — JS өндөрт огт хүрэхгүй.

   Харьцааны сонголт (📏 бодит зургууд): 1.333 (×5: square-2014, office-2015, night-group, hall-group),
   1.499–1.584 (×4: hero, about, street-rain, act-social, act-il), 1.778 (×2: greeting, celebration).
   3:2 = 1.5 → дундаж хоосон зай 7.4%, хамгийн их 15.8%. (4:3 бол 10.1% / 25.1%, 16:9 бол 15.8% / 25.0%.)
   Хоосон зай нь хүрээний нэг жигд саармаг дэвсгэр (--th-surface); зураг тайрагдахгүй, сунахгүй
   (`object-fit: contain`) тул бүлгийн зураг дээрх хүмүүс бүтэн харагдана.
   ===================================================================== */
.th-gal {
  --th-gal-ratio: 3 / 2;          /* breakpoint бүрт тогтмол; слайд бүрт ИЖИЛ */
  --th-gal-gutter: 68px;          /* desktop: сум хүрээний ГАДНА талд (зурагтай давхцахгүй) */
  width: 100%;
  max-width: calc(1000px + 2 * var(--th-gal-gutter));   /* хүрээ нь дээд тал нь 1000px */
  margin-inline: auto;
  min-width: 0;                   /* flex item-ийн min-width:auto нь жижиг зургийн мөрийн өргөнөөр сунгахыг хориглоно */
}
/* Жижиг зургийн мөр нь өөрөө гүйдэг тул түүний агуулга эцэг элементийг СУНГАХГҮЙ (хуудсанд хэвтээ scroll үүсэхгүй) */
.th-gal > *, .th-gal__stage, .th-gal__controls, .th-gal__live { min-width: 0; max-width: 100%; }

/* JS ачаалагдаагүй үе (fallback): бүх зураг дэс дараалан, байгаа харьцаагаараа */
.th-gal__slide { width: 100%; }
.th-gal__slide img {
  display: block; width: 100%; height: auto;
  border: 1px solid var(--th-line); border-radius: 22px;
  object-fit: contain;   /* глобал `.th-img img { object-fit: cover }`-ийг дарна — тайралтгүй */
}

/* --- JS ачаалагдсан үе (.is-ready): тогтмол харьцаатай хүрээ, слайдууд дээр нь стекчилнэ --- */
.th-gal.is-ready .th-gal__stage { position: relative; width: 100%; padding-inline: var(--th-gal-gutter); }
.th-gal.is-ready .th-gal__track {
  position: relative; display: block !important; width: 100%; height: auto;
  aspect-ratio: var(--th-gal-ratio);     /* ← зураг ачаалагдахаас ӨМНӨ зай нөөцөлнө (layout shift 0) */
  gap: 0 !important; overflow: hidden;
  background: var(--th-surface);         /* үлдсэн зайн нэг жигд, саармаг дэвсгэр */
  border: 1px solid var(--th-line); border-radius: 22px;
}
.th-gal.is-ready .th-gal__slide {
  position: absolute; inset: 0; width: 100%; height: 100%; margin: 0 !important; padding: 0 !important;
}
.th-gal.is-ready .th-gal__slide img { width: 100%; height: 100%; border: 0; border-radius: 0; object-fit: contain; }
.th-gal.is-ready .th-gal__slide[hidden] { display: none !important; }

/* Сум: хүрээний зүүн/баруун талд босоо төвд ТОГТМОЛ (зургийн бодит өндрөөс хамаарахгүй) */
.th-gal__btn {
  flex: 0 0 auto; width: 48px; height: 48px; min-width: 48px; min-height: 48px; padding: 0;
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--th-white); color: var(--th-seaweed);
  border: 1px solid var(--th-line2); border-radius: 50%; cursor: pointer;
  transition: background-color .15s ease, border-color .15s ease;
}
.th-gal.is-ready .th-gal__btn { position: absolute; top: 50%; transform: translateY(-50%); z-index: 2; }
.th-gal.is-ready .th-gal__btn--prev { left: 0; }
.th-gal.is-ready .th-gal__btn--next { right: 0; }
.th-gal__btn svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 2.25; stroke-linecap: round; stroke-linejoin: round; }
.th-gal__btn:hover { background: var(--th-surface); border-color: var(--th-seaweed); }
.th-gal__btn:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 2px; }

/* Тоолуур — хүрээний доор тогтмол зайд */
.th-gal__controls { display: flex; align-items: center; justify-content: center; margin-top: 14px; }
.th-gal__count { font-size: 16px; font-weight: 700; color: var(--th-meta); min-width: 68px; text-align: center; font-variant-numeric: tabular-nums; }

/* Жижиг зураг: ижил хэмжээтэй, НЭГ мөр. Багтахгүй бол зөвхөн энэ мөр хэвтээ гүйнэ (хуудас гүйхгүй). */
.th-gal__thumbs {
  display: flex; flex-wrap: nowrap; align-items: center; justify-content: flex-start;
  width: 100%; min-width: 0; max-width: 100%;
  gap: 10px; margin: 14px 0 0; padding: 2px 2px 10px; list-style: none;
  overflow-x: auto; overflow-y: hidden; overscroll-behavior-x: contain; scroll-behavior: smooth;
  scrollbar-width: thin; scrollbar-color: var(--th-line2) transparent;
}
@supports (justify-content: safe center) { .th-gal__thumbs { justify-content: safe center; } }
@media (prefers-reduced-motion: reduce) { .th-gal__thumbs { scroll-behavior: auto; } }
.th-gal__thumbs::-webkit-scrollbar { height: 6px; }
.th-gal__thumbs::-webkit-scrollbar-thumb { background: var(--th-line2); border-radius: 999px; }
.th-gal__thumbs li { flex: 0 0 auto; margin: 0; padding: 0; list-style: none; }
/* Жижиг зургийн дэвсгэр нь зураг ачаалагдах хүртэлх ба тунгалаг PNG-ийн доорх өнгө. 2026-10-13:
   дулаан `cream` → брэндийн цайвар цэнхэр `surface` (хэрэглэгчийн «cream-ийг сайт даяар нэг загварт»
   шийдвэр; мөн «галерейн цайвар цэнхэр загварыг хадгал» гэсэн шаардлагатай нийцүүлэв — өмнө нь
   галерейн бусад хэсэг цэнхэр байхад зөвхөн thumb дулаан cream байсан нь зөрчилтэй байв). */
.th-gal__thumb {
  display: block; flex: 0 0 auto; width: 84px; height: 56px; padding: 0; overflow: hidden; cursor: pointer;
  background: var(--th-surface); border: 2px solid var(--th-line2); border-radius: 10px;
  transition: border-color .15s ease;
}
.th-gal__thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.th-gal__thumb:hover { border-color: var(--th-lapis); }
.th-gal__thumb:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 2px; }
.th-gal__thumb[aria-current="true"] { border-color: var(--th-seaweed); border-width: 3px; }

/* Зөвхөн дэлгэц уншигчид — солигдсон зургийн тайлбарыг дуулгана (aria-live) */
.th-gal__live { position: static; }
.th-gal__sr {
  position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0;
  overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; border: 0;
}

@media (max-width: 1024px) { .th-gal { --th-gal-gutter: 56px; } }
@media (max-width: 767px) {
  /* Гар утас: сум хүрээний ДОТОР захад, тод дэвсгэртэй (зургийн төв хэсгийг халхлахгүй) */
  .th-gal { --th-gal-gutter: 0px; }
  .th-gal.is-ready .th-gal__btn {
    background: rgba(255, 255, 255, .94); border-color: var(--th-line2);
    box-shadow: 0 2px 12px rgba(0, 61, 91, .22);
  }
  .th-gal.is-ready .th-gal__btn--prev { left: 8px; }
  .th-gal.is-ready .th-gal__btn--next { right: 8px; }
  .th-gal__slide img, .th-gal.is-ready .th-gal__track { border-radius: 16px; }
  .th-gal__controls { margin-top: 12px; }
  .th-gal__thumbs { margin-top: 12px; }
  .th-gal__thumb { width: 72px; height: 48px; }
  .th-gal__count { min-width: 60px; font-size: 15px; }
}

/* «Дараагийн алхам» CTA (Бидний тухай) — гарчиг / тайлбар / 2 товч тусдаа мөрөнд, жигд зайтай */
.th-about-cta .th-about-cta__h .elementor-heading-title { margin: 0; }
.th-about-cta .th-about-cta__text { max-width: 48ch; margin-inline: auto; }
.th-about-cta .th-about-cta__text p { margin: 0; }
.th-about-cta .th-about-cta__btns { width: 100%; }
@media (max-width: 767px) {
  .th-about-cta .th-about-cta__btns > .elementor-widget-button { width: 100%; }
  .th-about-cta .th-about-cta__btns .elementor-button { width: 100%; }
}

/* Бидний тухай — зорилгын мэдэгдэл: бодит H2 гарчиг + уншилтын өргөн ~58 тэмдэгт */
.th-about-mission__h .elementor-heading-title { margin: 0; color: var(--th-indigo); }
.th-about-mission__text { max-width: 58ch; }

/* Үйл ажиллагаа — hero, тоон мөр (давхар зай багасгасан) */
.th-act-hero .th-act-lead { max-width: 720px; }

/* Долоон чиглэлийн accordion */
.th-act-chig { scroll-margin-top: 96px; }
.th-act-acc .e-n-accordion { display: flex; flex-direction: column; gap: 10px; }
.th-act-acc .e-n-accordion-item { border: 1px solid var(--th-line); border-radius: 14px; background: var(--th-white); scroll-margin-top: 104px; }
.th-act-acc .e-n-accordion-item[open] { border-color: var(--th-seaweed); }
.th-act-acc .e-n-accordion-item > .e-n-accordion-item-title {
  min-height: 60px; display: flex; align-items: center; justify-content: space-between; gap: 12px; cursor: pointer;
  border: 0 !important; border-radius: 14px; background: var(--th-white);
}
.th-act-acc .e-n-accordion-item[open] > .e-n-accordion-item-title { background: var(--th-surface); border-radius: 13px 13px 0 0; }
.th-act-acc .e-n-accordion-item > .e-n-accordion-item-title:hover { background: var(--th-surface2); }
.th-act-acc .e-n-accordion-item-title-text { display: flex; align-items: center; gap: 14px; margin: 0; font-size: 19px; line-height: 1.3; }
.th-act-acc .th-act-acc__icon {
  flex: 0 0 40px; width: 40px; height: 40px; border-radius: 50%; background: var(--th-surface); color: var(--th-seaweed);
  display: inline-flex; align-items: center; justify-content: center; font-size: 17px;
}
.th-act-acc .e-n-accordion-item[open] .th-act-acc__icon { background: var(--th-white); }
.th-act-acc .e-n-accordion-item > .e-n-accordion-item-title { flex-direction: row !important; justify-content: space-between !important; }
.th-act-acc .e-n-accordion-item-title-header { order: 0; flex: 1 1 auto; justify-content: flex-start !important; text-align: left; }
.th-act-acc .e-n-accordion-item-title-icon { order: 1; flex: 0 0 auto; color: var(--th-seaweed); margin-inline-start: auto; }
.th-act-acc .e-n-accordion-item-title:focus-visible { outline: 3px solid var(--th-seaweed) !important; outline-offset: 2px !important; box-shadow: 0 0 0 6px var(--th-white) !important; }
@media (max-width: 767px) {
  .th-act-acc .e-n-accordion-item-title-text { font-size: 17px; gap: 10px; }
  .th-act-acc .th-act-acc__icon { flex-basis: 36px; width: 36px; height: 36px; font-size: 15px; }
}

/* Нээлттэй panel: зүүн текст / баруун media, доор материал */
.th-act-panel { padding-top: 20px; }
.th-act-panel__top { width: 100%; }
.th-act-panel__copy .elementor-widget { width: 100%; }
.th-act-panel__media { align-self: flex-start; }
.th-act-panel__img img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 18px; }
.th-act-panel__media .elementor-widget-video { width: 100%; }
.th-act-panel__media .elementor-wrapper { border-radius: 14px; overflow: hidden; }
.th-act-panel__vcap p { margin: 0; font-weight: 600; }
.th-act-examples .elementor-icon-list-item { align-items: flex-start; }
.th-act-examples .elementor-icon-list-icon { padding-top: 4px; }
.th-act-more { margin-top: 2px; }
.th-act-more summary {
  display: inline-flex; align-items: center; min-height: 44px; cursor: pointer; color: var(--th-seaweed); font-weight: 700;
  text-decoration: underline; text-underline-offset: 3px;
}
.th-act-more ul { margin: 6px 0 0; padding-left: 1.2em; }
.th-act-more li { margin-bottom: 6px; }
.th-act-panel__foot { width: 100%; border-top: 1px solid var(--th-line); padding-top: 18px; }
.th-act-mats { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 28px !important; row-gap: 2px !important; width: 100%; }
.th-act-mats > .elementor-widget { width: 100%; }
.th-act-mats .elementor-button, .th-act-ask .elementor-button, .th-act-extra .elementor-button {
  min-height: 44px; display: inline-flex; align-items: center; justify-content: flex-start; text-align: left;
  padding: 6px 0 !important; white-space: normal; line-height: 1.4; font-size: 16px;
}
.th-act-mats .elementor-button-content-wrapper, .th-act-extra .elementor-button-content-wrapper { flex-direction: row !important; gap: 10px; }
.th-act-mats .elementor-button-icon, .th-act-extra .elementor-button-icon { order: -1; margin: 0 !important; }
.th-act-mats .elementor-button-icon i, .th-act-extra .elementor-button-icon i { width: 18px; text-align: center; }
.th-act-ask { margin-top: 4px; }
.th-act-extra { padding: 4px 4px 0; }
@media (max-width: 767px) { .th-act-mats { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 767px) { .th-act-extra { align-items: flex-start !important; } .th-act-extra > .elementor-widget { width: 100%; } }

/* =====================================================================
   30. Холбоо барих маягт (CF7 th-contact, #197) — 2026-10-13
   Бүх дүрэм .th-cform / .th-cform-box дотор scope-лосон. Бусад хуудас, header/footer,
   зөвлөгөөний th-advice маягтад НӨЛӨӨЛӨХГҮЙ.
   Эх файл: elementor-build/th-cform.css (deploy нь th-global.css-ийн төгсгөлд нэгтгэнэ).
   ===================================================================== */

/* Хэсэг: sticky header гарчгийг халхлахгүй */
#sanal { scroll-margin-top: 96px; }
@media (max-width: 767px) { #sanal { scroll-margin-top: 76px; } }
.th-cform-box h2:focus { outline: none; }
.th-cform-box h2:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 4px; }

/* ---------------------------------------------------------------- Карт: төвд, авсаархан */
.th-cform-box .th-form {
  max-width: 620px;
  margin-inline: auto;
  background: var(--th-white);
  border: 1px solid var(--th-line);
  border-radius: 14px;
  padding: 26px;
  box-shadow: var(--th-shadow-sm);
}
@media (max-width: 767px) {
  .th-cform-box .th-form { max-width: none; margin-inline: 0; padding: 20px 16px; border-radius: 12px; }
}

/* Талбар хоорондын жигд зай */
.th-cform p { margin: 0 0 18px; }
.th-cform p:last-child { margin-bottom: 0; }
.th-cform .th-cf-row { margin-bottom: 18px; }

/* ---------------------------------------------------------------- Шошго, туслах текст */
.th-cform label { display: block; font-weight: 600; margin-bottom: 6px; color: var(--th-indigo); }
.th-cform .th-req { color: var(--th-brick-tx); }
.th-cform .th-cf-note { font-size: 15px; color: var(--th-meta); margin-bottom: 18px; }
.th-cform .th-cf-hint { font-size: 14px; color: var(--th-meta); margin: -8px 0 18px; line-height: 1.5; }

/* ---------------------------------------------------------------- Оролтын талбарууд */
.th-cform input[type="text"], .th-cform input[type="email"], .th-cform input[type="tel"],
.th-cform select, .th-cform textarea {
  width: 100%; min-height: 48px; padding: 11px 13px;
  font: inherit; color: var(--th-text); background: var(--th-white);
  border: 1px solid var(--th-field); border-radius: 10px;
}
.th-cform textarea { min-height: 128px; resize: vertical; }
.th-cform select { appearance: none; padding-right: 40px; cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 8l5 5 5-5' fill='none' stroke='%2300798C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 13px center; background-size: 20px 20px; }
.th-cform input:focus-visible, .th-cform select:focus-visible, .th-cform textarea:focus-visible {
  outline: 3px solid var(--th-seaweed); outline-offset: 2px; border-color: var(--th-seaweed);
}
.th-cform .wpcf7-form-control-wrap { display: block; }

/* <fieldset>-ийн хөтчийн анхдагч `min-width: min-content` нь нарийн дэлгэцэд хэвтээ гүйлгээ үүсгэж
   болзошгүй (агуулга багтахаа болиход fieldset агшихгүй). Урьдчилсан хамгаалалт — одоогийн агуулгад
   320/390px дээр гүйлгээ ГАРААГҮЙ (хэмжсэн), гэхдээ радио шошго урт болбол гарч болно.
   2026-10-13: §28-д байсан .th-advice-form fieldset reset-ийн оронд энд, ХОЁР маягтад хамаарна. */
.th-cform fieldset { min-width: 0; }

/* ---------------------------------------------------------------- Хариу авах арга: дугуйрсан сонголтын товч */
.th-cform .th-cf-method { border: 0; margin: 0 0 18px; padding: 0; }
.th-cform .th-cf-method legend {
  display: block; width: 100%; padding: 0; margin-bottom: 8px;
  font-weight: 600; color: var(--th-indigo);
}
.th-cform .th-cf-method .wpcf7-radio { display: flex; flex-wrap: wrap; gap: 10px; }
.th-cform .th-cf-method .wpcf7-list-item { margin: 0; }
.th-cform .th-cf-method .wpcf7-list-item label {
  display: flex; align-items: center; gap: 10px;
  min-height: 48px; padding: 10px 18px; margin: 0;
  font-weight: 600; color: var(--th-indigo);
  background: var(--th-white); border: 1.5px solid var(--th-line2); border-radius: 999px;
  cursor: pointer; transition: border-color .15s ease, background-color .15s ease;
}
.th-cform .th-cf-method input[type="radio"] {
  width: 20px; height: 20px; margin: 0; accent-color: var(--th-seaweed); cursor: pointer; flex: 0 0 20px;
}
.th-cform .th-cf-method .wpcf7-list-item label:hover { border-color: var(--th-seaweed); background: var(--th-surface2); }
.th-cform .th-cf-method input[type="radio"]:checked + .wpcf7-list-item-label,
.th-cform .th-cf-method .wpcf7-list-item label:has(input:checked) {
  border-color: var(--th-seaweed); background: var(--th-surface);
}
.th-cform .th-cf-method label:has(input:checked) { border-color: var(--th-seaweed); background: var(--th-surface); }
.th-cform .th-cf-method input[type="radio"]:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 3px; }

/* Нуугдсан нөхцөлт талбар — зай эзлэхгүй */
.th-cform .th-cf-cond[hidden] { display: none !important; }

/* ---------------------------------------------------------------- Нууцлалын анхааруулга: цайвар шаргал */
/* 2026-10-13: хэрэглэгчийн шийдвэрээр cream → сайтын цайвар цэнхэр (--th-surface), сайт даяар нэг загвар.
   Хүрээг мөн sunray (дулаан шар) → seaweed болгов: хүйтэн дэвсгэр дээр дулаан шар хүрээ үлдвэл
   дулаан/хүйтэн хольц болно. seaweed нь зөвлөгөөний .th-law-note-ийн акценттэй ижил тул «тэмдэглэл»
   гэсэн бүрэлдэхүүнүүд сайт даяар нэг өнгөөр ялгагдана. Хэмжсэн: текст 8.98:1 (AA 4.5-аас дээш),
   цагаан эцэгтэй ялгарал 1.11:1 (өмнө 1.08 — бага зэрэг сайжирсан), хүрээ 4.59:1. */
.th-cform .th-cf-privacy {
  background: var(--th-surface); border: 1px solid var(--th-seaweed);
  border-radius: 10px; padding: 14px 16px;
  font-size: 15px; line-height: 1.6; color: var(--th-text);
}

/* ---------------------------------------------------------------- Зөвшөөрлийн checkbox */
.th-cform .th-cf-consent .wpcf7-list-item { margin: 0; }
.th-cform .th-cf-consent label {
  display: flex; align-items: flex-start; gap: 11px;
  min-height: 44px; padding: 8px 0; margin: 0;
  font-weight: 400; font-size: 15px; line-height: 1.55; color: var(--th-text); cursor: pointer;
}
.th-cform .th-cf-consent input[type="checkbox"] {
  width: 22px; height: 22px; margin: 2px 0 0; flex: 0 0 22px; accent-color: var(--th-seaweed); cursor: pointer;
}
.th-cform .th-cf-consent input[type="checkbox"]:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 3px; }

/* ---------------------------------------------------------------- Илгээх товч: дугуйрсан хөх ногоон */
.th-cform .th-cf-submit { margin-top: 22px; }
.th-cform input[type="submit"] {
  width: 100%; min-height: 52px; padding: 13px 28px;
  font: inherit; font-weight: 700; font-size: 17px;
  color: var(--th-white); background: var(--th-seaweed);
  border: 0; border-radius: 999px; cursor: pointer;
  transition: background-color .15s ease;
}
.th-cform input[type="submit"]:hover { background: var(--th-indigo); }
.th-cform input[type="submit"]:focus-visible { outline: 3px solid var(--th-indigo); outline-offset: 3px; }
.th-cform input[type="submit"][disabled], .th-cform input[type="submit"].is-busy {
  background: var(--th-field); cursor: progress;
}
.th-cform .wpcf7-spinner { display: block; margin: 12px auto 0; }

/* ---------------------------------------------------------------- Алдааны тайлбар (талбарын доор) */
.th-cform .th-cf-err { display: none; }
.th-cform .th-cf-err.is-on {
  display: block; margin-top: 6px;
  font-size: 14.5px; line-height: 1.5; font-weight: 600; color: var(--th-brick-tx);
}
.th-cform .has-err input[type="text"], .th-cform .has-err input[type="email"],
.th-cform .has-err input[type="tel"], .th-cform .has-err select, .th-cform .has-err textarea {
  border-color: var(--th-brick); border-width: 2px;
}
/* CF7-ийн өөрийн тайлбарыг нуух — ижил мессеж давхар гарахгүй (JS нь .th-cf-err рүү шилжүүлнэ) */
.th-cform .wpcf7-not-valid-tip { display: none; }

/* ---------------------------------------------------------------- Хариу (амжилт / алдаа) */
.th-cform .wpcf7-response-output {
  margin: 18px 0 0; padding: 14px 16px;
  border: 1px solid var(--th-line); border-left: 4px solid var(--th-seaweed); border-radius: 10px;
  background: var(--th-surface2); font-size: 15.5px; line-height: 1.6; color: var(--th-text);
}
.th-cform.invalid .wpcf7-response-output, .th-cform.failed .wpcf7-response-output,
.th-cform.spam .wpcf7-response-output {
  border-left-color: var(--th-brick); background: var(--th-brick-bg); color: var(--th-brick-tx);
}
.th-cform .wpcf7-response-output:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 2px; }

/* =====================================================================
   31. «Боловсролд хамруулах дөрвөн хандлага» картууд — 2026-10-13
   Хуудас: /zuvluguu/tegsh-khamran-surgakh/ (#145)
   Бүх дүрэм .th-edu-* дотор scope-лосон. Бусад зөвлөгөөний хуудас (§28), танилцуулга (§29),
   маягт (§30), header/footer-т НӨЛӨӨЛӨХГҮЙ.
   Эх файл: elementor-build/th-edu.css (deploy нь th-global.css-ийн төгсгөлд нэгтгэнэ).
   ===================================================================== */

/* ---------------------------------------------------------------- Grid: 4 / 2 / 1 багана
   Elementor-ийн container нь flex. Үүнийг grid болгож, картуудыг ИЖИЛ ӨНДӨРТЭЙ болгоно.
   Тогтмол px өндөр ОГТ тулгахгүй — өндрийг хамгийн урт агуулга тодорхойлно. */
.th-edu-approach {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-template-rows: auto 1fr;          /* гарчгийн мөр · тайлбарын мөр */
  gap: 18px !important;
  align-items: stretch;
  width: 100%;
}

/* Карт нь хоёр мөрийг эзэлж, эцгийн мөрийн өндрийг ӨВЛӨНӨ (subgrid).
   Ингэснээр гарчиг хоёр мөр болсон ч БҮХ картын тайлбар нэг түвшнээс эхэлнэ. */
.th-edu-approach > .th-edu-card {
  grid-row: span 2;
  display: grid;
  grid-template-rows: subgrid;
  gap: 10px;
  margin: 0 !important;
  width: auto !important;                /* Elementor-ийн inline өргөн grid-ийг эвдэхгүй */
  padding: 22px !important;              /* шаардлага: 20–24px */
  align-content: start;
}

/* subgrid дэмжихгүй хөтөч дээр: картууд хэвийн урсгалаар, өндөр нь stretch-ээр ижил хэвээр.
   Гарчгийн түвшин жигдрэхгүй ч агуулга бүрэн харагдана (текст тасрахгүй). */
@supports not (grid-template-rows: subgrid) {
  .th-edu-approach > .th-edu-card { grid-template-rows: auto 1fr; }
}

/* ---------------------------------------------------------------- Карт доторх текст */
.th-edu-card { text-align: left; }
.th-edu-card .th-edu-card__title { margin: 0; align-self: start; }
.th-edu-card .th-edu-card__title .elementor-heading-title { margin: 0; line-height: 1.3; }
.th-edu-card .th-edu-card__text { align-self: start; }
.th-edu-card .th-edu-card__text p {
  margin: 0;
  font-size: 16px;
  line-height: 1.6;                      /* шаардлага: ~1.6 */
  color: var(--th-text);
}
/* Текстийг таслах, … тэмдэгтээр нуух, фонт жижигрүүлэхийг ХОРИГЛОНО —
   өндөр нь агуулгаар тодорхойлогдох ёстой. Дараах дүрмүүд санамсаргүй тайралтаас хамгаална. */
.th-edu-card, .th-edu-card .th-edu-card__text p {
  overflow: visible;
  text-overflow: clip;
  -webkit-line-clamp: none;
}

/* ---------------------------------------------------------------- Онцлолтгүй: дөрвүүлээ ижил
   2026-10-13: эхэндээ 4 дэх карт (.th-edu-card--on) цайвар цэнхэр дэвсгэр + --th-seaweed хүрээтэй
   байв. Хэрэглэгч «бүгдийг нь адил болгоно, сүүлийнхийг тодруулах шаардлагагүй» гэснээр ХАСАВ.
   Шалтгаан нь мөн техникийн: --th-seaweed хүрээ цагаан дээр 5.10:1, энгийн картын --th-line нь
   1.34:1 — 3.8 дахин үсэрсэн, бас --th-seaweed бол сайтын холбоос/товчны өнгө тул дарагддаггүй
   карт «сонгогдсон таб» мэт уншигдаж байв.
   Ялгааг агуулга өөрөө дамжуулна: «Тэгш хамруулан сургах» гарчиг ба түүний тайлбар.
   Үхмэл дүрэм үлдээхгүйн тулд CSS-ийг мөн хассан (build.py-д ангилал олгохоо больсон). */

/* ---------------------------------------------------------------- Хэсгийн зай */
.th-edu-section > .e-con-inner > .elementor-widget-heading { margin-bottom: 4px; }

/* ---------------------------------------------------------------- Tablet: 2 багана
   Хоёр картын мөр тус бүрт гарчиг+тайлбарын мөр хэрэгтэй тул 2 × (auto 1fr) = 4 мөр. */
@media (max-width: 1024px) {
  .th-edu-approach {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(2, auto 1fr);
  }
}

/* ---------------------------------------------------------------- Mobile: 1 багана
   Карт бүр агуулгадаа тохирсон өндөртэй — шаардлагагүй хоосон зай үүсгэхгүй.
   Тиймээс subgrid-ийг унтрааж, картыг энгийн урсгалд оруулна. */
@media (max-width: 767px) {
  .th-edu-approach {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: none;
    gap: 16px !important;
  }
  .th-edu-approach > .th-edu-card {
    grid-row: auto;
    display: block;
    padding: 20px !important;
  }
  .th-edu-card .th-edu-card__title { margin-bottom: 8px; }
}

/* =====================================================================
   32. Хэлний сонгогч «MN | EN» (header) — 2026-10-13
   Shortcode: [th_lang_switch] (mu-plugins/th-i18n.php). Header-т «Санал хүсэлт илгээх»-ийн баруун талд.
   Зөвхөн .th-lang дотор — бусад header бүрэлдэхүүнд нөлөөлөхгүй.
   Хэрэглэгчийн шаардлага: одоогийн хэл ТОД ялгагдана; гарын товчлуураар хүрнэ; харагдах focus;
   гар утсанд амархан дарагдана (≥44 px), лого болон цэстэй давхцахгүй.
   Өнгө нь сайтын одоо байгаа токен (palette.py) — шинэ өнгө нэмээгүй.
   ===================================================================== */
.th-lang {
  display: inline-flex; align-items: center; gap: 2px;
  flex: 0 0 auto; white-space: nowrap;
  font-size: 15px; line-height: 1;
}
.th-lang__item {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 44px; min-height: 44px; padding: 0 8px;
  border-radius: 8px;
  font-weight: 600; letter-spacing: .02em;
  color: var(--th-text); text-decoration: none;
}
/* Одоогийн хэл — тод: бараан текст, цайвар цэнхэр дэвсгэр, доогуур зураас (зөвхөн өнгөөр биш ялгана) */
.th-lang__item.is-current {
  color: var(--th-indigo); background: var(--th-surface);
  font-weight: 700;
  text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px;
}
a.th-lang__item:hover { background: var(--th-surface); color: var(--th-indigo); }
a.th-lang__item:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 2px; }
/* Англи хувилбаргүй хуудсанд EN нь холбоос БИШ — бүдэг, дарахад юу ч болохгүй */
.th-lang__item.is-unavailable { color: var(--th-muted); font-weight: 500; cursor: default; }
.th-lang__sep { color: var(--th-line2); padding: 0 2px; user-select: none; }
/* Дэлгэц уншигчид л зориулсан текст */
.th-lang__sr {
  position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
/* Header-ийн «цэс + товч + хэлний сонгогч» мөр. 📏 2026-10-13 (жинхэнэ дэлгэцийн өргөнтэй тулгаж хэмжсэн):
   сонгогч (~100 px) нэмэгдсэнээр мөр 1440-оос бусад бүх өргөнд ХАЛИЖ байв — 1024: +15, 768: +34,
   390: +63, 320: +69 px (CTA «Санал хүсэлт илгээх» нь 174–189 px). Гар утасны эмуляцид Chrome layout
   viewport-ийг өргөсгөж хуудсыг жижигрүүлдэг тул товшилт хазайж байв.
   Шийдэл: мөр БАГТАХГҮЙ ҮЕД Л шилжинэ (`flex-wrap`) — тогтмол breakpoint биш тул монгол/англи CTA-ийн
   уртад өөрөө тохирно. Сүүлчийн бүрэлдэхүүн (сонгогч) эхэлж доод мөрөнд, баруун тийш. CTA-ийн загварыг
   өөрчлөхгүй, одоогийн хэл үргэлж харагдана, хэзээ ч хэвтээ гүйлгээ үүсэхгүй.
   `!important`: Elementor container-ийн `wrap=False` (`--flex-wrap: nowrap`) inline хувьсагчийг дарна. */
/* ТОДОРХОЙ БАЙДАЛ (1,3,0) ЗОРИУДААР. 📏 CDP `CSS.getMatchedStylesForNode`-оор хэмжихэд ≤1024px-д §26-ийн
   `#masthead .th-neo-header .e-con { flex-wrap: nowrap !important }` (1,2,0) нь миний өмнөх
   `.th-neo-header .th-hdr-actions` (0,2,0)-ийг ДАРЖ байв (хоёулаа !important → өндөр тодорхой байдал ялна) —
   тиймээс 1100px-д шилжиж, 1024-өөс доош ХАЛИЖ байсан. Тэр §26 дүрэм header-ийг нэг мөрөнд барих
   зорилготой тул ХӨНДӨХГҮЙ; зөвхөн энэ мөрөнд үл хамаарах дүрэм тавина. */
#masthead .th-neo-header .e-con.th-hdr-actions {
  --flex-wrap: wrap; flex-wrap: wrap !important;
  justify-content: flex-end !important; row-gap: 4px;
  min-width: 0;
}
/* Сонгогчийн widget АГШИХГҮЙ. 📏 Өмнө нь widget 9 px хүртэл агшиж (shrink=1), доторх 100 px-ийн `.th-lang`
   түүнээс хальж дэлгэцээс гарч байв — халилтын бодит механизм. Агшихгүй бол мөр бүхэлдээ шилжинэ. */
#masthead .th-neo-header .th-hdr-actions > .elementor-widget-shortcode { flex: 0 0 auto !important; }
/* Гар утас: зай, дотор зайг багасгана — ихэнх өргөнд нэг мөрөнд багтах боломжийг нэмэгдүүлнэ */
@media (max-width: 767px) {
  .th-lang { font-size: 14px; }
  .th-lang__item { min-width: 44px; padding: 0 6px; }
  #masthead .th-neo-header .e-con.th-hdr-actions { column-gap: 8px !important; --gap: 4px 8px; }
}


/* Mobile header: one compact row and HFE's full-header dropdown. */
#masthead .th-cta__short { display: none; }
#masthead .th-cta__en { display: none; }
html[lang^="en"] #masthead .th-cta__en { display: inline; }
html[lang^="en"] #masthead .th-cta__mn { display: none; }
@media (max-width: 1024px) {
  #masthead { padding: 8px 8px 0; }
  #masthead .th-neo-header { padding: 8px !important; }
  #masthead .th-neo-header > .e-con-inner { min-height: 48px; }
  #masthead .th-neo-header > .e-con-inner > .e-con { gap: 8px !important; }
  #masthead .th-logo { flex: 0 0 44px !important; width: 44px !important; }
  #masthead .th-logo a { display: flex; width: 44px; min-height: 44px; align-items: center; justify-content: center; }
  #masthead .th-logo img { width: auto; max-width: 36px; max-height: 40px; }
  #masthead .th-neo-header .e-con.th-hdr-actions {
    flex-wrap: nowrap !important; width: auto !important; flex: 1 1 auto !important;
    gap: 4px !important; margin-left: auto; min-width: 0;
  }
  #masthead .th-hdr-actions > .th-cta { order: 1; flex: 0 0 auto; width: auto; }
  #masthead .th-hdr-actions > .elementor-widget-shortcode { order: 2; }
  #masthead .th-hdr-actions > .th-nav { order: 3; flex: 0 0 44px !important; width: 44px !important; margin: 0 !important; }
  #masthead .th-cta .elementor-button {
    min-height: 44px; padding: 8px 10px; font-size: 14px; line-height: 1.25;
    display: inline-flex; align-items: center; white-space: nowrap;
  }
  #masthead .th-cta .elementor-button-content-wrapper { gap: 5px; }
  #masthead .th-cta__long { display: none; }
  #masthead .th-cta__short { display: inline; }
  #masthead .th-lang { gap: 0; font-size: 14px; }
  #masthead .th-lang__item { min-width: 44px; min-height: 44px; padding: 0 4px; }
  #masthead .th-lang__sep { padding: 0; }
  #masthead .th-nav .hfe-nav-menu__toggle {
    width: 44px; min-width: 44px; min-height: 44px; margin: 0;
    display: flex; justify-content: center; align-items: center;
  }
  /* The native open handler computes header width and left offset.
     Closed menus are removed from layout so stale desktop widths cannot overflow. */
  #masthead .th-nav .hfe-nav-menu__toggle:not(.hfe-active-menu) + nav.hfe-dropdown { display: none !important; }
  #masthead .th-nav nav.hfe-dropdown {
    max-width: calc(100vw - 16px); max-height: 70vh; max-height: 70dvh;
    overflow-y: auto; background: var(--th-white); border: 1px solid var(--th-line);
    border-radius: 14px; padding: 8px; box-shadow: var(--th-shadow-md);
  }
  #masthead .th-nav nav.hfe-dropdown > ul,
  #masthead .th-nav nav.hfe-dropdown > ul > li { width: 100%; }
  #masthead .th-nav nav.hfe-dropdown > ul { display: flex; flex-direction: column; }
  #masthead .th-nav nav.hfe-dropdown > ul > li { display: block; margin: 0; border-bottom: 1px solid var(--th-line); }
  #masthead .th-nav nav.hfe-dropdown > ul > li:last-child { border-bottom: 0; }
  #masthead .th-nav nav.hfe-dropdown .th-nav-parent { width: 100%; }
  #masthead .th-nav nav.hfe-dropdown a.hfe-menu-item,
  #masthead .th-nav nav.hfe-dropdown a.hfe-sub-menu-item {
    min-height: 48px; width: 100%; font-size: 16px; line-height: 1.4;
    white-space: normal; padding: 12px 14px !important;
  }
  #masthead .th-nav-parent > a.hfe-menu-item { min-width: 0; width: auto !important; }
  #masthead .th-nav nav.hfe-dropdown .sub-menu { width: 100%; box-shadow: none; }
}
@media (max-width: 359px) {
  #masthead .th-neo-header { padding: 6px !important; }
  #masthead .th-neo-header > .e-con-inner > .e-con { gap: 2px !important; }
  #masthead .th-neo-header .e-con.th-hdr-actions { gap: 2px !important; }
  #masthead .th-cta .elementor-button { padding-inline: 8px; }
  html[lang^="en"] #masthead .th-cta .elementor-button-icon { display: none; }
}
/* These two homepage images retain the complete 16:9 photograph on small screens. */
.th-slot-home-service-bus-stop img { aspect-ratio: 16 / 9; width: 100%; height: auto !important; object-fit: cover; }
@media (max-width: 1024px) {
  .th-neo-hero-image.th-slot-home-hero-interview .elementor-widget-container { height: auto !important; }
  .th-neo-hero-image.th-slot-home-hero-interview img { height: auto !important; aspect-ratio: 16 / 9; object-fit: contain; object-position: center; }
}
/* 2026-10-31: the white fact card was removed at the user's request.
   Keep the existing photo as the full desktop hero background; mobile remains photo then copy. */
@media (min-width: 1025px) {
  .th-home-interview-hero {
    grid-template-columns: minmax(0, 1fr); grid-template-rows: auto;
    min-height: 620px; background: var(--th-indigo);
  }
  .th-home-interview-hero::after { display: block; }
  .th-home-interview-hero > .th-neo-hero-image {
    grid-area: 1 / 1; position: absolute; inset: 0;
    width: 100%; height: 100%; align-self: stretch;
  }
  .th-home-interview-hero .th-neo-hero-image .elementor-widget-container,
  .th-home-interview-hero .th-neo-hero-image img { width: 100%; height: 100% !important; }
  .th-home-interview-hero .th-neo-hero-image img {
    aspect-ratio: auto; object-fit: cover; object-position: 50% 28%;
  }
  .th-home-interview-hero > .th-neo-hero-copy {
    grid-area: 1 / 1; width: min(660px, 57%); margin: 0;
    padding: 38px !important; align-self: center;
  }
}

/* UP revision 2026-10-16: seven-link navigation, Donation CTA, new pages. (v6 2026-10-20: team tabs, donation, partner grid, contact list)
   2026-10-17: the global H1/H2 clamp(...)!important and text-editor line-height rules were REMOVED — they overrode the
   per-widget sizes of every existing page. Heading sizes come from the templates again (Elementor per-widget typography). */
.th-up-support-row { padding-block:24px; border-bottom:1px solid var(--th-line); }
.th-up-support-row:last-child { border-bottom:0; }
.th-up-network-section { border-top:1px solid var(--th-line); }
.th-act-department { padding-block:20px; border-top:1px solid var(--th-line); scroll-margin-top:120px; }
.th-act-department:first-child { border-top:0; }
.th-act-departments .elementor-widget-n-accordion { width:100%; }
.th-feed-switch { flex-wrap:wrap; gap:8px; }
.th-feed-switch a { white-space:normal; min-height:44px; }
.th-switch__track { max-width:100%; flex-wrap:wrap; gap:8px; }
.th-switch__item { min-width:0; min-height:44px; white-space:normal; }
#masthead .th-neo-header { position:relative; }
#masthead .th-up-nav-wrap { width:auto; min-width:0; }
.th-up-nav [hidden] { display:none!important; }
.th-up-nav__toggle,.th-up-nav__subtoggle { border:0; border-radius:10px; color:var(--th-ink); background:transparent; padding:10px; min-width:44px; min-height:44px; display:flex; align-items:center; justify-content:center; cursor:pointer; }
.th-up-nav__toggle { display:none; background:var(--th-surface2); }
.th-up-nav svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:2; }
.th-up-nav__subtoggle svg { width:16px; height:16px; }
.th-up-nav__subtoggle[aria-expanded="true"] svg { transform:rotate(180deg); }
.th-up-nav__list { list-style:none; padding:0; margin:0; display:flex; align-items:center; gap:2px; }
.th-up-nav__item { position:relative; margin:0; padding:0; }
.th-up-nav__row { display:flex; align-items:center; }
.th-up-nav a { display:flex; align-items:center; min-height:44px; padding:10px 8px; font-size:15px; font-weight:600; line-height:1.35; color:var(--th-ink); text-decoration:none; white-space:nowrap; }
.th-up-nav a:hover,.th-up-nav a[aria-current="page"] { color:var(--th-seaweed); text-decoration:underline; text-underline-offset:6px; }
.th-up-nav a:focus-visible,.th-up-nav button:focus-visible { outline:3px solid var(--th-seaweed); outline-offset:2px; }
.th-up-nav button:hover { background:var(--th-surface2); }
.th-up-nav__sublist { display:block; position:absolute; top:100%; left:0; min-width:260px; max-width:340px; border:1px solid var(--th-line); border-radius:12px; padding:6px; background:var(--th-white); box-shadow:var(--th-shadow-md); z-index:100; }
.th-up-nav__sublist .th-up-nav__row { width:100%; }
.th-up-nav__sublist a { white-space:normal; flex:1; min-height:48px; padding:12px; }
.th-up-nav__sublist .th-up-nav__sublist { left:100%; top:0; }
.th-up-nav__item:last-child > .th-up-nav__sublist { left:auto; right:0; }
/* 2026-10-17 fix #1: ONE breakpoint for CSS and JS (th-up-ui.php matchMedia uses the same 1366px).
   Measured on review (CDP, 2026-10-17): the full row needs 1254px (logo+7 links+CTA+lang+gaps+card padding) and
   #masthead adds 36px side padding → one row fits from ≈1290px; at 1280px the language switcher wrapped (header 131px,
   2 rows). Below 1366px the hamburger is used; nothing is shrunk. Compact logo/CTA/lang styling stays at ≤1024px only. */
@media (max-width: 1099px){
 #masthead .th-neo-header .e-con.th-hdr-actions { flex-wrap:nowrap!important; width:auto!important; flex:1 1 auto!important; gap:4px!important; margin-left:auto; min-width:0; }
 #masthead .th-hdr-actions > .th-cta { order:1; flex:0 0 auto; width:auto; }
 #masthead .th-hdr-actions > .elementor-widget-shortcode:not(.th-nav) { order:2; }
 #masthead .th-hdr-actions > .th-nav { order:3; flex:0 0 44px!important; width:44px!important; margin:0!important; position:static; }
 .th-up-nav__toggle { display:flex; }
 /* 2026-10-17 fix #2: Elementor gives every .e-con `position:relative`, so the panel was contained by the inner
    .th-hdr-actions container (measured 390px: x≈68, width≈291). Make the inner containers static so the only
    positioned ancestor is .th-neo-header; inset-inline equals the card padding → equal side margins. */
 #masthead .th-neo-header > .e-con-inner, #masthead .th-neo-header .e-con:not(.th-neo-header), #masthead .th-up-nav-wrap, #masthead .th-up-nav { position:static!important; }
 .th-up-nav__panel { position:absolute; inset-inline:20px; top:calc(100% + 8px); max-height:70vh; max-height:70dvh; overflow:auto; background:var(--th-white); border:1px solid var(--th-line); border-radius:14px; padding:8px; box-shadow:var(--th-shadow-md); z-index:1000; }
 .th-up-nav__list { display:block; width:100%; }
 .th-up-nav__row { width:100%; }
 .th-up-nav__list > li + li { border-top:1px solid var(--th-line); }
 .th-up-nav a { flex:1; min-height:48px; white-space:normal; font-size:16px; padding:12px 14px; }
 .th-up-nav__sublist,.th-up-nav__sublist .th-up-nav__sublist { position:static; min-width:0; width:auto; max-width:none; margin:0 0 8px 14px; border:0; border-left:2px solid var(--th-line); border-radius:0; box-shadow:none; padding:0 0 0 6px; }
 .th-up-nav__sublist a { padding:12px; }
}
@media(max-width:1024px){
 #masthead { padding:8px 8px 0; }
 #masthead .th-neo-header { padding:8px!important; }
 #masthead .th-neo-header > .e-con-inner > .e-con { gap:8px!important; }
 #masthead .th-logo { flex:0 0 44px!important; width:44px!important; }
 #masthead .th-logo a { display:flex; width:44px; min-height:44px; align-items:center; justify-content:center; }
 #masthead .th-logo img { width:auto; max-width:36px; max-height:40px; }
 #masthead .th-cta .elementor-button { min-height:44px; padding:8px 10px; font-size:14px; line-height:1.25; display:inline-flex; align-items:center; white-space:nowrap; }
 #masthead .th-cta__long { display:none; }
 #masthead .th-cta__short { display:inline; }
 #masthead .th-lang { gap:0; font-size:14px; }
 #masthead .th-lang__item { min-width:44px; min-height:44px; padding:0 4px; }
 #masthead .th-lang__sep { padding:0; }
 .th-up-nav__panel { inset-inline:8px; }
}
@media(max-width:359px){
 #masthead .th-neo-header { padding:6px!important; }
 #masthead .th-neo-header > .e-con-inner > .e-con { gap:2px!important; }
 #masthead .th-neo-header .e-con.th-hdr-actions { gap:2px!important; }
 .th-up-nav__panel { inset-inline:6px; }
 #masthead .th-cta .elementor-button { padding-inline:8px; }
 #masthead .th-donation-cta .elementor-button-icon { display:none; }
 .th-feed-switch { width:100%; border-radius:16px; }
 .th-feed-switch a { width:100%; justify-content:center; }
 .th-switch__track { width:100%; border-radius:16px; }
 .th-switch__item { width:100%; justify-content:center; }
}
@media(prefers-reduced-motion:reduce){.th-up-nav * { transition:none!important; }}

/* ---- 2026-10-20 (v6): Хандив — [th_donation]. Компьютерт зүүн: дэмжих чиглэл (radio карт), баруун: банкны нэг блок;
   ≤900px дарааллаар. Төлбөрийн товч/QR/«амжилттай»/цугласан дүн байхгүй. Дансны дугаар user-select:all — JS-гүй үед гараар сонгож хуулна. */
.th-dn { display: grid; grid-template-columns: minmax(0, 1fr); gap: 28px; }
.th-dn.has-dirs { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 32px; align-items: start; }
.th-dn__h { font-size: 24px; margin: 0 0 14px; }
.th-dn__intro { font-size: 17px; line-height: 1.6; margin: 0 0 16px; color: var(--th-text); }
.th-dn__choices { border: 0; margin: 0; padding: 0; min-width: 0; display: grid; gap: 12px; }
.th-dn__choice { position: relative; display: flex; gap: 14px; align-items: flex-start; padding: 16px; border: 2px solid var(--th-line); border-radius: 16px; background: var(--th-white); cursor: pointer; }
.th-dn__choice:hover { border-color: var(--th-line2); background: var(--th-surface2); }
.th-dn__radio { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.th-dn__choice:has(.th-dn__radio:checked) { border-color: var(--th-seaweed); box-shadow: 0 0 0 1px var(--th-seaweed) inset; }
.th-dn__choice:has(.th-dn__radio:focus-visible) { outline: 3px solid var(--th-seaweed); outline-offset: 3px; }
.th-dn__ic { flex: 0 0 44px; width: 44px; height: 44px; border-radius: 12px; display: flex; align-items: center; justify-content: center; background: var(--th-surface); color: var(--th-seaweed); overflow: hidden; }
.th-dn__ic svg { width: 22px; height: 22px; } .th-dn__ic .th-dn__img { width: 100%; height: 100%; object-fit: cover; }
.th-dn__ct { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.th-dn__t { font-family: "Noto Sans", sans-serif; font-size: 18px; font-weight: 700; line-height: 1.3; color: var(--th-ink); }
.th-dn__d { font-size: 15px; line-height: 1.55; color: var(--th-text); }
.th-dn__bank { min-width: 0; border: 1px solid var(--th-line); border-radius: 18px; padding: 24px; background: var(--th-white); box-shadow: var(--th-shadow-sm); }
.th-dn__list { margin: 0; display: grid; gap: 12px; }
.th-dn__row { display: grid; grid-template-columns: minmax(120px, 150px) 1fr; gap: 4px 16px; align-items: baseline; margin: 0; }
.th-dn__row dt { color: var(--th-muted); font-size: 15px; } .th-dn__row dd { margin: 0; font-size: 17px; color: var(--th-ink); overflow-wrap: anywhere; }
.th-dn__row--acc dd { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; }
.th-dn__acc { font-family: "Noto Sans", sans-serif; font-variant-numeric: tabular-nums; font-weight: 700; font-size: 21px; letter-spacing: .03em; -webkit-user-select: all; user-select: all; }
.th-dn__copy { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 8px 16px; border-radius: 999px; border: 2px solid var(--th-seaweed); background: var(--th-seaweed); color: var(--th-white); font-weight: 700; font-size: 15px; line-height: 1.2; cursor: pointer; }
.th-dn__copy svg { width: 18px; height: 18px; } .th-dn__copy:hover { background: var(--th-indigo-ln); border-color: var(--th-indigo-ln); }
.th-dn__copy:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 3px; } .th-dn__copy.is-done { background: var(--th-indigo); border-color: var(--th-indigo); }
.th-dn__copy[hidden] { display: none; }
.th-dn__ref { font-weight: 600; }
.th-dn__hint { margin: 12px 0 0; font-size: 14px; color: var(--th-muted); }
.th-dn__toast { margin: 10px 0 0; font-size: 15px; font-weight: 600; color: var(--th-seaweed); } .th-dn__toast:empty { display: none; }
.th-dn__qrwrap { margin: 16px 0 0; } .th-dn__qr { width: 160px; height: auto; border-radius: 12px; border: 1px solid var(--th-line); }
.th-dn__paylink { display: inline-flex; align-items: center; min-height: 44px; font-weight: 700; color: var(--th-seaweed); }
.th-dn__cta, .th-dn__note { margin: 14px 0 0; } .th-dn__note { font-size: 15px; color: var(--th-text); }
.th-dn__contact { margin: 18px 0 0; padding-top: 14px; border-top: 1px solid var(--th-line); font-size: 15px; color: var(--th-text); }
.th-dn__contact a { color: var(--th-seaweed); font-weight: 600; }
@media (max-width: 900px) { .th-dn.has-dirs { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 767px) { .th-dn__bank { padding: 18px; } .th-dn__row { grid-template-columns: 1fr; gap: 2px; } .th-dn__acc { font-size: 19px; } .th-dn__choice { padding: 14px; } }

/* ---- v6: Хамтрагч байгууллагууд — [th_partners] хөдөлгөөнгүй жигд тор (≥1025: 4–5, таблет 3, утас 2 багана; цөөн бол голлоно, томруулахгүй).
   Лого: харьцаа/өнгө/бичвэр хэвээр, object-fit: contain, талбайгаар тэнцүүлсэн хэмжээ (PHP: --w/--h); логогүй бол зөвхөн нэр. */
.th-pt { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 224px)); gap: 16px; justify-content: center; }
.th-pt__item { margin: 0; min-width: 0; }
.th-pt__card { display: flex; flex-direction: column; align-items: center; justify-content: flex-start; gap: 12px; height: 100%; min-height: 150px; padding: 18px 14px 16px; border: 1px solid var(--th-line); border-radius: 16px; background: var(--th-white); color: var(--th-ink); text-decoration: none; text-align: center; }
a.th-pt__card:hover { border-color: var(--th-line2); background: var(--th-surface2); } a.th-pt__card:hover .th-pt__name { text-decoration: underline; }
a.th-pt__card:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 3px; }
.th-pt__logo { display: flex; align-items: center; justify-content: center; width: 100%; height: 70px; }
.th-pt .th-pt__img { display: block; width: var(--w); height: var(--h); max-width: 100%; max-height: 70px; object-fit: contain; }
.th-pt__item.no-logo .th-pt__card { justify-content: center; }
.th-pt__name { font-size: 14px; line-height: 1.4; font-weight: 600; color: var(--th-ink); overflow-wrap: anywhere; }
.th-pt__item.no-logo .th-pt__name { font-size: 15px; }
@media (max-width: 1024px) { .th-pt { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 767px) { .th-pt { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; } .th-pt__card { padding: 14px 10px 12px; min-height: 132px; } .th-pt__logo { height: 60px; } .th-pt .th-pt__img { max-height: 60px; } .th-pt__name { font-size: 13px; } }

/* ---- v6: «Манай баг» — [th_team]: «Ажлын баг | Удирдах зөвлөл» таб; удирдлага 2 хэвтээ карт; хөтөлбөрөөр шүүх radio pill;
   4:5 хүрээ (cover, 50% 20%), 4 багана (≤1024: 3, ≤767: 2, ≤359: 1); 8 карт + «Бусад гишүүдийг харах». Үсгийн хэмжээ v5-тай ижил (нэр 19/17, албан тушаал 15). */
.th-about-team-section:not(:has(.th-tm__card)) { display: none !important; }
.th-about-team-section .th-team-widget { align-self: stretch; width: 100%; }
.th-tm__title { font-size: 30px; margin: 0 0 24px; text-align: center; }
.th-tm__tabs { display: flex; gap: 12px; flex-wrap: wrap; justify-content: center; margin: 0 0 32px; }
.th-tm__tab { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; min-width: 200px; padding: 10px 22px; border-radius: 999px; border: 2px solid var(--th-indigo); color: var(--th-indigo); background: var(--th-white); font-family: "Noto Sans", sans-serif; font-weight: 700; font-size: 17px; line-height: 1.2; cursor: pointer; }
.th-tm__tab[aria-selected="true"] { background: var(--th-indigo); color: var(--th-white); }
.th-tm__tab:hover { background: var(--th-surface2); } .th-tm__tab[aria-selected="true"]:hover { background: var(--th-indigo); }
.th-tm__tab:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 3px; }
.th-tm__n { font-size: 14px; font-weight: 700; padding: 2px 8px; border-radius: 999px; background: rgba(0, 61, 91, .1); }
.th-tm__tab[aria-selected="true"] .th-tm__n { background: rgba(255, 255, 255, .22); }
.th-tm__panel { outline: none; scroll-margin-top: 120px; } .th-tm__panel:focus-visible { box-shadow: 0 0 0 3px var(--th-seaweed); border-radius: 12px; }
.th-tm__ptitle { font-size: 22px; color: var(--th-indigo); margin: 0 0 16px; text-align: center; }
.th-tm.is-js .th-tm__ptitle { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.th-tm:not(.is-js) .th-tm__tabs, .th-tm:not(.is-js) .th-tm__filter, .th-tm:not(.is-js) .th-tm__foot { display: none; }
.th-tm:not(.is-js) .th-tm__panel[hidden] { display: block; }
.th-tm:not(.is-js) .th-tm__panel + .th-tm__panel { margin-top: 40px; padding-top: 32px; border-top: 1px solid var(--th-line); }
.th-tm__lead { list-style: none; margin: 0 auto 28px; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; max-width: 720px; }
.th-tm__card { margin: 0; min-width: 0; }
.th-tm__card[hidden] { display: none; }
.th-tm__in { display: flex; flex-direction: column; gap: 12px; height: 100%; }
.th-tm__card--lead .th-tm__in { flex-direction: row; gap: 16px; align-items: center; padding: 14px; border: 1px solid var(--th-line); border-radius: 16px; background: var(--th-white); }
.th-tm__card--lead .th-tm__frame { flex: 0 0 96px; width: 96px; border-radius: 12px; }
.th-tm__card--lead .th-tm__info { text-align: left; }
.th-tm__card--lead .th-tm__name { font-size: 18px; }
.th-tm__filter { border: 0; margin: 0 0 20px; padding: 0; min-width: 0; display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; align-items: center; }
.th-tm__flabel { float: left; width: 100%; text-align: center; font-size: 14px; font-weight: 700; letter-spacing: .3px; color: var(--th-meta); margin-bottom: 4px; }
.th-tm__pill { position: relative; display: inline-flex; margin: 0; }
.th-tm__fr { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; }
.th-tm__pill span { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 6px 14px; border-radius: 999px; border: 1px solid var(--th-line2); background: var(--th-white); color: var(--th-ink); font-size: 15px; font-weight: 600; line-height: 1.2; cursor: pointer; }
.th-tm__pill b { font-weight: 600; color: var(--th-muted); }
.th-tm__pill:hover span { border-color: var(--th-seaweed); }
.th-tm__fr:checked + span { background: var(--th-seaweed); border-color: var(--th-seaweed); color: var(--th-white); }
.th-tm__fr:checked + span b { color: rgba(255, 255, 255, .85); }
.th-tm__fr:focus-visible + span { outline: 3px solid var(--th-seaweed); outline-offset: 2px; }
.th-tm__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; align-items: start; }
.th-tm__grid--board { max-width: 1120px; margin-inline: auto; }
.th-tm__frame { margin: 0; aspect-ratio: 4 / 5; overflow: hidden; border-radius: 14px; background: var(--th-surface); }
.th-tm__frame .th-tm__photo { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: 50% 20%; }
.th-tm__frame--none { display: flex; align-items: center; justify-content: center; color: var(--th-field); font-family: "Noto Sans", sans-serif; font-size: 40px; font-weight: 800; background: linear-gradient(180deg, var(--th-surface2), var(--th-surface)); }
.th-tm__info { text-align: center; min-width: 0; }
.th-tm__name { font-family: "Noto Sans", sans-serif; font-size: 19px; font-weight: 700; line-height: 1.3; margin: 0; color: var(--th-ink); overflow-wrap: anywhere; }
.th-tm__name:focus { outline: none; } .th-tm__name:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 2px; border-radius: 4px; }
.th-tm__role { font-size: 15px; font-weight: 400; line-height: 1.45; color: var(--th-text); margin: 4px 0 0; overflow-wrap: anywhere; }
.th-tm__sub { font-size: 14px; line-height: 1.45; color: var(--th-muted); margin: 4px 0 0; overflow-wrap: anywhere; }
.th-tm__grid.is-filtered .th-tm__prog { display: none; }
.th-tm__details { margin-top: 6px; text-align: center; }
.th-tm__dsum { display: inline-flex; align-items: center; min-height: 44px; padding: 0 12px; border-radius: 999px; color: var(--th-seaweed); font-weight: 700; font-size: 15px; cursor: pointer; list-style: none; }
.th-tm__dsum::-webkit-details-marker { display: none; }
.th-tm__dsum::after { content: ""; width: 8px; height: 8px; margin-left: 8px; border: solid currentColor; border-width: 0 2px 2px 0; transform: rotate(45deg) translateY(-2px); }
.th-tm__details[open] .th-tm__dsum::after { transform: rotate(-135deg) translateY(2px); }
.th-tm__details[open] .th-tm__dopen, .th-tm__details:not([open]) .th-tm__dclose { display: none; }
.th-tm__dsum:hover { background: var(--th-surface2); } .th-tm__dsum:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 2px; }
.th-tm__bio { text-align: left; margin-top: 6px; } .th-tm__bio p { font-size: 15px; line-height: 1.6; margin: 0; } .th-tm__bio p + p { margin-top: 8px; }
.th-tm__foot { display: flex; flex-wrap: wrap; gap: 12px 20px; align-items: center; justify-content: center; margin-top: 24px; }
.th-tm__count { margin: 0; font-size: 14px; color: var(--th-muted); } .th-tm__count:empty { display: none; }
.th-tm__morebtn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 10px 24px; border-radius: 999px; border: 2px solid var(--th-seaweed); background: var(--th-white); color: var(--th-seaweed); font-weight: 700; font-size: 16px; line-height: 1.2; cursor: pointer; }
.th-tm__morebtn:hover { background: var(--th-surface2); } .th-tm__morebtn:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 3px; }
.th-tm__morebtn[hidden] { display: none; }
@media (max-width: 1024px) { .th-tm__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; } }
@media (max-width: 767px) {
  .th-tm__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; } .th-tm__name { font-size: 17px; }
  .th-tm__lead { grid-template-columns: minmax(0, 1fr); max-width: 420px; gap: 12px; }
  .th-tm__tab { min-width: 0; flex: 1 1 150px; font-size: 16px; padding: 8px 14px; } .th-tm__tabs { gap: 8px; margin-bottom: 24px; }
  .th-tm__pill span { font-size: 14px; padding: 6px 12px; } .th-tm__frame--none { font-size: 32px; }
}
@media (max-width: 359px) { .th-tm__grid { grid-template-columns: minmax(0, 1fr); max-width: 280px; margin-inline: auto; } }


/* ---- 2026-10-20 (v4): Сүлжээ — төвлөсөн гарчиг; таб бүр зүүн талд галерей (≈55%), баруун талд текст (≈45%).
   Галерей нь th-intro.php-ийн .th-gal (тогтмол 16:9 хүрээ, object-fit:contain — зураг тайрагдахгүй, сунахгүй;
   сум хүрээний дотор захад; зураг солигдоход хүрээ/сум/тоолуур/доорх агуулга үсрэхгүй). Зураггүй таб → текст 760px төвд. */
.th-net-hero { text-align: center; }
/* Elementor-ийн «.elementor.elementor .e-con > .elementor-widget {max-width:100%}» widget-ийн өргөнийг дарна — тиймээс доторх текстийг хязгаарлана (!important-гүй). */
.th-net-hero .th-net-hero__lead p { max-width: 640px; margin-inline: auto; }
.th-net__tablist { display: flex; gap: 12px; flex-wrap: wrap; max-width: 760px; margin: 0 auto 40px; }
.th-net__tab { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 10px 22px; border-radius: 999px; border: 2px solid var(--th-indigo); color: var(--th-indigo); font-weight: 700; font-size: 17px; text-decoration: none; background: var(--th-white); flex: 1 1 220px; text-align: center; }
.th-net__tab[aria-selected="true"] { background: var(--th-indigo); color: var(--th-white); }
.th-net__tab:hover { background: var(--th-surface2); } .th-net__tab[aria-selected="true"]:hover { background: var(--th-indigo); }
.th-net__tab:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 3px; }
.th-net__panel { outline: none; scroll-margin-top: 120px; } .th-net__panel:focus-visible { box-shadow: 0 0 0 3px var(--th-seaweed); border-radius: 12px; }
.th-net:not(.is-js) .th-net__panel + .th-net__panel { margin-top: 48px; padding-top: 40px; border-top: 1px solid var(--th-line); }
.th-net__layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: 32px; }
.th-net__panel.has-media .th-net__layout { grid-template-columns: minmax(0, 55fr) minmax(0, 45fr); column-gap: 52px; align-items: start; }
.th-net__panel.no-media .th-net__layout { max-width: 760px; margin-inline: auto; }
.th-net__media { min-width: 0; }
.th-gal.th-gal--net { --th-gal-ratio: 16 / 9; --th-gal-gutter: 0px; max-width: none; margin: 0; }
.th-gal--net.is-ready .th-gal__btn { background: rgba(255, 255, 255, .94); box-shadow: 0 2px 12px rgba(0, 61, 91, .22); }
.th-gal--net.is-ready .th-gal__btn--prev { left: 12px; } .th-gal--net.is-ready .th-gal__btn--next { right: 12px; }
.th-gal--net .th-gal__thumbs { justify-content: flex-start; }
.th-net__body { min-width: 0; }
.th-net__heading { font-family: "Noto Sans", sans-serif; font-size: 30px; font-weight: 800; line-height: 1.2; margin: 0 0 14px; color: var(--th-ink); }
.th-net__intro { font-size: 18px; line-height: 1.7; margin: 0 0 14px; max-width: 72ch; }
.th-net__detail { font-size: 16px; line-height: 1.65; margin: 0 0 12px; max-width: 72ch; color: var(--th-text); }
.th-net__yr { color: var(--th-seaweed); font-weight: 800; }
.th-net__orgs-h { font-family: "Noto Sans", sans-serif; font-size: 15px; font-weight: 800; letter-spacing: .3px; color: var(--th-meta); margin: 26px 0 10px; }
.th-net__orgs { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.th-net__card { display: flex; gap: 14px; align-items: flex-start; border: 1px solid var(--th-line); border-radius: 14px; padding: 14px 16px; background: var(--th-white); margin: 0; }
.th-net__logowrap { flex: 0 0 64px; } .th-net__logo { max-width: 64px; max-height: 48px; width: auto; height: auto; object-fit: contain; }
.th-net__name { font-size: 17px; font-weight: 700; line-height: 1.35; margin: 0 0 2px; color: var(--th-ink); }
.th-net__country { margin: 0; color: var(--th-muted); font-size: 15px; }
.th-net__desc { margin: 6px 0 0; font-size: 15px; line-height: 1.6; }
.th-net__link, .th-org__link { display: inline-flex; align-items: center; min-height: 44px; font-weight: 700; color: var(--th-seaweed); }
.th-net__link:focus-visible, .th-org__link:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 2px; }
@media (max-width: 1024px) { .th-net__panel.has-media .th-net__layout { column-gap: 36px; } .th-net__heading { font-size: 28px; } }
@media (max-width: 900px) { .th-net__panel.has-media .th-net__layout { grid-template-columns: minmax(0, 1fr); row-gap: 28px; } }
@media (max-width: 767px) { .th-net__tab { flex: 1 1 100%; } .th-net__tablist { margin-bottom: 28px; } .th-net__heading { font-size: 24px; } .th-net__intro { font-size: 17px; } .th-net__card { padding: 12px 14px; } }

/* ---- 2026-10-20 (v5): Түүхэн замнал — компьютерт (≥900px) төв шугамын хоёр талд ээлжилсэн карт; баруун талынх нь зүүнийхээсээ
   хагас доор эхэлнэ (grid: мөр бүр 2 эгнээ эзэлнэ — DOM/унших дараалал = он дараалал). Карт бүр ижил 3:2 зураг (зай урьдчилан
   нөөцлөгдсөн) + он/гарчиг/тайлбар. <900px: зүүн ирмэгт шугамтай нэг багана. Үсгийн хэмжээ v4-тэй ижил (он 14/13, гарчиг 21/20/19,
   тайлбар 16/15). Хөдөлгөөн: .is-anim (JS + prefers-reduced-motion:no-preference) үед л нуугдана; transform/opacity, 0.5 сек. */
.th-tl2 { list-style: none; margin: 0 auto; padding: 0; position: relative; max-width: 1120px; }
.th-tl2::before { content: ""; position: absolute; left: 11px; top: 8px; bottom: 8px; width: 2px; background: var(--th-line2); }
.th-tl2__item { position: relative; margin: 0; padding: 0 0 32px 48px; min-width: 0; }
.th-tl2__item:last-child { padding-bottom: 0; }
.th-tl2__dot { position: absolute; left: 4px; top: 18px; width: 16px; height: 16px; box-sizing: border-box; border-radius: 50%; background: var(--th-white); border: 3px solid var(--th-seaweed); z-index: 1; }
.th-tl2__card { background: var(--th-white); border: 1px solid var(--th-line); border-radius: 18px; overflow: hidden; box-shadow: var(--th-shadow-sm); }
.th-tl2__media { margin: 0; position: relative; aspect-ratio: 3 / 2; background: var(--th-surface); }
.th-tl2__media .th-tl2__img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: 50% 45%; }   /* .elementor img {height:auto}-ээс өндөр специфик */
.th-tl2__body { min-width: 0; padding: 18px 22px 22px; }
.th-tl2__item:not(.has-media) .th-tl2__body { padding-top: 20px; }
.th-tl2__year { font-family: "Noto Sans", sans-serif; font-size: 14px; font-weight: 800; letter-spacing: .4px; line-height: 1.3; color: var(--th-seaweed); margin: 0 0 6px; }
.th-tl2__title { font-family: "Noto Sans", sans-serif; font-size: 21px; font-weight: 800; line-height: 1.3; color: var(--th-ink); margin: 0 0 10px; overflow-wrap: anywhere; }
.th-tl2__text p { font-size: 16px; line-height: 1.65; margin: 0; color: var(--th-text); }
.th-tl2__text p + p { margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--th-line); }
@media (min-width: 900px) {
  .th-tl2 { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 88px; }
  .th-tl2::before { left: 50%; margin-left: -1px; }
  .th-tl2__item { grid-row: var(--r) / span 2; padding: 0 0 36px; }
  .th-tl2__item--l { grid-column: 1; } .th-tl2__item--r { grid-column: 2; }
  .th-tl2__item--l .th-tl2__dot { left: auto; right: -52px; }   /* 88/2 + 8 */
  .th-tl2__item--r .th-tl2__dot { left: -52px; }
  .th-tl2__item--l .th-tl2__card { position: relative; } .th-tl2__item--r .th-tl2__card { position: relative; }
}
@media (max-width: 1024px) { .th-tl2__title { font-size: 20px; } }
@media (max-width: 899px) { .th-tl2 { max-width: 680px; } }
@media (max-width: 767px) {
  .th-tl2::before { left: 7px; } .th-tl2__dot { left: 0; top: 14px; } .th-tl2__item { padding: 0 0 24px 30px; }
  .th-tl2__body { padding: 14px 16px 18px; }
  .th-tl2__year { font-size: 13px; } .th-tl2__title { font-size: 19px; } .th-tl2__text p { font-size: 15px; }
}
@media (prefers-reduced-motion: no-preference) {
  .th-tl2.is-anim .th-tl2__card { transition: opacity .5s ease-out, transform .5s cubic-bezier(.2, .7, .25, 1); }
  .th-tl2.is-anim .th-tl2__item:not(.is-in) .th-tl2__card { opacity: 0; transform: translateX(-28px); }
  .th-tl2.is-anim .th-tl2__item--r:not(.is-in) .th-tl2__card { transform: translateX(28px); }
}
@media (prefers-reduced-motion: no-preference) and (max-width: 899px) {
  .th-tl2.is-anim .th-tl2__item:not(.is-in) .th-tl2__card, .th-tl2.is-anim .th-tl2__item--r:not(.is-in) .th-tl2__card { transform: translateY(12px); }
}
@media print { .th-tl2.is-anim .th-tl2__item .th-tl2__card { opacity: 1; transform: none; } }

/* ---- v5: «Түр зураг» тэмдэг (timeline, сүлжээний галерей) — бодит зургаар солимогц HTML-ээс өөрөө алга болно. */
.th-temp-badge { position: absolute; left: 10px; top: 10px; z-index: 2; display: inline-block; padding: 4px 10px; border-radius: 999px; font-size: 13px; font-weight: 700; line-height: 1.3; color: var(--th-white); background: rgba(0, 61, 91, .86); pointer-events: none; }
.th-gal__slide { position: relative; }
/* Нэг зурагтай сүлжээний галерей (JS хяналтгүй) — олон зурагтай табтай ИЖИЛ 16:9 хүрээ: таб солиход өндөр өөрчлөгдөхгүй, зураг тайрагдахгүй. */
.th-gal--net .th-gal__track:has(> .th-gal__slide:only-child) { position: relative; aspect-ratio: 16 / 9; overflow: hidden; background: var(--th-surface); border: 1px solid var(--th-line); border-radius: 22px; }
.th-gal--net .th-gal__slide:only-child { position: absolute; inset: 0; }
.th-gal--net .th-gal__slide:only-child img { width: 100%; height: 100%; border: 0; border-radius: 0; object-fit: contain; }

/* ---- v6: Холбоо барих хуудас / нүүрний жагсаалт — [th_contact_info variant="page"] (өмнөх Elementor icon list 17px-тэй ижил хэмжээ). */
.th-cp { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.th-cp__item { margin: 0; display: flex; align-items: flex-start; gap: 12px; font-size: 17px; line-height: 1.5; color: var(--th-text); overflow-wrap: anywhere; }
.th-cp__link { display: flex; align-items: flex-start; gap: 12px; min-height: 44px; color: var(--th-ink); text-decoration: none; }
.th-cp__link:hover .th-cp__tx { text-decoration: underline; color: var(--th-seaweed); }
.th-cp__link:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 2px; border-radius: 4px; }
.th-cp__ic { flex: 0 0 22px; display: inline-flex; justify-content: center; padding-top: 4px; color: var(--th-seaweed); }
.th-cp__ic svg { width: 18px; height: 18px; }
.th-cp__tx { min-width: 0; }

/* ---- v5: Footer — 4 тэнцүү багана (Elementor grid контейнер .th-footer-cols), «Холбоо барих» = [th_contact_info].
   Харагдах байдал өмнөх icon list-тэй ижил: icon --th-sunray 18px, текст --th-on-dark-mt 15px; сошиал 44px дугуй. */
.th-footer-cols > .e-con { min-width: 0; }
.th-fc__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.th-fc__item { margin: 0; }
.th-fc__item, .th-fc__link { display: flex; align-items: flex-start; gap: 8px; color: var(--th-on-dark-mt); font-size: 15px; line-height: 1.55; text-decoration: none; overflow-wrap: anywhere; }
.th-fc__link { min-height: 24px; }
.th-fc__link:hover .th-fc__tx { text-decoration: underline; }
.th-fc__link:focus-visible { outline: 3px solid var(--th-sunray); outline-offset: 2px; border-radius: 4px; }
.th-fc__ic { flex: 0 0 20px; display: inline-flex; justify-content: center; padding-top: 3px; color: var(--th-sunray); }
.th-fc__tx { min-width: 0; }
.th-fc__social { list-style: none; margin: 14px 0 0; padding: 0; display: flex; gap: 8px; }
.th-fc__social li { margin: 0; }
.th-fc__soc { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%; background: var(--th-seaweed); color: var(--th-white); transition: background-color .2s; }
.th-fc__soc:hover { background: var(--th-indigo-ln); }
.th-fc__soc:focus-visible { outline: 3px solid var(--th-sunray); outline-offset: 2px; }


/* ===== UP v7 (2026-10-20) — review.up-ilc.mn. Зөвхөн доорх component-уудад хязгаарлагдсан; үсгийн хэмжээ/палитр хэвээр. ===== */

/* 1. Галерей (.th-gal) — JS ажиллахаас ӨМНӨ ч эхний зураг тогтвортой хүрээнд; бусад слайд хэзээ ч босоогоор цуврахгүй.
      Шалтгаан (хэмжсэн): галерейн JS footer-т ажилладаг, түүнээс өмнө .th-gal__slide бүгд урсгалаар дараалан зурагддаг байв
      (удаан сүлжээнд HTML хэсэгчлэн ачаалагдах үед). Хүрээ, хүрээний доорх сум/тоолуур/жижиг зургийн зай (хэмжсэн: 134px,
      ≤767px 121px) урьдчилан нөөцлөгдөнө — JS бэлэн болоход доорх агуулга хөдлөхгүй. JS-гүй үед эхний зураг уншигдана. */
.th-gal:not(.is-ready) .th-gal__track {
  position: relative; display: block !important; width: auto; height: auto; margin-inline: var(--th-gal-gutter);
  aspect-ratio: var(--th-gal-ratio); gap: 0 !important; overflow: hidden;
  background: var(--th-surface); border: 1px solid var(--th-line); border-radius: 22px;
}
.th-gal:not(.is-ready) .th-gal__slide ~ .th-gal__slide { display: none !important; }
.th-gal:not(.is-ready) .th-gal__slide:first-child { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0 !important; padding: 0 !important; }
.th-gal:not(.is-ready) .th-gal__slide:first-child img { width: 100%; height: 100%; border: 0; border-radius: 0; object-fit: contain; }
.th-gal:not(.is-ready):has(.th-gal__slide ~ .th-gal__slide) { padding-bottom: 134px; }
.th-gal--net:not(.is-ready) .th-gal__track { border-radius: 22px; }
@media (max-width: 767px) {
  .th-gal:not(.is-ready) .th-gal__track { border-radius: 16px; }
  .th-gal:not(.is-ready):has(.th-gal__slide ~ .th-gal__slide) { padding-bottom: 121px; }
}

/* 2. Сүлжээ — хоёр таб ижил: дээр [галерей | гарчиг, танилцуулга], доор «Холбогдох байгууллагууд» бүтэн өргөнтэй тор 3/2/1. */
.th-net__orgs-wrap { margin-top: 40px; padding-top: 28px; border-top: 1px solid var(--th-line); }
.th-net__orgs-wrap .th-net__orgs-h { margin: 0 0 16px; }
.th-net__orgs-wrap .th-net__orgs { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; align-items: stretch; }
.th-net__orgs-wrap .th-net__card { height: 100%; padding: 16px; }
.th-net__orgs-wrap .th-net__logowrap { flex: 0 0 64px; width: 64px; height: 56px; display: flex; align-items: center; justify-content: center; }
.th-net__logowrap--none span { display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 12px;
  background: var(--th-surface); color: var(--th-meta); font-family: "Noto Sans", sans-serif; font-weight: 800; font-size: 22px; }
.th-net__orgs-wrap .th-net__text { display: flex; flex-direction: column; min-width: 0; flex: 1 1 auto; height: 100%; }
.th-net__orgs-wrap .th-net__name { overflow-wrap: break-word; }
.th-net__orgs-wrap .th-net__link { margin-top: auto; align-self: flex-start; }
.th-net__panel .th-net__layout { align-items: start; }
@media (max-width: 1024px) { .th-net__orgs-wrap .th-net__orgs { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767px) { .th-net__orgs-wrap { margin-top: 28px; padding-top: 20px; } .th-net__orgs-wrap .th-net__orgs { grid-template-columns: minmax(0, 1fr); gap: 12px; } .th-net__orgs-wrap .th-net__card { padding: 14px; } }

/* 3. Хандив — гурван сонголт ижил хэмжээтэй дөрвөлжин зурагтай (TRY-ийн жижиг зургийн байрлал жишиг), сонгосон төлөв тод. */
.th-dn__choice { align-items: flex-start; }
.th-dn__thumb { flex: 0 0 64px; width: 64px; height: 64px; border-radius: 12px; }
.th-dn__thumb.no-img svg { width: 26px; height: 26px; }
.th-dn__thumb .th-dn__img { width: 100%; height: 100%; object-fit: cover; display: block; }
.th-dn__ct { flex: 1 1 auto; min-width: 0; }
.th-dn__t, .th-dn__d { overflow-wrap: break-word; }
.th-dn__choice:has(.th-dn__radio:checked) { background: var(--th-surface2); }
.th-dn__choice:has(.th-dn__radio:checked)::after { content: ""; position: absolute; top: 12px; right: 12px; width: 22px; height: 22px; border-radius: 50%;
  background: var(--th-seaweed) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center / 14px no-repeat; }
.th-dn__choice:has(.th-dn__radio:checked) .th-dn__ct { padding-right: 26px; }
@media (max-width: 767px) { .th-dn__thumb { flex-basis: 56px; width: 56px; height: 56px; } }

/* 4. Хамтрагчид — лого жигд, харьцаа хадгалагдана; утсан дээр өргөн/өндөр ХОЁУЛАА 0.86 дахин (хүрээний харьцаа ч хадгалагдана). */
.th-pt .th-pt__img { max-height: none; }
.th-pt__name { overflow-wrap: break-word; }
@media (max-width: 767px) { .th-pt .th-pt__img { width: calc(var(--w) * .86); height: calc(var(--h) * .86); max-width: 100%; max-height: none; } }

/* 5. Цэсний дэд цэсний сум (.th-up-nav__subtoggle) — дүрс бага зэрэг жижиг, текстэд ойр; дарах талбай 44×44 хэвээр.
      Зөвхөн энэ товчинд — бусад icon, галерейн сумд нөлөөлөхгүй. */
.th-up-nav__subtoggle svg { width: 13px; height: 13px; stroke-width: 2.4; }
@media (min-width: 1100px) {
  .th-up-nav__row > a:has(+ .th-up-nav__subtoggle) { padding-right: 2px; }
  .th-up-nav__row > .th-up-nav__subtoggle { justify-content: flex-start; padding: 0 0 0 3px; }
  .th-up-nav__row > .th-up-nav__subtoggle:hover { background: transparent; color: var(--th-seaweed); }
}
@media (max-width: 1099px) { .th-up-nav__subtoggle svg { width: 14px; height: 14px; } }

/* 6. «Мэдээ, нийтлэл» нэгдсэн интерфэйс ([th_feed]) — төрөл (цөөн тод сонголт) / хайлт + сэдэв (тусдаа мөр) / илэрц / карт. */
.th-feedx__types ul { list-style: none; margin: 0 0 16px; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.th-feedx__types li { margin: 0; }
.th-feedx__pill { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 8px 20px; border: 2px solid var(--th-indigo); border-radius: 999px;
  background: var(--th-white); color: var(--th-indigo); font-weight: 700; font-size: 16px; line-height: 1.2; text-decoration: none; }
.th-feedx__pill:hover { background: var(--th-surface2); }
.th-feedx__pill.is-active, .th-feedx__pill.is-active:hover { background: var(--th-indigo); color: var(--th-white); }
.th-feedx__pill:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 3px; }
.th-feedx__n { display: inline-flex; min-width: 24px; justify-content: center; padding: 1px 8px; border-radius: 999px; background: var(--th-surface); color: var(--th-ink); font-size: 13px; font-weight: 700; }
.th-feedx__pill.is-active .th-feedx__n { background: rgba(255, 255, 255, .22); color: var(--th-white); }
.th-feedx__tools { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 12px 16px; margin: 0 0 18px; padding: 16px; border: 1px solid var(--th-line); border-radius: 16px; background: var(--th-surface2); }
.th-feedx__field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.th-feedx__field--q { flex: 2 1 260px; } .th-feedx__field--topic { flex: 1 1 220px; }
.th-feedx__field label { font-size: 14px; font-weight: 700; color: var(--th-ink); }
.th-feedx__field input, .th-feedx__field select { width: 100%; min-height: 44px; padding: 8px 12px; border: 1px solid var(--th-line2); border-radius: 10px; background: var(--th-white); color: var(--th-ink); font-size: 16px; }
.th-feedx__field input:focus-visible, .th-feedx__field select:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 1px; }
.th-feedx__submit { min-height: 44px; padding: 8px 24px; border: 0; border-radius: 999px; background: var(--th-seaweed); color: var(--th-white); font-weight: 700; font-size: 16px; cursor: pointer; }
.th-feedx__submit:focus-visible { outline: 3px solid var(--th-indigo); outline-offset: 2px; }
.th-feedx__status { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 4px 16px; margin: 0 0 16px; font-size: 15px; color: var(--th-text); }
.th-feedx__status p { margin: 0; }
.th-feedx__reset { display: inline-flex; align-items: center; min-height: 44px; font-weight: 700; color: var(--th-seaweed); }
.th-feedx__type { display: inline-flex; align-items: center; padding: 4px 10px; border-radius: 999px; background: var(--th-indigo); color: var(--th-white); font-weight: 700; font-size: 13px; line-height: 1.3; }
.th-feedx__card .th-post-card__media { position: relative; }
.th-feedx__play { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -40%); display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 50%;
  background: rgba(0, 0, 0, .62); color: var(--th-white); font-size: 18px; pointer-events: none; }
.th-feedx__card .th-post-card__title { overflow-wrap: break-word; }
@media (max-width: 767px) {
  .th-feedx__pill { padding: 8px 14px; font-size: 15px; }
  .th-feedx__tools { padding: 12px; }
  .th-feedx__submit { width: 100%; }
}
/* ===== /UP v7 ===== */

/* ===== UP v8 (2026-10-20) — нүүрний цомхон жагсаалт, хуваалцсан «Хамтрагч байгууллагууд», UP coffee лого ===== */
/* 1. Нүүр: «Сэдвээ сонгоод уншаарай» + «Бидний хэрэгжүүлдэг үйл ажиллагаа» — компьютерт зэрэгцээ 2 багана (>1024px), бусад өргөнд доошоо.
      Мөр: [дүрс] [гарчиг-холбоос … ▾ товч] / доор нь хураалттай товч тайлбар. Үсгийн хэмжээ өмнөхөөрөө (гарчиг 21px, тайлбар 16px). */
@media (min-width: 1025px) {
  .th-cl-wrap > .e-con-inner > .th-cl-col { flex: 1 1 0; min-width: 0; width: auto; max-width: none; }
}
.elementor .e-con.th-cl__list { gap: 0; }
.elementor .e-con.th-cl__row {
  display: grid; grid-template-columns: 24px minmax(0, 1fr); column-gap: 14px; row-gap: 0; align-items: start;
  padding: 12px 0; border: 0; border-bottom: 1px solid var(--th-line, #D5E0E5); border-radius: 0; background: transparent; width: 100%;
}
.elementor .e-con.th-cl__row:first-child { border-top: 1px solid var(--th-line, #D5E0E5); }
.th-cl__row > .elementor-widget { width: auto; max-width: none; margin: 0; }
.th-cl__row > .elementor-widget-icon { grid-column: 1; grid-row: 1; padding-top: 4px; }
.th-cl__row > .elementor-widget-icon .elementor-icon { font-size: 20px; }
.th-cl__row > .elementor-widget-icon .elementor-icon svg { width: 20px; height: 20px; }
.th-cl__row > .th-cl__title { grid-column: 2; grid-row: 1; display: flex; align-items: flex-start; gap: 8px; }
.th-cl__title .elementor-heading-title { flex: 1 1 auto; min-width: 0; overflow-wrap: break-word; }
.th-cl__title .elementor-heading-title a { color: inherit; text-decoration: none; }
.th-cl__title .elementor-heading-title a:hover { text-decoration: underline; text-underline-offset: 3px; }
.th-cl__title .elementor-heading-title a:focus-visible { outline: 3px solid var(--th-seaweed, #00798C); outline-offset: 3px; border-radius: 4px; }
.th-cl__toggle {
  flex: 0 0 44px; width: 44px; height: 44px; margin: -9px -10px -9px 0; padding: 0; display: inline-flex; align-items: center; justify-content: center;
  background: transparent; border: 0; border-radius: 10px; color: var(--th-seaweed, #00798C); cursor: pointer;
}
.th-cl__toggle svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; transition: transform .15s ease; }
.th-cl__toggle[aria-expanded="true"] svg { transform: rotate(180deg); }
.th-cl__toggle:hover { background: var(--th-surface, #F1F5F7); }
.th-cl__toggle:focus-visible { outline: 3px solid var(--th-seaweed, #00798C); outline-offset: 0; }
.th-cl__row > .th-cl__desc { grid-column: 2; grid-row: 2; }
.th-cl__desc p:last-child { margin-bottom: 0; }
.th-js .th-cl__desc { display: none; }
.th-js .th-cl__desc.is-open { display: block; padding: 6px 44px 4px 0; }
html:not(.th-js) .th-cl__toggle { display: none; }
@media (prefers-reduced-motion: reduce) { .th-cl__toggle svg { transition: none; } }
@media (max-width: 767px) { .th-js .th-cl__desc.is-open { padding-right: 0; } }

/* 2. Хуваалцсан «Хамтрагч байгууллагууд» ([th_partners_section]) — гадна контейнер (хуудас бүрт) дэвсгэр/зайг өгнө. */
.th-pt-shared, .th-pt-shared > .elementor { width: 100%; }

/* 3. Хандив: лого бүхий чиглэл (жишээ нь UP coffee) — ижил 64px (утсанд 56px) хүрээний голд ~46px (44px), тайрахгүй. */
.th-dn__thumb.is-logo { display: flex; align-items: center; justify-content: center; background: var(--th-surface, #F1F5F7); }
.th-dn__thumb.is-logo .th-dn__img { width: 46px; height: 46px; object-fit: contain; border-radius: 8px; }
@media (max-width: 767px) { .th-dn__thumb.is-logo .th-dn__img { width: 44px; height: 44px; } }
/* ===== /UP v8 ===== */

/* ===== UP v9 (2026-10-20) — нүүрний 2 цомхон жагсаалт: нэг хуваалцсан grid ===== */
/* Хоёр бүлэг нэг grid-д: 1-р мөр = хоёр бүлгийн гарчиг (өндөр нь ижил → жагсаалтууд нэг түвшнээс эхэлнэ). Мөр бүр 2 track-ийг
   subgrid-ээр эзэлнэ: [толгой = 1fr][тайлбар = auto]. Өндөр нь тодорхойгүй grid-д бүх 1fr track ХАМГИЙН өндөр толгойтой тэнцүү болдог →
   13 толгой ижил өндөр (хоёр мөртэй нэр багтана), тайлбар нээгдэхэд зөвхөн тухайн auto track нэмэгдэнэ. Үсгийн хэмжээ өөрчлөгдөхгүй.
   Компьютерт хоёр багана; ≤1024px нэг багана (2-р бүлгийн гарчгийг 1-р бүлгийн мөрийн тоогоор байрлуулна, 3–10 мөр). */
@supports (grid-template-rows: subgrid) and selector(:has(*)) {
  .elementor .th-cl-wrap > .e-con-inner {
    display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-rows: auto; grid-auto-rows: 1fr auto;
    grid-auto-flow: row dense; column-gap: 56px; row-gap: 0; align-items: stretch;
  }
  .elementor .th-cl-wrap .e-con.th-cl-col, .elementor .th-cl-wrap .e-con.th-cl__list { display: contents; }
  .th-cl-wrap .th-cl-col > .e-con:not(.th-cl__list) { grid-row: 1; align-self: start; margin: 0 0 20px; width: auto; }
  .th-cl-wrap .th-cl-col:nth-child(1) > .e-con:not(.th-cl__list), .th-cl-wrap .th-cl-col:nth-child(1) .th-cl__row { grid-column: 1; }
  .th-cl-wrap .th-cl-col:nth-child(2) > .e-con:not(.th-cl__list), .th-cl-wrap .th-cl-col:nth-child(2) .th-cl__row { grid-column: 2; }
  .elementor .th-cl-wrap .e-con.th-cl__row {
    display: grid; grid-row: span 2; grid-template-rows: subgrid; grid-template-columns: 24px minmax(0, 1fr); column-gap: 14px; row-gap: 0;
    padding: 0; width: auto; border: 0; border-top: 1px solid var(--th-line, #D5E0E5); align-items: center;
  }
  .elementor .th-cl-wrap .e-con.th-cl__row:last-child { border-bottom: 1px solid var(--th-line, #D5E0E5); }
  .th-cl-wrap .th-cl__row > .elementor-widget-icon { grid-row: 1; grid-column: 1; align-self: center; padding: 0; width: 24px; height: 24px; display: flex; align-items: center; justify-content: center; }
  .th-cl-wrap .th-cl__row > .elementor-widget-icon .elementor-icon-wrapper { line-height: 0; }
  .th-cl-wrap .th-cl__row > .th-cl__title { grid-row: 1; grid-column: 2; align-self: stretch; display: flex; align-items: center; gap: 8px; padding: 12px 0; }
  .th-cl-wrap .th-cl__row > .th-cl__desc { grid-row: 2; grid-column: 2; align-self: start; }
  .th-js .th-cl-wrap .th-cl__desc.is-open { padding: 0 44px 14px 0; }
  @media (max-width: 1024px) {
    .elementor .th-cl-wrap > .e-con-inner { grid-template-columns: minmax(0, 1fr); }
    .th-cl-wrap .th-cl-col:nth-child(2) > .e-con:not(.th-cl__list), .th-cl-wrap .th-cl-col:nth-child(2) .th-cl__row { grid-column: 1; }
    .th-cl-wrap .th-cl-col:nth-child(2) > .e-con:not(.th-cl__list) { margin-top: 48px; }
    .th-js .th-cl-wrap .th-cl__desc.is-open { padding-right: 0; }
  }
  @media (max-width: 1024px) {
    .th-cl-wrap:has(.th-cl-col:first-child .th-cl__row:nth-child(3):last-child) > .e-con-inner { grid-template-rows: auto repeat(3, 1fr auto) auto; }
    .th-cl-wrap:has(.th-cl-col:first-child .th-cl__row:nth-child(3):last-child) .th-cl-col:nth-child(2) > .e-con:not(.th-cl__list) { grid-row: 8; }
    .th-cl-wrap:has(.th-cl-col:first-child .th-cl__row:nth-child(4):last-child) > .e-con-inner { grid-template-rows: auto repeat(4, 1fr auto) auto; }
    .th-cl-wrap:has(.th-cl-col:first-child .th-cl__row:nth-child(4):last-child) .th-cl-col:nth-child(2) > .e-con:not(.th-cl__list) { grid-row: 10; }
    .th-cl-wrap:has(.th-cl-col:first-child .th-cl__row:nth-child(5):last-child) > .e-con-inner { grid-template-rows: auto repeat(5, 1fr auto) auto; }
    .th-cl-wrap:has(.th-cl-col:first-child .th-cl__row:nth-child(5):last-child) .th-cl-col:nth-child(2) > .e-con:not(.th-cl__list) { grid-row: 12; }
    .th-cl-wrap:has(.th-cl-col:first-child .th-cl__row:nth-child(6):last-child) > .e-con-inner { grid-template-rows: auto repeat(6, 1fr auto) auto; }
    .th-cl-wrap:has(.th-cl-col:first-child .th-cl__row:nth-child(6):last-child) .th-cl-col:nth-child(2) > .e-con:not(.th-cl__list) { grid-row: 14; }
    .th-cl-wrap:has(.th-cl-col:first-child .th-cl__row:nth-child(7):last-child) > .e-con-inner { grid-template-rows: auto repeat(7, 1fr auto) auto; }
    .th-cl-wrap:has(.th-cl-col:first-child .th-cl__row:nth-child(7):last-child) .th-cl-col:nth-child(2) > .e-con:not(.th-cl__list) { grid-row: 16; }
    .th-cl-wrap:has(.th-cl-col:first-child .th-cl__row:nth-child(8):last-child) > .e-con-inner { grid-template-rows: auto repeat(8, 1fr auto) auto; }
    .th-cl-wrap:has(.th-cl-col:first-child .th-cl__row:nth-child(8):last-child) .th-cl-col:nth-child(2) > .e-con:not(.th-cl__list) { grid-row: 18; }
    .th-cl-wrap:has(.th-cl-col:first-child .th-cl__row:nth-child(9):last-child) > .e-con-inner { grid-template-rows: auto repeat(9, 1fr auto) auto; }
    .th-cl-wrap:has(.th-cl-col:first-child .th-cl__row:nth-child(9):last-child) .th-cl-col:nth-child(2) > .e-con:not(.th-cl__list) { grid-row: 20; }
    .th-cl-wrap:has(.th-cl-col:first-child .th-cl__row:nth-child(10):last-child) > .e-con-inner { grid-template-rows: auto repeat(10, 1fr auto) auto; }
    .th-cl-wrap:has(.th-cl-col:first-child .th-cl__row:nth-child(10):last-child) .th-cl-col:nth-child(2) > .e-con:not(.th-cl__list) { grid-row: 22; }
  }
}
/* ===== /UP v9 ===== */

/* ===== UP v10 (2026-10-20) — header-ийн үндсэн цэсний зай (зөвхөн ≥1366px, зөвхөн дээд түвшний мөр) ===== */
/* Өмнө: дэд цэстэй нэрийн сум (13px) 44px товчны ЗҮҮН захад байж, товчны баруун 28px хоосон + жагсаалтын gap 2px + дараагийн холбоосны
   зүүн padding 8px = сумнаас дараагийн нэр хүртэл 38px; энгийн нэрийн хооронд 18px — жигд бус. Одоо мөр бүр зөвхөн БАРУУН талынхаа зайг
   эзэмшинэ: gap 0, холбоосны зүүн padding 0 (эхнийх 8px), энгийн нэрийн баруун padding = товчны сумны дараах үлдэгдэлтэй ижил 27px.
   Нэр → сум 4px; сум → дараагийн нэр 27px; нэр → дараагийн нэр 27px. Товч 44×44 хэвээр, дарах талбайнууд зэрэгцэж давхцахгүй.
   Үсэг, лого, хэл солигч, «Хандив» өөрчлөгдөхгүй; ≤1365px (hamburger) болон дэд цэсний жагсаалтад хүрэхгүй. */
@media (min-width: 1100px) {
  #masthead .th-up-nav__list:not(.th-up-nav__sublist) { gap: 0; }
  #masthead .th-up-nav__list:not(.th-up-nav__sublist) > .th-up-nav__item > .th-up-nav__row > a { padding-left: 0; padding-right: 27px; }
  #masthead .th-up-nav__list:not(.th-up-nav__sublist) > .th-up-nav__item:first-child > .th-up-nav__row > a { padding-left: 8px; }
  #masthead .th-up-nav__list:not(.th-up-nav__sublist) > .th-up-nav__item > .th-up-nav__row > a:has(+ .th-up-nav__subtoggle) { padding-right: 0; }
  #masthead .th-up-nav__list:not(.th-up-nav__sublist) > .th-up-nav__item > .th-up-nav__row > .th-up-nav__subtoggle { padding: 0 0 0 4px; justify-content: flex-start; min-width: 44px; width: 44px; }
}
/* ===== /UP v10 ===== */

/* ===== UP v10b (2026-10-20) — header цэсний товчны фокус ===== */
/* Hello Elementor-ийн reset «button:focus { background:#c36; color:#fff }» header-ийн цэсний товчинд ягаан дэвсгэр өгч байсан — сайтын палитрт
   байхгүй. Header-ийн цэсний товчинд палитрын өнгө. ≥1366px-д сум нэрийн яг ард тул фокусын 3px хүрээг 44px товчны ДОТОР зурна (нэрийн үсэгт хүрэхгүй). */
#masthead .th-up-nav button:focus { background-color: var(--th-surface2, #F3F8F9); color: var(--th-ink, #003D5B); }
@media (min-width: 1100px) {
  #masthead .th-up-nav__list:not(.th-up-nav__sublist) > .th-up-nav__item > .th-up-nav__row > .th-up-nav__subtoggle:focus { background-color: transparent; color: var(--th-seaweed, #00798C); }
  #masthead .th-up-nav__list:not(.th-up-nav__sublist) > .th-up-nav__item > .th-up-nav__row > .th-up-nav__subtoggle:focus-visible { outline-offset: -3px; }
}
/* ===== /UP v10b ===== */

/* ===== UP v10c (2026-10-20) — header цэс: фокусын хүрээ нэрт хүрэхгүй 2px зай ===== */
/* Сумны товч нэрийн төгсгөлөөс 2px-ийн дараа эхэлнэ (холбоосны баруун padding 2px, товчны зүүн padding 2px → нэр → сум 4px хэвээр);
   товчны доторх фокусын хүрээ (v10b) нэрийн үсэгт хүрэхгүй. Бүх нэрийн дараах зай жигд 29px (сумны дараах товчны үлдэгдэл 29px = энгийн нэрийн баруун padding). */
@media (min-width: 1100px) {
  #masthead .th-up-nav__list:not(.th-up-nav__sublist) > .th-up-nav__item > .th-up-nav__row > a { padding-right: 29px; }
  #masthead .th-up-nav__list:not(.th-up-nav__sublist) > .th-up-nav__item > .th-up-nav__row > a:has(+ .th-up-nav__subtoggle) { padding-right: 2px; }
  #masthead .th-up-nav__list:not(.th-up-nav__sublist) > .th-up-nav__item > .th-up-nav__row > .th-up-nav__subtoggle { padding-left: 2px; }
}
/* ===== /UP v10c ===== */

/* ===== UP v10d (2026-10-20) — header-ийн сумны товчны фокусын хүрээ товчны дотор ===== */
/* Ерөнхий «button:focus-visible { outline-offset:3px !important; box-shadow:0 0 0 6px #fff !important }» дүрэм v10b-ийн −3px-ийг дарж,
   цагаан 6px хүрээ нэрийн сүүлчийн үсгийг халхалж байв. Зөвхөн ≥1366px header-ийн дээд түвшний сумны товчинд: 3px хүрээ 44px товчны дотор,
   цагаан халхлагагүй (!important нь ерөнхий !important дүрмийг дарахад л). */
@media (min-width: 1100px) {
  #masthead .th-up-nav__list:not(.th-up-nav__sublist) > .th-up-nav__item > .th-up-nav__row > .th-up-nav__subtoggle:focus-visible { outline-offset: -3px !important; box-shadow: none !important; }
}
/* ===== /UP v10d ===== */

/* ===== UP v11 (2026-10-21) — header цэс: нийт өргөнийг багасгав (зөвхөн ≥1366px, зөвхөн дээд түвшний мөр) ===== */
/* v10d-д бүх зай 29px байсан нь v10c фокусын хүрээг (товчийг бүхэлд нь хүрээлсэн outline) нэрээс 2px холдуулахын тулд сумыг 2px
   хойш шилжүүлснээс: 7 зай × 2px = +14px, урьдчилсан хувилбараас +3px. Хэмжилт: сумтай мөрийн «сум → дараагийн нэр» зай нь
   44px товч − нэр→сум (4px) − сумны дүрс (13px) = 27px-аас БАГА болж чадахгүй (товч 44×44, дарах талбай давхцахгүй).
   Одоо: товч нэрийн яг төгсгөлөөс эхэлж сум 4px-д (padding-left), фокусын хүрээг outline-ын оронд ::after-аар зүүн талаас 2px
   доторлон зурна → хүрээ нэрт 2px зайтай хэвээр, зай бүр 27px (жигд). Эхний холбоосны 8px зүүн padding хасав.
   Үсэг, лого, хэл солигч, «Хандив», товчны 44×44, ≤1365px (hamburger), дэд цэсэнд хүрэхгүй. */
@media (min-width: 1100px) {
  #masthead .th-up-nav__list:not(.th-up-nav__sublist) > .th-up-nav__item:first-child > .th-up-nav__row > a { padding-left: 0; }
  #masthead .th-up-nav__list:not(.th-up-nav__sublist) > .th-up-nav__item > .th-up-nav__row > a { padding-right: 27px; }
  #masthead .th-up-nav__list:not(.th-up-nav__sublist) > .th-up-nav__item > .th-up-nav__row > a:has(+ .th-up-nav__subtoggle) { padding-right: 0; }
  #masthead .th-up-nav__list:not(.th-up-nav__sublist) > .th-up-nav__item > .th-up-nav__row > .th-up-nav__subtoggle { padding-left: 4px; position: relative; }
  #masthead .th-up-nav__list:not(.th-up-nav__sublist) > .th-up-nav__item > .th-up-nav__row > .th-up-nav__subtoggle:focus-visible { outline: none !important; box-shadow: none !important; }
  #masthead .th-up-nav__list:not(.th-up-nav__sublist) > .th-up-nav__item > .th-up-nav__row > .th-up-nav__subtoggle:focus-visible::after {
    content: ""; position: absolute; inset: 0 0 0 2px; border: 3px solid var(--th-seaweed, #00798C); border-radius: 10px; pointer-events: none; }
}
/* Одоогийн хуудасны эцэг мөр (th-site.php «is-current-parent», v11): зөвхөн өнгө — одоогийн хуудас (aria-current="page") нь өнгө + доогуур зураастай
   хэвээр, тиймээс хоёр нь ялгаатай; эцэг мөрөнд aria-current тавихгүй. Үсгийн жин өөрчлөхгүй (цэсний өргөн хөдлөхгүй). Бүх өргөнд. */
#masthead .th-up-nav__item.is-current-parent > .th-up-nav__row > a { color: var(--th-seaweed, #00798C); }
/* Түүхэн замнал: хараахан гараагүй баруун картын translateX(28px) нь 1120px контейнер ирмэгт ойр өргөнд (хэмжилт: 1024px-д +8px) хуудсыг
   хэвтээ гүйлгэх болгож байв. Шилжилт багтах өргөнөөс (1120 + 2×28) доош картууд хажуугаас биш доороос (translateY) орно — ≤899px-ийн дүрмийг өргөтгөв. */
@media (prefers-reduced-motion: no-preference) and (max-width: 1199px) {
  .th-tl2.is-anim .th-tl2__item:not(.is-in) .th-tl2__card, .th-tl2.is-anim .th-tl2__item--r:not(.is-in) .th-tl2__card { transform: translateY(12px); }
}
/* ===== /UP v11 ===== */


/* ===== UP v14 (2026-10-27) — сүлжээний картын олон холбоос: эхний холбоос л доош шахагдана, бусад нь дор нь (жигд зай) ===== */
.th-net__orgs-wrap .th-net__link ~ .th-net__link { margin-top: 0; }
/* ===== /UP v14 ===== */

/* ===== UP v14b (2026-10-30): сүлжээ/хамтрагч 3 таб, хандивын «Дэлгэрэнгүй», Reels ===== */
/* Табууд: JS үед панелиуд нэг нүдэнд давхарлагдана — таб солиход хэсгийн өндөр үсрэхгүй. Идэвхгүй панел visibility:hidden + inert
   (Tab дараалалд орохгүй). JS-гүй үед өмнөх шигээ дараалан харагдана. */
.th-net.is-js .th-net__panels { display: block; }
.th-net.is-js .th-net__panels > .th-net__panel { min-width: 0; }
.th-net.is-js .th-net__panel.is-inactive { display: none; }
/* Хамтрагчийн таб намхан: идэвхгүй үед зай эзлэхгүй, идэвхтэй үед сүлжээний панелиуд зай эзлэхгүй (хоёр сүлжээний таб хооронд өндөр тогтвортой). */
.th-net.is-js .th-net__panel--pt.is-inactive, .th-net.is-js.is-pt-active .th-net__panel.is-inactive { display: none; }
.th-net:not(.is-js) .th-net__panels > .th-net__panel + .th-net__panel { margin-top: 48px; padding-top: 40px; border-top: 1px solid var(--th-line); }
.th-net__panel--pt .th-net__body { max-width: 760px; margin-inline: auto; text-align: center; }
.th-net__pt { margin-top: 24px; }
/* Холбогдох байгууллагууд: компьютер 3, таблет 2, утас 2 багана (≤359px 1) — утсанд урт нэг багана үүсгэхгүй; утсанд карт босоо. */
@media (max-width: 767px) {
 .th-net__orgs-wrap .th-net__orgs { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
 .th-net__orgs-wrap .th-net__card { flex-direction: column; align-items: flex-start; gap: 10px; padding: 12px; }
 .th-net__orgs-wrap .th-net__logowrap { flex: 0 0 auto; width: 56px; height: 48px; justify-content: flex-start; }
}
@media (max-width: 359px) { .th-net__orgs-wrap .th-net__orgs { grid-template-columns: minmax(0, 1fr); } }
/* Хандив: «Дэлгэрэнгүй» нь сонголтын <label>-ийн гадна тусдаа холбоос (radio-той давхар интерактив элемент биш). */
.th-dn__opt { position: relative; min-width: 0; }
.th-dn__opt.has-more .th-dn__choice { padding-bottom: 46px; }
.th-dn__more { position: absolute; left: 96px; bottom: 15px; font-size: .9375rem; font-weight: 700; line-height: 1.3; color: var(--th-seaweed); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 767px) { .th-dn__more { left: 88px; } }   /* гарчгийн эхлэлтэй зэрэгцэнэ (зураг 64px, утсанд 56px) */
.th-dn__more:hover { color: #003D5B; }
.th-dn__more:focus-visible { outline: 3px solid var(--th-seaweed); outline-offset: 2px; border-radius: 4px; }
/* Reels хуудас: хайлтын мөрөнд төрлийн сонголт байхгүй */
.th-feedx--reels .th-feedx__tools { margin-top: 0; }


/* ===== UP 2026-11-03: хаалттай сүлжээний таб desktop дээр ч хоосон зай эзлэхгүй; «Үйл ажиллагаа»-ны алба 2 баганаар ===== */
.th-equal-card-grid--2 > .th-equal-card { grid-column: span 12; }
.th-act-dept { scroll-margin-top: 120px; }
.th-act-dept .th-act-dept__list { margin: 0; padding-left: 1.2em; }
.th-act-dept .th-act-dept__list li + li { margin-top: 6px; }
.th-act-panel .th-act-more__title { margin: 12px 0 4px; }


/* UP 2026-11-03b: картаас ирэхэд accordion-ын гарчиг дээд ирмэгт наалдахгүй */
.th-act-acc .e-n-accordion-item { scroll-margin-top: 24px; }

/* th-bp1100 (2026-11-13): 1100–1365px — бүтэн цэс нягт хэлбэрээр (th-site.php) */
@media (min-width: 1100px) and (max-width: 1365px) {
 #masthead { padding-left: 12px; padding-right: 12px; }
 #masthead .th-neo-header { padding-left: 14px !important; padding-right: 14px !important; }
 #masthead .th-neo-header > .e-con-inner > .e-con { gap: 12px !important; }
 #masthead .th-neo-header .e-con.th-hdr-actions { column-gap: 10px !important; }
 #masthead .th-cta .elementor-button { padding: 10px 14px; font-size: 14px; }
 #masthead .th-up-nav__list:not(.th-up-nav__sublist) > .th-up-nav__item > .th-up-nav__row > a { font-size: 14px; padding-right: 12px; }
 #masthead .th-up-nav__list:not(.th-up-nav__sublist) > .th-up-nav__item > .th-up-nav__row > a:has(+ .th-up-nav__subtoggle) { padding-right: 0; }
 #masthead .th-up-nav__list:not(.th-up-nav__sublist) > .th-up-nav__item > .th-up-nav__row > .th-up-nav__subtoggle { min-width: 28px; width: 28px; padding-left: 3px; }
}
