 /* ============================================================
       CSS CUSTOM PROPERTIES
    ============================================================ */
    :root {
      --navy:          #0B1829;
      --navy-mid:      #132237;
      --navy-card:     #1A2E47;
      --charcoal:      #1E293B;
      --steel:         #2E5F8A;
      --steel-light:   #3D7CB5;
      --steel-muted:   #5B8DB8;
      --off-white:     #F6F8FB;
      --white:         #FFFFFF;
      --border:        #D4DCE8;
      --border-light:  #E8EDF5;
      --text-primary:  #111827;
      --text-body:     #374151;
      --text-muted:    #6B7280;
      --text-subtle:   #9CA3AF;
      --accent-blue:   #1E4FA0;
      --shadow-sm:     0 1px 4px rgba(11,24,41,0.08);
      --shadow-md:     0 4px 16px rgba(11,24,41,0.10);
      --shadow-lg:     0 8px 32px rgba(11,24,41,0.14);
      --radius:        6px;
      --radius-lg:     10px;
      --transition:    all 0.22s ease;
      --font-display:  'Fraunces', Georgia, serif;
      --font-body:     'DM Sans', system-ui, sans-serif;
    }

    /* ============================================================
       RESET & BASE
    ============================================================ */
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; font-size: 16px; }

    body {
      font-family: var(--font-body);
      font-weight: 400;
      color: var(--text-body);
      background: var(--white);
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      line-height: 1.7;
    }

    img { max-width: 100%; display: block; }
    a { color: inherit; text-decoration: none; }
    ul { list-style: none; }
    
	button { 
	font-family: var(--font-body); 
	cursor: pointer; 
	border: none;
	}
	
	button:focus-visible,
	a:focus-visible,
	summary:focus-visible,
	input:focus-visible,
	textarea:focus-visible {
	outline: 3px solid rgba(61, 124, 181, 0.65);
	outline-offset: 3px;
	}

	#navbar button:focus-visible,
	#navbar a:focus-visible,
	#home a:focus-visible,
	#differentiation a:focus-visible,
	footer a:focus-visible {
	outline: 3px solid rgba(255, 255, 255, 0.85);
	outline-offset: 4px;
	}
	
    .container {
      max-width: 1160px;
      margin: 0 auto;
      padding: 0 24px;
    }

    .section-tag {
      display: inline-block;
      font-size: 0.7rem;
      font-weight: 600;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: var(--steel-muted);
      margin-bottom: 12px;
    }

    .section-title {
      font-family: var(--font-display);
      font-size: clamp(1.8rem, 3.5vw, 2.6rem);
      font-weight: 600;
      color: var(--navy);
      line-height: 1.2;
      margin-bottom: 18px;
    }

    .section-intro {
      font-size: 1.05rem;
      color: var(--text-muted);
      max-width: 680px;
      line-height: 1.75;
      margin-bottom: 48px;
    }

    section { padding: 56px 0; }
    section:nth-child(even) { background: var(--off-white); }

    /* ============================================================
       NAVIGATION
    ============================================================ */
    #navbar {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      z-index: 1000;
      padding: 0;
      transition: var(--transition);
    }

    .nav-inner {
      display: flex;
      align-items: center;
      justify-content: space-between;
      max-width: 1160px;
      margin: 0 auto;
      padding: 0 24px;
      height: 68px;
    }

    #navbar.transparent { background: transparent; }
    #navbar.scrolled {
      background: rgba(255,255,255,0.97);
      backdrop-filter: blur(10px);
      box-shadow: 0 1px 0 rgba(11,24,41,0.08), 0 2px 12px rgba(11,24,41,0.06);
    }

    .nav-brand {
      font-family: var(--font-display);
      font-size: 1rem;
      font-weight: 600;
      color: var(--white);
      letter-spacing: 0.01em;
      line-height: 1.3;
      transition: var(--transition);
    }
    #navbar.scrolled .nav-brand { color: var(--navy); }

    .nav-links {
      display: flex;
      align-items: center;
      gap: 6px;
    }

    .nav-links a {
      font-size: 0.82rem;
      font-weight: 500;
      letter-spacing: 0.03em;
      color: rgba(255,255,255,0.82);
      padding: 6px 12px;
      border-radius: var(--radius);
      transition: var(--transition);
    }
    #navbar.scrolled .nav-links a { color: var(--text-muted); }
    
    .nav-links a.active {
      color: var(--white);
      background: rgba(255,255,255,0.12);
    }
    
    #navbar.scrolled .nav-links a.active {
      color: var(--navy);
      background: var(--off-white);
    }

    /* Hamburger */
    .nav-hamburger {
      display: none;
      flex-direction: column;
      gap: 5px;
      background: transparent;
      padding: 6px;
      border-radius: 4px;
    }
    .nav-hamburger span {
      display: block;
      width: 24px;
      height: 2px;
      background: var(--white);
      border-radius: 2px;
      transition: var(--transition);
    }
    #navbar.scrolled .nav-hamburger span { background: var(--navy); }
    .nav-hamburger.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
    .nav-hamburger.open span:nth-child(2) { opacity: 0; }
    .nav-hamburger.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

    /* Mobile menu */
    .nav-mobile-menu {
      display: none;
      position: absolute;
      top: 68px;
      left: 0;
      right: 0;
      background: var(--navy);
      border-top: 1px solid rgba(255,255,255,0.08);
      padding: 16px 24px 24px;
      box-shadow: var(--shadow-lg);
    }
    .nav-mobile-menu.open { display: block; }
    .nav-mobile-menu a {
      display: block;
      font-size: 0.95rem;
      font-weight: 500;
      color: rgba(255,255,255,0.85);
      padding: 14px 0;
      border-bottom: 1px solid rgba(255,255,255,0.07);
      letter-spacing: 0.02em;
      transition: var(--transition);
    }
    .nav-mobile-menu a:last-child { border-bottom: none; }
    
    /* ============================================================
       HERO SECTION
    ============================================================ */
    #home {
      position: relative;
      min-height: 760px;
      display: flex;
      align-items: center;
      background: var(--navy);
      overflow: hidden;
      padding: 0;
    }

    /* Subtle grid overlay */
    .hero-grid {
      position: absolute;
      inset: 0;
      background-image:
        linear-gradient(rgba(46,95,138,0.15) 1px, transparent 1px),
        linear-gradient(90deg, rgba(46,95,138,0.15) 1px, transparent 1px);
      background-size: 48px 48px;
      opacity: 0.6;
    }

    /* Deep gradient overlay */
    .hero-overlay {
      position: absolute;
      inset: 0;
      background: radial-gradient(ellipse 90% 80% at 60% 50%, rgba(19,34,55,0.4) 0%, var(--navy) 70%),
                  linear-gradient(135deg, rgba(11,24,41,0.9) 0%, rgba(26,46,71,0.6) 100%);
    }

    /* Architectural SVG diagram (right side) */
    .hero-diagram {
      position: absolute;
      right: -60px;
      top: 50%;
      transform: translateY(-50%);
      width: 580px;
      opacity: 0.18;
      pointer-events: none;
    }

    .hero-content {
      position: relative;
      z-index: 2;
      max-width: 1160px;
      margin: 0 auto;
      padding: 122px 24px 150px;
      width: 100%;
    }
	
	/* Hero right-side bridge diagram */
	.hero-arch2-visual {
	position: absolute;
	right: 24px;
	top: 190px;
	transform: none;
	width: min(40vw, 500px);
	max-width: 500px;
	z-index: 2;
	pointer-events: none;
	}

	.hero-arch2-visual img {
	width: 100%;
	height: auto;
	display: block;
	object-fit: contain;
	border-radius: 12px;
	box-shadow: 0 18px 36px rgba(0, 0, 0, 0.26);
	}

    .hero-qualifier {
	display: inline-block;
	font-size: 0.78rem;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--steel-muted);
	margin-bottom: 28px;
	line-height: 1.8;
	}

    .hero-headline {
      font-family: var(--font-display);
      font-size: clamp(2.1rem, 5.5vw, 3.9rem);
      font-weight: 600;
      color: var(--white);
      line-height: 1.12;
      margin-bottom: 24px;
      max-width: 760px;
      letter-spacing: -0.01em;
    }
    
    .hero-cio-small {
	display: block;
	margin-top: 10px;
	font-family: var(--font-body);
	font-size: 0.38em;
	font-weight: 600;
	line-height: 1.28;
	letter-spacing: 0.02em;
	color: var(--steel-muted);
	}

    .hero-subheadline {
      font-size: clamp(1rem, 2vw, 1.15rem);
      color: rgba(255,255,255,0.65);
      line-height: 1.75;
      max-width: 600px;
      margin-bottom: 32px;
      font-weight: 300;
    }

    .hero-credibility {
      display: inline-flex;
      align-items: flex-start;
      gap: 12px;
      background: rgba(255,255,255,0.05);
      border: 1px solid rgba(255,255,255,0.10);
      border-left: 3px solid var(--steel-light);
      border-radius: var(--radius);
      padding: 14px 20px;
      margin-bottom: 44px;
      width: 100%;
	  max-width: 100%;
    }
    .hero-credibility p {
      font-size: 0.875rem;
      color: rgba(255,255,255,0.55);
      line-height: 1.65;
      font-weight: 300;
    }
	
	/* Keep hero text clear of the right-side diagram on desktop */
	@media (min-width: 1025px) {
	.hero-headline {
    max-width: 560px;
	}

	.hero-subheadline {
    max-width: 540px;
	}

	.hero-credibility {
	width: 100%;
    max-width: 100%;
	}
	}

    .hero-cta-group {
      display: flex;
      gap: 14px;
      flex-wrap: wrap;	  
	  position: relative;      
	  z-index: 3;      
	  margin-bottom: 10px;
    }

    .btn-primary {
      display: inline-block;
      background: var(--steel-light);
      color: var(--white);
      font-size: 0.9rem;
      font-weight: 600;
      letter-spacing: 0.02em;
      padding: 15px 32px;
      border-radius: var(--radius);
      border: 2px solid var(--steel-light);
      transition: var(--transition);
      cursor: pointer;
      white-space: nowrap;
    }
    
	.btn-secondary {
      display: inline-block;
      background: transparent;
      color: rgba(255,255,255,0.85);
      font-size: 0.9rem;
      font-weight: 500;
      letter-spacing: 0.02em;
      padding: 15px 32px;
      border-radius: var(--radius);
      border: 2px solid rgba(255,255,255,0.25);
      transition: var(--transition);
      cursor: pointer;
      white-space: nowrap;
    }
    
	/* Hero scroll indicator */
    .hero-scroll {
      position: absolute;
      bottom: 10px;
      left: 50%;
      transform: translateX(-50%);
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 8px;
      opacity: 0.55;
      z-index: 2;
    }
    .hero-scroll span {
      font-size: 0.65rem;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: var(--white);
    }
    .hero-scroll-line {
      width: 1px;
      height: 32px;
      background: linear-gradient(to bottom, transparent, var(--white));
    }

    /* ============================================================
       TRUST BAR
    ============================================================ */
    #trust-bar {
      background: #EEF2F6;
      padding: 0;
    }
    #trust-bar section { padding: 0; }

    .trust-bar-inner {
      background: #EEF2F6;
      padding: 36px 24px;
    }

    .trust-bar-grid {
      display: grid;
      grid-template-columns: repeat(5, 1fr);
      gap: 0;
      max-width: 1160px;
      margin: 0 auto;
    }

    .trust-bar-item {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
      padding: 20px 16px;
      border-right: 1px solid #D4DCE8;
      gap: 10px;
    }
    .trust-bar-item:last-child { border-right: none; }

    .trust-bar-icon {
      width: 36px;
      height: 36px;
      margin-bottom: 4px;
      opacity: 0.6;
    }

    .trust-bar-value {
      font-family: var(--font-display);
      font-size: 1.5rem;
      font-weight: 600;
      color: var(--navy);
      line-height: 1.1;
    }

    .trust-bar-label {
      font-size: 0.72rem;
      font-weight: 600;
      letter-spacing: 0.05em;
      color: #5F6673;
      text-transform: uppercase;
      line-height: 1.4;
    }

    /* ============================================================
       ABOUT THE TRAINER
    ============================================================ */
    #about { background: var(--white); }

    /*.about-grid {
      display: grid;
      grid-template-columns: 1fr 420px;
      column-gap: 48px;
	  row-gap: 12px;
	  align-items: start;
    }*/
	
	.about-grid {
	display: block;
	}

    .about-text p {
      font-size: 1rem;
      line-height: 1.8;
      color: var(--text-body);
      margin-bottom: 18px;
    }
    .about-text p:last-child { margin-bottom: 0; }

    .about-visual {
      position: relative;
    }
	
	.about-text-with-video {
	width: 100%;
	max-width: 100%;
	}

	.about-text-with-video::after {
	content: "";
	display: block;
	clear: both;
	}

	#about .about-visual-float {
	float: right;
	width: 240px;
	max-width: 32%;
	margin: 0 0 14px 24px !important;
	display: flex !important;
	justify-content: flex-end !important;
	align-items: flex-start !important;
	}

	.about-visual-float .trainer-video-card {
	width: 100% !important;
	max-width: 240px !important;
	margin: 0 !important;
	}

	.about-visual-float .trainer-video-frame {
	width: 100% !important;
	max-width: 240px !important;
	}

    /* ============================================================
       CURRICULUM
    ============================================================ */
    #curriculum { background: var(--off-white); }

    .module-grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 20px;
    }

    .module-card {
      background: #F1F3F6;
      border: 1px solid #D9DEE7;
      border-radius: var(--radius-lg);
      padding: 28px 28px 24px;
      transition: var(--transition);
      position: relative;
      overflow: hidden;
    }

    .module-card::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 3px;
      height: 100%;
      background: var(--steel-light);
      opacity: 0;
      transition: var(--transition);
    }

	.module-number {
      font-size: 0.65rem;
      font-weight: 600;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: var(--steel-muted);
      margin-bottom: 10px;
    }

    .module-title {
      font-family: var(--font-display);
      font-size: 1rem;
      font-weight: 600;
      color: var(--navy);
      line-height: 1.35;
      margin-bottom: 10px;
    }

    .module-desc {
      font-size: 0.875rem;
      color: var(--text-muted);
      line-height: 1.65;
    }

    /* ============================================================
       OUTCOMES
    ============================================================ */
    #outcomes { background: var(--white); }

    .outcomes-grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 20px;
    }

    .outcome-card {
      background: var(--off-white);
      border: 1px solid var(--border-light);
      border-radius: var(--radius-lg);
      padding: 28px 28px 24px;
      display: flex;
      gap: 18px;
      align-items: flex-start;
      transition: var(--transition);
    }

	.outcome-icon {
      flex-shrink: 0;
      width: 36px;
      height: 36px;
      background: var(--navy);
      border-radius: 6px;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-top: 2px;
    }

    .outcome-icon svg {
      width: 18px;
      height: 18px;
      stroke: rgba(255,255,255,0.8);
      fill: none;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    .outcome-number {
      font-size: 0.62rem;
      letter-spacing: 0.12em;
      text-transform: uppercase;
	  font-weight: 800;
	  color: var(--text-primary);
      margin-bottom: 6px;
    }

    .outcome-text {
      font-size: 0.9rem;
      color: var(--text-body);
      line-height: 1.65;
    }

    /* ============================================================
       DIFFERENTIATION
    ============================================================ */
    #differentiation { background: var(--navy); }
    #differentiation .section-tag { color: rgba(255,255,255,0.4); }
    #differentiation .section-title { color: var(--white); }
    #differentiation .section-intro { color: rgba(255,255,255,0.5); }

    .diff-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 20px;
      margin-bottom: 48px;
    }

    .diff-card {
      background: rgba(255,255,255,0.04);
      border: 1px solid rgba(255,255,255,0.08);
      border-radius: var(--radius-lg);
      padding: 36px 28px;
      transition: var(--transition);
    }

    .diff-card-icon {
      width: 44px;
      height: 44px;
      margin-bottom: 20px;
      background: rgba(61,124,181,0.15);
      border-radius: 8px;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .diff-card-icon svg {
      width: 22px;
      height: 22px;
      stroke: var(--steel-muted);
      fill: none;
      stroke-width: 1.75;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    .diff-card-title {
      font-family: var(--font-display);
      font-size: 1.1rem;
      font-weight: 600;
      color: var(--white);
      margin-bottom: 14px;
    }

    .diff-card-desc {
      font-size: 0.875rem;
      color: rgba(255,255,255,0.48);
      line-height: 1.7;
    }

    .diff-closing {
      max-width: 720px;
      margin: 0 auto;
      text-align: center;
      font-size: 0.95rem;
      color: rgba(255,255,255,0.45);
      line-height: 1.75;
      padding-top: 16px;
      border-top: 1px solid rgba(255,255,255,0.07);
    }

    /* ============================================================
       FORMAT & DELIVERY
    ============================================================ */
    #format { background: var(--off-white); }

    .format-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
	}

	.format-card {
	background: #3F4650;
	border: 1px solid #545D69;
	border-radius: var(--radius-lg);
	color: var(--white);
	padding: 20px 20px 18px;
	min-height: auto;
	transition: var(--transition);
	}

	.format-card-icon {
	width: 34px;
	height: 34px;
	margin-bottom: 12px;
	background: rgba(255,255,255,0.08);
	border: 1px solid rgba(255,255,255,0.16);
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	}

	.format-card-icon svg {
	width: 17px;
	height: 17px;
	stroke: rgba(255,255,255,0.72);
	fill: none;
	stroke-width: 1.75;
	stroke-linecap: round;
	stroke-linejoin: round;
	}

	.format-card-label {
	margin-bottom: 4px;
	font-size: 0.62rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #B9D7F0;
	}

	.format-card-value {
	font-size: 0.875rem;
	line-height: 1.45;
	font-weight: 500;
	color: rgba(255,255,255,0.88);
	}

    /* ============================================================
       FAQ
    ============================================================ */
    #faq { background: var(--white); }
	
	/*.faq-item {
      border: 1px solid var(--border-light);
      border-radius: var(--radius-lg);
      margin-bottom: 12px;
      overflow: hidden;
      transition: var(--transition);
    }*/

    .faq-item.open {
      border-color: var(--border);
      box-shadow: var(--shadow-sm);
    }

    .faq-question {
	display: flex;
	justify-content: space-between;
	align-items: center;
	
	width: 100%;
	padding: 14px 16px; gap: 12px; min-height: 58px;
	cursor: pointer;
	background: var(--white);
	border: 0;
	color: inherit;
	font: inherit;
	text-align: left;
	transition: var(--transition);
	user-select: none;
    }

	.faq-item.open .faq-question { 
	background: var(--off-white); 
	}
	
	.faq-question:focus-visible {
	outline: 3px solid rgba(61,124,181,0.35);
	outline-offset: 2px;
	}

    /*.faq-question-text {
      font-size: 0.95rem;
      font-weight: 500;
      color: var(--text-primary);
      line-height: 1.5;
    }*/

    .faq-toggle {
      flex-shrink: 0;
	  background: var(--off-white);
      border: 1px solid var(--border-light);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: var(--transition);
    }

    .faq-item.open .faq-toggle {
      background: var(--navy);
      border-color: var(--navy);
    }

    .faq-toggle svg {
	  stroke: var(--text-muted);
      fill: none;
      stroke-width: 2.5;
      stroke-linecap: round;
      transition: var(--transition);
    }
    
	.faq-item.open .faq-toggle svg { 
	stroke: var(--white); 
	transform: rotate(180deg); 
	}
	
    .faq-item.open .faq-answer { 
	display: block; 
	}

    /* ============================================================
       CONTACT
    ============================================================ */
    #contact { background: var(--off-white); }

    .contact-grid {
      display: grid;
      grid-template-columns: 1fr 400px;
      gap: 80px;
      align-items: start;
    } 

    .form-row {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
    }

    .form-group {
      display: flex;
      flex-direction: column;
      margin-bottom: 16px;
    }

    .form-group label {
      font-size: 0.8rem;
      font-weight: 600;
      letter-spacing: 0.04em;
      color: var(--text-primary);
      margin-bottom: 6px;
      text-transform: uppercase;
    }

    .form-group label .optional {
      font-weight: 400;
      color: var(--text-subtle);
      letter-spacing: 0;
      text-transform: none;
      font-size: 0.75rem;
      margin-left: 4px;
    }

    .form-group input,
    .form-group textarea {
      font-family: var(--font-body);
      font-size: 0.9rem;
      color: var(--text-primary);
      background: var(--white);
      border: 1px solid var(--border);
      border-radius: var(--radius);
      padding: 13px 16px;
      transition: var(--transition);
      width: 100%;
      -webkit-appearance: none;
    }

    .form-group input:focus,
    .form-group textarea:focus {
      outline: none;
      border-color: var(--steel-light);
      box-shadow: 0 0 0 3px rgba(61,124,181,0.1);
    }

    .form-group textarea {
      resize: vertical;
      min-height: 120px;
      line-height: 1.6;
    }

    .form-submit {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      background: var(--navy);
      color: var(--white);
      font-family: var(--font-body);
      font-size: 0.9rem;
      font-weight: 600;
      letter-spacing: 0.02em;
      padding: 15px 36px;
      border-radius: var(--radius);
      border: 2px solid var(--navy);
      cursor: pointer;
      transition: var(--transition);
      margin-top: 8px;
    }
    
	.form-success {
      display: none;
      background: var(--white);
      border: 1px solid #C6E6D1;
      border-left: 4px solid #2E8B57;
      border-radius: var(--radius-lg);
      padding: 32px 28px;
    }

    .form-success.visible { display: block; }

    .form-success-icon {
      width: 48px;
      height: 48px;
      background: #F0FBF4;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 16px;
    }

    .form-success-icon svg {
      width: 22px;
      height: 22px;
      stroke: #2E8B57;
      fill: none;
      stroke-width: 2.5;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    .form-success h3 {
      font-family: var(--font-display);
      font-size: 1.15rem;
      color: var(--navy);
      margin-bottom: 10px;
    }

    .form-success p {
      font-size: 0.9rem;
      color: var(--text-muted);
      line-height: 1.7;
    }

    /* Contact sidebar */
    .contact-sidebar {
      position: sticky;
      top: 100px;
    }

    .contact-sidebar-card {
      background: var(--navy);
      border-radius: var(--radius-lg);
      padding: 36px 28px;
      margin-bottom: 20px;
    }

    .contact-sidebar-title {
      font-family: var(--font-display);
      font-size: 1rem;
      font-weight: 600;
      color: var(--white);
      margin-bottom: 6px;
    }

    .contact-sidebar-sub {
      font-size: 0.8rem;
      color: rgba(255,255,255,0.4);
      margin-bottom: 24px;
      line-height: 1.5;
    }

    .contact-method {
      display: flex;
      align-items: center;
      gap: 14px;
      padding: 14px 0;
      border-bottom: 1px solid rgba(255,255,255,0.07);
	  text-decoration: none;
	  color: inherit;
    }
    .contact-method:last-child { 
	border-bottom: none; 
	}

    .contact-method-icon {
      width: 36px;
      height: 36px;
      background: rgba(255,255,255,0.06);
      border-radius: 6px;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }

    .contact-method-icon svg {
      width: 16px;
      height: 16px;
      stroke: rgba(255,255,255,0.55);
      fill: none;
      stroke-width: 1.75;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    .contact-method-label {
      font-size: 0.7rem;
      font-weight: 600;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: rgba(255,255,255,0.35);
      margin-bottom: 2px;
    }

    .contact-method-value {
      font-size: 0.875rem;
      color: rgba(255,255,255,0.7);
      transition: var(--transition);
    }
  
    .contact-response-note {
      background: var(--white);
      border: 1px solid var(--border-light);
      border-radius: var(--radius-lg);
      padding: 20px 22px;
    }

    .contact-response-note p {
      font-size: 0.82rem;
      color: var(--text-muted);
      line-height: 1.65;
    }

    /* ============================================================
       FOOTER
    ============================================================ */
    footer {
      background: var(--navy);
      color: var(--white);
      padding: 0;
    }

    .footer-main {
      display: grid;
      grid-template-columns: 1.4fr 1fr 1fr;
      gap: 60px;
      padding: 60px 24px 48px;
      max-width: 1160px;
      margin: 0 auto;
      border-bottom: 1px solid rgba(255,255,255,0.07);
    }

    .footer-brand-name {
      font-family: var(--font-display);
      font-size: 1.1rem;
      font-weight: 600;
      color: var(--white);
      line-height: 1.3;
      margin-bottom: 12px;
    }

    .footer-tagline {
      font-size: 0.8rem;
      color: rgba(255,255,255,0.35);
      line-height: 1.65;
      font-style: italic;
    }

    .footer-nav-title,
    .footer-contact-title {
      font-size: 0.65rem;
      font-weight: 700;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: rgba(255,255,255,0.3);
      margin-bottom: 18px;
    }

    .footer-nav-links {
      display: flex;
      flex-direction: column;
      gap: 10px;
    }

    .footer-nav-links a {
      font-size: 0.875rem;
      color: rgba(255,255,255,0.5);
      transition: var(--transition);
    }
    

    .footer-contact-items {
      display: flex;
      flex-direction: column;
      gap: 12px;
    }

    .footer-contact-item {
      display: flex;
      align-items: center;
      gap: 10px;
      font-size: 0.85rem;
      color: rgba(255,255,255,0.5);
      transition: var(--transition);
    }

    .footer-contact-item svg {
      width: 14px;
      height: 14px;
      stroke: rgba(255,255,255,0.35);
      fill: none;
      stroke-width: 1.75;
      stroke-linecap: round;
      stroke-linejoin: round;
      flex-shrink: 0;
    }

    .footer-bottom {
      background: rgba(0,0,0,0.2);
    }

    .footer-bottom-inner {
      max-width: 1160px;
      margin: 0 auto;
      padding: 20px 24px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 16px;
      flex-wrap: wrap;
    }

    .footer-bottom p {
      font-size: 0.78rem;
      color: rgba(255,255,255,0.55);
      line-height: 1.5;
    }
	
	@media (max-height: 740px) {
      .hero-scroll {
        display: none;
      }

      .hero-content {
        padding-bottom: 96px;
      }
    }
	
	#about .section-tag {
      margin-bottom: 8px;
    }

    #about .section-title {
      margin-bottom: 12px;
    }

    #about .about-text p {
      margin-bottom: 13px;
      line-height: 1.72;
    }

    #about .about-text p:first-of-type {
      margin-top: 0;
    }

	#curriculum .section-intro {
      margin-bottom: 34px;
    }

    #outcomes .section-intro {
      max-width: 1000px;
      margin-bottom: 34px;
    }

    #format .section-intro {
      max-width: 950px;
      margin-bottom: 34px;
    }

    .privacy-note {
      margin-top: 12px;
      font-size: 0.78rem;
      color: var(--text-muted);
      line-height: 1.55;
      max-width: 760px;
    }

    /* ============================================================
       RESPONSIVE — TABLET (≤ 1024px)
    ============================================================ */
    @media (max-width: 1024px) {

      #home {
        min-height: auto;
      }

      .hero-content {
        padding-bottom: 96px;
      }

      .hero-scroll {
        display: none;
      }
	  
	  #about .about-grid {
	display: block;
	}

      .about-visual {
        order: 0;
      }

      .trainer-video-card {
        max-width: 520px;
      }

      .nav-links { display: none; }
      .nav-hamburger { display: flex; }

      .about-grid { grid-template-columns: 1fr; gap: 48px; }
      .about-visual { order: -1; }
      .about-stats { grid-template-columns: repeat(4, 1fr); }

      .diff-grid { grid-template-columns: 1fr 1fr; }
      .format-grid { grid-template-columns: repeat(2, 1fr); }

      .contact-grid { grid-template-columns: 1fr; gap: 48px; }
      .contact-sidebar { position: static; }

      .footer-main { grid-template-columns: 1fr 1fr; gap: 40px; }
    }

    /* ============================================================
       RESPONSIVE — MOBILE (≤ 640px)
    ============================================================ */
    @media (max-width: 640px) {

      .btn-secondary {
        white-space: normal;
        width: 100%;
      }

      .btn-primary {
        width: 100%;
      }

      .trust-bar-grid { grid-template-columns: repeat(2, 1fr); gap: 1px; }
      .trust-bar-item { border-right: none; border-bottom: 1px solid #D4DCE8; padding: 24px 16px; }
      .trust-bar-item:nth-child(odd) { border-right: 1px solid #D4DCE8; }
      .trust-bar-item:nth-last-child(1):nth-child(odd) { grid-column: span 2; border-right: none; }

      .module-grid,
      .outcomes-grid { grid-template-columns: 1fr; }

      .diff-grid { grid-template-columns: 1fr; }
      .format-grid { grid-template-columns: 1fr; }

      .form-row { grid-template-columns: 1fr; }

      .about-stats { grid-template-columns: repeat(2, 1fr); }

      .hero-qualifier { font-size: 0.68rem; letter-spacing: 0.1em; }
      

      .hero-cta-group { flex-direction: column; }
      .btn-primary, .btn-secondary { text-align: center; }

      .footer-main { grid-template-columns: 1fr; gap: 36px; }
      .footer-bottom-inner { flex-direction: column; align-items: flex-start; }

      .contact-grid { gap: 36px; }
    }

    /* ============================================================
       UTILITY
    ============================================================ */
    .text-center { text-align: center; }
    .mb-0 { margin-bottom: 0; }
    .sr-only {
      position: absolute;
      width: 1px; height: 1px;
      padding: 0; margin: -1px;
      overflow: hidden;
      clip: rect(0,0,0,0);
      border: 0;
    }
	
	#about .about-visual {
      margin-top: 22px;
    }

    #about .trainer-video-card {
      max-width: 440px;
      margin-left: auto;
      background: var(--navy-mid);
    }

    #about .trainer-video-frame {
      padding: 14px;
    }

    #about .trainer-video-frame video {
      aspect-ratio: 16 / 9;
    }

    .about-continuation {
      margin-top: 26px;
      max-width: 100%;
    }

    .about-continuation p {
      font-size: 1rem;
      line-height: 1.78;
      color: var(--text-body);
      margin: 0 0 14px;
    }

    .about-continuation p:last-child {
      margin-bottom: 0;
    }
	
	@media (max-width: 1024px) {
      #about .about-grid {
        grid-template-columns: 1fr;
        gap: 26px;
      }

      #about .about-visual {
        margin-top: 0;
      }

      #about .trainer-video-card {
        max-width: 560px;
        margin-left: 0;
      }

      .about-continuation {
        margin-top: 22px;
      }
    }

	#curriculum .curriculum-intro,
	.single-line-intro {
	width: 100%;
	max-width: 100%;
	white-space: normal;
	overflow-wrap: break-word;
	word-break: normal;
	text-align: left;
	margin-left: 0;
	margin-right: 0;
	font-size: 1.08rem;
	font-weight: 500;
	color: #5F6673;
	line-height: 1.65;
	}
	
    /* ============================================================
       FINAL REFINEMENTS: JUSTIFIED ABOUT TEXT + COMPACT FAQ
    ============================================================ */
    #about .about-text p,
    #about .about-continuation p {
      text-align: justify;
      text-justify: inter-word;
    }

    #faq .section-tag {
      display: block;
      text-align: center;
      margin-bottom: 8px;
    }

    #faq .section-title {
      margin-bottom: 10px;
	  text-align: center;
    }

    #faq .section-intro {
      margin: 0 auto 28px !important;
      max-width: 720px;
      font-size: 0.95rem;
      line-height: 1.55;
    }

    .faq-list {
      max-width: 1040px;
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
      align-items: start;
    }

    .faq-item {
      
      
	  background: var(--white);   
	  border: 1px solid var(--border-light);     
	  border-radius: var(--radius-lg);      
	  margin-bottom: 12px;      
	  overflow: hidden;       
	  transition: var(--transition);
    }

    .faq-question-text {
      font-size: 0.875rem;
      line-height: 1.35; color: var(--text-primary); font-weight: 500;
    }
	
	.faq-answer {
      padding: 0 16px 14px; display: none; border-top: 1px solid var(--border-light);
    }

    .faq-answer p {
      padding-top: 12px;
      font-size: 0.84rem;
      line-height: 1.58;
    }
	
	.faq-inline-link {
	color: var(--steel);
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 3px;
	}

    @media (max-width: 760px) {
	.faq-list {
    grid-template-columns: 1fr;
	}

	#faq {
    padding-top: 48px;
    padding-bottom: 48px;
	}

	#about .about-text p {
	text-align: justify;
	text-justify: inter-word;
	}

	#about .about-continuation p,
	#about .about-full-width-text {
	text-align: left;
	}

	.about-visual-float {
	float: none;
	width: 100%;
	max-width: 180px;
	margin: 0 auto 18px;
	justify-content: center !important;
	}

	.about-visual-float .trainer-video-card,
	.about-visual-float .trainer-video-frame {
	max-width: 144px !important;
	}

	.about-full-width-text {
    clear: none;
	}
	}

    /* ============================================================
       NEW PROGRAMME TRACKS + CXO INSIGHT PANEL
    ============================================================ */
    .skip-link {
      position: fixed;
      top: -80px;
      left: 24px;
      z-index: 9999;
      background: var(--steel-light);
      color: var(--white);
      padding: 10px 14px;
      border-radius: var(--radius);
      font-weight: 600;
      transition: top 0.2s ease;
    }

    .skip-link:focus {
      top: 18px;
    }

    .programme-pathways {
      margin: 10px 0 54px;
      padding: 30px;
      border: 1px solid var(--border-light);
      border-radius: var(--radius-lg);
      background: linear-gradient(135deg, #FFFFFF 0%, #F7FAFD 100%);
      box-shadow: var(--shadow-sm);
    }

    .programme-pathways-intro {
      max-width: 980px;
      margin-bottom: 26px;
      color: var(--text-body);
      font-size: 1rem;
      line-height: 1.7;
    }

    .track-subtitle {
      font-size: 0.84rem;
      color: var(--text-muted);
      margin-bottom: 18px;
      line-height: 1.55;
    }

    .track-section {
      margin-top: 14px;
      padding-top: 14px;
      border-top: 1px solid var(--border-light);
    }

    .track-section:first-of-type {
      margin-top: 0;
      padding-top: 0;
      border-top: none;
    }

    .track-section-title {
      font-size: 0.68rem;
      font-weight: 700;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: var(--steel);
      margin-bottom: 8px;
    }

    .track-list {
      display: grid;
      gap: 5px;
      margin: 0;
      padding-left: 0;
    }

    .track-list li {
      position: relative;
      padding-left: 14px;
      font-size: 0.82rem;
      line-height: 1.45;
      color: var(--text-body);
    }

    .track-list li::before {
      content: '';
      position: absolute;
      left: 0;
      top: 0.62em;
      width: 5px;
      height: 5px;
      border-radius: 999px;
      background: var(--steel-light);
    }

    .framework-note {
      background: #EEF3F8;
      border: 1px solid #D8E2ED;
      border-left: 4px solid var(--steel-light);
      border-radius: var(--radius);
      padding: 18px 20px;
      color: var(--text-body);
      font-size: 0.92rem;
      line-height: 1.7;
    }

    .framework-note strong {
      color: var(--navy);
    }

    .section-divider-heading {
      margin-top: 54px;
    }

    .exec-insight-panel {
      margin: 10px 0 52px;
      padding: 34px 36px;
      border-radius: var(--radius-lg);
      background: #CBD3DD;
	  border: 1px solid rgba(11, 24, 41, 0.16);
	  box-shadow: var(--shadow-lg);
      position: relative;
      overflow: hidden;
    }

    .exec-insight-panel::before {
      content: '';
      position: absolute;
      inset: 0;
      background-image:
        linear-gradient(rgba(11,24,41,0.05) 1px, transparent 1px),
		linear-gradient(90deg, rgba(11,24,41,0.05) 1px, transparent 1px);
      background-size: 36px 36px;
      opacity: 0.45;
      pointer-events: none;
    }

    .exec-insight-panel > * {
      position: relative;
      z-index: 1;
    }

    .exec-insight-kicker {
      display: inline-block;
      font-size: 0.66rem;
      font-weight: 700;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: #000000 !important;
      margin-bottom: 12px;
    }

    .exec-insight-title {
      font-family: var(--font-display);
      font-size: clamp(1.45rem, 2.4vw, 2rem);
      color: #000000 !important;
      font-weight: 600;
      line-height: 1.22;
      margin-bottom: 18px;
    }

    .exec-insight-panel p {
      color: var(--text-body);
      font-size: 0.94rem;
      line-height: 1.72;
      margin-bottom: 14px;
    }

    .exec-insight-panel p:last-child {
      margin-bottom: 0;
    }

    .exec-insight-image-wrap {
	margin: 22px 0 24px;
	padding: 14px;
	border-radius: var(--radius-lg);
	background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.18);
	text-align: center;
	}

	.exec-insight-image {
	display: block;
	width: 100%;
	max-width: 920px;
	height: auto;
	margin: 0 auto;
	object-fit: contain;
	border-radius: 10px;
	}

    #curriculum .section-title.section-divider-heading {
      margin-bottom: 16px;
    }

    #outcomes .section-title.outcomes-heading {
      margin-bottom: 16px;
    }

    @media (max-width: 1024px) {
    .track-grid {
    grid-template-columns: 1fr;
    }

    .programme-pathways {
    padding: 24px;
    }
	  
	.exec-insight-image-wrap {
	margin: 18px 0 20px;
	padding: 10px;
	}
    }

    @media (max-width: 760px) {
      .programme-pathways,
      .exec-insight-panel {
        padding: 22px 18px;
      }

      .section-divider-heading {
        margin-top: 42px;
      }
    }
	
	.track-accordion {
	  filter: drop-shadow(0 12px 18px rgba(46,95,138,0.10));
      border: 0;
      border-radius: 22px;
      background: transparent;
      box-shadow: 0 10px 28px rgba(11,24,41,0.08);
      overflow: visible;
    }
    .track-accordion summary {
      list-style: none;
    }

    .track-accordion summary::-webkit-details-marker {
      display: none;
    }

	.track-accordion-kicker {
      font-size: 0.7rem;
      font-weight: 700;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: rgba(255,255,255,0.86);
      padding-right: 34px;
    }

    .track-accordion-title {
      font-family: var(--font-display);
      font-size: 1.08rem;
      font-weight: 600;
      line-height: 1.25;
      color: #FFFFFF;
      padding-right: 34px;
    }

    .track-accordion-icon::before,
    .track-accordion-icon::after {
      content: '';
      position: absolute;
      top: 50%;
      left: 50%;
      width: 12px;
      height: 2px;
      background: #FFFFFF;
      border-radius: 999px;
      transform: translate(-50%, -50%);
      transition: transform 0.2s ease, opacity 0.2s ease;
    }

    .track-accordion-icon::after {
      transform: translate(-50%, -50%) rotate(90deg);
    }

    .track-accordion[open] .track-accordion-icon::after {
      opacity: 0;
    }

    .track-accordion-panel {
      margin-top: 10px;
      padding: 22px 22px 20px;
      background: #FFFFFF;
      border: 1px solid #D6E4F1;
      border-radius: 20px;
      box-shadow: 0 8px 24px rgba(11,24,41,0.06);
    }

    .track-accordion .track-subtitle {
      margin-bottom: 16px;
    }

    .module-grid.module-grid-rich {
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 20px;
    }

	.module-copy {
      display: grid;
      gap: 10px;
      color: var(--text-body);
      font-size: 0.92rem;
      line-height: 1.62;
    }

    .module-copy p {
      margin: 0;
      color: var(--text-body);
    }

    .module-objective {
      margin-top: 16px;
      padding: 16px 16px 14px;
      background: #FFF2DA;
      border: 1px solid #E5C48B;
      border-radius: 20px;
    }

    .module-objective-label {
      font-size: 0.72rem;
      font-weight: 800;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: var(--text-primary);
      margin-bottom: 8px;
    }

    .module-objective p {
      margin: 0;
      color: var(--text-body);
      font-size: 0.9rem;
      line-height: 1.58;
    }

    @media (max-width: 1180px) { 
	  .module-grid.module-grid-rich {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (max-width: 768px) {
      .module-grid.module-grid-rich {
        grid-template-columns: 1fr;
      }

      .track-accordion-summary {
        padding: 16px 18px;
      }

      .track-accordion-panel {
        padding: 18px 18px 16px;
      }
    }

    #about {
      padding-top: 72px;
      padding-bottom: 64px;
    }

    #about .about-grid {
	  grid-template-columns: 1fr 420px;
      
    }

    
	#about .section-title {
      margin-bottom: 14px;
    }

    #about .about-text p {
	margin-bottom: 0 !important;
	line-height: 1.72;   text-align: justify;  text-justify: inter-word;
	}
	
	/* About intro paragraphs: no gap, justified, safe around floated video */
	#about .about-text .about-intro-copy {
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.72 !important;
	text-align: justify !important;
	text-justify: inter-word;
	}

	#about .about-text .about-intro-copy + .about-intro-copy {
	margin-top: 0 !important;
	}
	
    .about-executive-continuation {
      margin-top: 22px;
      padding: 24px 26px;
      background: #F7FAFD;
      border: 1px solid #DDE6F0;
      border-left: 4px solid var(--steel-light);
      border-radius: var(--radius-lg);
      box-shadow: 0 3px 14px rgba(11,24,41,0.05);
    }

    .about-executive-continuation p {
      margin-bottom: 12px;
      line-height: 1.72;
    }

    .about-executive-continuation p:last-child {
      margin-bottom: 0;
    }

    .about-experience-list {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 8px 14px;
      margin: 12px 0 18px;
      padding: 0;
    }

    .about-experience-list li {
      position: relative;
      padding: 10px 12px 10px 28px;
      background: #FFFFFF;
      border: 1px solid #E1E8F1;
      border-radius: 8px;
      color: var(--text-body);
      font-size: 0.88rem;
      line-height: 1.42;
      box-shadow: 0 1px 5px rgba(11,24,41,0.04);
    }

    .about-experience-list li::before {
      content: "";
      position: absolute;
      left: 12px;
      top: 1.05em;
      width: 6px;
      height: 6px;
      border-radius: 999px;
      background: var(--steel-light);
    }

	.track-accordion-summary {
      min-height: 112px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      gap: 8px;
      padding: 20px 52px 20px 22px;
      border-radius: 18px;
      background:
        linear-gradient(180deg, rgba(255,255,255,0.18) 0%, rgba(255,255,255,0) 45%),
        linear-gradient(135deg, #2E5F8A 0%, #3D7CB5 52%, #5E9BE0 100%);
      border: 1px solid rgba(255,255,255,0.32);
      box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.35),
        0 12px 28px rgba(46,95,138,0.24);
      transition: transform 0.22s ease, box-shadow 0.22s ease, filter 0.22s ease; 
	  height: 112px; 
	  align-items: flex-start; 
	  text-align: left;
    }

	.track-accordion-kicker,
    .track-accordion-title {
      padding-right: 0;
    }

    .track-accordion-kicker {
      color: rgba(255,255,255,0.86);
      font-size: 0.68rem;
    }

    .track-accordion-title {
      font-size: 1.1rem;
      max-width: 95%;
    }

    .track-accordion-icon {
      top: 50%;
      transform: translateY(-50%);
      border: 1px solid rgba(255,255,255,0.45);
      border-radius: 999px;
      background: rgba(255,255,255,0.12); 
	  position: absolute; right: 16px !important
    }

    .track-accordion-icon::before,
    .track-accordion-icon::after {
      width: 12px;
    }

    .track-accordion-panel {
      border-radius: 18px;
      border: 1px solid #CFE0EF;
      background: linear-gradient(180deg, #FFFFFF 0%, #F7FBFF 100%);
    }

    .track-accordion .track-section-title {
      color: var(--steel);
    }

	@media (max-width: 1180px) {
      .about-experience-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
	}

    @media (max-width: 640px) {
      #about {
        padding-top: 60px;
        padding-bottom: 56px;
      }

      .about-executive-continuation {
        padding: 20px 18px;
      }

      .about-experience-list {
        grid-template-columns: 1fr;
      }

      .track-accordion-summary {
        min-height: 88px;
        padding: 18px 48px 18px 18px;
      }
    }

    .track-accordion-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
      gap: 20px;
      align-items: start;
    }

    .track-accordion-kicker,
    .track-accordion-title {
      display: block;
      width: 100%;
      text-align: left;
    }

    .track-accordion-title {
      min-height: 2.8em;
      display: flex;
      align-items: flex-start;
    }

    .author-showcase {
      margin: 18px 0 18px;
      padding: 24px;
      border-radius: 18px;
      background:
        radial-gradient(circle at 12% 20%, rgba(61,124,181,0.12), transparent 30%),
        linear-gradient(135deg, #FFFFFF 0%, #F3F7FC 100%);
      border: 1px solid #D8E3EF;
      box-shadow: 0 8px 22px rgba(11,24,41,0.06);
    }

    .author-showcase-copy {
      max-width: 780px;
      margin-bottom: 18px;
    }

    .author-showcase-kicker {
      display: inline-block;
      font-size: 0.68rem;
      font-weight: 800;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: var(--steel);
      margin-bottom: 8px;
    }

    .author-showcase h3 {
      font-family: var(--font-display);
      color: var(--navy);
      font-size: 1.28rem;
      line-height: 1.24;
      margin-bottom: 8px;
    }

    .author-showcase p {
      color: var(--text-muted);
      font-size: 0.94rem;
      line-height: 1.62;
    }

    .book-tile-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 18px;
    }

    .book-tile {
      display: grid;
      grid-template-columns: 118px minmax(0, 1fr);
      gap: 18px;
      align-items: center;
      padding: 16px;
      background: #FFFFFF;
      border: 1px solid #DEE7F1;
      border-radius: 16px;
      box-shadow: 0 5px 18px rgba(11,24,41,0.07);
      transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
    }

	.book-cover-wrap {
      border-radius: 12px;
      overflow: hidden;
      background: #EEF3F8;
      box-shadow: 0 7px 18px rgba(11,24,41,0.18);
    }

    .book-cover-wrap img {
      width: 100%;
      aspect-ratio: 0.66 / 1;
      object-fit: cover;
      display: block;
    }

    .book-tile-content h4 {
      font-family: var(--font-display);
      color: var(--navy);
      font-size: 1.05rem;
      line-height: 1.25;
      margin-bottom: 8px;
    }

    .book-tile-content p {
      font-size: 0.88rem;
      color: var(--text-muted);
      line-height: 1.55;
      text-align: left !important;
      margin: 0;
    }

    @media (max-width: 1180px) {
      .track-accordion-grid {
        grid-template-columns: 1fr !important;
      }

      .track-accordion-summary {
        height: auto;
        min-height: 96px !important;
      }

      .track-accordion-title {
        min-height: auto;
      }
    }

    @media (max-width: 760px) {
      .book-tile-grid {
        grid-template-columns: 1fr;
      }

    }
	
	.about-experience-condensed {
      margin: 10px 0 16px !important;
      padding: 0;
      background: transparent;
      border: 0;
      color: var(--text-body);
      font-size: 0.96rem;
      line-height: 1.72;
      text-align: justify;
      text-justify: inter-word;
    }

	.module-card.module-card-rich {
      background: #F1F3F6 !important;
      border-color: #D4DAE3 !important;
      box-shadow: 0 5px 16px rgba(11,24,41,0.06);
      border-radius: 16px;
      padding: 24px 24px 22px;
      display: flex;
      flex-direction: column;
      min-height: 100%;
    }

	.module-card.module-card-rich::after {
      display: none;
    }

    .module-card-rich .module-number {
      background: transparent;
      color: var(--steel);
      padding: 0;
      border-radius: 0;
      margin-bottom: 9px;
      letter-spacing: 0.14em;
    }

    .module-card-rich .module-title {
      font-size: 1.08rem;
      margin-bottom: 12px;
    }

    .module-card-rich .module-copy {
      flex: 1 1 auto;
      gap: 9px;
    }

    .module-card-rich .module-copy p {
      font-size: 0.9rem;
      line-height: 1.58;
    }

    .module-card-rich .module-objective {
      margin-top: 22px;
      min-height: 142px;
      display: flex;
      flex-direction: column;
      justify-content: flex-start;
      border-radius: 14px;
      background: #FFF2DA;
      border: 1px solid #E1BE7B;
      padding: 16px 16px 15px;
      box-shadow: none;
    }

    .module-card-rich .module-objective p {
      font-size: 0.88rem;
      line-height: 1.52;
    }

	@media (max-width: 760px) {
      .module-card-rich .module-objective {
        min-height: auto;
      }

	}

    /* ============================================================
       FORM VALIDATION UPDATE — required fields gate submit button
    ============================================================ */

    .form-submit:disabled,
    .form-submit[aria-disabled="true"] {
      opacity: 0.55;
      cursor: not-allowed;
      transform: none !important;
      box-shadow: none !important;
      filter: grayscale(0.12);
    }

    .form-validation-status {
      margin: 12px 0 0;
      color: var(--text-muted);
      font-size: 0.84rem;
      line-height: 1.5;
    }

    .form-validation-status.ready {
      color: #0F766E;
      font-weight: 600;
    }

    .form-validation-status.error {
      color: #B42318;
      font-weight: 600;
    }

    .field-error {
      min-height: 18px;
      margin-top: 6px;
      color: #B42318;
      font-size: 0.8rem;
      font-weight: 600;
      line-height: 1.35;
    }

    .form-group input[aria-invalid="true"],
    .form-group textarea[aria-invalid="true"] {
      border-color: #B42318 !important;
      box-shadow: 0 0 0 3px rgba(180,35,24,0.10);
    }

    .form-group input.valid-field {
      border-color: rgba(15,118,110,0.55);
    }

	/* Golden hero credibility tile */
	.hero-credibility {
	background: linear-gradient(135deg, #FFF3D5 0%, #F4C76B 100%) !important;
	border: 1px solid #D6A83E !important;
	border-left: 4px solid #B8860B !important;
	box-shadow: 0 10px 28px rgba(184, 134, 11, 0.22) !important;
	}

	.hero-credibility p {
	color: #2F250B !important;
	font-weight: 600;
}
	/* Reduce book tile size in About the Trainer section */
	.author-showcase {
	  padding: 14px 16px !important;
	  margin: 12px 0 14px !important;
	}

	.author-showcase-copy {
	  margin-bottom: 10px !important;
	}

	.author-showcase h3 {
	  font-size: 1rem !important;
	  margin-bottom: 4px !important;
	}

	.author-showcase p {
	  font-size: 0.8rem !important;
	  line-height: 1.45 !important;
	}

	.book-tile-grid {
	  gap: 10px !important;
	}

	.book-tile {
	  grid-template-columns: 64px minmax(0, 1fr) !important;
	  gap: 10px !important;
	  padding: 9px !important;
	  border-radius: 12px !important;
	}

	.book-cover-wrap {
	  border-radius: 8px !important;
	  max-width: 64px !important;
	}

	.book-cover-wrap img {
	  width: 64px !important;
	  height: 96px !important;
	  object-fit: cover !important;
	}

	.book-tile-content h4 {
	  font-size: 0.84rem !important;
	  line-height: 1.25 !important;
	  margin-bottom: 4px !important;
	}

	.book-tile-content p {
	  font-size: 0.72rem !important;
	  line-height: 1.35 !important;
	}

	@media (max-width: 760px) {
	  .book-tile {
		grid-template-columns: 58px minmax(0, 1fr) !important;
	  }

	  .book-cover-wrap,
	  .book-cover-wrap img {
		width: 58px !important;
	  }

	  .book-cover-wrap img {
		height: 88px !important;
	  }
	}
	#outcomes .outcomes-intro-strong {
	width: 100% !important;
	max-width: 100% !important;
	white-space: normal !important;
	overflow-wrap: break-word !important;
	word-break: normal;
	text-align: left !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	font-size: 1.08rem !important;
	font-weight: 500;
	color: #5F6673 !important;
	line-height: 1.65;
	}
	
	/* Amazon book order buttons */
	.book-order-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 8px;
	padding: 7px 10px;
	border-radius: 8px;
	background: #FF9900;
	color: #111827 !important;
	font-size: 0.76rem;
	font-weight: 700;
	text-decoration: none;
	border: 1px solid #D98200;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
	}

	/* Reduce gap between About the Trainer and Programme Structure */
	#about {
	padding-bottom: 36px !important;
	}

	#curriculum { 
	padding-top: 42px !important; 
	padding-bottom: 40px !important; }
	
	/* Reduce gap between What Makes This Different and Programme Format / Programme Structure section */
	#differentiation {
	padding-bottom: 42px !important;
	}

	#format {
	padding-top: 42px !important;
	}

	/* Reduce gap between What This Masterclass Covers and Participant Takeaways */

	#outcomes {
	padding-top: 42px !important;
	}
	
	/* Refer a Friend collapsible footer tile */
	.refer-friend-tile {
	margin-top: 18px;
	max-width: 360px;
	border: 1px solid rgba(94, 234, 212, 0.18);
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.055);
	overflow: hidden;
	}

	.refer-friend-summary {
	list-style: none;
	cursor: pointer;
	padding: 13px 15px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	color: #ffffff;
	font-size: 0.92rem;
	font-weight: 700;
	}

	.refer-friend-summary::-webkit-details-marker {
	display: none;
	}

	.refer-friend-plus {
	position: relative;
	width: 18px;
	height: 18px;
	flex: 0 0 auto;
	border: 1px solid rgba(94, 234, 212, 0.35);
	border-radius: 999px;
	}

	.refer-friend-plus::before,
	.refer-friend-plus::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 9px;
	height: 2px;
	background: #5eead4;
	border-radius: 999px;
	transform: translate(-50%, -50%);
	}

	.refer-friend-plus::after {
	transform: translate(-50%, -50%) rotate(90deg);
	}

	.refer-friend-tile[open] .refer-friend-plus::after {
	display: none;
	}

	.refer-friend-content {
	padding: 0 15px 15px;
	display: grid;
	gap: 9px;
	}

	.refer-step {
	display: flex;
	align-items: center;
	gap: 10px;
	color: rgba(255, 255, 255, 0.78);
	font-size: 0.86rem;
	line-height: 1.4;
	}

	.refer-step-number {
	width: 22px;
	height: 22px;
	display: inline-grid;
	place-items: center;
	border-radius: 999px;
	background: rgba(94, 234, 212, 0.14);
	color: #5eead4;
	font-size: 0.75rem;
	font-weight: 800;
	flex: 0 0 auto;
	}
	
	/* Trainer video coming soon text */
	.trainer-video-coming-soon {
	padding: 10px 14px 13px;
	text-align: center;
	font-size: 0.85rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: rgba(255, 255, 255, 0.72);
	background: var(--navy-mid);
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	}
	
	/* ============================================================
	GOLDEN OFFERING SECTION
	============================================================ */

	#golden-offering {
	background: linear-gradient(135deg, #F7F4EA 0%, #FFF8E7 45%, #F3E3B5 100%) !important;
	
	}

	.golden-offering-tile {
	position: relative;
	overflow: hidden;
	border-radius: 22px;
	padding: 38px 42px;
	background:
    radial-gradient(circle at 92% 18%, rgba(244, 199, 107, 0.34), transparent 30%),
    linear-gradient(135deg, #0B1829 0%, #132237 58%, #1A2E47 100%);
	border: 1px solid rgba(214, 168, 62, 0.45);
	box-shadow: 0 18px 42px rgba(11, 24, 41, 0.20);
	}

	.golden-offering-tile::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image:
    linear-gradient(rgba(244, 199, 107, 0.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(244, 199, 107, 0.08) 1px, transparent 1px);
	background-size: 38px 38px;
	opacity: 0.55;
	pointer-events: none;
	}

	.golden-offering-tile > * {
	position: relative;
	z-index: 1;
	}

	.golden-offering-label {
	display: inline-flex;
	align-items: center;
	margin-bottom: 14px;
	padding: 7px 12px;
	border-radius: 999px;
	background: rgba(244, 199, 107, 0.14);
	border: 1px solid rgba(244, 199, 107, 0.32);
	color: #F4C76B;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	}

	.golden-offering-title {
	font-family: var(--font-display);
	max-width: 900px;
	margin-bottom: 14px;
	color: #FFFFFF;
	font-size: clamp(1.55rem, 3vw, 2.25rem);
	line-height: 1.22;
	font-weight: 600;
	}

	.golden-offering-question {
	margin-bottom: 14px;
	color: #F4C76B;
	font-size: 1.02rem;
	font-weight: 700;
	line-height: 1.55;
	}

	.golden-offering-text {
	max-width: 980px;
	margin-bottom: 24px;
	color: rgba(255, 255, 255, 0.78);
	font-size: 0.98rem;
	line-height: 1.78;
	text-align: justify;
	}

	.golden-offering-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 22px;
	border-radius: 10px;
	background: linear-gradient(135deg, #FFF3D5 0%, #F4C76B 100%);
	color: #2F250B !important;
	font-size: 0.88rem;
	font-weight: 800;
	text-decoration: none;
	border: 1px solid #D6A83E;
	box-shadow: 0 8px 20px rgba(244, 199, 107, 0.20);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
	}

	@media (max-width: 760px) {
	#golden-offering {
    padding: 42px 0 !important;
	}

  .golden-offering-tile {
   padding: 28px 22px;
   border-radius: 18px;
	}

	.golden-offering-text {
	text-align: left;
	}

	.golden-offering-link {
    width: 100%;
	}
	}	
	
	/* Change Participant Takeaways / Outcome tiles to blue */
	.outcome-card {
	background: #E7F3FF !important;
	border-color: #B8D8F3 !important;
	}

	/* Reduce size of "and" in hero heading */
	.hero-and-small {
	font-size: 0.58em;
	font-weight: 400;
	opacity: 0.82;
	vertical-align: middle;
	}
	
	/* Make differentiation closing paragraph white */
	#differentiation .diff-closing {
	color: #FFFFFF !important;
	}
	
	/* ============================================================
	GLOBAL SECTION SPACING REDUCTION
	============================================================ */
	
	/* Trust bar is not a normal content section */
	#trust-bar {
	padding: 0 !important;
	}

	.trust-bar-inner {
	padding-top: 36px !important;
	padding-bottom: 36px !important;
	}
	
	/* Golden Offering, if added */
	#golden-offering {
	padding-top: 44px !important;
	padding-bottom: 44px !important;
	}

	/* FAQ and Contact should stay compact */
	#faq {
	padding-top: 44px ;
	padding-bottom: 34px ;
	}

	#contact {
	padding-top: 42px !important;
	padding-bottom: 52px !important;
	}

	/* Footer spacing */
	.footer-main {
	padding-top: 44px !important;
	padding-bottom: 38px !important;
	}

	/* Mobile spacing */
	@media (max-width: 640px) {
	section {
    padding-top: 44px !important;
    padding-bottom: 44px !important;
	}

	.trust-bar-inner {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
	}

	#faq {
    padding-top: 38px !important;
    padding-bottom: 30px !important;
	}

	#contact {
    padding-top: 36px !important;
    padding-bottom: 44px !important;
	}

	.footer-main {
    padding-top: 38px !important;
	padding-bottom: 34px !important;
	}
	}
	
	/* Reduce space below hero CTA buttons */
	
	/* Top-left brand text styled like main menu items */
	.nav-3d-brand {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	height: 68px !important;
	padding: 0 !important;
	margin: 0 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	}

	.nav-3d-brand > span {
	display: inline-flex !important;
	align-items: center !important;
	font-family: var(--font-body) !important;
	font-size: 0.96rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.03em !important;
	color: rgba(255,255,255,0.82) !important;
	padding: 6px 12px 6px 0 !important;
	border-radius: var(--radius) !important;
	background: transparent !important;
	text-shadow: none !important;
	white-space: nowrap !important;
	line-height: 1 !important;
	transition: var(--transition) !important;
	}

	#navbar.scrolled .nav-3d-brand > span {
	color: var(--text-muted) !important;
	background: transparent !important;
	}

	@media (max-width: 640px) {
	.nav-3d-brand {
    max-width: 260px !important;
	}

	.nav-3d-brand > span {
    font-size: 0.78rem !important;
    white-space: normal !important;
    line-height: 1.25 !important;
    padding: 4px 8px !important;
	}
	}
	
	/* Reduce paragraph gap inside Module 02 only */
	/* Controlled paragraph gap inside Module 02 only */
	.module-02-card .module-copy {
	display: block !important;
	gap: 0 !important;
	}

	.module-02-card .module-copy p {
	margin-top: 0 !important;
	margin-bottom: 6px !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	line-height: 1.52 !important;
	}

	.module-02-card .module-copy p:last-child {
	margin-bottom: 0 !important;
	}
	
	/* Controlled paragraph gap inside Module 03 only */
	.module-03-card .module-copy {
	display: block !important;
	gap: 0 !important;
	}

	.module-03-card .module-copy p {
	margin-top: 0 !important;
	margin-bottom: 6px !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	line-height: 1.52 !important;
	}

	.module-03-card .module-copy p:last-child {
	margin-bottom: 0 !important;
	}
	
	/* WhatsApp image icon beside mobile number */
	.whatsapp-number {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	}

	.whatsapp-img-icon {
	width: 18px;
	height: 18px;
	object-fit: contain;
	border-radius: 50%;
	flex: 0 0 auto;
	}
	
	/* LinkedIn image icon beside LinkedIn URL */
	.linkedin-img-icon {
	width: 18px;
	height: 18px;
	object-fit: contain;
	border-radius: 3px;
	flex: 0 0 auto;
	}
	
	/* ============================================================
	MODULE ACCORDION TILES — Module 01 to Module 06
	============================================================ */

	.module-grid.module-grid-rich {
	align-items: start !important;
	}

	/* Convert module card container into accordion shell */
	.module-card.module-card-rich.module-accordion {
	background: transparent !important;
	border: 0 !important;
	padding: 0 !important;
	box-shadow: none !important;
	border-radius: 22px !important;
	overflow: visible !important;
	min-height: auto !important;
	height: auto !important;
	}

	.module-card.module-card-rich.module-accordion::before,
	.module-card.module-card-rich.module-accordion::after {
	display: none !important;
	}

	/* Remove default browser marker */
	.module-accordion summary {
	list-style: none;
	}

	.module-accordion summary::-webkit-details-marker {
	display: none;
	}

	/* Blue collapsible module button */
	.module-accordion-summary {
	position: relative;
	min-height: 112px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 8px;
	padding: 20px 52px 20px 22px;
	border-radius: 18px;
	cursor: pointer;
	text-align: left;
	background:
    linear-gradient(180deg, rgba(255,255,255,0.18) 0%, rgba(255,255,255,0) 45%),
    linear-gradient(135deg, #2E5F8A 0%, #3D7CB5 52%, #5E9BE0 100%);
	border: 1px solid rgba(255,255,255,0.32);
	box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.35),
    0 12px 28px rgba(46,95,138,0.24);
	transition: transform 0.22s ease, box-shadow 0.22s ease;
	}

	/* Module number inside blue button */
	.module-accordion-summary .module-number {
	display: block !important;
	width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	border-radius: 0 !important;
	color: rgba(255,255,255,0.86) !important;
	font-size: 0.68rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.13em !important;
	text-transform: uppercase !important;
	}

	/* Module title inside blue button */
	.module-accordion-summary .module-title {
	display: block !important;
	width: 100% !important;
	max-width: 95%;
	margin: 0 !important;
	color: #FFFFFF !important;
	font-family: var(--font-display) !important;
	font-size: 1.08rem !important;
	font-weight: 600 !important;
	line-height: 1.28 !important;
	}

	/* Plus / minus icon */
	.module-accordion-icon {
	position: absolute;
	top: 50%;
	right: 16px !important;
	
	
	transform: translateY(-50%);
	border: 1px solid rgba(255,255,255,0.45);
	border-radius: 999px;
	background: rgba(255,255,255,0.12);
	}

	.module-accordion-icon::before,
	.module-accordion-icon::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 12px;
	height: 2px;
	background: #FFFFFF;
	border-radius: 999px;
	transform: translate(-50%, -50%);
	transition: opacity 0.2s ease;
	}

	.module-accordion-icon::after {
	transform: translate(-50%, -50%) rotate(90deg);
	}

	.module-accordion[open] .module-accordion-icon::after {
	opacity: 0;
	}

	/* Expanded module content panel */
	.module-accordion-panel {
	margin-top: 10px;
	padding: 22px 22px 20px;
	background: linear-gradient(180deg, #FFFFFF 0%, #F7FBFF 100%);
	border: 1px solid #CFE0EF;
	border-radius: 18px;
	box-shadow: 0 8px 24px rgba(11,24,41,0.06);
	}

	/* Keep learning objective box clean inside accordion */
	.module-accordion-panel .module-objective {
	margin-top: 18px !important;
	min-height: 142px;
	}

	/* Mobile */
	@media (max-width: 768px) {
	.module-accordion-summary {
    min-height: 92px;
    padding: 18px 48px 18px 18px;
	}

	.module-accordion-summary .module-title {
    font-size: 1rem !important;
	}

	.module-accordion-panel {
    padding: 18px 18px 16px;
	}

	.module-accordion-panel .module-objective {
    min-height: auto;
	}
	}

	/* Align all trust bar headline values on the same top line */
	.trust-bar-grid {
	align-items: stretch !important;
	}

	.trust-bar-item {
	justify-content: flex-start !important;
	min-height: 150px;
	padding-top: 22px !important;
	}

	.trust-bar-icon {
	flex: 0 0 36px;
	width: 36px;
	height: 36px;
	margin-bottom: 10px !important;
	}

	.trust-bar-value {
	min-height: 34px !important;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	margin-bottom: 1px !important;
	line-height: 1.08 !important;
	text-align: center;
	}

	.trust-bar-label {
	text-align: center;
	}
	
	/* Force image icons to display properly */
	.contact-method-icon img,
	.footer-contact-item img {
	display: block !important;
	width: 20px !important;
	height: 20px !important;
	object-fit: contain !important;
	flex: 0 0 auto !important;
	}

	.linkedin-img-icon,
	.whatsapp-img-icon {
	width: 22px;
	height: 22px;
	object-fit: contain;
	display: block;
	}
	
	.faq-intro {
	margin: 0 auto 48px;
	text-align: center;
	}
	
	.honeypot-field {
	display: none;
	}
	
	/* ============================================================
	DESKTOP-ONLY HOVER EFFECTS
	Prevents sticky hover behavior on touch devices
	============================================================ */

	@media (hover: hover) and (pointer: fine) {

	.nav-links a:hover {
    color: var(--white);
    background: rgba(255,255,255,0.12);
	}

	#navbar.scrolled .nav-links a:hover {
    color: var(--navy);
    background: var(--off-white);
	}

	.nav-mobile-menu a:hover {
    color: var(--white);
    padding-left: 6px;
	}

	.btn-primary:hover {
    background: #4A91CC;
    border-color: #4A91CC;
    transform: translateY(-1px);
    box-shadow: 0 6px 20px rgba(61,124,181,0.35);
	}

	.btn-secondary:hover {
    border-color: rgba(255,255,255,0.55);
    color: var(--white);
    transform: translateY(-1px);
	}

	.module-card:hover {
    background: #ECEFF4;
    border-color: var(--border);
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
	}

	.module-card:hover::before {
    opacity: 1;
	}

	.module-card.module-card-rich:hover {
    background: #ECEFF4 !important;
    border-color: #C7CED9 !important;
    box-shadow: 0 8px 22px rgba(11,24,41,0.09);
	}

	.module-card.module-card-rich.module-accordion:hover {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
    transform: none !important;
	}

	.outcome-card:hover {
    background: #DFF0FF !important;
    border-color: #8FC4EA !important;
    box-shadow: 0 6px 18px rgba(46, 95, 138, 0.12);
	}

	.diff-card:hover {
    background: rgba(255,255,255,0.06);
    border-color: rgba(61,124,181,0.4);
	}

	.format-card:hover {
    background: #343C46 !important;
    border-color: #6A7482 !important;
    box-shadow: var(--shadow-md);
	}

	.faq-question:hover {
    background: var(--off-white);
	}

	.form-submit:hover {
    background: var(--navy-card);
    border-color: var(--navy-card);
    transform: translateY(-1px);
    box-shadow: 0 6px 20px rgba(11,24,41,0.2);
	}

	.contact-method:hover .contact-method-value {
    color: var(--white);
	}

	.footer-nav-links a:hover {
    color: var(--white);
    padding-left: 4px;
	}

	.footer-contact-item:hover {
    color: rgba(255,255,255,0.8);
	}

	.track-accordion-summary:hover,
	.module-accordion-summary:hover {
    transform: translateY(-2px);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,0.40),
      0 18px 34px rgba(46,95,138,0.30);
	}

	.book-tile:hover {
    transform: translateY(-2px);
    border-color: #B7CBE0;
    box-shadow: 0 10px 26px rgba(11,24,41,0.11);
	}

	.book-order-link:hover {
    background: #FFB13B;
    transform: translateY(-1px);
    box-shadow: 0 5px 14px rgba(255, 153, 0, 0.25);
	}

	.golden-offering-link:hover {
    transform: translateY(-1px);
    box-shadow: 0 12px 26px rgba(244, 199, 107, 0.28);
	}

	.nav-3d-brand:hover > span {
    color: var(--white) !important;
    background: transparent !important;
	}

	#navbar.scrolled .nav-3d-brand:hover > span {
    color: var(--navy) !important;
    background: var(--off-white) !important;
	}
	}
	
	/* ============================================================
	ACCESSIBILITY FIX: Minimum 44×44 touch targets
	============================================================ */

	.faq-toggle,
	.track-accordion-icon,
	.module-accordion-icon {
	width: 44px;
	height: 44px;
	min-width: 44px;
	min-height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	
	}
	
	.faq-toggle svg {
	width: 14px !important;
	height: 14px !important;
	}

	.track-accordion-icon::before,
	.track-accordion-icon::after,
	.module-accordion-icon::before,
	.module-accordion-icon::after {
	width: 14px !important;
	height: 2px !important; right: 16px !important;
	}

	.track-accordion-summary,
	.module-accordion-summary {
	padding-right: 72px !important;
	}
	
	@media (max-width: 768px) {
	.track-accordion-summary,
	.module-accordion-summary {
    padding-right: 64px !important;
	}
	}
	
	/* ============================================================
	RESPONSIVE FIX: Prevent hero diagram overlapping text on tablets
	============================================================ */

	@media (max-width: 1024px) {
	.hero-diagram,
	.hero-arch2-visual {
    display: none !important;
	}
	}
	
	/* ============================================================
	NARROW PHONE FIX: 360px–420px devices
	Covers iPhone SE/mini and common small Android screens
	MOBILE FIX: Full-width submit button
	============================================================ */

	@media (max-width: 640px) {
	.form-submit {
    width: 100%;
    max-width: 100%;
    justify-content: center;
    text-align: center;
	}
	}
	
	@media (max-width: 420px) {
	.container,
	.nav-inner,
	.hero-content,
	.footer-bottom-inner {
    padding-left: 16px !important;
    padding-right: 16px !important;
	}

	.nav-inner {
    height: 64px;
	}

	.nav-brand {
    max-width: calc(100vw - 84px);
    font-size: 0.76rem !important;
    line-height: 1.25;
	}

	.nav-hamburger {
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    padding: 10px;
	}

	.hero-content {
    padding-top: 104px !important;
    padding-bottom: 56px !important;
	}

	.hero-qualifier {
    font-size: 0.62rem !important;
    letter-spacing: 0.08em !important;
    line-height: 1.6;
    margin-bottom: 18px;
	}

	.hero-headline {
    font-size: clamp(1.65rem, 9vw, 2.15rem) !important;
    line-height: 1.12;
    margin-bottom: 18px;
	}

	.hero-subheadline {
    font-size: 0.94rem !important;
    line-height: 1.6;
    margin-bottom: 24px;
	}

	.hero-credibility {
    padding: 12px 14px;
    margin-bottom: 28px;
	}

	.hero-credibility p {
    font-size: 0.8rem;
    line-height: 1.55;
	}

	.btn-primary,
	.btn-secondary,
	.form-submit {
    width: 100%;
    max-width: 100%;
    padding: 14px 18px;
    text-align: center;
    justify-content: center;
    white-space: normal;
	}

	.section-title {
    font-size: clamp(1.45rem, 7vw, 1.85rem) !important;
    line-height: 1.2;
	}

	.section-intro {
    font-size: 0.95rem;
    line-height: 1.6;
	}

	.programme-pathways,
	.exec-insight-panel,
	.about-executive-continuation,
	.contact-sidebar-card,
	.contact-response-note,
	.form-success {
    padding-left: 16px !important;
    padding-right: 16px !important;
	}

	.track-accordion-summary,
	.module-accordion-summary {
    padding: 16px 64px 16px 16px !important;
	}

	.track-accordion-title,
	.module-accordion-summary .module-title {
    font-size: 0.98rem !important;
    line-height: 1.25 !important;
	}

	.track-accordion-kicker,
	.module-accordion-summary .module-number {
    font-size: 0.62rem !important;
    letter-spacing: 0.1em !important;
	}

	.track-accordion-panel,
	.module-accordion-panel {
    padding: 16px !important;
	}

	.module-objective {
    padding: 14px !important;
	}

	.outcome-card,
	.format-card,
	.diff-card {
    padding: 20px 18px !important;
	}

	.faq-question {
    padding: 14px 12px !important;
    gap: 10px;
	}

	.faq-question-text {
    font-size: 0.84rem !important;
    line-height: 1.35;
	}

	.contact-method {
    gap: 12px;
	}

	.contact-method-value,
	.footer-contact-item {
    font-size: 0.82rem;
    overflow-wrap: anywhere;
	}

	.footer-main {
    padding-left: 16px !important;
    padding-right: 16px !important;
	}
	}
	
	@media (max-width: 360px) {
	.hero-headline {
    font-size: 1.58rem !important;
	}

	.nav-brand {
    font-size: 0.7rem !important;
	}

	.track-accordion-summary,
	.module-accordion-summary {
    padding-right: 58px !important;
	}
	}
	
	/* ============================================================
	CONTACT SIDEBAR FIX: Short viewport and landscape tablet safety
	============================================================ */

	@media (max-width: 1024px),
       (max-height: 760px) {
	.contact-sidebar {
    position: static !important;
	}
	}

	@media (min-width: 1025px) and (max-width: 1200px) and (max-height: 760px) {
	.contact-grid {
    grid-template-columns: 1fr !important;
    gap: 40px !important;
	}

	.contact-sidebar-card {
    padding: 28px 24px;
	}
	}

	/* ============================================================
	ACCESSIBILITY: Respect reduced motion preference
	============================================================ */

	@media (prefers-reduced-motion: reduce) {
	html {
    scroll-behavior: auto !important;
	}

	*,
	*::before,
	*::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
	}
	
	}
        
    /* FINAL VIDEO BOX: Fit complete video without cropping */
	.about-visual {
	display: flex !important;
	justify-content: flex-end !important;
	align-items: flex-start !important;
	}

	.about-visual .trainer-video-card {
	width: 100% !important;
	max-width: 240px !important;
	margin: 0 0 0 auto !important;
	padding: 0 !important;
	background: var(--navy-mid) !important;
	border-radius: 8px !important;
	overflow: hidden !important;
	}

	.about-visual .trainer-video-frame {
	width: 100% !important;
	max-width: 240px !important;
	padding: 2px 0.5px !important;
	background: var(--navy-mid) !important;
	border-radius: 9px !important;
	overflow: hidden !important;
	box-sizing: border-box !important;
	}

	.about-visual .trainer-video-frame video {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	max-width: none !important;
	object-fit: contain !important;
	object-position: center center !important;
	background: #000000 !important;
	border-radius: 4px !important;
	margin: 0 !important;
	}

	/* Hide fullscreen button from native video controls where browser supports it */
	.trainer-video-frame video::-webkit-media-controls-fullscreen-button,
	.about-visual video::-webkit-media-controls-fullscreen-button,
	.about-visual-float video::-webkit-media-controls-fullscreen-button {
	display: none !important;
	}
	
	/* Slightly push native video volume/mute button to the right — Chrome/Edge only */
	.about-visual-float video::-webkit-media-controls-mute-button,
	.about-visual video::-webkit-media-controls-mute-button {
	transform: translateX(8px);
	}
	
	/* Full-width About grid paragraph below trainer video */
	.about-full-width-text {
	grid-column: 1 / -1;
	width: 100%;
	max-width: 100%;
	margin-top: 0;
	color: var(--text-body);
	font-size: 1rem;
	line-height: 1.78;
	text-align: justify;
	text-justify: inter-word;	
	}

	@media (max-width: 760px) {
	.about-full-width-text {
    text-align: left;
	}
	}
	
	/* Reduce gap between hero CTA buttons and trust bar */	
	#home {
	min-height: 660px !important;
	}

	.hero-content {
	padding-bottom: 72px !important;
	}

	.hero-cta-group {
	margin-bottom: 0 !important;
	}

	.hero-scroll {
	display: none !important;
	}

	/* Reduce vertical thickness of the trust bar without changing text size */
	.trust-bar-inner {
	padding-top: 18px !important;
	padding-bottom: 18px !important;
	}

	.trust-bar-item {
	min-height: 108px !important;
	padding-top: 14px !important;
	padding-bottom: 14px !important;
	gap: 4px !important;
	}

	.trust-bar-icon {
	margin-bottom: 4px !important;
	}

	.trust-bar-value {
	min-height: 30px !important;
	margin-bottom: 0 !important;
	}

	.trust-bar-label {
	margin-top: 0 !important;
	line-height: 1.25 !important;
	}
	
	/* Trust bar color update — Option 3 medium grey */
	#trust-bar {
	background: #CBD3DD !important;
	}

	.trust-bar-inner {
	background: #CBD3DD !important;
	}

	/* Trust bar text colors for grey background */
	.trust-bar-value {
	color: var(--navy) !important;
	}

	.trust-bar-label {
	color: #374151 !important;
	font-weight: 700 !important;
	}

	/* Trust bar divider lines */
	.trust-bar-item {
	border-right: 1px solid rgba(11, 24, 41, 0.16) !important;
	}

	.trust-bar-item:last-child {
	border-right: none !important;
	}

	/* Icon visibility on grey background */
	.trust-bar-icon {
	opacity: 0.85 !important;
	}

	/* Mobile trust bar divider correction */
	@media (max-width: 640px) {
	.trust-bar-item {
    border-right: none !important;
    border-bottom: 1px solid rgba(11, 24, 41, 0.16) !important;
	}

	.trust-bar-item:nth-child(odd) {
    border-right: 1px solid rgba(11, 24, 41, 0.16) !important;
	}

	.trust-bar-item:nth-last-child(1):nth-child(odd) {
    border-right: none !important;
	}
	}
	
	/* Golden callout tile before Programme Structure */
	.masterclass-fit-tile {
	max-width: 760px;
	margin: 0 auto 34px;
	padding: 28px 34px;
	border-radius: 20px;
	text-align: left;
	background: linear-gradient(135deg, #FFF3D5 0%, #F4C76B 52%, #D6A83E 100%);
	border: 1px solid #B8860B;
	box-shadow: 0 14px 32px rgba(184, 134, 11, 0.20);
	color: #2F250B;
	}

	.masterclass-fit-tile ul {
	list-style: none;
	margin: 0 0 18px;
	padding: 0;
	display: grid;
	gap: 8px;
	text-align: left !important;
	}

	.masterclass-fit-tile li {
	font-family: var(--font-body) !important;
	font-size: 0.92rem !important;
	font-weight: 400 !important;
	line-height: 1.7 !important;
	color: #000000 !important;
	text-align: left !important;
	}

	.masterclass-fit-tile li::before {
	content: "•";
	margin-right: 8px;
	color: #7A5200;
	font-weight: 900;
	}

	.masterclass-fit-tile p {
	margin: 0;
	font-family: var(--font-display);
	font-size: 1.28rem;
	font-weight: 700;
	color: #1E293B;
	}

	.masterclass-fit-tile strong {
	color: #0B1829;
	letter-spacing: 0.04em;
	}

	@media (max-width: 640px) {
	.masterclass-fit-tile {
    padding: 24px 20px;
    margin-bottom: 28px;
    text-align: left;
	}

	.masterclass-fit-tile p {
    text-align: left !important;
    font-size: 1.15rem;
	}
	}
	
	@media (max-width: 640px) {
	.hero-cio-small {
    font-size: 0.42em;
    margin-top: 8px;
    line-height: 1.3;
	}
	}
	