/* ============================================================================
   MPNEWJOBS.IN — CUSTOM STYLE SHEET
   ============================================================================
   WHERE THIS GOES: Appearance → Customize → Additional CSS
   (or a child-theme style.css / a snippet enqueued after the theme stylesheet)

   WHY THIS FILE EXISTS
   Tailwind (used only in the HTML prototypes) will NOT be loaded on the live
   WordPress site. Everything below is written as plain, dependency-free CSS
   using semantic class names (job-card, section-bar, tile, note-red, etc.)
   so it keeps working no matter how each region is actually built —
   Elementor widget, ACF flexible-content PHP loop, or theme template.

   HOW TO USE
   Keep these exact class names on the matching elements:
     - Elementor widgets → add the class under Advanced → CSS Classes
     - ACF flexible-content PHP loop → hardcode the class in the template,
       e.g. echo '<table class="job-table">...
   ============================================================================ */

:root{
  --brand: #1B4F9C;
  --brand-dark: #123A73;
  --brand-light: #EAF1FC;
  --ink: #1B2033;
  --whatsapp: #25D366;
  --telegram: #0088CC;
  --lastdate: #DC2626;
  --amber: #FBBF24;
  --btn-apply: #EA580C;
  --btn-apply-dark: #C2410C;
  --tile-magenta:#D6247A; --tile-navy:#161B33; --tile-maroon:#7A1319; --tile-orange:#C1591C;
  --tile-purple:#4B1E6B; --tile-red:#C0202B; --tile-teal:#0F4C42; --tile-tan:#6B5B4D;
  --font-display: 'Yantramanav', system-ui, sans-serif;
  --font-body: 'Yantramanav', system-ui, sans-serif;
  --radius-lg: 14px;
  --radius-md: 10px;
  --shadow-card: 0 1px 2px rgba(16,24,64,0.06), 0 6px 18px -8px rgba(16,24,64,0.12);
}

/* Devanagari text tends to need a touch more line-height to avoid clipped matras */
body, .rich-text, .qualification-list, .dates-list, .promo-box__l1{
  line-height: 1.65;
}

/* ---------------------------------------------------------------------------
   NAV
--------------------------------------------------------------------------- */
.nav-link{
  padding: .55rem .9rem;
  border-radius: 8px;
  color: #374151;
  transition: color .3s cubic-bezier(.22,1,.36,1), background-color .3s cubic-bezier(.22,1,.36,1);
}
.nav-link:hover{ color: var(--brand); background: var(--brand-light); }
.nav-link--active{ color: var(--brand); background: var(--brand-light); }

.mobile-nav-link{
  display:block;
  padding: .9rem 1.1rem;
  border-bottom: 1px solid #EEF1F6;
  color:#374151;
}
.mobile-nav-link--active{ color: var(--brand); }

/* ---------------------------------------------------------------------------
   TICKER (marquee)
--------------------------------------------------------------------------- */
.ticker{ position: relative; }
.ticker__track{
  display:flex;
  gap: 3rem;
  white-space: nowrap;
  list-style:none;
  margin:0; padding:0;
  animation: ticker-scroll 26s linear infinite;
}
.ticker__track li{ display:inline-flex; align-items:center; height: 2.25rem; opacity:.92; }
.ticker:hover .ticker__track{ animation-play-state: paused; }
@keyframes ticker-scroll{
  from{ transform: translateX(0); }
  to{ transform: translateX(-50%); }
}

/* ---------------------------------------------------------------------------
   HERO
--------------------------------------------------------------------------- */
.hero-highlight{
  display:inline-block;
  margin: 0 .35rem;
  padding: .05em .4em;
  background: var(--amber);
  color: var(--ink);
  border: 2px solid #92400E;
  border-radius: 6px;
  transform: rotate(-1deg);
  max-width: 100%;
}
.chip{
  display:inline-flex; align-items:center;
  padding:.4rem .9rem;
  border-radius: 999px;
  background: rgba(255,255,255,.14);
  color:#fff;
  font-family: var(--font-display);
  font-size: .8rem;
  font-weight: 600;
  transition: background-color .3s cubic-bezier(.22,1,.36,1), transform .3s cubic-bezier(.22,1,.36,1);
}
.chip:hover{ background: rgba(255,255,255,.28); transform: translateY(-2px); }
.chip:active{ transform: translateY(0); }

/* ---------------------------------------------------------------------------
   FEATURED TILES
--------------------------------------------------------------------------- */
.tile{
  --tile-color: var(--brand);
  position: relative;
  overflow: hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  min-height: 76px;
  padding: .7rem .9rem;
  border-radius: var(--radius-md);
  background: var(--tile-color);
  color:#fff;
  box-shadow: var(--shadow-card);
  transition: transform .28s cubic-bezier(.22,1,.36,1), box-shadow .28s cubic-bezier(.22,1,.36,1), filter .28s ease;
}
.tile::after{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(135deg, rgba(255,255,255,.18), rgba(255,255,255,0) 55%);
  opacity:0;
  transition: opacity .28s ease;
  pointer-events:none;
}
.tile:hover,
.tile:focus-visible{
  transform: translateY(-4px);
  box-shadow: 0 16px 30px -14px rgba(0,0,0,.4);
  filter: brightness(1.05);
}
.tile:hover::after,
.tile:focus-visible::after{ opacity:1; }
.tile:active{ transform: translateY(-1px) scale(.99); transition-duration: .1s; }
.tile:focus-visible{ outline: 2px solid #fff; outline-offset: 2px; }
.tile__title{ font-family: var(--font-display); font-weight:600; font-size:.78rem; line-height:1.3; }

/* ---------------------------------------------------------------------------
   CTA BUTTONS (WhatsApp / Telegram)
--------------------------------------------------------------------------- */
.btn-cta{
  display:flex; align-items:center; justify-content:center; gap:.6rem;
  height: 3.1rem;
  border-radius: var(--radius-md);
  font-family: var(--font-display); font-weight:700; font-size:.95rem;
  color:#fff;
  box-shadow: var(--shadow-card);
  transition: filter .3s cubic-bezier(.22,1,.36,1), transform .3s cubic-bezier(.22,1,.36,1), box-shadow .3s cubic-bezier(.22,1,.36,1);
}
.btn-cta:hover{ filter: brightness(1.06); transform: translateY(-2px); box-shadow: 0 10px 20px -10px rgba(16,24,64,.35); }
.btn-cta--whatsapp{ background: var(--whatsapp); }
.btn-cta--telegram{ background: var(--telegram); }
.btn-cta--whatsapp svg{ animation: pulse-soft 2.6s ease-in-out infinite; }

@keyframes pulse-soft{
  0%,100%{ transform: scale(1); }
  50%{ transform: scale(1.12); }
}

/* ---------------------------------------------------------------------------
   TRUST STRIP
--------------------------------------------------------------------------- */
.trust-item{
  display:flex; align-items:flex-start; gap:.75rem;
  background:#fff; border:1px solid #E7ECF5;
  border-radius: var(--radius-md);
  padding: .9rem 1rem;
}
.trust-item svg{ width:22px; height:22px; color: var(--brand); flex-shrink:0; margin-top:2px; }

/* ---------------------------------------------------------------------------
   COLUMN HEADER ("Latest Updates" / "MP Vacancy" / "Result")
--------------------------------------------------------------------------- */
.col-header{
  display:flex; align-items:center; justify-content:space-between;
  background: var(--brand);
  border-radius: 10px 10px 0 0;
  padding: .8rem 1rem;
}
.col-header h2{
  font-family: var(--font-display); font-weight:800; font-size:1rem; color:#fff; margin:0;
}
.col-header__link{
  font-family: var(--font-display); font-weight:600; font-size:.78rem;
  color:#fff; background: rgba(255,255,255,.18);
  padding:.3rem .7rem; border-radius: 999px;
  transition: background-color .3s cubic-bezier(.22,1,.36,1), transform .3s cubic-bezier(.22,1,.36,1);
}
.col-header__link:hover{ background: rgba(255,255,255,.32); transform: translateY(-1px); }

/* ---------------------------------------------------------------------------
   JOB CARD (used on homepage columns, related posts, sidebar-adjacent lists)
--------------------------------------------------------------------------- */
.job-card{
  display:flex;
  flex-direction:column;
  height:100%;
  background:#fff;
  border:1px solid #E7ECF5;
  border-left: 4px solid var(--brand);
  border-radius: var(--radius-md);
  padding: .85rem 1rem;
  box-shadow: var(--shadow-card);
  transition: transform .25s cubic-bezier(.22,1,.36,1), box-shadow .25s cubic-bezier(.22,1,.36,1), border-left-color .25s ease;
}
.job-card:hover{
  transform: translateY(-3px);
  box-shadow: 0 14px 28px -14px rgba(16,24,64,.28);
  border-left-color: var(--brand-dark);
}
.job-card__title{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  font-family: var(--font-display); font-weight:600; font-size:.92rem;
  color: var(--ink);
  margin-bottom:.55rem;
  transition: color .15s ease;
}
.job-card__title:hover{ color: var(--brand); }
.job-card__meta{
  display:flex; align-items:center; justify-content:space-between; gap:.6rem; flex-wrap:wrap;
  margin-top:auto;
  padding-top:.5rem;
}

.countdown-badge{
  font-size:.72rem; color: var(--lastdate); font-family: var(--font-body);
}
.countdown-badge strong{ font-weight:700; }
.countdown-badge--urgent{ animation: urgent-pulse 1.6s ease-in-out infinite; }
.countdown-badge--closed{ color:#6B7280; }
.countdown-badge--sm{ font-size:.68rem; }
@keyframes urgent-pulse{
  0%,100%{ opacity:1; } 50%{ opacity:.55; }
}

.badge-closed{
  display:inline-flex; align-items:center; gap:.3rem;
  font-size:.72rem; font-weight:600; color:#065F46;
  background:#D1FAE5; padding:.2rem .55rem; border-radius:6px;
}

.btn-apply-sm{
  display:inline-flex; align-items:center;
  font-family: var(--font-display); font-weight:700; font-size:.76rem;
  color:#fff; background:#EA580C;
  padding:.35rem .8rem; border-radius:6px;
  transition: background-color .35s cubic-bezier(.22,1,.36,1), transform .35s cubic-bezier(.22,1,.36,1), box-shadow .35s cubic-bezier(.22,1,.36,1);
}
.job-card:hover .btn-apply-sm{ box-shadow: 0 4px 10px -4px rgba(234,88,12,.45); }
.btn-apply-sm:hover{
  background:#C2410C;
  transform: translateY(-1px);
  box-shadow: 0 8px 18px -6px rgba(194,65,12,.55);
}
.btn-apply-sm:active{ transform: translateY(0); box-shadow:none; }

/* ---------------------------------------------------------------------------
   SOCIAL RAIL (sticky, left edge)
--------------------------------------------------------------------------- */
.social-rail{
  position: fixed;
  left: 0;
  top: 45%;
  transform: translateY(-50%);
  z-index: 30;
  display:flex; flex-direction:column;
  border-radius: 0 10px 10px 0;
  overflow:hidden;
  box-shadow: var(--shadow-card);
  opacity:0;
  pointer-events:none;
  transition: opacity .25s ease;
}
.social-rail.is-visible{ opacity:1; pointer-events:auto; }
.social-rail__item{
  width:38px; height:38px;
  display:flex; align-items:center; justify-content:center;
  background: var(--c, var(--brand));
  color:#fff;
  border:none; cursor:pointer;
}
.social-rail__item svg{ width:17px; height:17px; }
.social-rail__item:hover{ filter:brightness(1.08); }

@media (max-width: 1023px){
  .social-rail{ display:none; } /* keep mobile UI uncluttered; CTA buttons already present */
}

/* ---------------------------------------------------------------------------
   FOOTER
--------------------------------------------------------------------------- */
.footer-h{ font-family: var(--font-display); font-weight:700; color:#fff; font-size:.95rem; margin-bottom:1rem; }
.footer-link{ color:#94A3B8; transition: color .3s cubic-bezier(.22,1,.36,1), padding-left .3s cubic-bezier(.22,1,.36,1); }
.footer-link:hover{ color:#fff; padding-left:3px; }
.footer-social{
  width:34px; height:34px; display:flex; align-items:center; justify-content:center;
  border-radius:8px; background: rgba(255,255,255,.08); color:#fff;
  transition: background-color .3s cubic-bezier(.22,1,.36,1), transform .3s cubic-bezier(.22,1,.36,1);
}
.footer-social:hover{ background: var(--brand); transform: translateY(-2px); }

/* ---------------------------------------------------------------------------
   BACK TO TOP
--------------------------------------------------------------------------- */
.back-to-top{
  position: fixed;
  right: 1.1rem;
  bottom: 1.1rem;
  z-index: 30;
  width: 46px; height:46px;
  border-radius:999px;
  background: var(--brand);
  color:#fff;
  display:flex; align-items:center; justify-content:center;
  box-shadow: 0 10px 24px -8px rgba(16,24,64,.4);
  border:none; cursor:pointer;
  opacity:0; visibility:hidden; transform: translateY(8px);
  transition: opacity .3s cubic-bezier(.22,1,.36,1), transform .3s cubic-bezier(.22,1,.36,1), visibility .3s, background-color .3s cubic-bezier(.22,1,.36,1);
}
.back-to-top.is-visible{ opacity:1; visibility:visible; transform:translateY(0); }
.back-to-top:hover{ background: var(--brand-dark); transform: translateY(-2px); }
.back-to-top svg{ width:20px; height:20px; }

/* =============================================================================
   SINGLE POST / ACF FLEXIBLE-CONTENT COMPONENTS
   (all of these render from the PHP flexible-content loop described in post.html)
============================================================================= */

.badge-category{
  display:inline-flex; align-items:center;
  font-family: var(--font-display); font-weight:600; font-size:.72rem;
  color: var(--brand); background: var(--brand-light);
  padding:.28rem .7rem; border-radius:999px;
  transition: background-color .3s cubic-bezier(.22,1,.36,1);
}
.badge-category:hover{ background:#DCE8FB; }

/* colour variants — used on homepage "More Job Updates" so post type is scannable at a glance */
.badge-category--amber{ color:#92400E; background:#FEF3C7; }
.badge-category--amber:hover{ background:#FDE8A6; }
.badge-category--purple{ color:#4B1E6B; background:#F1E7FB; }
.badge-category--purple:hover{ background:#E6D5F7; }
.badge-category--green{ color:#065F46; background:#D1FAE5; }
.badge-category--green:hover{ background:#B9F3D4; }
.badge-category--pink{ color:#9D174D; background:#FCE7F3; }
.badge-category--pink:hover{ background:#FBCFE8; }
.badge-category--teal{ color:#0F4C42; background:#DFF5F0; }
.badge-category--teal:hover{ background:#C7EDE2; }

.follow-icon{
  width:30px; height:30px; border-radius:999px;
  display:flex; align-items:center; justify-content:center;
  background:#F1F5F9; color:#475569;
  transition: background-color .3s cubic-bezier(.22,1,.36,1), color .3s cubic-bezier(.22,1,.36,1), transform .3s cubic-bezier(.22,1,.36,1);
}
.follow-icon svg{ width:15px; height:15px; }
.follow-icon:hover{ background: var(--brand); color:#fff; transform: translateY(-2px); }

.promo-box{
  border: 1.5px dashed var(--brand);
  border-radius: var(--radius-md);
  background: var(--brand-light);
  padding: 1rem 1.1rem;
  text-align:center;
}
.promo-box__l1{ color:#B3175A; font-weight:700; margin:0 0 .2rem; }
.promo-box__l2{ color:#166534; font-weight:600; font-size:.9rem; margin:0 0 .35rem; }
.promo-box__link{ color: var(--brand); font-weight:700; font-size:.85rem; text-decoration: underline; }

.section-bar{
  display:flex; align-items:center; gap:.55rem;
  background: linear-gradient(90deg, var(--brand), var(--brand-dark));
  color:#fff;
  font-family: var(--font-display); font-weight:700; font-size:.95rem;
  padding: .75rem 1.1rem;
  border-radius: 8px;
  margin: 0 0 .85rem;
}
.section-bar--plain{ padding-left: 1.1rem; }
.section-bar__icon{ width:19px; height:19px; flex-shrink:0; opacity:.9; }

.table-wrap{ overflow-x:auto; -webkit-overflow-scrolling: touch; }
.table-title{ font-family: var(--font-display); font-weight:700; color: var(--brand); text-align:center; margin: 0 0 .6rem; font-size:.92rem; }

.job-table{
  width:100%;
  border-collapse: collapse;
  background:#fff;
  font-size:.87rem;
  min-width: 420px;
}
.job-table th, .job-table td{
  border: 1px solid #E2E8F0;
  padding: .6rem .75rem;
  text-align:center;
}
.job-table th{
  background: var(--brand-light);
  color: var(--brand-dark);
  font-family: var(--font-display); font-weight:700; font-size:.78rem;
}
.job-table tbody tr:nth-child(even){ background:#FAFBFE; }
.job-table__total td{ font-weight:800; background: #FEF3C7; }
.job-table--links td:first-child{ text-align:left; font-weight:600; background: var(--brand-light); width:55%; }
.link-cell{ color: var(--brand); font-weight:700; text-decoration: underline; }
.align-middle{ vertical-align: middle; }

.qualification-list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:.55rem; }
.qualification-list li{
  position:relative; padding-left:1.4rem; font-size:.9rem; color:#374151;
}
.qualification-list li::before{
  content:''; position:absolute; left:0; top:.5em;
  width:8px; height:8px; border-radius:999px; background: var(--brand);
}

.dates-list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:0; border:1px solid #E2E8F0; border-radius:8px; overflow:hidden; }
.dates-list li{
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
  padding:.65rem .9rem; font-size:.87rem;
}
.dates-list li:nth-child(even){ background:#FAFBFE; }
.dates-list li span{ color:#475569; }
.dates-list li strong{ color: var(--ink); font-family: var(--font-display); white-space:nowrap; }
.text-lastdate{ color: var(--lastdate) !important; }

.note-red{
  margin-top:.7rem;
  font-size:.85rem;
  color:#991B1B;
  background:#FEF2F2;
  border-left:3px solid var(--lastdate);
  padding:.55rem .8rem;
  border-radius:0 6px 6px 0;
}

.rich-text{ font-size:.92rem; color:#374151; display:flex; flex-direction:column; gap:.5rem; }
.rich-text strong{ color: var(--ink); }

/* ---------------------------------------------------------------------------
   AUTHOR BOX
--------------------------------------------------------------------------- */
.author-box{
  display:flex; flex-direction:column; align-items:center; text-align:center;
  background:#fff; border:1px solid #E7ECF5; border-radius: var(--radius-lg);
  padding:1.75rem 1.25rem; margin-top:2rem;
  box-shadow: var(--shadow-card);
}
.author-box__photo{ width:88px; height:88px; border-radius:999px; object-fit:cover; border:3px solid #EAF1FC; }
.author-box__name{ display:block; margin-top:.8rem; font-family: var(--font-display); font-weight:700; color: var(--brand); font-size:1.05rem; }
.author-box__social{ display:flex; justify-content:center; gap:.6rem; margin-top:.7rem; }
.author-box__bio{ max-width:44rem; font-size:.85rem; color:#475569; margin:1rem auto 0; line-height:1.65; }

/* ---------------------------------------------------------------------------
   SIDEBAR WIDGET ("Latest Updates")
--------------------------------------------------------------------------- */
.sidebar-widget{
  background:#fff; border:1px solid #E7ECF5; border-radius: var(--radius-lg);
  overflow:hidden; box-shadow: var(--shadow-card);
}
.sidebar-widget__title{
  background: var(--brand); color:#fff;
  font-family: var(--font-display); font-weight:800; font-size:.9rem;
  padding:.85rem 1.1rem; margin:0;
}
.sidebar-widget__list{ list-style:none; margin:0; padding:.4rem; display:flex; flex-direction:column; gap:.3rem; }
.sidebar-post{
  display:block; padding:.65rem .75rem; border-radius:8px;
}
.sidebar-post a{
  display:block; font-size:.83rem; font-weight:600; color: var(--ink); margin-bottom:.35rem;
}
.sidebar-post a:hover{ color: var(--brand); }
.sidebar-post.is-current{
  background: var(--brand-light);
  border-left: 3px solid var(--brand);
}
.sidebar-post.is-current a{ color: var(--brand); }

/* ---------------------------------------------------------------------------
   ACCESSIBILITY / MOTION / PRINT
--------------------------------------------------------------------------- */
:focus-visible{ outline: 3px solid #93C5FD; outline-offset: 2px; }

@media (prefers-reduced-motion: reduce){
  .ticker__track, .btn-cta--whatsapp svg, .countdown-badge--urgent{ animation: none !important; }
  *{ transition-duration: 0.01ms !important; }
}

@media print{
  header, footer, .social-rail, .back-to-top, #mobile-menu,
  .sidebar-widget, .btn-cta, .promo-box, .col-header__link,
  aside.lg\:col-span-4 { display:none !important; }
  body{ background:#fff; }
  .job-table, .job-table th, .job-table td{ border-color:#000; }
  .section-bar{ background:#eee !important; color:#000 !important; -webkit-print-color-adjust: exact; }
  a[href]::after{ content: " (" attr(href) ")"; font-size: .75em; color:#555; }
}

/* ---------------------------------------------------------------------------
   PAGINATION (category / archive / search / comments)
--------------------------------------------------------------------------- */
.page-numbers{
  display:inline-flex; align-items:center; justify-content:center;
  min-width:2.4rem; height:2.4rem; padding:0 .6rem;
  border-radius:8px; border:1px solid #E2E8F0;
  background:#fff; color: var(--ink);
  font-family: var(--font-display); font-weight:600; font-size:.85rem;
  transition: background-color .3s cubic-bezier(.22,1,.36,1), color .3s cubic-bezier(.22,1,.36,1), border-color .3s cubic-bezier(.22,1,.36,1), transform .3s cubic-bezier(.22,1,.36,1);
}
.page-numbers:hover{ transform: translateY(-1px); background: var(--brand-light); border-color: var(--brand); color: var(--brand); }
.page-numbers.current{ background: var(--brand); border-color: var(--brand); color:#fff; }
.page-numbers.dots{ border:none; background:none; }


/* ---------------------------------------------------------------------------
   ARTICLE CONTENT TYPOGRAPHY — applies to native block-editor output
   (Heading/Paragraph/List/Quote/Table/Image blocks) inside .job-post-details.
   Custom classes like .job-table / .qualification-list / .promo-box keep
   their own look untouched — these rules only fill the gap for plain blocks.
--------------------------------------------------------------------------- */
.job-post-details h1,.job-post-details h2,.job-post-details h3,
.job-post-details h4,.job-post-details h5,.job-post-details h6{
  font-family: var(--font-display);
  font-weight: 800;
  color: var(--ink);
  line-height: 1.3;
  margin: 1.5rem 0 .6rem;
}
.job-post-details h2{ font-size: 1.28rem; color: var(--brand); padding-bottom: .4rem; border-bottom: 2px solid var(--brand-light); }
.job-post-details h3{ font-size: 1.12rem; }
.job-post-details h4{ font-size: 1rem; }
.job-post-details > h2:first-child, .job-post-details > h3:first-child{ margin-top: 0; }
.job-post-details p{ font-size: .93rem; line-height: 1.75; color: #374151; margin: 0; }
.job-post-details ul:not(.qualification-list):not(.dates-list){ list-style: disc; padding-left: 1.25rem; margin: 0; display:block; }
.job-post-details ol{ list-style: decimal; padding-left: 1.25rem; margin: 0; display:block; }
.job-post-details ul:not(.qualification-list):not(.dates-list) li,
.job-post-details ol li{ font-size: .93rem; line-height: 1.65; margin-bottom: .35rem; display:list-item; }
.job-post-details a:not(.btn-apply-sm):not(.promo-box__link){ color: var(--brand); text-decoration: underline; text-underline-offset: 2px; font-weight: 600; }
.job-post-details strong{ color: var(--ink); font-weight: 700; }
.job-post-details blockquote{ border-left: 4px solid var(--brand); background: var(--brand-light); padding: .8rem 1rem; border-radius: 0 8px 8px 0; font-style: italic; color: #334155; margin: 0; }
.job-post-details img{ max-width: 100%; height: auto; border-radius: 10px; display:block; }
.job-post-details .wp-block-table{ overflow-x: auto; display: block; margin: 0; }
.job-post-details table:not(.job-table){ width: 100%; border-collapse: collapse; font-size: .85rem; }
.job-post-details table:not(.job-table) th, .job-post-details table:not(.job-table) td{ border: 1px solid #E2E8F0; padding: .55rem .7rem; text-align: left; }
.job-post-details table:not(.job-table) th{ background: var(--brand); color: #fff; font-family: var(--font-display); }
@media (max-width: 640px){
  .job-post-details h2{ font-size: 1.1rem; }
  .job-post-details h3{ font-size: 1.02rem; }
  .job-post-details table:not(.job-table) th, .job-post-details table:not(.job-table) td{ padding: .45rem .55rem; font-size: .8rem; }
}

/* ---------------------------------------------------------------------------
   HEADER LOGO — keeps an uploaded logo (any width) fitting the header height
--------------------------------------------------------------------------- */
.custom-logo-wrap{ display:flex; align-items:center; }
.custom-logo-wrap img{ max-height:44px; width:auto; display:block; }

/* ---------------------------------------------------------------------------
   FOOTER LOGO — device-safe sizing for a 150x60 uploaded image
--------------------------------------------------------------------------- */
.footer-logo-link{ display:inline-block; }
.footer-logo-img{ max-width:150px; max-height:60px; width:auto; height:auto; display:block; }
@media (max-width:639px){
  .footer-logo-img{ max-width:130px; max-height:52px; }
}
