.elementor-kit-22{--e-global-color-primary:#003A70;--e-global-color-secondary:#005EA5;--e-global-color-text:#0F172A;--e-global-color-accent:#D4AF37;--e-global-color-4d04fa4:#475569;--e-global-color-59a2835:#0F172A;--e-global-color-ba73a34:#B3C7D6;--e-global-color-a780110:#C8D8E4;--e-global-color-558c003:#89A8C2;--e-global-color-e442396:#005EA5;--e-global-typography-primary-font-family:"Playfair Display";--e-global-typography-primary-font-size:16px;--e-global-typography-primary-font-weight:400;--e-global-typography-primary-line-height:1.5px;--e-global-typography-secondary-font-family:"Playfair Display";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;color:#0F172A;font-family:"Source Sans 3", Sans-serif;font-size:16px;}.elementor-kit-22 e-page-transition{background-color:#FFBC7D;}.elementor-kit-22 a{color:#005EA5;font-family:"Playfair Display", Sans-serif;}.elementor-kit-22 a:hover{color:var( --e-global-color-primary );}.elementor-kit-22 h1{font-family:"Playfair Display", Sans-serif;font-size:clamp(32px, 5vw, 56px);font-weight:700;line-height:1.1em;}.elementor-kit-22 h2{font-size:clamp(26px, 4vw, 40px);font-weight:700;line-height:1.2em;}.elementor-kit-22 h3{font-family:"Playfair Display", Sans-serif;font-size:clamp(20px, 3vw, 28px);font-weight:600;line-height:1.3em;}.elementor-kit-22 h4{font-family:"Playfair Display", Sans-serif;font-weight:600;line-height:1.4em;}.elementor-kit-22 h5{font-family:"Playfair Display", Sans-serif;font-weight:500;}.elementor-kit-22 h6{font-family:"Playfair Display", Sans-serif;font-weight:500;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ============================================================
   KT SERVICES — Custom CSS
   Paste into: Elementor → Site Settings → Custom CSS
   OR: Appearance → Customise → Additional CSS
   Designed by Accent Web Design, Galway
   ============================================================ */

/* ── Fonts ── */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700&family=Source+Sans+3:wght@400;500;700&display=swap');

/* ── Reset & base ── */
.elementor-kit-body,
.kt-footer, .kt-footer *,
.kt-hero-left, .kt-hero-left *,
.kt-hero-panel, .kt-hero-panel *,
.kt-topbar, .kt-topbar *,
.kt-mfhea, .kt-mfhea *,
.kt-search, .kt-search *,
.kt-curr-card, .kt-curr-card *,
.kt-tile, .kt-tile *,
.kt-exp-card, .kt-exp-card *,
.kt-news-card, .kt-news-card * {
  box-sizing: border-box;
}

/* Full width override — override theme 1500px default */
.elementor-section-wrap,
.e-con,
.e-con-inner {
  max-width: 100% !important;
}
.e-con.e-con--row > .e-con-inner {
  max-width: 100% !important;
  width: 100% !important;
}

/* ── Skip link (WCAG) ── */
.kt-skip {
  position: absolute;
  top: -80px;
  left: 0;
  background: #1B4F8A;
  color: #fff;
  padding: 10px 20px;
  font-weight: 700;
  font-family: 'DM Sans', sans-serif;
  font-size: 14px;
  z-index: 9999;
  transition: top 0.2s;
  text-decoration: none;
}
.kt-skip:focus { top: 0; }

/* Screen reader only */
.kt-sr-only {
  position: absolute; width: 1px; height: 1px;
  padding: 0; margin: -1px; overflow: hidden;
  clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}

/* Focus ring */
a:focus-visible, button:focus-visible, input:focus-visible {
  outline: 3px solid #D4AF37;
  outline-offset: 2px;
}

/* ── Top bar ── */
.kt-topbar {
  background: #1B4F8A;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  height: 38px;
  padding: 0 40px;
  width: 100%;
}
.kt-topbar a {
  color: rgba(255,255,255,0.72);
  font-family: 'DM Sans', sans-serif;
  font-size: 12px;
  padding: 0 14px;
  height: 38px;
  display: flex;
  align-items: center;
  border-right: 1px solid rgba(255,255,255,0.12);
  text-decoration: none;
  transition: color 0.2s;
}
.kt-topbar a:first-child { border-left: 1px solid rgba(255,255,255,0.12); }
.kt-topbar a:hover { color: #fff; }

/* ── MFHEA bar ── */
.kt-mfhea {
  background: #0F2032;
  border-top: 3px solid #F0A500;
  padding: 11px 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px 20px;
  width: 100%;
}
.kt-mfhea span {
  font-family: 'DM Sans', sans-serif;
  font-size: 12px;
  color: rgba(255,255,255,0.72);
}
.kt-mfhea strong { color: #fff; }
.kt-mfhea-div { color: rgba(255,255,255,0.25) !important; }
.kt-mfhea a {
  color: #F0A500;
  font-size: 12px;
  font-weight: 700;
  font-family: 'DM Sans', sans-serif;
  text-decoration: none;
}
.kt-mfhea a:hover { text-decoration: underline; }

/* ── Hero ── */
.kt-hero-left {
  font-family: 'DM Sans', sans-serif;
}
.kt-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.28);
  color: rgba(255,255,255,0.92);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 2px;
  margin-bottom: 22px;
}
.kt-badge::before {
  content: '';
  width: 8px; height: 8px;
  background: #F0A500;
  border-radius: 50%;
  flex-shrink: 0;
}
.kt-hero-h1 {
  font-family: 'DM Serif Display', Georgia, serif;
  font-size: clamp(32px, 5vw, 56px);
  color: #fff;
  line-height: 1.1;
  margin: 0 0 18px;
  font-weight: 400;
}
.kt-hero-h1 em { color: #FFD166; font-style: italic; }
.kt-hero-p {
  font-size: 16px;
  color: rgba(255,255,255,0.85);
  line-height: 1.75;
  max-width: 480px;
  margin-bottom: 32px;
}
.kt-hero-btns {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 0;
}
.kt-btn-gold {
  background: #F0A500;
  color: #fff;
  font-family: 'DM Sans', sans-serif;
  font-size: 14px;
  font-weight: 700;
  padding: 13px 28px;
  border-radius: 3px;
  text-decoration: none;
  display: inline-block;
  transition: background 0.2s;
  border: none;
  cursor: pointer;
}
.kt-btn-gold:hover { background: #D4920A; color: #fff; }
.kt-btn-ghost {
  background: transparent;
  color: #fff;
  font-family: 'DM Sans', sans-serif;
  font-size: 14px;
  font-weight: 700;
  padding: 12px 26px;
  border-radius: 3px;
  border: 2px solid rgba(255,255,255,0.42);
  text-decoration: none;
  display: inline-block;
  transition: border-color 0.2s, background 0.2s;
}
.kt-btn-ghost:hover {
  border-color: rgba(255,255,255,0.8);
  background: rgba(255,255,255,0.08);
  color: #fff;
}
.kt-btn-blue {
  background: #1A6DBF;
  color: #fff;
  font-family: 'DM Sans', sans-serif;
  font-size: 14px;
  font-weight: 700;
  padding: 13px 28px;
  border-radius: 3px;
  text-decoration: none;
  display: inline-block;
  transition: background 0.2s;
}
.kt-btn-blue:hover { background: #1B4F8A; color: #fff; }
.kt-hero-stats {
  display: flex;
  gap: 28px;
  margin-top: 44px;
  padding-top: 28px;
  border-top: 1px solid rgba(255,255,255,0.15);
  flex-wrap: wrap;
}
.kt-stat strong {
  display: block;
  font-family: 'DM Sans', sans-serif;
  font-size: clamp(22px, 3vw, 30px);
  font-weight: 700;
  color: #FFD166;
  line-height: 1;
  margin-bottom: 4px;
}
.kt-stat span {
  font-size: 11px;
  color: rgba(255,255,255,0.55);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-family: 'DM Sans', sans-serif;
}

/* Hero panel */
.kt-hero-panel {
  background: #1B4F8A;
  font-family: 'DM Sans', sans-serif;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.kt-panel-label {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.42);
  margin-bottom: 14px;
}
.kt-course-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 14px;
  background: rgba(255,255,255,0.06);
  border-left: 3px solid transparent;
  margin-bottom: 2px;
  gap: 10px;
  transition: background 0.2s, border-color 0.2s;
  cursor: pointer;
}
.kt-course-row:hover {
  background: rgba(255,255,255,0.13);
  border-left-color: #F0A500;
}
.kt-course-name {
  color: #C8DCF0;
  font-size: 13px;
  font-weight: 500;
}
.kt-course-tag {
  background: #F0A500;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  padding: 3px 9px;
  border-radius: 2px;
  white-space: nowrap;
  flex-shrink: 0;
}
.kt-panel-foot {
  padding: 14px 0 20px;
  margin-top: 6px;
  border-top: 1px solid rgba(255,255,255,0.1);
}
.kt-panel-foot a {
  font-size: 12px;
  color: #F0A500;
  font-weight: 700;
  text-decoration: none;
  font-family: 'DM Sans', sans-serif;
}

/* ── Search bar ── */
.kt-search {
  background: #fff;
  border-bottom: 1px solid #D0DEEC;
  padding: 0 40px;
  display: flex;
  align-items: center;
  height: 56px;
  gap: 12px;
  width: 100%;
}
.kt-search input {
  border: none;
  outline: none;
  font-family: 'DM Sans', sans-serif;
  font-size: 15px;
  color: #1A2A3A;
  flex: 1;
  background: transparent;
}
.kt-search input::placeholder { color: #A0B4C8; }
.kt-search button {
  background: #1A6DBF;
  color: #fff;
  border: none;
  padding: 8px 20px;
  font-family: 'DM Sans', sans-serif;
  font-size: 13px;
  font-weight: 700;
  border-radius: 3px;
  cursor: pointer;
  transition: background 0.2s;
  white-space: nowrap;
}
.kt-search button:hover { background: #1B4F8A; }

/* ── Eyebrow ── */
.kt-eyebrow {
  display: block;
  font-family: 'DM Sans', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: #1A6DBF;
  margin-bottom: 10px;
}
.kt-eyebrow-light { color: rgba(255,255,255,0.6) !important; }
.kt-text-link {
  font-family: 'DM Sans', sans-serif;
  font-size: 13px;
  color: #1A6DBF;
  font-weight: 700;
  text-decoration: none;
  display: inline-block;
  margin-top: 14px;
}
.kt-text-link:hover { text-decoration: underline; }

/* ── Curriculum cards ── */
.kt-curr-card { font-family: 'DM Sans', sans-serif; cursor: pointer; }
.kt-curr-img {
  height: 200px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
}
.kt-curr-body { padding: 0 4px; }
.kt-mqf-badge {
  display: inline-block;
  background: #F0A500;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  padding: 3px 10px;
  margin-bottom: 10px;
  letter-spacing: 0.5px;
}
.kt-curr-card h3 {
  font-size: 17px;
  font-weight: 700;
  color: #0F2032;
  margin-bottom: 8px;
  line-height: 1.3;
}
.kt-curr-card p {
  font-size: 14px;
  color: #4A6070;
  line-height: 1.7;
  margin-bottom: 10px;
}
.kt-curr-card a {
  font-size: 13px;
  color: #1A6DBF;
  font-weight: 700;
  text-decoration: none;
}
.kt-curr-card a:hover { text-decoration: underline; }

/* ── Stats banner ── */
.kt-stats-banner {
  text-align: center;
  padding: 56px 40px;
  width: 100%;
  font-family: 'DM Sans', sans-serif;
}
.kt-stats-headline {
  margin-bottom: 8px;
  line-height: 1.2;
}
.kt-big-num {
  font-family: 'DM Serif Display', Georgia, serif;
  font-size: clamp(38px, 6vw, 68px);
  color: #FFD166;
  font-weight: 400;
}
.kt-big-txt {
  font-family: 'DM Serif Display', Georgia, serif;
  font-size: clamp(20px, 3.5vw, 38px);
  color: #fff;
}
.kt-stats-sub {
  font-size: 12px;
  color: rgba(255,255,255,0.45);
  margin-top: 8px;
  margin-bottom: 0;
}
.kt-stats-row {
  display: flex;
  justify-content: center;
  gap: 48px;
  margin-top: 36px;
  flex-wrap: wrap;
}
.kt-stat-pill { text-align: center; font-family: 'DM Sans', sans-serif; }
.kt-stat-pill strong {
  display: block;
  font-size: clamp(26px, 3.5vw, 40px);
  font-weight: 700;
  color: #FFD166;
  line-height: 1;
  margin-bottom: 4px;
}
.kt-stat-pill span {
  font-size: 11px;
  color: rgba(255,255,255,0.5);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* ── Course tiles ── */
.kt-tile { font-family: 'DM Sans', sans-serif; overflow: hidden; cursor: pointer; }
.kt-tile-img {
  height: 240px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.kt-tile-bar { padding: 18px 22px; }
.kt-tile-level {
  font-size: 10px;
  color: rgba(255,255,255,0.55);
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 5px;
}
.kt-tile-title {
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 8px;
  line-height: 1.3;
}
.kt-tile-meta { font-size: 12px; color: rgba(255,255,255,0.6); margin: 0; }

/* ── Why / checks ── */
.kt-why-left, .kt-partners-right { font-family: 'DM Sans', sans-serif; }
.kt-why-h2 {
  font-size: clamp(22px, 3vw, 30px);
  font-weight: 700;
  color: #0F2032;
  margin-bottom: 14px;
  line-height: 1.2;
}
.kt-why-p { font-size: 15px; color: #4A6070; line-height: 1.75; margin-bottom: 20px; }
.kt-check-list { list-style: none; padding: 0; margin: 0; }
.kt-check-list li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-size: 14px;
  color: #4A6070;
  line-height: 1.65;
  margin-bottom: 13px;
}
.kt-tick {
  width: 20px; height: 20px; min-width: 20px;
  background: #1A6DBF;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 2px;
  flex-shrink: 0;
}
.kt-tick::after {
  content: '';
  display: block;
  width: 4px; height: 8px;
  border: 2px solid #fff;
  border-top: none; border-left: none;
  transform: rotate(45deg) translate(-1px,-2px);
}

/* Partner grid */
.kt-partner-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 8px;
}
.kt-partner-box {
  background: #F5F8FC;
  border: 1px solid #D0DEEC;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 80px;
  padding: 12px;
  font-family: 'DM Sans', sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: #1B4F8A;
  text-align: center;
  line-height: 1.4;
  transition: border-color 0.2s;
}
.kt-partner-box:hover { border-color: #1A6DBF; }
.kt-partner-highlight { border: 2px solid #F0A500; }

/* ── Explore cards ── */
.kt-exp-card {
  background: #fff;
  overflow: hidden;
  font-family: 'DM Sans', sans-serif;
  height: 100%;
}
.kt-exp-img {
  height: 150px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.kt-exp-body { padding: 20px; }
.kt-exp-body h3 { font-size: 15px; font-weight: 700; color: #0F2032; margin-bottom: 8px; }
.kt-exp-body p { font-size: 13px; color: #4A6070; line-height: 1.65; margin-bottom: 12px; }
.kt-exp-body a { font-size: 13px; color: #1A6DBF; font-weight: 700; text-decoration: none; }
.kt-exp-body a:hover { text-decoration: underline; }

/* ── News cards ── */
.kt-news-card {
  background: #fff;
  border: 0.5px solid #D0DEEC;
  overflow: hidden;
  font-family: 'DM Sans', sans-serif;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.kt-news-img {
  height: 160px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  flex-shrink: 0;
}
.kt-news-tag {
  position: absolute;
  bottom: 0; left: 0;
  background: #F0A500;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  padding: 4px 10px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.kt-news-body { padding: 16px; flex: 1; display: flex; flex-direction: column; }
.kt-news-cat {
  display: inline-block;
  font-size: 10px;
  font-weight: 700;
  color: #1A6DBF;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  margin-bottom: 8px;
}
.kt-news-card h3 {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
  color: #0F2032;
  margin-bottom: 8px;
}
.kt-news-card p { font-size: 13px; color: #4A6070; line-height: 1.65; flex: 1; }
.kt-news-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 14px;
  padding-top: 10px;
  border-top: 0.5px solid #D0DEEC;
}
.kt-news-foot time { font-size: 11px; color: #9AB0C4; }
.kt-news-foot a { font-size: 12px; color: #1A6DBF; font-weight: 700; text-decoration: none; }

/* ── Partner strip ── */
.kt-strip {
  background: #F5F8FC;
  border-top: 1px solid #D0DEEC;
  border-bottom: 1px solid #D0DEEC;
  padding: 18px 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
  width: 100%;
}
.kt-strip span {
  font-family: 'DM Sans', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
  color: #8AA8C4;
  padding: 5px 20px;
  border-right: 1px solid #D0DEEC;
}
.kt-strip span:last-child { border-right: none; }

/* ── Footer ── */
.kt-footer {
  background: #0F2032;
  padding: 56px 40px 24px;
  width: 100%;
  font-family: 'DM Sans', sans-serif;
}
.kt-footer-inner { max-width: 100%; }
.kt-footer-grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 48px;
  margin-bottom: 44px;
}
.kt-footer-brand {}
.kt-footer-logo {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
}
.kt-footer-logo span { font-size: 16px; font-weight: 700; color: #fff; }
.kt-footer-shield {
  width: 34px; height: 34px;
  background: #1B4F8A;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.kt-footer-brand > p {
  font-size: 13px;
  color: #4A6A88;
  line-height: 1.75;
  max-width: 280px;
  margin-bottom: 16px;
}
.kt-footer-a11y {
  font-size: 12px;
  color: #4A6A88;
  border-top: 1px solid #1A3A58;
  padding-top: 14px;
  margin-top: 14px;
  line-height: 1.7;
}
.kt-footer-a11y strong { color: #6A8AAA; }
.kt-footer-a11y a { color: #F0A500; text-decoration: none; }
.kt-footer-a11y a:hover { text-decoration: underline; }
.kt-footer-mfhea {
  font-size: 12px;
  color: #4A6A88;
  border-top: 1px solid #1A3A58;
  padding-top: 14px;
  margin-top: 14px;
  line-height: 1.8;
}
.kt-footer-mfhea strong { color: #8AAAC0; }
.kt-footer nav h4 {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #fff;
  margin-bottom: 16px;
}
.kt-footer nav a {
  display: block;
  font-size: 13px;
  color: #4A6A88;
  margin-bottom: 9px;
  text-decoration: none;
  transition: color 0.2s;
}
.kt-footer nav a:hover { color: #9BBCDA; }
.kt-footer-bottom {
  border-top: 1px solid #1A3A58;
  padding-top: 20px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.kt-footer-bottom span { font-size: 12px; color: #2A4A68; }
.kt-footer-bottom strong { color: #3A5A78; }

/* ═══════════════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════════════ */

/* 1280px — tighten padding */
@media (max-width: 1280px) {
  .kt-topbar, .kt-search, .kt-stats-banner,
  .kt-strip, .kt-footer { padding-left: 32px; padding-right: 32px; }
  .kt-mfhea { padding-left: 32px; padding-right: 32px; }
  .kt-footer-grid { gap: 32px; }
}

/* 1024px — tablet */
@media (max-width: 1024px) {
  .kt-topbar { padding: 0 24px; }
  .kt-mfhea { padding: 10px 24px; gap: 4px 14px; }
  .kt-search { padding: 0 24px; }
  .kt-strip { padding: 16px 24px; }
  .kt-footer { padding: 44px 24px 20px; }
  .kt-footer-grid { grid-template-columns: 1fr 1fr; gap: 28px; }
  .kt-stats-banner { padding: 48px 24px; }
  .kt-stats-row { gap: 28px; }
  /* Hero stacks vertically */
  .kt-hero-left { padding: 48px 24px 40px !important; }
  .kt-hero-panel { width: 100% !important; border-radius: 0; padding: 24px 24px 0 !important; }
  .e-con[style*="flex-direction"] { flex-wrap: wrap !important; }
}

/* 768px — large mobile */
@media (max-width: 768px) {
  .kt-topbar { display: none; }
  .kt-mfhea { font-size: 11px; gap: 4px 10px; }
  .kt-mfhea-div { display: none; }
  .kt-hero-stats { gap: 16px; }
  .kt-hero-btns { flex-direction: column; align-items: flex-start; }
  .kt-btn-gold, .kt-btn-ghost { width: 100%; text-align: center; }
  .kt-footer-grid { grid-template-columns: 1fr; gap: 24px; }
  .kt-partner-grid { grid-template-columns: 1fr 1fr; }
  .kt-stats-row { gap: 18px; }
  .kt-strip span { padding: 5px 12px; font-size: 10px; }
  .kt-tile-img { height: 200px; }
  .kt-curr-img { height: 180px; }
}

/* 480px — mobile */
@media (max-width: 480px) {
  .kt-mfhea { display: none; }
  .kt-search { padding: 0 16px; }
  .kt-search button { display: none; }
  .kt-stats-banner { padding: 40px 16px; }
  .kt-footer { padding: 36px 16px 20px; }
  .kt-footer-bottom { flex-direction: column; align-items: flex-start; }
  .kt-hero-h1 { font-size: clamp(28px, 8vw, 38px); }
  .kt-strip span { padding: 5px 8px; font-size: 10px; }
}

/* ============================================
   OLD CODE — KT Services v1 — DO NOT EDIT
   Keep for reference while rebuilding
   ============================================ */

/*... all your existing CSS stays here untouched ... */


/* ============================================
   KT Services v2 — New Build
   Palette One + Playfair Display / Source Sans 3
   ============================================ */

:root {
  --primary: #003A70;
  --secondary: #005EA5;
  --accent: #D4AF37;
  --alt-bg: #F5F2EA;
  --surface: #FFFFFF;
  --text: #0F172A;
  --muted: #475569;
  --border: #CBD5E1;
}

h1, h2 {
  font-weight: 700;
}

h3, h4 {
  font-weight: 600;
}

h5, h6 {
  font-weight: 500;
}

/*... new rules added here as you build ... */

a:focus-visible, button:focus-visible, input:focus-visible {
  outline: 3px solid #D4AF37;
  outline-offset: 2px;
}

.hero-course-name,
.hero-course-badge {
  display: flex;
  align-items: center;
  height: 100%;
  margin: 0;
  padding: 0;
}

.hero-course-name p,
.hero-course-badge p {
  margin: 0;
  line-height: 1;
}

.hero-course-badge .elementor-widget-container {
  display: flex;
  align-items: center;
  height: 100%;
}

.hero-course-badge p {
  margin: 0;
  line-height: 1;
}

.hero-panel-label .elementor-widget-container {
  display: flex;
  align-items: center;
}

.hero-panel-label p {
  margin: 0;
  line-height: 1;
}

.hero-container {
  min-height: auto !important;
  height: auto !important;
}/* End custom CSS */