/* Japan Career Resource Centre — live design port */
:root {
      /* Colors — Bhrighu brand extended with editorial neutrals */
      --color-primary: #2356A5;
      --color-primary-hover: #1B4380;
      --color-secondary: #0F2A4F;
      --color-accent: #FF794A;
      --color-accent-soft: #FFE4D6;
      --color-background: #FBFAF7;
      --color-surface: #FFFFFF;
      --color-surface-2: #F4F2EC;
      --color-surface-3: #ECE9E0;
      --color-text: #0F1B2D;
      --color-text-muted: #5A6577;
      --color-text-soft: #8A92A2;
      --color-border: #E3E0D6;
      --color-border-soft: #EEEBE2;
      --color-success: #1F7A4D;

      /* Typography — match homepage (Playfair Display + Inter + Poppins) */
      --font-heading: 'Playfair Display', Georgia, serif;
      --font-body: 'Inter', system-ui, -apple-system, sans-serif;
      --font-mono: 'Inter', ui-monospace, monospace;

      /* Spacing */
      --spacing-section: 6rem;
      --spacing-section-sm: 4rem;
      --container-max-width: 1200px;
      --container-padding: 1.5rem;
    }

    html { scroll-behavior: smooth; }
    body { font-feature-settings: "ss01", "cv11"; -webkit-font-smoothing: antialiased; }

    /* Selection */
    ::selection { background: #2356A5; color: #fff; }

    /* Focus ring */
    *:focus-visible { outline: 2px solid #2356A5; outline-offset: 2px; border-radius: 4px; }

/* Isolate page body from Bootstrap reboot */
#glc {
  font-family: var(--font-body);
  color: var(--color-text);
  background: var(--color-background);
  -webkit-font-smoothing: antialiased;
  font-feature-settings: "ss01", "cv11";
}
#glc *,
#glc *::before,
#glc *::after {
  box-sizing: border-box;
}
#glc h1,
#glc h2,
#glc h3,
#glc h4,
#glc h5,
#glc h6 {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  margin: 0;
}
#glc p,
#glc figure,
#glc blockquote,
#glc dl,
#glc dd {
  margin: 0;
}
#glc ol,
#glc ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
#glc a {
  color: inherit;
  text-decoration: inherit;
}
#glc img,
#glc video {
  display: block;
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

#glc .glc-hero-video-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #0F2A4F;
}

#glc .glc-hero-video-wrap iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}

#glc #intro {
  border-top: 1px solid rgba(15, 42, 79, 0.08);
}

/* ---- As Featured In trust banner ---- */
#glc .glc-featured {
  background: var(--color-surface-2);
  border-top: 1px solid var(--color-border-soft);
  border-bottom: 1px solid var(--color-border-soft);
}
#glc .glc-featured-inner {
  max-width: var(--container-max-width);
  margin: 0 auto;
  padding: 2.25rem var(--container-padding);
}
#glc .glc-featured-heading {
  margin: 0 0 1.25rem;
  text-align: center;
  font-family: var(--font-body);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-text-muted);
}
#glc .glc-featured-logos {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
#glc .glc-featured-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 5.5rem;
  height: 5.5rem;
  padding: 0.75rem 1rem;
  background: var(--color-surface);
  border: 1px solid var(--color-border-soft);
  border-radius: 1rem;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
#glc .glc-featured-logo:hover {
  border-color: var(--color-border);
  box-shadow: 0 8px 20px rgba(15, 42, 79, 0.06);
}
#glc .glc-featured-logo img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 3.25rem;
  object-fit: contain;
}
#glc .glc-featured-logo--dark {
  background: #111111;
  border-color: #111111;
}
#glc .glc-featured-logo--dark:hover {
  border-color: #111111;
}
#glc .glc-featured-logo--blue {
  background: #5489C6;
  border-color: #5489C6;
}
#glc .glc-featured-logo--blue:hover {
  border-color: #5489C6;
}
@media (min-width: 768px) {
  #glc .glc-featured-inner {
    padding: 2.75rem var(--container-padding);
  }
  #glc .glc-featured-heading {
    margin-bottom: 1.5rem;
  }
  #glc .glc-featured-logos {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
  }
  #glc .glc-featured-logo {
    min-height: 6rem;
    height: 6rem;
    padding: 1rem 1.25rem;
  }
  #glc .glc-featured-logo img {
    max-height: 3.5rem;
  }
}
@media (max-width: 767px) {
  #intro {
    padding-top: 40px;
  }
}


@media (prefers-reduced-motion: reduce) {
  #glc .glc-featured-logo {
    transition: none;
  }
}
#glc svg {
  display: block;
  vertical-align: middle;
  flex-shrink: 0;
}
#glc button,
#glc input,
#glc optgroup,
#glc select,
#glc textarea {
  font: inherit;
  color: inherit;
  letter-spacing: inherit;
  margin: 0;
  padding: 0;
  line-height: inherit;
}
#glc button,
#glc input:where([type="button"]),
#glc input:where([type="reset"]),
#glc input:where([type="submit"]) {
  -webkit-appearance: button;
  background-color: transparent;
  background-image: none;
}
#glc button {
  cursor: pointer;
  text-transform: none;
}
#glc table {
  border-collapse: collapse;
  border-color: inherit;
  text-indent: 0;
}
#glc input::placeholder,
#glc textarea::placeholder {
  color: var(--color-text-soft);
  opacity: 1;
}

#glc .absolute{position:absolute !important}#glc .relative{position:relative !important}#glc .sticky{position:sticky !important}#glc .inset-0{inset:0 !important}#glc .-bottom-32{bottom:-8rem !important}#glc .-left-2{left:-.5rem !important}#glc .-left-32{left:-8rem !important}#glc .-right-32{right:-8rem !important}#glc .-top-32{top:-8rem !important}#glc .-top-6{top:-1.5rem !important}#glc .bottom-3{bottom:.75rem !important}#glc .left-\[27px\]{left:27px !important}#glc .top-0{top:0 !important}#glc .top-16{top:4rem !important}#glc .top-3{top:.75rem !important}#glc .z-10{z-index:10 !important}#glc .z-30{z-index:30 !important}#glc .z-40{z-index:40 !important}#glc .-mx-2{margin-left:-.5rem !important;margin-right:-.5rem !important}#glc .mx-auto{margin-left:auto !important;margin-right:auto !important}#glc .mb-1{margin-bottom:.25rem !important}#glc .mb-1\.5{margin-bottom:.375rem !important}#glc .mb-12{margin-bottom:3rem !important}#glc .mb-14{margin-bottom:3.5rem !important}#glc .mb-2{margin-bottom:.5rem !important}#glc .mb-3{margin-bottom:.75rem !important}#glc .mb-4{margin-bottom:1rem !important}#glc .mb-5{margin-bottom:1.25rem !important}#glc .mb-8{margin-bottom:2rem !important}#glc .mt-0\.5{margin-top:.125rem !important}#glc .mt-1{margin-top:.25rem !important}#glc .mt-1\.5{margin-top:.375rem !important}#glc .mt-10{margin-top:2.5rem !important}#glc .mt-12{margin-top:3rem !important}#glc .mt-14{margin-top:3.5rem !important}#glc .mt-2{margin-top:.5rem !important}#glc .mt-2\.5{margin-top:.625rem !important}#glc .mt-3{margin-top:.75rem !important}#glc .mt-5{margin-top:1.25rem !important}#glc .mt-6{margin-top:1.5rem !important}#glc .mt-7{margin-top:1.75rem !important}#glc .mt-8{margin-top:2rem !important}#glc .block{display:block !important}#glc .flex{display:flex !important}#glc .inline-flex{display:inline-flex !important}#glc .table{display:table !important}#glc .grid{display:grid !important}#glc .contents{display:contents !important}#glc .hidden{display:none !important}#glc .aspect-\[4\/5\]{aspect-ratio:4/5 !important}#glc .h-1\.5{height:.375rem !important}#glc .h-10{height:2.5rem !important}#glc .h-11{height:2.75rem !important}#glc .h-14{height:3.5rem !important}#glc .h-16{height:4rem !important}#glc .h-3\.5{height:.875rem !important}#glc .h-4{height:1rem !important}#glc .h-5{height:1.25rem !important}#glc .h-6{height:1.5rem !important}#glc .h-9{height:2.25rem !important}#glc .h-96{height:24rem !important}#glc .h-full{height:100% !important}#glc .w-1\.5{width:.375rem !important}#glc .w-10{width:2.5rem !important}#glc .w-11{width:2.75rem !important}#glc .w-14{width:3.5rem !important}#glc .w-16{width:4rem !important}#glc .w-3\.5{width:.875rem !important}#glc .w-4{width:1rem !important}#glc .w-5{width:1.25rem !important}#glc .w-6{width:1.5rem !important}#glc .w-9{width:2.25rem !important}#glc .w-96{width:24rem !important}#glc .w-auto{width:auto !important}#glc .w-fit{width:-moz-fit-content !important;width:fit-content !important}#glc .w-full{width:100% !important}#glc .w-px{width:1px !important}#glc .max-w-2xl{max-width:42rem !important}#glc .max-w-3xl{max-width:48rem !important}#glc .max-w-container{max-width:1200px !important}#glc .max-w-lg{max-width:32rem !important}#glc .max-w-md{max-width:28rem !important}#glc .max-w-narrow{max-width:720px !important}#glc .flex-1{flex:1 1 0% !important}#glc .shrink-0{flex-shrink:0 !important}#glc .transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) !important}#glc .grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr)) !important}#glc .grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr)) !important}#glc .flex-col{flex-direction:column !important}#glc .flex-wrap{flex-wrap:wrap !important}#glc .items-start{align-items:flex-start !important}#glc .items-center{align-items:center !important}#glc .justify-center{justify-content:center !important}#glc .justify-between{justify-content:space-between !important}#glc .gap-1{gap:.25rem !important}#glc .gap-1\.5{gap:.375rem !important}#glc .gap-10{gap:2.5rem !important}#glc .gap-12{gap:3rem !important}#glc .gap-2{gap:.5rem !important}#glc .gap-2\.5{gap:.625rem !important}#glc .gap-3{gap:.75rem !important}#glc .gap-4{gap:1rem !important}#glc .gap-5{gap:1.25rem !important}#glc .gap-6{gap:1.5rem !important}#glc .gap-7{gap:1.75rem !important}#glc .gap-px{gap:1px !important}#glc .gap-x-6{-moz-column-gap:1.5rem !important;column-gap:1.5rem !important}#glc .gap-y-3{row-gap:.75rem !important}#glc .space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0 !important;margin-bottom:calc(.625rem*var(--tw-space-y-reverse)) !important;margin-top:calc(.625rem*(1 - var(--tw-space-y-reverse))) !important}#glc .space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0 !important;margin-bottom:calc(.75rem*var(--tw-space-y-reverse)) !important;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse))) !important}#glc .space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0 !important;margin-bottom:calc(1.25rem*var(--tw-space-y-reverse)) !important;margin-top:calc(1.25rem*(1 - var(--tw-space-y-reverse))) !important}#glc .space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0 !important;margin-bottom:calc(1.5rem*var(--tw-space-y-reverse)) !important;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse))) !important}#glc .divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0 !important;border-bottom-width:calc(1px*var(--tw-divide-y-reverse)) !important;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse))) !important}#glc .divide-border>:not([hidden])~:not([hidden]){border-color:var(--color-border) !important}#glc .divide-border-soft>:not([hidden])~:not([hidden]){border-color:var(--color-border-soft) !important}#glc .overflow-hidden{overflow:hidden !important}#glc .overflow-x-auto{overflow-x:auto !important}#glc .rounded-2xl{border-radius:1rem !important}#glc .rounded-3xl{border-radius:1.5rem !important}#glc .rounded-full{border-radius:9999px !important}#glc .rounded-xl{border-radius:.75rem !important}#glc .border{border-width:1px !important}#glc .border-y{border-top-width:1px !important}#glc .border-b,#glc .border-y{border-bottom-width:1px !important}#glc .border-t{border-top-width:1px !important}#glc .border-border{border-color:var(--color-border) !important}#glc .border-border-soft{border-color:var(--color-border-soft) !important}#glc .border-white\/10{border-color:hsla(0,0%,100%,.1) !important}#glc .bg-accent{background-color:var(--color-accent) !important}#glc .bg-accent-soft{background-color:var(--color-accent-soft) !important}#glc .bg-background{background-color:var(--color-background) !important}#glc .bg-border{background-color:var(--color-border) !important}#glc .bg-border-soft{background-color:var(--color-border-soft) !important}#glc .bg-primary{background-color:var(--color-primary) !important}#glc .bg-secondary{background-color:var(--color-secondary) !important}#glc .bg-surface{background-color:var(--color-surface) !important}#glc .bg-surface-2{background-color:var(--color-surface-2) !important}#glc .bg-surface-3{background-color:var(--color-surface-3) !important}#glc .bg-transparent{background-color:transparent !important}#glc .bg-white{--tw-bg-opacity:1 !important;background-color:rgb(255 255 255/var(--tw-bg-opacity,1)) !important}#glc .bg-white\/10{background-color:hsla(0,0%,100%,.1) !important}#glc .bg-white\/20{background-color:hsla(0,0%,100%,.2) !important}#glc .object-cover{-o-object-fit:cover !important;object-fit:cover !important}#glc .p-10{padding:2.5rem !important}#glc .p-5{padding:1.25rem !important}#glc .p-6{padding:1.5rem !important}#glc .p-7{padding:1.75rem !important}#glc .px-2{padding-left:.5rem !important;padding-right:.5rem !important}#glc .px-3{padding-left:.75rem !important;padding-right:.75rem !important}#glc .px-4{padding-left:1rem !important;padding-right:1rem !important}#glc .px-5{padding-left:1.25rem !important;padding-right:1.25rem !important}#glc .px-6{padding-left:1.5rem !important;padding-right:1.5rem !important}#glc .px-container{padding-left:1.5rem !important;padding-right:1.5rem !important}#glc .py-0\.5{padding-bottom:.125rem !important;padding-top:.125rem !important}#glc .py-1\.5{padding-bottom:.375rem !important;padding-top:.375rem !important}#glc .py-2{padding-bottom:.5rem !important;padding-top:.5rem !important}#glc .py-2\.5{padding-bottom:.625rem !important;padding-top:.625rem !important}#glc .py-3{padding-bottom:.75rem !important;padding-top:.75rem !important}#glc .py-3\.5{padding-bottom:.875rem !important;padding-top:.875rem !important}#glc .py-4{padding-bottom:1rem !important;padding-top:1rem !important}#glc .py-5{padding-bottom:1.25rem !important;padding-top:1.25rem !important}#glc .py-section{padding-bottom:6rem !important;padding-top:6rem !important}#glc .py-section-sm{padding-bottom:4rem !important;padding-top:4rem !important}#glc .pb-16{padding-bottom:4rem !important}#glc .pb-2{padding-bottom:.5rem !important}#glc .pb-5{padding-bottom:1.25rem !important}#glc .pr-12{padding-right:3rem !important}#glc .pt-1\.5{padding-top:.375rem !important}#glc .pt-16{padding-top:4rem !important}#glc .pt-2{padding-top:.5rem !important}#glc .pt-5{padding-top:1.25rem !important}#glc .pt-8{padding-top:2rem !important}#glc .text-left{text-align:left !important}#glc .text-center{text-align:center !important}#glc .font-body{font-family:var(--font-body) !important}#glc .font-heading{font-family:var(--font-heading) !important}#glc .font-mono{font-family:var(--font-mono) !important}#glc .text-2xl{font-size:1.5rem !important;line-height:2rem !important}#glc .text-3xl{font-size:1.875rem !important;line-height:2.25rem !important}#glc .text-4xl{font-size:2.25rem !important;line-height:2.5rem !important}#glc .text-5xl{font-size:3rem !important;line-height:1 !important}#glc .text-7xl{font-size:4.5rem !important;line-height:1 !important}#glc .text-base{font-size:1rem !important;line-height:1.5rem !important}#glc .text-lg{font-size:1.125rem !important;line-height:1.75rem !important}#glc .text-sm{font-size:.875rem !important;line-height:1.25rem !important}#glc .text-xl{font-size:1.25rem !important;line-height:1.75rem !important}#glc .text-xs{font-size:.75rem !important;line-height:1rem !important}#glc .font-medium{font-weight:500 !important}#glc .font-normal{font-weight:400 !important}#glc .font-semibold{font-weight:600 !important}#glc .uppercase{text-transform:uppercase !important}#glc .leading-\[1\.05\]{line-height:1.05 !important}#glc .leading-\[1\.1\]{line-height:1.1 !important}#glc .leading-none{line-height:1 !important}#glc .leading-relaxed{line-height:1.625 !important}#glc .leading-snug{line-height:1.375 !important}#glc .tracking-tight{letter-spacing:-.025em !important}#glc .tracking-wider{letter-spacing:.05em !important}#glc .text-accent{color:var(--color-accent) !important}#glc .text-primary{color:var(--color-primary) !important}#glc .text-red-600{--tw-text-opacity:1 !important;color:rgb(220 38 38/var(--tw-text-opacity,1)) !important}#glc .text-success{color:var(--color-success) !important}#glc .text-text{color:var(--color-text) !important}#glc .text-text-muted{color:var(--color-text-muted) !important}#glc .text-text-soft{color:var(--color-text-soft) !important}#glc .text-white{--tw-text-opacity:1 !important;color:rgb(255 255 255/var(--tw-text-opacity,1)) !important}#glc .text-white\/50{color:hsla(0,0%,100%,.5) !important}#glc .text-white\/70{color:hsla(0,0%,100%,.7) !important}#glc .text-white\/80{color:hsla(0,0%,100%,.8) !important}#glc .antialiased{-webkit-font-smoothing:antialiased !important;-moz-osx-font-smoothing:grayscale !important}#glc .placeholder-text-soft::-moz-placeholder{color:var(--color-text-soft) !important}#glc .placeholder-text-soft::placeholder{color:var(--color-text-soft) !important}#glc .opacity-30{opacity:.3 !important}#glc .outline-none{outline:2px solid transparent !important;outline-offset:2px !important}#glc .outline{outline-style:solid !important}#glc .ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color) !important;--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color) !important;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000) !important}#glc .blur-3xl{--tw-blur:blur(64px) !important}#glc .blur-3xl,#glc .brightness-0{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow) !important}#glc .brightness-0{--tw-brightness:brightness(0) !important}#glc .invert{--tw-invert:invert(100%) !important}#glc .filter,#glc .invert{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow) !important}#glc .backdrop-blur-md{--tw-backdrop-blur:blur(12px) !important;backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia) !important}#glc .transition{transition-duration:.15s !important;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter !important;transition-timing-function:cubic-bezier(.4,0,.2,1) !important}#glc .transition-colors{transition-duration:.15s !important;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke !important;transition-timing-function:cubic-bezier(.4,0,.2,1) !important}#glc .transition-transform{transition-duration:.15s !important;transition-property:transform !important;transition-timing-function:cubic-bezier(.4,0,.2,1) !important}#glc .hover\:border-text:hover{border-color:var(--color-text) !important}#glc .hover\:border-text-muted:hover{border-color:var(--color-text-muted) !important}#glc .hover\:border-text-soft:hover{border-color:var(--color-text-soft) !important}#glc .hover\:bg-accent:hover{background-color:var(--color-accent) !important}#glc .hover\:bg-primary-hover:hover{background-color:var(--color-primary-hover) !important}#glc .hover\:bg-surface-2:hover{background-color:var(--color-surface-2) !important}#glc .hover\:text-accent:hover{color:var(--color-accent) !important}#glc .hover\:text-primary:hover{color:var(--color-primary) !important}#glc .hover\:text-text:hover{color:var(--color-text) !important}#glc .hover\:underline:hover{text-decoration-line:underline !important}#glc .focus\:border-primary:focus{border-color:var(--color-primary) !important}#glc .focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color) !important;--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color) !important;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000) !important}#glc .group:hover .group-hover\:text-primary{color:var(--color-primary) !important}@media (min-width:640px){#glc .sm\:col-span-2{grid-column:span 2/span 2 !important}#glc .sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr)) !important}#glc .sm\:flex-row{flex-direction:row !important}#glc .sm\:items-center{align-items:center !important}#glc .sm\:justify-between{justify-content:space-between !important}}@media (min-width:768px){#glc .md\:col-span-3{grid-column:span 3/span 3 !important}#glc .md\:col-span-4{grid-column:span 4/span 4 !important}#glc .md\:col-span-5{grid-column:span 5/span 5 !important}#glc .md\:block{display:block !important}#glc .md\:table-cell{display:table-cell !important}#glc .md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr)) !important}#glc .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr)) !important}#glc .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr)) !important}#glc .md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr)) !important}#glc .md\:flex-row{flex-direction:row !important}#glc .md\:items-end{align-items:flex-end !important}#glc .md\:items-center{align-items:center !important}#glc .md\:justify-between{justify-content:space-between !important}#glc .md\:gap-8{gap:2rem !important}#glc .md\:space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0 !important;margin-bottom:calc(2rem*var(--tw-space-y-reverse)) !important;margin-top:calc(2rem*(1 - var(--tw-space-y-reverse))) !important}#glc .md\:border-0{border-width:0 !important}#glc .md\:p-14{padding:3.5rem !important}#glc .md\:p-8{padding:2rem !important}#glc .md\:pb-20{padding:5rem 0 !important}#glc .md\:pt-24{padding :3rem 0 !important}#glc .md\:text-2xl{font-size:1.5rem !important;line-height:2rem !important}#glc .md\:text-3xl{font-size:1.875rem !important;line-height:2.25rem !important}#glc .md\:text-4xl{font-size:2.25rem !important;line-height:2.5rem !important}#glc .md\:text-5xl{font-size:3rem !important;line-height:1 !important}#glc .md\:text-6xl{font-size:3.75rem !important;line-height:1 !important}#glc .md\:text-lg{font-size:1.125rem !important;line-height:1.75rem !important}#glc .md\:text-xl{font-size:1.25rem !important;line-height:1.75rem !important}}@media (min-width:1024px){#glc .lg\:col-span-4{grid-column:span 4/span 4 !important}#glc .lg\:col-span-5{grid-column:span 5/span 5 !important}#glc .lg\:col-span-7{grid-column:span 7/span 7 !important}#glc .lg\:col-span-8{grid-column:span 8/span 8 !important}#glc .lg\:flex{display:flex !important}#glc .lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr)) !important}#glc .lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr)) !important}#glc .lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr)) !important}#glc .lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr)) !important}#glc .lg\:gap-14{gap:3.5rem !important}#glc .lg\:gap-16{gap:4rem !important}#glc .lg\:p-16{padding:4rem !important}#glc .lg\:text-5xl{font-size:3rem !important;line-height:1 !important}#glc .lg\:text-7xl{font-size:4.5rem !important;line-height:1 !important}}
#toc-bar .toc-link.active { background: #2356A5 !important; color: #FFFFFF !important; }
#toc-bar .scrollbar-hide::-webkit-scrollbar { display: none; }
#toc-bar .scrollbar-hide { -ms-overflow-style: none; scrollbar-width: none; }

/* Missing live opacity utilities */
#glc .bg-primary\/8 { background-color: rgba(35, 86, 165, 0.08) !important; }
#glc .bg-primary\/20 { background-color: rgba(35, 86, 165, 0.2) !important; }
#glc .bg-primary\/40 { background-color: rgba(35, 86, 165, 0.4) !important; }
#glc .bg-accent\/20 { background-color: rgba(255, 121, 74, 0.2) !important; }
#glc .bg-accent\/30 { background-color: rgba(255, 121, 74, 0.3) !important; }
#glc .bg-background\/90 { background-color: rgba(251, 250, 247, 0.9) !important; }
#glc .text-accent\/20 { color: rgba(255, 121, 74, 0.2) !important; }
#glc .focus\:ring-primary\/20:focus { --tw-ring-color: rgba(35, 86, 165, 0.2); }

#glc .md\:top-18 { top: 4.5rem !important; }
@media (min-width: 768px) {
  #glc .md\:top-18 { top: 4.5rem !important; }
}

#toc-bar .sticky { top: 4.5rem !important; }
@media (min-width: 992px) {
  #toc-bar .sticky { top: 5rem !important; }
}

#glc .border,
#glc .border-y,
#glc .border-t,
#glc .divide-y > :not([hidden]) ~ :not([hidden]) {
  border-style: solid;
}

#glc table { caption-side: bottom; border-collapse: collapse; width: auto; }
#glc th { font-weight: inherit; text-align: inherit; }
#glc td, #glc th { border: 0; padding: 0; background: transparent; }

/* Hex color locks matching live source (beat Bootstrap !important blues/purples) */
#glc .bg-primary { background-color: #2356A5 !important; }
#glc .bg-secondary { background-color: #0F2A4F !important; }
#glc .bg-accent { background-color: #FF794A !important; }
#glc .bg-accent-soft { background-color: #FFE4D6 !important; }
#glc .bg-background { background-color: #FBFAF7 !important; }
#glc .bg-surface { background-color: #FFFFFF !important; }
#glc .bg-surface-2 { background-color: #F4F2EC !important; }
#glc .bg-surface-3 { background-color: #ECE9E0 !important; }
#glc .bg-white { background-color: #FFFFFF !important; }
#glc .text-primary { color: #2356A5 !important; }
#glc .text-accent { color: #FF794A !important; }
#glc .text-success { color: #1F7A4D !important; }
#glc .text-text { color: #0F1B2D !important; }
#glc .text-text-muted { color: #5A6577 !important; }
#glc .text-text-soft { color: #8A92A2 !important; }
#glc .text-white { color: #FFFFFF !important; }
#glc .hover\:bg-primary-hover:hover { background-color: #1B4380 !important; }
#glc .group:hover .group-hover\:text-primary { color: #2356A5 !important; }

#glc a.bg-primary,
#glc button.bg-primary {
  background-color: #2356A5 !important;
  color: #FFFFFF !important;
  text-decoration: none !important;
}
#glc a.bg-primary:hover,
#glc button.bg-primary:hover {
  background-color: #1B4380 !important;
  color: #FFFFFF !important;
}
#glc a.inline-flex { text-decoration: none !important; }

#glc svg.text-primary { color: #2356A5 !important; stroke: currentColor; }
#glc svg.text-accent { color: #FF794A !important; stroke: currentColor; }
#glc svg.text-success { color: #1F7A4D !important; stroke: currentColor; }
#glc svg.text-white { color: #FFFFFF !important; stroke: currentColor; }
#glc svg.text-text-soft { color: #8A92A2 !important; stroke: currentColor; }
#glc svg.h-4 { width: 1rem !important; height: 1rem !important; max-width: none; }
#glc svg.h-5 { width: 1.25rem !important; height: 1.25rem !important; max-width: none; }
#glc svg.h-6 { width: 1.5rem !important; height: 1.5rem !important; max-width: none; }

/* ---- Cost / resource cards: pixel match to live source ---- */
#glc .glc-card {
  display: flex;
  flex-direction: column;
  background-color: #FFFFFF !important;
  border: 1px solid #EEEBE2 !important;
  border-radius: 1rem !important;
  padding: 1.75rem !important;
  transition: border-color 0.15s ease;
  height: 100%;
  box-shadow: none;
}
#glc .glc-card:hover {
  border-color: #8A92A2 !important;
}

#glc .glc-icon-well {
  width: 2.5rem !important;
  height: 2.5rem !important;
  border-radius: 0.75rem !important;
  /* background-color: rgba(35, 86, 165, 0.08) !important; */
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0;
}
#glc .glc-icon-well-lg {
  width: 3.5rem !important;
  height: 3.5rem !important;
  border-radius: 1rem !important;
}
#glc .glc-icon-well-accent {
  background-color: #FFE4D6 !important;
}
#glc .glc-icon-well svg {
  width: 1.25rem !important;
  height: 1.25rem !important;
  color: #2356A5 !important;
  stroke: currentColor !important;
  fill: none !important;
}
#glc .glc-icon-well-lg svg {
  width: 1.5rem !important;
  height: 1.5rem !important;
}
#glc .glc-icon-well-accent svg {
  color: #FF794A !important;
  stroke: currentColor !important;
}

#glc .glc-card-metric {
  margin-top: 1.25rem !important;
  padding-top: 1.25rem !important;
  border-top: 1px solid #EEEBE2 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-bottom: 0 !important;
}

/* Cost grid: equal-height cards like source */
#costs .grid.sm\\:grid-cols-2,
#glc #costs .grid {
  align-items: stretch;
}
#glc #costs .glc-card > h3 {
  font-family: var(--font-heading) !important;
  font-size: 1.125rem !important;
  line-height: 1.75rem !important;
  font-weight: 600 !important;
  color: #0F1B2D !important;
  margin: 0 !important;
}
#glc #costs .glc-card > p {
  margin-top: 0.375rem !important;
  font-size: 0.875rem !important;
  line-height: 1.625 !important;
  color: #5A6577 !important;
}
#glc #costs .glc-card-metric .font-mono,
#glc #costs .glc-card-metric [data-content$="-value"] {
  font-family: var(--font-mono), ui-monospace, monospace !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  color: #0F1B2D !important;
}
#glc #costs .glc-card-metric .text-xs {
  font-size: 0.75rem !important;
  line-height: 1rem !important;
  color: #8A92A2 !important;
}

/* Library and career-tools cards share the same surface treatment */
#glc #library .group.bg-surface,
#glc #tools .group.bg-surface {
  background-color: #FFFFFF !important;
  border: 1px solid #EEEBE2 !important;
  border-radius: 1rem !important;
  padding: 1.5rem !important;
  height: 100%;
  display: flex;
  flex-direction: column;
}
#glc #library .group.bg-surface:hover,
#glc #tools .group.bg-surface:hover {
  border-color: #8A92A2 !important;
}
#glc #tools .group.bg-surface > .mt-5,
#glc #library .group.bg-surface > .mt-5 {
  margin-top: auto;
  padding-top: 1.25rem;
}
#glc #tools .group.bg-surface svg.h-3\.5 {
  width: 0.875rem !important;
  height: 0.875rem !important;
  color: #2356A5 !important;
  stroke: currentColor !important;
}

/* ---- FAQ / parents section — match live source accordion ---- */
#glc #faq .glc-faq-note {
  margin-top: 2rem !important;
  padding: 1.25rem !important;
  border-radius: 1rem !important;
  background-color: #F4F2EC !important;
  border: 1px solid #EEEBE2 !important;
}
#glc #faq .glc-faq-note p {
  margin: 0 !important;
  font-size: 0.875rem !important;
  line-height: 1.625 !important;
  color: #5A6577 !important;
}

#glc #faq .glc-faq {
  border-top: 1px solid #E3E0D6 !important;
  border-bottom: 1px solid #E3E0D6 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
}

#glc #faq .glc-faq-item {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
  margin: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-bottom: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
#glc #faq .glc-faq-item + .glc-faq-item {
  border-top: 1px solid #E3E0D6 !important;
}

#glc #faq .glc-faq-trigger {
  width: 100% !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 1.5rem !important;
  padding: 1.25rem 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  cursor: pointer !important;
  text-align: left !important;
  color: inherit !important;
  font: inherit !important;
}
#glc #faq .glc-faq-trigger span {
  font-family: var(--font-heading) !important;
  font-size: 1.125rem !important;
  line-height: 1.75rem !important;
  font-weight: 600 !important;
  color: #0F1B2D !important;
  transition: color 0.15s ease;
}
@media (min-width: 768px) {
  #glc #faq .glc-faq-trigger span {
    font-size: 1.25rem !important;
    line-height: 1.75rem !important;
  }
}
#glc #faq .glc-faq-trigger:hover span {
  color: #2356A5 !important;
}
#glc #faq .glc-faq-trigger svg {
  width: 1.25rem !important;
  height: 1.25rem !important;
  color: #8A92A2 !important;
  stroke: currentColor !important;
  fill: none !important;
  flex-shrink: 0 !important;
  margin-top: 0.375rem !important;
  transition: transform 0.15s ease;
}

#glc #faq .glc-faq-answer {
  padding-bottom: 1.25rem !important;
  padding-right: 3rem !important;
  color: #5A6577 !important;
  line-height: 1.625 !important;
}
#glc #faq .glc-faq-answer p {
  margin: 0 !important;
  color: #5A6577 !important;
  line-height: 1.625 !important;
  font-size: 1rem !important;
}
#glc #faq .glc-faq-answer.hidden {
  display: none !important;
}

#glc #faq .text-accent {
  color: #FF794A !important;
}
#glc #faq h2 {
  font-family: var(--font-heading) !important;
  color: #0F1B2D !important;
  font-weight: 500 !important;
  letter-spacing: -0.025em !important;
  line-height: 1.1 !important;
}

/* ---- Back to top button (outside #glc, site chrome) ---- */
#backToTopBtn {
  position: fixed;
  bottom: 55px;
  right: 20px;
  z-index: 9999;
  cursor: pointer;
  display: none;
}

#backToTopBtn div {
  display: flex !important;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

#backToTopBtn button {
  width: 44px;
  height: 44px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #FF794A;
  border: 3px solid #FF794A;
  border-radius: 50%;
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  color: #FFFFFF;
  position: relative;
  overflow: hidden;
  z-index: 1;
  cursor: pointer;
  box-shadow: 0 6px 18px rgba(225, 86, 37, 0.28);
  transition: background 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
}

#backToTopBtn button:hover {
  background: #2356A5;
  border-color: #2356A5;
  transform: translateY(-2px);
}

#backToTopBtn p {
  font-family: 'Inter', sans-serif;
  font-size: 13px;
  font-weight: 500;
  color: #FF794A;
  margin-bottom: 0;
  margin-top: 6px;
  white-space: nowrap;
}

#backToTopBtn.scrolled-90 p {
  color: #FF794A;
}

@media (max-width: 767px) {
  .mobile#backToTopBtn,
  #backToTopBtn {
    display: none !important;
  }
}

/* ---- GLC-specific components — modern editorial refresh ---- */

#glc .glc-section-label {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.375rem 0.875rem;
  border-radius: 9999px;
  background: var(--color-surface);
  border: 1px solid var(--color-border-soft);
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--color-text-muted);
  margin-bottom: 1rem;
}

#glc .glc-section-label-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--color-accent);
}

#glc .glc-section-head {
  margin-bottom: 2.5rem;
}

#glc .glc-section-head--sticky {
  position: sticky;
  top: 6rem;
  align-self: start;
}

@media (max-width: 1023px) {
  #glc .glc-section-head--sticky {
    position: static;
  }
}

/* Hero */
#glc .glc-hero {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #0F2A4F 0%, #1a3d6b 45%, #2356A5 100%);
  color: #fff;
}

#glc .glc-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 85% 20%, rgba(255, 121, 74, 0.18) 0%, transparent 45%),
    radial-gradient(circle at 10% 80%, rgba(255, 255, 255, 0.06) 0%, transparent 40%);
  pointer-events: none;
}

#glc .glc-hero-inner {
  position: relative;
  z-index: 1;
  max-width: var(--container-max-width);
  margin: 0 auto;
  padding: 4rem var(--container-padding) 5rem;
}

@media (min-width: 768px) {
  #glc .glc-hero-inner {
    padding: 5rem var(--container-padding) 6rem;
  }
}

#glc .glc-hero .glc-section-label {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.15);
  color: rgba(255, 255, 255, 0.85);
}

#glc .glc-hero h1 {
  color: #fff;
  font-family: var(--font-heading);
  font-size: clamp(2.5rem, 5vw, 4.25rem);
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -0.025em;
}

#glc .glc-hero-sub {
  color: rgba(255, 255, 255, 0.92);
  font-family: var(--font-heading);
  font-size: clamp(1.125rem, 2vw, 1.5rem);
  line-height: 1.45;
  margin-top: 1.5rem;
}

#glc .glc-hero-body {
  color: rgba(255, 255, 255, 0.78);
  font-size: 1.0625rem;
  line-height: 1.65;
  margin-top: 1.25rem;
  max-width: 36rem;
}

#glc .glc-hero-cta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 2rem;
}

#glc .glc-hero-cta .glc-btn-primary {
  background: var(--color-accent);
  color: #fff;
  border: 0;
}

#glc .glc-hero-cta .glc-btn-primary:hover {
  background: #e86a3d;
  color: #fff;
}

#glc .glc-hero-cta .glc-btn-secondary {
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.25);
}

#glc .glc-hero-cta .glc-btn-secondary:hover {
  background: rgba(255, 255, 255, 0.18);
  color: #fff;
}

#glc .glc-hero-cta .glc-btn-outline {
  background: transparent;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.4);
}

#glc .glc-hero-cta .glc-btn-outline:hover {
  background: #fff;
  color: var(--color-secondary);
}

#glc .glc-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 48px;
  padding: 0.75rem 1.5rem;
  border-radius: 9999px;
  font-weight: 600;
  font-size: 0.9375rem;
  text-decoration: none;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
  cursor: pointer;
}

#glc .glc-btn:hover {
  transform: translateY(-1px);
}

#glc .glc-hero-visual {
  position: relative;
  border-radius: 1.25rem;
  overflow: hidden;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
  border: 1px solid rgba(255, 255, 255, 0.12);
}

#glc .glc-hero-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  min-height: 320px;
}

#glc .glc-hero-visual-badge {
  position: absolute;
  bottom: 1rem;
  left: 1rem;
  right: 1rem;
  padding: 0.875rem 1rem;
  border-radius: 0.875rem;
  background: rgba(15, 42, 79, 0.88);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

#glc .glc-hero-badge-icon {
  flex-shrink: 0;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 0.625rem;
  background: rgba(255, 121, 74, 0.2);
  border: 1px solid rgba(255, 121, 74, 0.35);
  display: flex;
  align-items: center;
  justify-content: center;
}

#glc .glc-hero-badge-icon svg {
  width: 1.25rem;
  height: 1.25rem;
  color: var(--color-accent);
}

#glc .glc-hero-visual-badge p {
  font-size: 0.8125rem;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.9);
  margin: 0;
}

#glc .glc-hero-visual-badge strong {
  display: block;
  color: #fff;
  font-weight: 600;
}

/* Image frames */
#glc .glc-media {
  position: relative;
  border-radius: 1.25rem;
  overflow: hidden;
  border: 1px solid var(--color-border-soft);
  background: var(--color-surface);
  box-shadow: 0 16px 40px rgba(15, 42, 79, 0.08);
}

#glc .glc-media img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

#glc .glc-media-caption {
  padding: 1rem 1.25rem;
  font-size: 0.8125rem;
  color: var(--color-text-muted);
  background: var(--color-surface-2);
  border-top: 1px solid var(--color-border-soft);
}

/* Outcome / feature cards */
#glc .glc-outcome-grid {
  display: grid;
  gap: 1rem;
}

@media (min-width: 640px) {
  #glc .glc-outcome-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

#glc .glc-outcome-card {
  display: flex;
  align-items: flex-start;
  gap: 0.875rem;
  padding: 1.25rem;
  border-radius: 1rem;
  background: var(--color-surface);
  border: 1px solid var(--color-border-soft);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

#glc .glc-outcome-card:hover {
  border-color: var(--color-primary);
  box-shadow: 0 8px 24px rgba(35, 86, 165, 0.08);
}

#glc .glc-outcome-icon {
  flex-shrink: 0;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 0.625rem;
  background: var(--color-accent-soft);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-accent);
}

#glc .glc-outcome-icon svg {
  width: 1.125rem;
  height: 1.125rem;
}

#glc .glc-outcome-card p {
  margin: 0;
  font-size: 0.9375rem;
  line-height: 1.5;
  color: var(--color-text-muted);
}

/* Bridge callout */
#glc .glc-bridge-callout {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 1.25rem 1.5rem;
  border-radius: 1rem;
  background: linear-gradient(135deg, var(--color-surface-2) 0%, var(--color-surface) 100%);
  border: 1px solid var(--color-border-soft);
  margin-bottom: 2.5rem;
}

#glc .glc-bridge-callout-icon {
  flex-shrink: 0;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 0.75rem;
  background: rgba(35, 86, 165, 0.1);
  border: 1px solid rgba(35, 86, 165, 0.15);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-primary);
}

#glc .glc-bridge-callout-icon svg {
  width: 1.375rem;
  height: 1.375rem;
}

#glc .glc-bridge-callout p {
  margin: 0;
  font-size: 0.9375rem;
  color: var(--color-text-muted);
  line-height: 1.6;
}

#glc .glc-highlight-box {
  padding: 1.25rem 1.5rem;
  border-radius: 1rem;
  background: var(--color-surface);
  border: 1px solid var(--color-border-soft);
  border-left: 3px solid var(--color-accent);
}

/* Reason grid */
#glc .glc-reason-grid {
  display: grid;
  gap: 1rem;
}

@media (min-width: 768px) {
  #glc .glc-reason-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

#glc .glc-reason-card {
  background: var(--color-surface);
  border: 1px solid var(--color-border-soft);
  border-radius: 1rem;
  padding: 1.25rem;
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

#glc .glc-reason-card:hover {
  border-color: rgba(35, 86, 165, 0.35);
  box-shadow: 0 10px 28px rgba(15, 42, 79, 0.07);
  transform: translateY(-2px);
}

#glc .glc-reason-num {
  flex-shrink: 0;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 0.5rem;
  background: rgba(35, 86, 165, 0.1);
  color: var(--color-primary);
  font-size: 0.75rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Programme duration cards */
#glc .glc-duration-grid {
  display: grid;
  gap: 1rem;
}

@media (min-width: 640px) {
  #glc .glc-duration-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  #glc .glc-duration-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

#glc .glc-duration-card {
  position: relative;
  padding: 1.5rem 1.25rem;
  border-radius: 1rem;
  background: var(--color-surface);
  border: 1px solid var(--color-border-soft);
  text-align: center;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  overflow: hidden;
}

#glc .glc-duration-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--color-primary), var(--color-accent));
  opacity: 0;
  transition: opacity 0.2s ease;
}

#glc .glc-duration-card:hover {
  border-color: var(--color-primary);
  box-shadow: 0 12px 32px rgba(35, 86, 165, 0.1);
}

#glc .glc-duration-card:hover::before {
  opacity: 1;
}

#glc .glc-duration-badge {
  display: inline-block;
  padding: 0.25rem 0.75rem;
  border-radius: 9999px;
  background: var(--color-accent-soft);
  color: var(--color-accent);
  font-size: 0.75rem;
  font-weight: 700;
  margin-bottom: 0.75rem;
}

#glc .glc-duration-card h4 {
  font-family: var(--font-heading);
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--color-text);
  line-height: 1.35;
  margin: 0;
}

/* Experience bento grid */
#glc .glc-experience-grid {
  display: grid;
  gap: 1px;
  background: var(--color-border-soft);
  border: 1px solid var(--color-border-soft);
  border-radius: 1.25rem;
  overflow: hidden;
}

@media (min-width: 768px) {
  #glc .glc-experience-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

#glc .glc-experience-card {
  background: var(--color-surface);
  padding: 1.75rem;
  transition: background 0.2s ease;
}

#glc .glc-experience-card:hover {
  background: var(--color-surface-2);
}

@media (min-width: 768px) {
  #glc .glc-experience-card:nth-child(4),
  #glc .glc-experience-card:nth-child(5),
  #glc .glc-experience-card:nth-child(6) {
    grid-column: span 1;
  }
}

#glc .glc-icon-well {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 0.875rem;
  background: var(--color-accent-soft);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem;
}

#glc .glc-icon-well svg {
  width: 1.25rem;
  height: 1.25rem;
  color: var(--color-accent);
  stroke: currentColor;
}

/* IEEE panel */
#glc .glc-ieee-panel {
  border-radius: 1.25rem;
  background: linear-gradient(135deg, #0F2A4F 0%, #2356A5 100%);
  color: #fff;
  padding: 2.5rem;
  border: 0;
  box-shadow: 0 20px 50px rgba(15, 42, 79, 0.2);
  overflow: hidden;
  position: relative;
}

#glc .glc-ieee-panel::after {
  content: "";
  position: absolute;
  top: -50%;
  right: -20%;
  width: 60%;
  height: 200%;
  background: radial-gradient(circle, rgba(255, 121, 74, 0.15) 0%, transparent 70%);
  pointer-events: none;
}
.mb-6 {
  margin-bottom: 20px !important;
}
#glc .glc-ieee-header,
#glc .glc-ieee-body,
#glc .glc-ieee-benefits {
  position: relative;
  z-index: 1;
}

#glc .glc-ieee-badge {
  display: inline-block;
  padding: 0.375rem 0.875rem;
  border-radius: 9999px;
  background: rgba(255, 121, 74, 0.2);
  border: 1px solid rgba(255, 121, 74, 0.35);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #ffb89a;
  margin-bottom: 1rem;
}

#glc .glc-ieee-header h3 {
  color: #fff;
  margin: 0;
  max-width: 36rem;
}

#glc .glc-ieee-intro {
  margin: 1rem 0 0;
  font-size: 1.0625rem;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.88);
  max-width: 42rem;
}

#glc .glc-ieee-body {
  margin: 1.5rem 0 0;
  font-size: 0.9375rem;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.78);
  max-width: 42rem;
}

#glc .glc-ieee-benefits {
  display: grid;
  gap: 1rem;
  margin-top: 2rem;
}

@media (min-width: 768px) {
  #glc .glc-ieee-benefits {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

#glc .glc-ieee-benefit {
  display: flex;
  align-items: flex-start;
  gap: 0.875rem;
  padding: 1.25rem;
  border-radius: 1rem;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(8px);
}

#glc .glc-ieee-benefit svg {
  flex-shrink: 0;
  width: 1.375rem;
  height: 1.375rem;
  color: var(--color-accent);
  margin-top: 0.125rem;
}

#glc .glc-ieee-benefit strong {
  display: block;
  font-size: 0.9375rem;
  font-weight: 600;
  color: #fff;
  margin-bottom: 0.25rem;
}

#glc .glc-ieee-benefit span {
  display: block;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.72);
}

/* Wellbeing cards */
#glc .glc-wellbeing-grid {
  display: grid;
  gap: 1rem;
}

@media (min-width: 768px) {
  #glc .glc-wellbeing-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

#glc .glc-wellbeing-card {
  padding: 1.5rem;
  border-radius: 1rem;
  background: var(--color-surface);
  border: 1px solid var(--color-border-soft);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

#glc .glc-wellbeing-card:hover {
  border-color: rgba(35, 86, 165, 0.3);
  box-shadow: 0 8px 24px rgba(15, 42, 79, 0.06);
}

#glc .glc-wellbeing-card h3 {
  font-family: var(--font-heading);
  font-size: 1.0625rem;
  font-weight: 600;
  color: var(--color-text);
  margin: 0 0 0.5rem;
}

#glc .glc-wellbeing-card p {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.6;
  color: var(--color-text-muted);
}

#glc .glc-wellbeing-feature {
  grid-column: 1 / -1;
  display: grid;
  gap: 1.5rem;
  padding: 2rem;
  border-radius: 1.25rem;
  background: linear-gradient(135deg, var(--color-surface-2) 0%, var(--color-surface) 100%);
  border: 1px solid var(--color-border-soft);
}

@media (min-width: 768px) {
  #glc .glc-wellbeing-feature {
    grid-template-columns: 1fr 1.2fr;
    align-items: center;
  }
}

#glc .glc-wellbeing-feature img {
  width: 100%;
  border-radius: 1rem;
  object-fit: cover;
  max-height: 280px;
}

/* Timeline */
#glc .glc-timeline {
  position: relative;
  padding-left: 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

#glc .glc-timeline::before {
  display: none;
}

#glc .glc-timeline-step {
  position: relative;
  padding: 1.5rem 1.5rem 1.5rem 4.5rem;
  border-radius: 1rem;
  background: var(--color-surface);
  border: 1px solid var(--color-border-soft);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

#glc .glc-timeline-step:hover {
  border-color: rgba(35, 86, 165, 0.35);
  box-shadow: 0 8px 24px rgba(15, 42, 79, 0.06);
}

#glc .glc-timeline-step::before {
  content: attr(data-step);
  position: absolute;
  left: 1.25rem;
  top: 1.35rem;
  width: 2rem;
  height: 2rem;
  border-radius: 0.625rem;
  background: var(--color-primary);
  color: #fff;
  font-size: 0.8125rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0;
  box-shadow: none;
}

#glc .glc-timeline-step h3 {
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--color-text);
  margin: 0;
}

#glc .glc-timeline-step p {
  margin: 0.5rem 0 0;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--color-text-muted);
}

/* Week schedule */
#glc .glc-week-grid {
  display: grid;
  gap: 1rem;
}

@media (min-width: 640px) {
  #glc .glc-week-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  #glc .glc-week-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

#glc .glc-week-card {
  padding: 1.25rem 1.5rem;
  border-radius: 1rem;
  background: var(--color-surface);
  border: 1px solid var(--color-border-soft);
  border-top: 3px solid var(--color-primary);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#glc .glc-week-card:nth-child(3) { border-top-color: var(--color-accent); }
#glc .glc-week-card:nth-child(5) { border-top-color: #1F7A4D; }
#glc .glc-week-card:nth-child(6) { border-top-color: #5489C6; }

#glc .glc-week-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(15, 42, 79, 0.08);
}

#glc .glc-week-day {
  font-family: var(--font-heading);
  font-size: 1rem;
  font-weight: 600;
  color: var(--color-text);
  margin-bottom: 0.5rem;
}

#glc .glc-week-focus {
  font-size: 0.875rem;
  line-height: 1.55;
  color: var(--color-text-muted);
  margin: 0;
}

/* Programme model cards */
#glc .glc-model-grid {
  display: grid;
  gap: 1rem;
}

@media (min-width: 768px) {
  #glc .glc-model-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  #glc .glc-model-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

#glc .glc-model-card {
  padding: 1.5rem;
  border-radius: 1rem;
  background: var(--color-surface);
  border: 1px solid var(--color-border-soft);
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  height: 100%;
}

#glc .glc-model-card:hover {
  border-color: var(--color-primary);
  box-shadow: 0 12px 32px rgba(35, 86, 165, 0.08);
}

#glc .glc-model-card h4 {
  font-family: var(--font-heading);
  font-size: 1.0625rem;
  font-weight: 600;
  color: var(--color-text);
  margin: 0;
  line-height: 1.35;
}

#glc .glc-model-duration {
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--color-accent);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

#glc .glc-model-focus {
  font-size: 0.875rem;
  line-height: 1.55;
  color: var(--color-text-muted);
  margin: 0;
  flex: 1;
}

/* Programme customisation */
#glc .glc-customisation {
  padding: 2.5rem;
  border-radius: 1.25rem;
  background: linear-gradient(135deg, var(--color-surface-2) 0%, var(--color-surface) 100%);
  border: 1px solid var(--color-border-soft);
}

#glc .glc-customisation-head {
  max-width: 42rem;
  margin-bottom: 2rem;
}

#glc .glc-customisation-intro {
  margin: 1rem 0 0;
  font-size: 1rem;
  line-height: 1.65;
  color: var(--color-text-muted);
}

#glc .glc-customisation-grid {
  display: grid;
  gap: 1rem;
}

@media (min-width: 768px) {
  #glc .glc-customisation-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  #glc .glc-customisation-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

#glc .glc-customisation-card {
  padding: 1.25rem;
  border-radius: 1rem;
  background: var(--color-surface);
  border: 1px solid var(--color-border-soft);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

#glc .glc-customisation-card:hover {
  border-color: rgba(35, 86, 165, 0.25);
  box-shadow: 0 8px 24px rgba(15, 42, 79, 0.06);
}

#glc .glc-customisation-card h4 {
  font-family: var(--font-heading);
  font-size: 1rem;
  font-weight: 600;
  color: var(--color-text);
  margin: 0 0 0.5rem;
}

#glc .glc-customisation-card p {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.55;
  color: var(--color-text-muted);
}

/* Split section layout */
#glc .glc-split {
  display: grid;
  gap: 2.5rem;
  align-items: center;
}

@media (min-width: 1024px) {
  #glc .glc-split {
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
  }

  #glc .glc-split--reverse .glc-split-media {
    order: -1;
  }
}

#glc .glc-prose {
  font-size: 1.0625rem;
  line-height: 1.65;
  color: var(--color-text-muted);
}

#glc .glc-prose p + p {
  margin-top: 1rem;
}

#glc .glc-checklist {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

#glc .glc-checklist li {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  font-size: 0.9375rem;
  line-height: 1.55;
  color: var(--color-text-muted);
}

#glc .glc-checklist li svg {
  flex-shrink: 0;
  margin-top: 0.15rem;
  width: 1.125rem;
  height: 1.125rem;
  color: var(--color-success);
}

#glc .glc-programme-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--color-border-soft);
  border-radius: 1rem;
  background: var(--color-surface);
}

#glc .glc-programme-table {
  width: 100%;
  min-width: 480px;
  border-collapse: collapse;
}

#glc .glc-programme-table th,
#glc .glc-programme-table td {
  padding: 1rem 1.25rem;
  text-align: left;
  border-bottom: 1px solid var(--color-border-soft);
  font-size: 0.9375rem;
  line-height: 1.5;
}

#glc .glc-programme-table th {
  font-family: var(--font-heading);
  font-weight: 600;
  color: var(--color-text);
  background: var(--color-surface-2);
}

#glc .glc-programme-table td {
  color: var(--color-text-muted);
}

#glc .glc-programme-table tr:last-child td,
#glc .glc-programme-table tr:last-child th {
  border-bottom: 0;
}

#glc .glc-programme-table td:first-child {
  font-weight: 600;
  color: var(--color-text);
}

#glc .glc-wellbeing-block {
  padding: 1.75rem 0;
  border-bottom: 1px solid var(--color-border-soft);
}

#glc .glc-wellbeing-block:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

#glc .glc-hero-visual {
  border-radius: 1rem;
  overflow: hidden;
  border: 1px solid var(--color-border-soft);
  box-shadow: 0 18px 40px rgba(15, 42, 79, 0.12);
}

/* Contact */
#glc .glc-contact-wrap {
  display: grid;
  gap: 0;
  border-radius: 1.5rem;
  overflow: hidden;
  background: var(--color-secondary);
  box-shadow: 0 24px 60px rgba(15, 42, 79, 0.25);
}

@media (min-width: 768px) {
  #glc .glc-contact-wrap {
    grid-template-columns: 1fr 1.1fr;
  }
}

#glc .glc-contact-media {
  position: relative;
  min-height: 280px;
}

#glc .glc-contact-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  min-height: 280px;
}

#glc .glc-contact-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(15, 42, 79, 0.4) 0%, transparent 60%);
}

#glc .glc-contact-card {
  background: var(--color-secondary);
  color: #fff;
  padding: 2.5rem;
}

#glc .glc-contact-card a {
  color: var(--color-accent-soft);
  text-decoration: none;
  font-weight: 600;
}

#glc .glc-contact-card a:hover {
  color: var(--color-accent);
}

#glc .glc-contact-card .glc-contact-btn-primary {
  background: var(--color-accent);
  color: #fff;
  border: 0;
  text-decoration: none;
}

#glc .glc-contact-card .glc-contact-btn-primary:hover {
  background: #e86a3d;
  color: #fff;
}

#glc .glc-contact-card .glc-contact-btn-secondary {
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.2);
  text-decoration: none;
}

#glc .glc-contact-card .glc-contact-btn-secondary:hover {
  background: rgba(255, 255, 255, 0.2);
  color: #fff;
}

#glc .text-white\/70 { color: rgba(255, 255, 255, 0.7) !important; }
#glc .text-white\/80 { color: rgba(255, 255, 255, 0.8) !important; }

#glc .glc-faq-wrap {
  background: var(--color-surface);
  border: 1px solid var(--color-border-soft);
  border-radius: 1.25rem;
  padding: 0 1.5rem;
}

@media (max-width: 767px) {
  #glc .glc-programme-table-wrap {
    border: 0;
    background: transparent;
    overflow: visible;
  }

  #glc .glc-programme-table,
  #glc .glc-programme-table thead,
  #glc .glc-programme-table tbody,
  #glc .glc-programme-table tr,
  #glc .glc-programme-table th,
  #glc .glc-programme-table td {
    display: block;
    min-width: 0;
    width: 100%;
  }

  #glc .glc-programme-table thead {
    display: none;
  }

  #glc .glc-programme-table tr {
    background: var(--color-surface);
    border: 1px solid var(--color-border-soft);
    border-radius: 1rem;
    margin-bottom: 0.75rem;
    padding: 0.25rem 0;
    overflow: hidden;
  }

  #glc .glc-programme-table td {
    border: 0;
    padding: 0.75rem 1.25rem;
    position: relative;
  }

  #glc .glc-programme-table td::before {
    content: attr(data-label);
    display: block;
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--color-text-soft);
    margin-bottom: 0.25rem;
  }

  #glc .glc-programme-table td:first-child {
    padding-top: 1rem;
    background: var(--color-surface-2);
  }

  #glc .glc-programme-table td:last-child {
    padding-bottom: 1rem;
  }

  #glc .glc-duration-grid {
    grid-template-columns: 1fr;
  }

  #glc .glc-experience-grid {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  #glc .glc-btn:hover,
  #glc .glc-reason-card:hover,
  #glc .glc-week-card:hover,
  #glc .glc-timeline-step:hover {
    transform: none;
  }
}
