/* UKGLTD 6.9.9: scoped homepage improvements and an in-flow consent notice. */
.hero.ukg-marketing-hero { padding-block: 38px; }
.ukg-marketing-hero .hero-master-panel { min-height: 0; grid-template-columns: minmax(0,1.65fr) minmax(240px,.85fr); gap: 32px; }
.ukg-marketing-hero .hero-content-col { min-width: 0; }
.ukg-marketing-hero .hero-slides-stack { min-height: 0; }
.ukg-marketing-hero .hero-slide h1,
.ukg-marketing-hero .ukg-promo-heading { font-size: clamp(30px,3.5vw,49px); line-height: 1.18; letter-spacing: -.025em; max-width: 23ch; overflow-wrap: break-word; margin-block: 14px 18px; }
html[dir="rtl"] .ukg-marketing-hero .hero-slide h1,
html[dir="rtl"] .ukg-marketing-hero .ukg-promo-heading { letter-spacing: 0; line-height: 1.5; max-width: 26ch; }
.ukg-marketing-hero .hero-slide p { font-size: 17px; line-height: 1.75; max-width: 62ch; }
.ukg-marketing-hero .hero-brand-box { min-height: 0; padding: 24px; }
.ukg-marketing-hero .hero-brand-box img { max-height: 180px; object-fit: contain; }
.ukg-marketing-hero .hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.ukg-marketing-hero .hero-actions .btn { min-height: 46px; white-space: normal; text-align: center; }
.ukg-marketing-routes { padding-block: 28px 38px; background: #f5f7fb; color: #19224c; }
.ukg-marketing-routes h2 { font-size: 26px; line-height: 1.5; margin: 0 0 18px; }
.ukg-marketing-route-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.ukg-marketing-route-card { display: flex; flex-direction: column; align-items: start; min-width: 0; padding: 24px; background: #fff; border: 1px solid #dfe5ef; border-radius: 16px; }
.ukg-marketing-route-card h3 { font-size: 20px; line-height: 1.5; margin: 0 0 10px; }
.ukg-marketing-route-card p { color: #475569; line-height: 1.8; margin: 0 0 18px; }
.ukg-marketing-route-card a { margin-top: auto; font-weight: 700; color: #203d83; text-decoration: underline; text-underline-offset: 4px; padding-block: 8px; }
.ukg-marketing-note { font-size: 13px; line-height: 1.8; color: #475569; margin: 18px 0 0; }
#ukgCookieConsent.cookie-consent { position: relative !important; inset: auto !important; transform: none !important; width: 100% !important; max-width: none !important; margin: 0 !important; box-sizing: border-box; border-radius: 0; padding: 14px max(20px,calc((100vw - 1180px)/2)); box-shadow: none; border: 0; border-bottom: 1px solid #dfe5ef; background: #f5f7fb; color: #19224c; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 12px 24px; align-items: center; z-index: auto; }
#ukgCookieConsent[hidden] { display: none !important; }
#ukgCookieConsent p { font-size: 13px; line-height: 1.6; margin: 4px 0; }
#ukgCookieConsent a { color: #203d83; text-decoration: underline; }
#ukgCookieConsent .cookie-actions { display: flex; flex-wrap: wrap; gap: 10px; }
#ukgCookieConsent .cookie-actions .btn { background: #fff; color: #19224c; border: 1px solid #9ba9c0; min-height: 44px; white-space: normal; }
.ukg-marketing-routes a:focus-visible,
.ukg-marketing-hero a:focus-visible,
#ukgCookieConsent :focus-visible { outline: 3px solid #315caf; outline-offset: 4px; }
@media(max-width:900px) {
 .ukg-marketing-hero .hero-master-panel { grid-template-columns: minmax(0,1fr); gap: 24px; }
 .ukg-marketing-hero .hero-brand-col { display: none; }
 .ukg-marketing-hero .hero-slide h1,.ukg-marketing-hero .ukg-promo-heading { font-size: clamp(29px,5.5vw,44px); }
 #ukgCookieConsent.cookie-consent { grid-template-columns: minmax(0,1fr); }
}
@media(max-width:650px) {
 .hero.ukg-marketing-hero { padding-block: 24px; }
 .ukg-marketing-hero .hero-actions { flex-direction: column; align-items: stretch; }
 .ukg-marketing-hero .hero-slide p { font-size: 16px; }
 .ukg-marketing-route-grid { grid-template-columns: minmax(0,1fr); }
 .ukg-marketing-route-card { padding: 20px; }
 #ukgCookieConsent .cookie-actions .btn { flex: 1 1 125px; padding: 10px 12px; }
}
@media(prefers-reduced-motion:reduce) {
 .ukg-marketing-hero *, .ukg-marketing-hero *::before, .ukg-marketing-hero *::after { animation: none !important; transition: none !important; }
}


/* UKGLTD 6.9.12 — restore legal company identity in the homepage hero on mobile.
   This stylesheet is loaded after app.css and replaces marketing-v699.css. */
@media (max-width: 900px) {
  .hero.ukg-marketing-hero .hero-brand-col {
    display: flex !important;
    order: -1;
    min-width: 0;
    width: 100%;
    align-items: stretch;
    justify-content: stretch;
  }
  .hero.ukg-marketing-hero .hero-brand-box {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 14px;
    width: 100%;
    height: auto;
    min-height: 0;
    padding: 0 0 16px;
    border-inline-start: 0;
    border-top: 0;
    border-bottom: 1px solid rgba(255,255,255,.24);
    text-align: start;
  }
  .hero.ukg-marketing-hero .hero-brand-box img {
    display: block;
    width: 70px;
    max-width: 70px;
    max-height: 72px;
    min-width: 0;
    object-fit: contain;
    flex: 0 0 70px;
  }
  .hero.ukg-marketing-hero .hero-logo-placeholder {
    width: 70px;
    min-height: 70px;
    padding: 7px;
    border-radius: 12px;
    flex: 0 0 70px;
  }
  .hero.ukg-marketing-hero .hero-logo-placeholder small { display: none; }
  .hero.ukg-marketing-hero .hero-logo-placeholder strong { font-size: 13px; }
  .hero.ukg-marketing-hero .hero-brand-copy {
    flex: 1 1 auto;
    min-width: 0;
  }
  .hero.ukg-marketing-hero .hero-brand-copy strong {
    font-size: clamp(16px, 3.6vw, 22px);
    line-height: 1.4;
    letter-spacing: 0;
    overflow-wrap: anywhere;
  }
  .hero.ukg-marketing-hero .hero-brand-copy p {
    margin: 3px 0 0;
    font-size: 12px !important;
    line-height: 1.6 !important;
    max-width: none;
    overflow-wrap: anywhere;
  }
}
@media (max-width: 680px) {
  .home-sections .trust-strip { display: block !important; }
  .home-sections .trust-strip .trust-grid.trust-grid-five {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  }
  .home-sections .trust-strip .trust-item {
    min-width: 0;
    padding: 13px 10px !important;
  }
  .home-sections .trust-strip .trust-item strong { font-size: 22px; }
  .home-sections .trust-strip .trust-item span { font-size: 12px; }
}

/* UKGLTD 6.9.13 — audience-first homepage, preserving 6.9.12 brand-on-mobile fix. */
.hero.ukg-marketing-hero .hero-slide .eyebrow { font-size: clamp(12px, 1.1vw, 14px); font-weight: 750; line-height: 1.6; letter-spacing: .01em; }
.hero.ukg-marketing-hero .hero-slide h1 { max-width: 23ch; text-wrap: balance; }
.hero.ukg-marketing-hero .hero-slide p { max-width: 65ch; }
.ukg-hero-quick-facts { list-style: none; display: flex; flex-wrap: wrap; gap: 8px 10px; padding: 0; margin: 18px 0 20px; }
.ukg-hero-quick-facts li { display: inline-flex; align-items: baseline; gap: 7px; max-width: 100%; padding: 8px 11px; border-radius: 100px; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.27); color: #fff; font-size: 12px; font-weight: 650; line-height: 1.5; overflow-wrap: anywhere; }
.ukg-hero-quick-facts li::before { content: "✓"; color: #c5efd4; font-weight: 800; }
.ukg-marketing-routes .ukg-marketing-note a { color: #203d83; text-decoration: underline; text-underline-offset: 3px; }
.ukg-marketing-route-card { transition: box-shadow .18s ease, transform .18s ease; }
.ukg-marketing-route-card a { overflow-wrap: anywhere; }
@media (hover:hover) and (prefers-reduced-motion:no-preference) { .ukg-marketing-route-card:hover { transform: translateY(-3px); box-shadow: 0 12px 30px rgba(13,29,63,.08); } }
@media(max-width:900px) {
  .hero.ukg-marketing-hero .hero-brand-col { display: flex !important; }
  .hero.ukg-marketing-hero .hero-slide h1 { max-width: 28ch; }
}
@media(max-width:650px) {
  .ukg-hero-quick-facts { gap: 7px; margin: 14px 0; }
  .ukg-hero-quick-facts li { font-size: 11px; padding: 7px 10px; }
  .ukg-marketing-hero .hero-slide h1 { font-size: clamp(28px,7.5vw,37px); }
  html[dir="rtl"] .ukg-marketing-hero .hero-slide h1 { line-height: 1.45; }
  .ukg-marketing-route-card h3 { font-size: 19px; }
}
@media(prefers-reduced-motion:reduce){ .ukg-marketing-route-card { transition: none; } }


/* UKGLTD 6.9.14 — mobile contrast, concise hero, photographs and accessible cards.
   Scoped to homepage so certification forms, candidate dashboard and admin are unchanged. */
.hero.ukg-marketing-hero { padding-block: clamp(20px,3vw,44px) !important; }
.hero.ukg-marketing-hero .hero-master-panel {
  grid-template-columns: minmax(0,1.35fr) minmax(240px,.75fr);
  align-items: center;
  gap: clamp(14px,2.4vw,30px);
  background: linear-gradient(130deg,rgba(12,33,61,.93),rgba(7,23,45,.86)) !important;
  border: 1px solid rgba(214,229,249,.25) !important;
  padding: clamp(16px,2.9vw,32px) !important;
  backdrop-filter: blur(7px) !important;
}
.hero.ukg-marketing-hero .hero-slide .eyebrow { color:#F5CF78 !important; margin-bottom: 8px !important; font-size:12px; text-shadow:none; }
.hero.ukg-marketing-hero .hero-slide h1 { font-size: clamp(30px,3.5vw,47px); line-height:1.22; color:#fff !important; max-width:21ch; text-shadow:none !important; margin: 10px 0 10px; }
html[dir="rtl"] .hero.ukg-marketing-hero .hero-slide h1 { line-height:1.36; letter-spacing:0; max-width:25ch; }
.hero.ukg-marketing-hero .hero-slide p { font-size:clamp(14px,1.22vw,16px); line-height:1.75; color:#F0F5FC!important; max-width:54ch; text-shadow:none !important; margin:0; }
/* Prevent global badge and button rules from producing low-contrast blue-on-grey text. */
.hero.ukg-marketing-hero .ukg-hero-quick-facts { gap:9px; margin:16px 0 16px; padding:0; list-style:none; }
.hero.ukg-marketing-hero .ukg-hero-quick-facts li {
  background:#1A3658 !important; color:#FFFFFF !important; border:1px solid #7890AE !important;
  padding:9px 12px; border-radius:10px; font-weight:700;
  font-size:12px; line-height:1.55; opacity:1 !important; box-shadow:none !important;
}
.hero.ukg-marketing-hero .ukg-hero-quick-facts li::before { color:#91E7C6 !important; font-size:15px; }
.hero.ukg-marketing-hero .hero-actions { margin-top:16px; gap:10px; }
.hero.ukg-marketing-hero .hero-actions .btn {
  border-radius:12px; min-height:48px; font-size:14px; line-height:1.5; font-weight:800;
  padding:11px 17px; text-decoration:none !important; opacity:1 !important;
}
.hero.ukg-marketing-hero .hero-actions .btn.primary,
.hero.ukg-marketing-hero .hero-actions .btn.primary:visited {
  color:#142440 !important; background:#F6CB54 !important; border:1px solid #F6CB54 !important;
  box-shadow:0 8px 18px rgba(6,13,28,.2); text-shadow:none !important;
}
.hero.ukg-marketing-hero .hero-actions .btn.ghost,
.hero.ukg-marketing-hero .hero-actions .btn.ghost:visited {
  color:#FFFFFF !important; background:rgba(10,30,55,.83) !important;
  border:1.5px solid #D6E5F9 !important; text-shadow:none !important;
}
.hero.ukg-marketing-hero .hero-actions .btn:hover { filter:brightness(1.07); }
.hero.ukg-marketing-hero .hero-actions .btn:focus-visible,
.ukg-marketing-routes .ukg-marketing-route-card a:focus-visible { outline:3px solid #F6CB54 !important; outline-offset:3px; }
.hero.ukg-marketing-hero .hero-brand-col { display:flex !important; flex-direction:column; gap:15px; align-items:stretch; justify-content:center; min-width:0; }
.hero.ukg-marketing-hero .hero-brand-box { height:auto !important; min-height:0; gap:12px; padding:0 0 12px; display:flex; flex-direction:row; align-items:center; justify-content:flex-start; text-align:start; border:0; border-bottom:1px solid rgba(255,255,255,.25); }
.hero.ukg-marketing-hero .hero-brand-box img { width:54px; max-width:54px; height:auto; max-height:62px; object-fit:contain; flex:none; }
.hero.ukg-marketing-hero .hero-brand-copy { min-width:0; }
.hero.ukg-marketing-hero .hero-brand-copy strong { font-size:clamp(14px,1.5vw,19px); line-height:1.35; letter-spacing:0; overflow-wrap:anywhere; color:#fff; }
.hero.ukg-marketing-hero .hero-brand-copy p { color:#E4EDFA !important; font-size:11px !important; line-height:1.55 !important; margin:4px 0 0 !important; text-shadow:none!important; }
.hero.ukg-marketing-hero .ukg-hero-photo { display:block; width:100%; max-width:100%; margin:0; border-radius:18px; overflow:hidden; border:1px solid rgba(255,255,255,.21); box-shadow:0 14px 34px rgba(3,11,26,.22); }
.hero.ukg-marketing-hero .ukg-hero-photo img { display:block; width:100%; height:clamp(175px,22vw,280px); object-fit:cover; object-position:center 35%; }
.ukg-marketing-routes { padding-block:36px 42px; }
.ukg-marketing-routes h2 { color:#122847; }
.ukg-marketing-route-grid { align-items:stretch; }
.ukg-marketing-route-card { padding:0; overflow:hidden; align-items:stretch; background:#fff; border-radius:18px; box-shadow:0 9px 24px rgba(18,36,65,.055); }
.ukg-marketing-route-media { overflow:hidden; background:#D9E8F4; width:100%; aspect-ratio:2.55; }
.ukg-marketing-route-media img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.ukg-marketing-route-body { padding:20px 20px 22px; display:flex; flex-direction:column; flex:1; align-items:flex-start; }
.ukg-marketing-route-card h3 { color:#13294B; font-size:clamp(18px,1.6vw,21px); line-height:1.4; }
.ukg-marketing-route-card p { color:#394A60; line-height:1.65; font-size:14px; }
.ukg-marketing-route-card a { display:inline-flex; margin-top:auto; color:#143D79; align-items:center; font-weight:800; min-height:44px; }
html[dir="rtl"] .ukg-marketing-route-card, html[dir="rtl"] .ukg-marketing-route-body { text-align:right; }
@media(max-width:1160px) {
  .hero.ukg-marketing-hero .hero-master-panel { grid-template-columns:minmax(0,1fr) minmax(220px,.7fr); }
}
@media(max-width:900px) {
  .hero.ukg-marketing-hero .hero-master-panel { display:flex !important; flex-direction:column; align-items:stretch; gap:14px; }
  .hero.ukg-marketing-hero .hero-brand-col { order:-1; margin:0 !important; width:100%; }
  .hero.ukg-marketing-hero .hero-content-col { order:0; min-width:0; }
  .hero.ukg-marketing-hero .hero-brand-box { padding-bottom:12px; border-bottom:1px solid rgba(255,255,255,.26); }
  .hero.ukg-marketing-hero .ukg-hero-photo { display:none; }
  .hero.ukg-marketing-hero .hero-brand-box img { width:44px; max-width:44px; max-height:48px; }
  .hero.ukg-marketing-hero .hero-brand-copy strong { font-size:14px; }
  .hero.ukg-marketing-hero .hero-brand-copy p { font-size:10.5px !important; }
  .hero.ukg-marketing-hero .hero-slide h1 { font-size:clamp(26px,6vw,37px); margin:10px 0; }
  html[dir="rtl"] .hero.ukg-marketing-hero .hero-slide h1 { font-size:clamp(27px,6.3vw,37px); line-height:1.35; }
  .hero.ukg-marketing-hero .hero-slide p { font-size:14px !important; line-height:1.65 !important; }
  .ukg-marketing-route-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:650px) {
  .hero.ukg-marketing-hero { padding:16px 0 18px !important; }
  .hero.ukg-marketing-hero .hero-master-panel { padding:17px 16px !important; border-radius:18px; gap:9px; }
  .hero.ukg-marketing-hero .hero-slide .eyebrow { font-size:11px; }
  .hero.ukg-marketing-hero .hero-slide h1 { font-size:clamp(26px,7vw,31px); line-height:1.26; }
  html[dir="rtl"] .hero.ukg-marketing-hero .hero-slide h1 { font-size:clamp(27px,7.4vw,33px); line-height:1.36; }
  .hero.ukg-marketing-hero .ukg-hero-quick-facts { margin:11px 0; display:grid; grid-template-columns:minmax(0,1fr); gap:7px; }
  .hero.ukg-marketing-hero .ukg-hero-quick-facts li { font-size:12px; width:100%; min-width:0; border-radius:9px; padding:8px 11px; }
  .hero.ukg-marketing-hero .hero-actions { gap:8px; }
  .hero.ukg-marketing-hero .hero-actions .btn { width:100%; min-height:46px; font-size:13.5px; }
  .ukg-marketing-routes { padding-block:26px 30px; }
  .ukg-marketing-routes h2 { font-size:23px; line-height:1.35; }
  .ukg-marketing-route-grid { grid-template-columns:minmax(0,1fr); gap:14px; }
  .ukg-marketing-route-media { aspect-ratio:2.65; }
  .ukg-marketing-route-body { padding:17px 18px 18px; }
}
@media (prefers-reduced-motion:reduce) {
  .ukg-marketing-route-card { transition:none !important; }
}


/* UKGLTD 6.9.15 — targeted visual refinements, mobile-first and trilingual. */
.hero.ukg-marketing-hero .hero-actions .btn:focus-visible,
.ukg-marketing-route-card a:focus-visible { outline:3px solid #FFDB78!important; outline-offset:3px; }
.hero.ukg-marketing-hero .ukg-hero-quick-facts li,
.hero.ukg-marketing-hero .ukg-hero-quick-facts li * { color:#FFFFFF!important; opacity:1!important; }
.hero.ukg-marketing-hero .ukg-hero-quick-facts li::before { color:#B5F3D4!important; }
.hero.ukg-marketing-hero .ukg-hero-quick-facts { display:flex; flex-wrap:wrap; }
.hero.ukg-marketing-hero .ukg-hero-quick-facts li { flex:0 1 auto; }
@media (max-width:900px) {
 .hero.ukg-marketing-hero .hero-brand-col { position:relative; isolation:isolate; }
 .hero.ukg-marketing-hero .ukg-hero-photo { display:block!important; border:0!important; box-shadow:none!important;
   width:100%; max-width:100%; height:105px; overflow:hidden; margin-top:0; border-radius:11px; }
 .hero.ukg-marketing-hero .ukg-hero-photo img { display:block;width:100%;height:100%;object-fit:cover;object-position:center 38%; }
 .hero.ukg-marketing-hero .hero-master-panel { gap:10px!important; }
}
@media (max-width:650px) {
 .hero.ukg-marketing-hero .ukg-hero-photo { height:85px; }
 .hero.ukg-marketing-hero .hero-brand-box { padding-bottom:8px!important; }
 .hero.ukg-marketing-hero .ukg-hero-quick-facts { display:flex!important; flex-wrap:wrap!important; gap:6px!important; margin:10px 0!important; }
 .hero.ukg-marketing-hero .ukg-hero-quick-facts li { width:auto!important; flex:1 1 42%; min-width:0; padding:7px 9px!important; font-size:11px!important; line-height:1.4!important; }
 html[dir="rtl"] .hero.ukg-marketing-hero .hero-slide h1 { font-size:clamp(25px,7vw,31px)!important;line-height:1.38!important; }
 .hero.ukg-marketing-hero .hero-slide p { font-size:13.5px!important;line-height:1.7!important; }
 .hero.ukg-marketing-hero .hero-actions { margin-top:10px!important; }
 .hero.ukg-marketing-hero .hero-actions .btn { min-height:48px!important; }
}

/* UKGLTD 6.9.16 — consistent British corporate visuals and accessible CTA contrast. */
.hero.ukg-marketing-hero .hero-slide .eyebrow,
.hero.ukg-marketing-hero .hero-slide h1,
.hero.ukg-marketing-hero .hero-slide p {opacity:1!important; -webkit-text-fill-color:currentColor!important;}
.hero.ukg-marketing-hero .ukg-hero-quick-facts li,
.hero.ukg-marketing-hero .ukg-hero-quick-facts li * {color:#FFFFFF!important;-webkit-text-fill-color:#FFFFFF!important;opacity:1!important;text-shadow:none!important;}
.hero.ukg-marketing-hero .hero-actions .btn.primary,
.hero.ukg-marketing-hero .hero-actions .btn.primary:visited {background:#F6C951!important;color:#142540!important;-webkit-text-fill-color:#142540!important;}
.hero.ukg-marketing-hero .hero-actions .btn.ghost,
.hero.ukg-marketing-hero .hero-actions .btn.ghost:visited {color:#fff!important;-webkit-text-fill-color:#fff!important;}
/* Keep photograph recognisable in narrow mobile strip and prevent unexpected stretching */
@media(max-width:900px){.hero.ukg-marketing-hero .ukg-hero-photo img {object-position:50% 28%!important;}}
@media(max-width:650px){.hero.ukg-marketing-hero .ukg-hero-photo {height:110px!important;}.hero.ukg-marketing-hero .ukg-hero-photo img{object-position:50% 22%!important;}}
