/*
 * ══════════════════════════════════════════════════════════
 *   FINDINGUNI — SYNTARA TECHNOLOGIES BRANDING
 *   Developed & maintained by Syntara Technologies Pvt Ltd
 *   https://syntaratechnologies.com
 * ══════════════════════════════════════════════════════════
 */

:root {
  --space-unit: 8px;
  --space-0: 0;
  --space-1: calc(var(--space-unit) * 1);
  --space-2: calc(var(--space-unit) * 2);
  --space-3: calc(var(--space-unit) * 3);
  --space-4: calc(var(--space-unit) * 4);
  --space-5: calc(var(--space-unit) * 5);
  --space-6: calc(var(--space-unit) * 6);
  --space-7: calc(var(--space-unit) * 7);
  --space-8: calc(var(--space-unit) * 8);
  --space-9: calc(var(--space-unit) * 9);
  --space-10: calc(var(--space-unit) * 10);
}

/* Margin helpers */
.mt-0 { margin-top: var(--space-0) !important; }
.mt-1 { margin-top: var(--space-1) !important; }
.mt-2 { margin-top: var(--space-2) !important; }
.mt-3 { margin-top: var(--space-3) !important; }
.mt-4 { margin-top: var(--space-4) !important; }
.mt-5 { margin-top: var(--space-5) !important; }
.mt-6 { margin-top: var(--space-6) !important; }
.mt-7 { margin-top: var(--space-7) !important; }
.mt-8 { margin-top: var(--space-8) !important; }
.mt-9 { margin-top: var(--space-9) !important; }
.mt-10 { margin-top: var(--space-10) !important; }

.mb-0 { margin-bottom: var(--space-0) !important; }
.mb-1 { margin-bottom: var(--space-1) !important; }
.mb-2 { margin-bottom: var(--space-2) !important; }
.mb-3 { margin-bottom: var(--space-3) !important; }
.mb-4 { margin-bottom: var(--space-4) !important; }
.mb-5 { margin-bottom: var(--space-5) !important; }
.mb-6 { margin-bottom: var(--space-6) !important; }
.mb-7 { margin-bottom: var(--space-7) !important; }
.mb-8 { margin-bottom: var(--space-8) !important; }
.mb-9 { margin-bottom: var(--space-9) !important; }
.mb-10 { margin-bottom: var(--space-10) !important; }

.ms-0 { margin-inline-start: var(--space-0) !important; }
.ms-1 { margin-inline-start: var(--space-1) !important; }
.ms-2 { margin-inline-start: var(--space-2) !important; }
.ms-3 { margin-inline-start: var(--space-3) !important; }
.ms-4 { margin-inline-start: var(--space-4) !important; }
.ms-5 { margin-inline-start: var(--space-5) !important; }
.ms-6 { margin-inline-start: var(--space-6) !important; }
.ms-7 { margin-inline-start: var(--space-7) !important; }
.ms-8 { margin-inline-start: var(--space-8) !important; }
.ms-9 { margin-inline-start: var(--space-9) !important; }
.ms-10 { margin-inline-start: var(--space-10) !important; }

.me-0 { margin-inline-end: var(--space-0) !important; }
.me-1 { margin-inline-end: var(--space-1) !important; }
.me-2 { margin-inline-end: var(--space-2) !important; }
.me-3 { margin-inline-end: var(--space-3) !important; }
.me-4 { margin-inline-end: var(--space-4) !important; }
.me-5 { margin-inline-end: var(--space-5) !important; }
.me-6 { margin-inline-end: var(--space-6) !important; }
.me-7 { margin-inline-end: var(--space-7) !important; }
.me-8 { margin-inline-end: var(--space-8) !important; }
.me-9 { margin-inline-end: var(--space-9) !important; }
.me-10 { margin-inline-end: var(--space-10) !important; }

/* Padding helpers */
.pt-0 { padding-top: var(--space-0) !important; }
.pt-1 { padding-top: var(--space-1) !important; }
.pt-2 { padding-top: var(--space-2) !important; }
.pt-3 { padding-top: var(--space-3) !important; }
.pt-4 { padding-top: var(--space-4) !important; }
.pt-5 { padding-top: var(--space-5) !important; }
.pt-6 { padding-top: var(--space-6) !important; }
.pt-7 { padding-top: var(--space-7) !important; }
.pt-8 { padding-top: var(--space-8) !important; }
.pt-9 { padding-top: var(--space-9) !important; }
.pt-10 { padding-top: var(--space-10) !important; }

.pb-0 { padding-bottom: var(--space-0) !important; }
.pb-1 { padding-bottom: var(--space-1) !important; }
.pb-2 { padding-bottom: var(--space-2) !important; }
.pb-3 { padding-bottom: var(--space-3) !important; }
.pb-4 { padding-bottom: var(--space-4) !important; }
.pb-5 { padding-bottom: var(--space-5) !important; }
.pb-6 { padding-bottom: var(--space-6) !important; }
.pb-7 { padding-bottom: var(--space-7) !important; }
.pb-8 { padding-bottom: var(--space-8) !important; }
.pb-9 { padding-bottom: var(--space-9) !important; }
.pb-10 { padding-bottom: var(--space-10) !important; }

.ps-0 { padding-inline-start: var(--space-0) !important; }
.ps-1 { padding-inline-start: var(--space-1) !important; }
.ps-2 { padding-inline-start: var(--space-2) !important; }
.ps-3 { padding-inline-start: var(--space-3) !important; }
.ps-4 { padding-inline-start: var(--space-4) !important; }
.ps-5 { padding-inline-start: var(--space-5) !important; }
.ps-6 { padding-inline-start: var(--space-6) !important; }
.ps-7 { padding-inline-start: var(--space-7) !important; }
.ps-8 { padding-inline-start: var(--space-8) !important; }
.ps-9 { padding-inline-start: var(--space-9) !important; }
.ps-10 { padding-inline-start: var(--space-10) !important; }

.pe-0 { padding-inline-end: var(--space-0) !important; }
.pe-1 { padding-inline-end: var(--space-1) !important; }
.pe-2 { padding-inline-end: var(--space-2) !important; }
.pe-3 { padding-inline-end: var(--space-3) !important; }
.pe-4 { padding-inline-end: var(--space-4) !important; }
.pe-5 { padding-inline-end: var(--space-5) !important; }
.pe-6 { padding-inline-end: var(--space-6) !important; }
.pe-7 { padding-inline-end: var(--space-7) !important; }
.pe-8 { padding-inline-end: var(--space-8) !important; }
.pe-9 { padding-inline-end: var(--space-9) !important; }
.pe-10 { padding-inline-end: var(--space-10) !important; }

/* Text helpers */
.text-center { text-align: center !important; }
.text-start { text-align: left !important; }
.text-end { text-align: right !important; }
.text-uppercase { text-transform: uppercase !important; }
.text-muted { color: var(--muted) !important; }

/* Display & layout */
.d-block { display: block !important; }
.d-inline-block { display: inline-block !important; }
.d-flex { display: flex !important; }
.d-inline-flex { display: inline-flex !important; }
.justify-between { justify-content: space-between !important; }
.justify-center { justify-content: center !important; }
.align-center { align-items: center !important; }
.gap-1 { gap: var(--space-1) !important; }
.gap-2 { gap: var(--space-2) !important; }
.w-100 { width: 100% !important; }
.h-100 { height: 100% !important; }

/* Accessibility */
.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  border: 0 !important;
}
/* Overlays must be invisible before their own inline <style> is parsed, or they flash mid-navigation. */
.degree-dialog-overlay:not(.is-active){opacity:0 !important;pointer-events:none !important;}
.auth-required-dialog[hidden],.ads-popup-overlay:not(.is-visible):not([style*="display: block"]){display:none !important;}

/* Google auto-placed ads (Discover more / related search / in-article) land at
   body or main level with inline width:100%; keep them inside the content
   column and centred instead of hugging the left edge. */
.google-auto-placed { margin-top: 28px !important; margin-bottom: 28px !important; }
.search-results .google-auto-placed, .program-content .google-auto-placed, article .google-auto-placed { max-width: 100%; }
.frontend-ad, .frontend-ad-code { text-align: center; }
/* Centring belongs to the slot, not to Google's element. */

/* Ad slots must never distort the card rhythm: no wrapper margins inside the
   results list, and a slot Google could not fill (or swapped for "related
   search" links) collapses entirely. */
.results-grid > .frontend-ad, .search-results > .frontend-ad, .results-grid > .google-auto-placed { margin: 0 !important; }
/* University logos on every card: big, framed, always legible. */
.program-logo-wrapper, .program-h-logo-wrapper, .uni-logo-wrapper, .uni-h-logo-wrapper, .uni-v1-logo, .uni-v2-logo, .uni-v3-logo {
  width: 76px !important; height: 76px !important; min-width: 76px; flex-shrink: 0;
  display: grid !important; place-items: center; padding: 8px !important; box-sizing: border-box;
  background: #fff !important; border: 1px solid #E3E8F0 !important; border-radius: 16px !important;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .06); overflow: hidden;
}
.program-logo-wrapper img, .program-h-logo-wrapper img, .uni-logo-wrapper img, .uni-h-logo-wrapper img, .uni-v1-logo img, .uni-v2-logo img, .uni-v3-logo img,
.program-logo, .program-h-logo, .uni-logo, .uni-h-logo {
  width: 100% !important; height: 100% !important; max-width: 100% !important; max-height: 100% !important;
  object-fit: contain !important; border-radius: 0 !important; display: block;
}
@media (max-width: 640px) {
  .program-logo-wrapper, .program-h-logo-wrapper, .uni-logo-wrapper, .uni-h-logo-wrapper { width: 64px !important; height: 64px !important; min-width: 64px; }
}

.search-filters .google-auto-placed, .search-filters ins.adsbygoogle, .filter-card ins.adsbygoogle { display: none !important; height: 0 !important; margin: 0 !important; } /* No ads inside the filter sidebar */
