/* =====================================================================
   POWER4ALL HOME — "AURORA FLUX" ADVANCED THEME  (v3)
   Readable light-professional base (v2) + real visual depth: a living
   particle/aurora background behind translucent glass sections, 3D
   tilt cards, glowing gradient borders, floating icon badges.
   Scoped to body.Home-page — no other page is affected. All functional
   markup (forms, carousels, DB loops) is preserved.
===================================================================== */

body.Home-page {
  --ink:        #172033;   /* headings */
  --body:       #48546b;   /* paragraph text */
  --muted:      #6b7688;
  --line:       #e7ebf4;
  --card:       rgba(255, 255, 255, 0.86);
  --card-solid: #ffffff;

  --indigo:     #4f46e5;
  --violet:     #7c3aed;
  --sky:        #0ea5e9;
  --cyan:       #06b6d4;
  --pink:       #db2777;
  --emerald:    #059669;
  --amber:      #d97706;

  --grad-head:  linear-gradient(115deg, #4f46e5 0%, #7c3aed 45%, #0ea5e9 100%);
  --grad-btn:   linear-gradient(120deg, #6366f1 0%, #8b5cf6 50%, #06b6d4 100%);
  --grad-border: conic-gradient(from 0deg, #6366f1, #a855f7, #06b6d4, #6366f1);

  --shadow-sm:  0 4px 14px rgba(23, 32, 51, 0.06);
  --shadow-md:  0 14px 34px rgba(23, 32, 51, 0.10);
  --shadow-lg:  0 30px 64px rgba(23, 32, 51, 0.16);
  --glow-indigo: 0 0 44px rgba(99, 102, 241, 0.28);

  --radius:     18px;
  --display:    'Times New Roman', Times, serif;
  --font:       'Times New Roman', Times, serif;

  background: #f3f5fc !important;
  color: var(--body);
  font-family: 'Times New Roman', Times, serif;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

body.Home-page .main { position: relative; z-index: 1; background: transparent !important; }

/* =====================================================================
   LIVING BACKGROUND — fixed aurora blobs + particle constellation canvas
   Sits at z-index 0, behind .main (z-index 1). Shows through wherever a
   section background is translucent.
===================================================================== */
body.Home-page .nx-bg-layer {
  position: fixed;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
  background:
    radial-gradient(ellipse 60% 40% at 15% 8%,  rgba(99,102,241,0.16), transparent 65%),
    radial-gradient(ellipse 55% 45% at 88% 18%, rgba(6,182,212,0.14),  transparent 65%),
    radial-gradient(ellipse 55% 45% at 12% 78%, rgba(219,39,119,0.10), transparent 65%),
    radial-gradient(ellipse 60% 45% at 92% 92%, rgba(124,58,237,0.14), transparent 65%);
}
body.Home-page .nx-bg-layer .nx-blob {
  position: absolute;
  border-radius: 50%;
  filter: blur(70px);
  opacity: 0.55;
  animation: nx-drift 26s ease-in-out infinite alternate;
}
body.Home-page .nx-bg-layer .nx-blob-a { width: 560px; height: 560px; top: -120px; left: -80px;  background: radial-gradient(circle, rgba(99,102,241,0.35), transparent 70%); animation-duration: 24s; }
body.Home-page .nx-bg-layer .nx-blob-b { width: 620px; height: 620px; top: 30%;  right: -160px;  background: radial-gradient(circle, rgba(6,182,212,0.30), transparent 70%); animation-duration: 30s; }
body.Home-page .nx-bg-layer .nx-blob-c { width: 520px; height: 520px; bottom: -140px; left: 20%;  background: radial-gradient(circle, rgba(219,39,119,0.22), transparent 70%); animation-duration: 34s; }
body.Home-page .nx-bg-layer .nx-blob-d { width: 480px; height: 480px; bottom: 8%; right: 8%;     background: radial-gradient(circle, rgba(124,58,237,0.26), transparent 70%); animation-duration: 28s; }

@keyframes nx-drift {
  0%   { transform: translate(0, 0) scale(1); }
  50%  { transform: translate(3%, -4%) scale(1.08); }
  100% { transform: translate(-3%, 3%) scale(0.96); }
}

body.Home-page canvas#nxAurora {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0.55;
}

/* Faint static dot-grid for extra depth even before canvas paints */
body.Home-page .nx-bg-layer::after {
  content: '';
  position: absolute; inset: 0;
  background-image: radial-gradient(rgba(79,70,229,0.14) 1px, transparent 1px);
  background-size: 26px 26px;
  opacity: 0.5;
  mask-image: radial-gradient(ellipse 90% 80% at 50% 20%, #000 40%, transparent 90%);
}

/* Scroll progress bar */
.nx-progress {
  position: fixed; top: 0; left: 0;
  height: 3px; width: 0%;
  z-index: 3000;
  background: var(--grad-btn);
  box-shadow: 0 1px 10px rgba(99, 102, 241, 0.5);
  transition: width 90ms linear;
  pointer-events: none;
}

/* Neutralise old light wave dividers / shapes / stray decorative svg */
body.Home-page .consulting-wave-top,
body.Home-page .expertise-wave-top,
body.Home-page .about-bg-shape,
body.Home-page #contact > div[style*="absolute"] { display: none !important; }

/* =====================================================================
   SECTION BACKGROUNDS — translucent glass panes over the living
   background, each section still visually distinct
===================================================================== */
body.Home-page section { position: relative; }

body.Home-page .about-section {
  background: linear-gradient(180deg, rgba(255,255,255,0.94) 0%, rgba(243,246,254,0.92) 100%) !important;
  overflow: hidden;
}
body.Home-page .why-power4all-section {
  background: linear-gradient(180deg, rgba(242,248,255,0.94) 0%, rgba(234,243,255,0.92) 100%) !important;
  overflow: hidden;
}
body.Home-page .expertise-section {           /* Learning Resources */
  background: linear-gradient(180deg, rgba(246,247,252,0.94) 0%, rgba(238,241,250,0.92) 100%) !important;
  overflow: hidden;
}
body.Home-page .review-section {
  background: rgba(255,255,255,0.94) !important;
  overflow: hidden;
}
body.Home-page .contact {
  background: linear-gradient(180deg, rgba(245,244,254,0.94) 0%, rgba(238,240,251,0.92) 100%) !important;
  overflow: hidden;
}

/* Soft decorative accent glow — different colour per section (on top of living bg) */
body.Home-page .about-section::before,
body.Home-page .why-power4all-section::before,
body.Home-page .expertise-section::before,
body.Home-page .review-section::before,
body.Home-page .contact::before {
  content: '';
  position: absolute;
  width: 640px; height: 640px;
  border-radius: 50%;
  filter: blur(90px);
  opacity: 0.5;
  pointer-events: none;
  z-index: 0;
}
body.Home-page .about-section::before      { background: radial-gradient(circle, rgba(124,58,237,0.18), transparent 70%); top: -220px; right: -160px; }
body.Home-page .why-power4all-section::before { background: radial-gradient(circle, rgba(14,165,233,0.20), transparent 70%); top: -240px; left: -180px; }
body.Home-page .expertise-section::before  { background: radial-gradient(circle, rgba(99,102,241,0.16), transparent 70%); bottom: -260px; right: -160px; }
body.Home-page .review-section::before     { background: radial-gradient(circle, rgba(219,39,119,0.14), transparent 70%); top: -220px; left: -160px; }
body.Home-page .contact::before            { background: radial-gradient(circle, rgba(6,182,212,0.16), transparent 70%); bottom: -240px; right: -140px; }

/* keep section content above the decorative glow */
body.Home-page section > .container,
body.Home-page section > .container-fluid { position: relative; z-index: 1; }

/* =====================================================================
   TYPOGRAPHY
===================================================================== */
body.Home-page h1, body.Home-page h2, body.Home-page h3,
body.Home-page .about-title, body.Home-page .expertise-title,
body.Home-page .consulting-title, body.Home-page .section-title,
body.Home-page .consulting-feature-title, body.Home-page .info-item h3 {
  font-family: 'Times New Roman', Times, serif;
  letter-spacing: -0.02em;
  color: var(--ink);
}

/* Gradient headline treatment (readable on light), animated shimmer */
body.Home-page .about-title,
body.Home-page .expertise-title,
body.Home-page #Expertise .gradient-text,
body.Home-page .review-section .section-title,
body.Home-page #contact .section-title h2,
body.Home-page #contact .section-title {
  background: var(--grad-head);
  background-size: 200% auto;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent !important;
  animation: nx-shimmer 7s ease-in-out infinite alternate;
}
@keyframes nx-shimmer {
  0%   { background-position: 0% 50%; }
  100% { background-position: 100% 50%; }
}

body.Home-page p, body.Home-page .about-subtitle,
body.Home-page .expertise-desc, body.Home-page .section-title p,
body.Home-page #contact .section-title p { color: var(--body); }
body.Home-page strong { color: var(--indigo); }

/* Section eyebrow kickers */
body.Home-page .consulting-kicker,
body.Home-page .consultancy-kicker,
body.Home-page .review-count {
  display: inline-flex; align-items: center; gap: 0.45rem;
  font-family: 'Times New Roman', Times, serif; font-weight: 600;
  letter-spacing: 0.08em; text-transform: uppercase; font-size: 0.72rem;
  color: var(--indigo) !important;
  background: rgba(99, 102, 241, 0.10);
  border: 1px solid rgba(99, 102, 241, 0.22);
  padding: 0.4rem 0.9rem; border-radius: 999px;
}

/* Section underline accent */
body.Home-page .about-underline {
  background: var(--grad-head) !important;
  height: 4px !important; border-radius: 4px;
}

/* =====================================================================
   GLASS CARD SYSTEM  (about, expertise/why, resources, reviews, contact)
   Frosted glass over the living background + gradient glow ring on hover
   + 3D tilt (transform applied by JS via inline style on pointermove)
===================================================================== */
body.Home-page .about-glass-card,
body.Home-page #Expertise .consulting-hero-panel,
body.Home-page #Expertise .consulting-glass,
body.Home-page #Expertise .consulting-card,
body.Home-page #Expertise .glassy-card,
body.Home-page .expertise-card,
body.Home-page .glass-card,
body.Home-page .review-section .card,
body.Home-page .review-form,
body.Home-page .info-wrap,
body.Home-page .php-email-form {
  background: var(--card) !important;
  backdrop-filter: blur(14px) saturate(140%);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
  border: 1px solid var(--line) !important;
  border-radius: var(--radius) !important;
  box-shadow: var(--shadow-md) !important;
  color: var(--body);
  position: relative;
  transition: transform 0.25s cubic-bezier(0.16,1,0.3,1), box-shadow 0.35s ease, border-color 0.35s ease;
  transform: perspective(1000px);
  will-change: transform;
}

body.Home-page .expertise-card:hover,
body.Home-page .glass-card:hover,
body.Home-page #Expertise .consulting-card:hover,
body.Home-page .about-glass-card:hover {
  box-shadow: var(--shadow-lg), var(--glow-indigo) !important;
  border-color: rgba(99, 102, 241, 0.4) !important;
  z-index: 2;
}

/* Coloured top accent bar — varies to keep cards lively */
body.Home-page .expertise-card::before,
body.Home-page #Expertise .consulting-card::before {
  content: '';
  position: absolute; top: 0; left: 20px; right: 20px; height: 3px;
  border-radius: 3px; background: var(--grad-head); opacity: 0.85;
}

body.Home-page .about-welcome { color: var(--ink) !important; font-weight: 600; }
body.Home-page .about-highlight { color: var(--violet) !important; }
body.Home-page .about-glass-card p,
body.Home-page .about-list li,
body.Home-page .about-list li span { color: var(--body) !important; }
body.Home-page .about-glass-card strong { color: var(--indigo) !important; }
body.Home-page .about-list li i { color: var(--emerald) !important; }
body.Home-page .expertise-card h3, body.Home-page .expertise-card h3 strong { color: var(--ink) !important; }
body.Home-page .expertise-card p { color: var(--body) !important; }

/* Animated gradient-glow border ring for the hero-style glass panels (premium 3D touch) */
body.Home-page #Expertise .consulting-hero-panel,
body.Home-page .consultancy-hero {
  isolation: isolate;
}
body.Home-page #Expertise .consulting-hero-panel::after,
body.Home-page .consultancy-hero::after {
  content: '';
  position: absolute; inset: -1.5px;
  border-radius: inherit;
  padding: 1.5px;
  background: var(--grad-border);
  background-size: 300% 300%;
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: 0.55;
  z-index: -1;
  animation: nx-border-spin 8s linear infinite;
  pointer-events: none;
}
@keyframes nx-border-spin {
  0%   { background-position: 0% 0%; }
  100% { background-position: 300% 300%; }
}

/* =====================================================================
   HERO  (kept bold over its own imagery, with floating 3D chips)
===================================================================== */
body.Home-page .hero-clear-section { background: #0b1020 !important; }
body.Home-page .hero-text-bg {
  background: linear-gradient(150deg, rgba(15,20,40,0.68), rgba(15,20,40,0.44)) !important;
  border: 1px solid rgba(255,255,255,0.14);
  border-radius: 22px;
  backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
  box-shadow: 0 30px 70px rgba(0,0,0,0.4);
  transition: transform 0.2s ease-out;
  will-change: transform;
}
body.Home-page .hero-text-bg h1 { color: #ffffff !important; text-shadow: 0 3px 24px rgba(0,0,0,0.4); }
body.Home-page .hero-text-bg p { color: rgba(233, 237, 255, 0.92) !important; }
body.Home-page .hero-highlights span {
  background: rgba(255,255,255,0.10) !important;
  border: 1px solid rgba(255,255,255,0.20) !important;
  color: #f0f3ff !important;
  display: inline-flex;
  animation: nx-float 4.5s ease-in-out infinite;
}
body.Home-page .hero-highlights span:nth-child(2) { animation-delay: 0.4s; }
body.Home-page .hero-highlights span:nth-child(3) { animation-delay: 0.8s; }
body.Home-page .hero-highlights span i { color: #67e8f9 !important; }
@keyframes nx-float {
  0%, 100% { transform: translateY(0); }
  50%      { transform: translateY(-6px); }
}

/* =====================================================================
   CONSULTANCY SPOTLIGHT  — the ONE bold dark gradient section (rhythm)
===================================================================== */
body.Home-page .consultancy-section--spotlight,
body.Home-page #consultancy {
  background:
    radial-gradient(circle at 12% 14%, rgba(99,102,241,0.12), transparent 42%),
    radial-gradient(circle at 88% 8%, rgba(6,182,212,0.12), transparent 40%),
    radial-gradient(circle at 50% 118%, rgba(124,58,237,0.08), transparent 55%),
    linear-gradient(135deg, #f7f9ff 0%, #eef2ff 46%, #ecfeff 100%) !important;
  overflow: hidden;
}
body.Home-page #consultancy::before {
  content: '';
  position: absolute; inset: 0;
  background-image:
    linear-gradient(rgba(99,102,241,0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(99,102,241,0.045) 1px, transparent 1px);
  background-size: 46px 46px;
  mask-image: radial-gradient(ellipse 80% 70% at 50% 30%, #000 40%, transparent 90%);
  pointer-events: none; z-index: 0;
}
body.Home-page #consultancy::after {
  content: '';
  position: absolute; width: 620px; height: 620px; border-radius: 50%;
  background: radial-gradient(circle, rgba(6,182,212,0.16), transparent 70%);
  filter: blur(80px); top: -220px; right: -160px; pointer-events: none; z-index: 0;
  animation: nx-drift 26s ease-in-out infinite alternate;
}
body.Home-page #consultancy .container { position: relative; z-index: 1; }
body.Home-page #consultancy .consulting-glass,
body.Home-page #consultancy .consulting-hero-panel,
body.Home-page #consultancy .consultancy-team-panel,
body.Home-page #consultancy .consultancy-side-panel,
body.Home-page #consultancy .consulting-card,
body.Home-page #consultancy .glassy-card {
  background: rgba(255,255,255,0.94) !important;
  border: 1px solid rgba(99,102,241,0.16) !important;
  border-radius: var(--radius) !important;
  box-shadow: 0 20px 46px rgba(31,42,68,0.12) !important;
  color: #29324a;
  transition: transform 0.25s cubic-bezier(0.16,1,0.3,1), border-color 0.35s ease, box-shadow 0.35s ease;
}
body.Home-page #consultancy .consulting-card:hover,
body.Home-page #consultancy .glassy-card:hover {
  border-color: rgba(99,102,241,0.42) !important;
  box-shadow: 0 26px 56px rgba(31,42,68,0.16), 0 0 30px rgba(6,182,212,0.14) !important;
  transform: translateY(-6px);
  z-index: 2;
}
body.Home-page #consultancy .consulting-title,
body.Home-page #consultancy .gradient-text {
  background: linear-gradient(115deg, #4f46e5, #7c3aed, #0891b2) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important; background-clip: text !important;
  -webkit-text-fill-color: transparent !important; color: transparent !important;
  animation: nx-shimmer 7s ease-in-out infinite alternate;
}
body.Home-page #consultancy .consulting-desc,
body.Home-page #consultancy .consultancy-desc,
body.Home-page #consultancy .consultancy-team-desc,
body.Home-page #consultancy .consultancy-mini-points li,
body.Home-page #consultancy .consultancy-points li,
body.Home-page #consultancy p,
body.Home-page #consultancy .consultancy-team-title { color: #4a5678 !important; }
body.Home-page #consultancy .consulting-feature-title,
body.Home-page #consultancy .consultancy-team-title { color: #1f2a44 !important; }
body.Home-page #consultancy .consulting-kicker,
body.Home-page #consultancy .consultancy-kicker,
body.Home-page #consultancy .consultancy-slide-kicker {
  color: #4f46e5 !important;
  background: rgba(99,102,241,0.10); border-color: rgba(99,102,241,0.28);
}
body.Home-page #consultancy .consulting-badge,
body.Home-page #consultancy .consultancy-pill {
  background: rgba(99,102,241,0.08) !important;
  border: 1px solid rgba(99,102,241,0.20) !important;
  color: #3730a3 !important; border-radius: 999px !important;
  transition: transform 0.25s ease, border-color 0.25s ease;
}
body.Home-page #consultancy .consulting-badge:hover,
body.Home-page #consultancy .consultancy-pill:hover { transform: translateY(-2px); border-color: rgba(99,102,241,0.45) !important; }
body.Home-page #consultancy .consultancy-stat {
  background: rgba(255,255,255,0.72) !important;
  border: 1px solid rgba(99,102,241,0.14) !important;
  border-radius: 14px !important;
  transition: transform 0.3s cubic-bezier(0.16,1,0.3,1), border-color 0.3s ease, box-shadow 0.3s ease;
}
body.Home-page #consultancy .consultancy-stat:hover {
  transform: translateY(-4px) scale(1.03);
  border-color: rgba(6,182,212,0.4) !important;
  box-shadow: 0 16px 34px rgba(31,42,68,0.14), 0 0 22px rgba(6,182,212,0.14);
}
body.Home-page #consultancy .consultancy-stat-number {
  background: linear-gradient(115deg, #4f46e5, #0891b2) !important;
  -webkit-background-clip: text !important; background-clip: text !important;
  -webkit-text-fill-color: transparent !important; color: transparent !important;
}
body.Home-page #consultancy .consultancy-stat-label { color: #5b6784 !important; }
body.Home-page #consultancy .consultancy-note {
  background: rgba(6,182,212,0.08) !important;
  border: 1px solid rgba(6,182,212,0.24) !important;
  color: #35566b !important; border-radius: 12px;
}
body.Home-page #consultancy .consultancy-slide-visual {
  background: linear-gradient(150deg, rgba(124,58,237,0.12), rgba(6,182,212,0.10)) !important;
  border: 1px solid rgba(99,102,241,0.18) !important; color: #29324a !important;
  transition: transform 0.35s cubic-bezier(0.16,1,0.3,1), box-shadow 0.35s ease;
}
body.Home-page #consultancy .consultancy-slide:hover .consultancy-slide-visual {
  transform: translateY(-4px);
  box-shadow: 0 16px 32px rgba(31,42,68,0.14);
}
body.Home-page #consultancy .consultancy-carousel-control {
  background: rgba(255,255,255,0.82) !important;
  border: 1px solid rgba(99,102,241,0.2) !important;
  transition: transform 0.25s ease, background 0.25s ease;
}
body.Home-page #consultancy .consultancy-carousel-control:hover { transform: scale(1.1); background: #ffffff !important; }
body.Home-page #consultancy .consultancy-carousel-control-icon i { color: #4f46e5 !important; }
body.Home-page #consultancy .consultancy-carousel-indicators [data-bs-target] { background-color: rgba(79,70,229,0.35) !important; }
body.Home-page #consultancy .consultancy-carousel-indicators .active { background: linear-gradient(115deg,#4f46e5,#0891b2) !important; }
body.Home-page #consultancy .consulting-icon {
  background: linear-gradient(150deg, rgba(99,102,241,0.16), rgba(6,182,212,0.12)) !important;
  border: 1px solid rgba(99,102,241,0.2) !important; color: #4f46e5 !important;
}
body.Home-page #consultancy .consulting-icon i { color: #4f46e5 !important; }

/* =====================================================================
   EXPERTISE (WHY) — light section using shared .consulting-* classes
===================================================================== */
body.Home-page #Expertise .consulting-desc { color: var(--body) !important; }
body.Home-page #Expertise .consulting-feature-title { color: var(--ink) !important; }
body.Home-page #Expertise .consulting-kicker { color: var(--indigo) !important; }
body.Home-page #Expertise .consulting-badge {
  background: rgba(99,102,241,0.08) !important;
  border: 1px solid rgba(99,102,241,0.20) !important;
  color: #3730a3 !important; border-radius: 999px !important;
  transition: transform 0.25s ease, border-color 0.25s ease;
}
body.Home-page #Expertise .consulting-badge:hover { transform: translateY(-2px); border-color: rgba(99,102,241,0.45) !important; }
body.Home-page #Expertise .consulting-badge-purple i { color: var(--violet) !important; }
body.Home-page #Expertise .consulting-badge-green i  { color: var(--emerald) !important; }
body.Home-page #Expertise .consulting-badge-blue i   { color: var(--sky) !important; }
body.Home-page #Expertise .consulting-badge-red i    { color: var(--pink) !important; }

/* =====================================================================
   ICONS  (feature / expertise circular icons on light cards) — 3D float
===================================================================== */
body.Home-page #Expertise .consulting-icon,
body.Home-page .expertise-icon,
body.Home-page .glass-icon {
  background: linear-gradient(150deg, rgba(99,102,241,0.14), rgba(6,182,212,0.12)) !important;
  border: 1px solid rgba(99,102,241,0.18) !important;
  box-shadow: 0 8px 20px rgba(99,102,241,0.14) !important;
  color: var(--indigo) !important;
  transition: transform 0.4s cubic-bezier(0.16,1,0.3,1), box-shadow 0.4s ease;
}
body.Home-page .expertise-card:hover .expertise-icon,
body.Home-page .expertise-card:hover .glass-icon,
body.Home-page #Expertise .consulting-card:hover .consulting-icon {
  transform: perspective(600px) rotateY(14deg) rotateX(-8deg) scale(1.08);
  box-shadow: 0 14px 30px rgba(99,102,241,0.28) !important;
}
body.Home-page #Expertise .consulting-icon i { color: var(--indigo) !important; }
body.Home-page .expertise-icon-blue i   { color: var(--sky) !important; }
body.Home-page .expertise-icon-red i    { color: var(--pink) !important; }
body.Home-page .expertise-icon-green i  { color: var(--emerald) !important; }
body.Home-page .expertise-icon-purple i { color: var(--violet) !important; }
body.Home-page .expertise-icon-orange i { color: var(--amber) !important; }
body.Home-page .expertise-icon-teal i   { color: var(--cyan) !important; }

/* =====================================================================
   BUTTONS  — 3D press + shine sweep
===================================================================== */
body.Home-page .btn-primary,
body.Home-page .consultancy-cta-btn--primary,
body.Home-page .php-email-form button[type="submit"],
body.Home-page .review-form .btn-primary,
body.Home-page #contactForm button {
  position: relative;
  overflow: hidden;
  background: var(--grad-btn) !important;
  background-size: 180% 100% !important;
  border: none !important; color: #fff !important;
  font-family: 'Times New Roman', Times, serif; font-weight: 600;
  border-radius: 999px !important;
  box-shadow: 0 12px 28px rgba(99, 102, 241, 0.32);
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-position 0.5s ease;
}
body.Home-page .btn-primary::before,
body.Home-page .consultancy-cta-btn--primary::before,
body.Home-page .php-email-form button[type="submit"]::before,
body.Home-page .review-form .btn-primary::before,
body.Home-page #contactForm button::before {
  content: '';
  position: absolute; top: 0; left: -60%; width: 40%; height: 100%;
  background: linear-gradient(115deg, transparent, rgba(255,255,255,0.45), transparent);
  transform: skewX(-20deg);
  transition: left 0.6s ease;
}
body.Home-page .btn-primary:hover::before,
body.Home-page .consultancy-cta-btn--primary:hover::before,
body.Home-page .php-email-form button[type="submit"]:hover::before,
body.Home-page .review-form .btn-primary:hover::before,
body.Home-page #contactForm button:hover::before { left: 130%; }
body.Home-page .btn-primary:hover,
body.Home-page .consultancy-cta-btn--primary:hover,
body.Home-page .php-email-form button[type="submit"]:hover,
body.Home-page .review-form .btn-primary:hover,
body.Home-page #contactForm button:hover {
  transform: translateY(-3px); background-position: 100% 0 !important;
  box-shadow: 0 18px 40px rgba(124, 58, 237, 0.4); color: #fff !important;
}
body.Home-page .btn-primary:active,
body.Home-page .consultancy-cta-btn--primary:active,
body.Home-page .php-email-form button[type="submit"]:active,
body.Home-page #contactForm button:active {
  transform: translateY(-1px) scale(0.98);
  box-shadow: 0 8px 18px rgba(99,102,241,0.32);
}
body.Home-page #consultancy .consultancy-cta-btn--ghost {
  background: rgba(255,255,255,0.08) !important;
  border: 1px solid rgba(255,255,255,0.26) !important;
  color: #eef1ff !important; border-radius: 999px !important;
  transition: transform 0.2s ease, background 0.25s ease, border-color 0.25s ease;
}
body.Home-page #consultancy .consultancy-cta-btn--ghost:hover {
  background: rgba(103,232,249,0.14) !important;
  border-color: rgba(103,232,249,0.5) !important; color: #fff !important;
  transform: translateY(-3px);
}

/* =====================================================================
   REVIEWS  (light)
===================================================================== */
body.Home-page .review-count {
  text-transform: none; letter-spacing: 0.02em;
  color: var(--amber) !important;
  background: rgba(217,119,6,0.10); border-color: rgba(217,119,6,0.22);
}
body.Home-page .review-section .card {
  box-shadow: var(--shadow-md) !important;
}
body.Home-page .review-section .card-title,
body.Home-page .review-section h5,
body.Home-page .review-section h6 { color: var(--ink) !important; }
body.Home-page .review-section .card-text { color: var(--body) !important; }
body.Home-page .review-section .fa-quote-left,
body.Home-page .review-section .text-primary,
body.Home-page .review-form .text-primary { color: var(--violet) !important; }
body.Home-page .review-section .text-muted,
body.Home-page .review-section small.text-muted,
body.Home-page .form-text, body.Home-page .form-text.text-muted { color: var(--muted) !important; }
body.Home-page .review-section .text-warning,
body.Home-page .review-form .text-warning { color: #f59e0b !important; }
body.Home-page .review-control-icon i { color: var(--violet) !important; }
body.Home-page .review-indicators [data-bs-target] { background-color: rgba(23,32,51,0.28) !important; }
body.Home-page .review-indicators .active { background: var(--grad-head) !important; }

/* =====================================================================
   FORMS  (light, high-contrast, professional)
===================================================================== */
body.Home-page .form-control,
body.Home-page .php-email-form .form-control,
body.Home-page textarea.form-control,
body.Home-page select.form-control {
  background: #ffffff !important;
  border: 1.5px solid #d9e0ee !important;
  color: var(--ink) !important;
  border-radius: 12px !important;
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
}
body.Home-page .form-control::placeholder { color: #9aa4b6 !important; }
body.Home-page .form-control:focus {
  background: #ffffff !important;
  border-color: var(--indigo) !important;
  box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.14) !important;
  color: var(--ink) !important;
}
body.Home-page .form-label, body.Home-page .review-form .form-label,
body.Home-page .form-check-label { color: var(--ink) !important; font-weight: 500; }
body.Home-page .form-check-input { background-color: #fff; border-color: #c7cfe0; }
body.Home-page .form-check-input:checked { background-color: var(--indigo); border-color: var(--indigo); }
body.Home-page .loading { color: var(--muted) !important; }

/* =====================================================================
   CONTACT INFO
===================================================================== */
body.Home-page .info-item {
  background: var(--card);
  backdrop-filter: blur(10px);
  border: 1px solid var(--line);
  border-radius: 14px;
  box-shadow: var(--shadow-sm);
  padding: 1rem 1.15rem;
  margin-bottom: 0.9rem;
  transition: border-color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}
body.Home-page .info-item:hover {
  border-color: rgba(6,182,212,0.4);
  transform: translateY(-3px);
  box-shadow: var(--shadow-md);
}
body.Home-page .info-item i {
  color: var(--cyan) !important;
  background: rgba(6,182,212,0.10);
  border-radius: 12px; padding: 0.55rem;
}
body.Home-page .info-item h3 { color: var(--ink) !important; }
body.Home-page .info-item a, body.Home-page .info-item p { color: var(--body) !important; }
body.Home-page .info-item a:hover { color: var(--cyan) !important; }
body.Home-page .contact iframe {
  border-radius: 14px;
  border: 1px solid var(--line) !important;
  box-shadow: var(--shadow-sm);
}
body.Home-page #formMessage.alert-success,
body.Home-page .review-section .alert-success {
  background: #ecfdf5 !important; border: 1px solid #a7f3d0 !important; color: #065f46 !important;
}
body.Home-page #formMessage.alert-danger,
body.Home-page .review-section .alert-danger {
  background: #fef2f2 !important; border: 1px solid #fecaca !important; color: #991b1b !important;
}

/* =====================================================================
   MISC
===================================================================== */
body.Home-page .scroll-top {
  background: var(--grad-btn) !important;
  box-shadow: 0 10px 26px rgba(99,102,241,0.45) !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
body.Home-page .scroll-top:hover { transform: translateY(-4px) scale(1.06); }
body.Home-page .scroll-top i { color: #fff !important; }

@media (prefers-reduced-motion: reduce) {
  .nx-progress { display: none; }
  body.Home-page * { transition: none !important; animation: none !important; }
  body.Home-page canvas#nxAurora,
  body.Home-page .nx-bg-layer .nx-blob { display: none !important; }
}

@media (max-width: 768px) {
  body.Home-page canvas#nxAurora { opacity: 0.32; }
  body.Home-page .nx-bg-layer .nx-blob { filter: blur(50px); opacity: 0.4; }
  body.Home-page #Expertise .consulting-hero-panel::after,
  body.Home-page .consultancy-hero::after { display: none; }
}

/* =====================================================================
   CONSULTANCY CAROUSEL — 2025 redesign (advanced split-card slide)
   Rebuilds each slide as a full-height colour visual panel + content
   column. Removes the old dark side-panel bleed and redundant stacked
   icons. Fully responsive: split on desktop, stacked banner on mobile.
===================================================================== */

/* Stage / shell — soft unified backing instead of the dark navy block */
body.Home-page #consultancy .consultancy-carousel-shell {
  max-width: 1160px;
  padding: 0.5rem;
}
body.Home-page #consultancy .consultancy-carousel-shell::before {
  left: 0; right: 0; top: 0; height: 100%;
  border-radius: 34px;
  background:
    radial-gradient(circle at 12% 16%, rgba(99,102,241,0.12), transparent 46%),
    radial-gradient(circle at 88% 20%, rgba(6,182,212,0.12), transparent 46%),
    linear-gradient(180deg, rgba(247,250,255,0.92), rgba(234,242,255,0.86));
  box-shadow: 0 30px 70px rgba(31,42,68,0.10), inset 0 1px 0 rgba(255,255,255,0.7);
  filter: none;
}
body.Home-page #consultancy .consultancy-carousel-inner { padding: 0.9rem; }
body.Home-page #consultancy .consultancy-carousel-inner .carousel-item { padding: 0; }

/* The slide becomes a 2-column card */
body.Home-page #consultancy .consultancy-slide {
  max-width: none !important;
  width: 100%;
  margin: 0 auto !important;
  padding: 0 !important;
  display: grid;
  grid-template-columns: minmax(220px, 330px) 1fr;
  grid-template-areas:
    "visual kicker"
    "visual title"
    "visual desc"
    "visual points";
  grid-template-rows: auto auto auto 1fr;
  column-gap: clamp(1.4rem, 3vw, 2.6rem);
  align-items: start;
  text-align: left;
  background: #ffffff !important;
  border: 1px solid rgba(99,102,241,0.16) !important;
  border-top: 1px solid rgba(99,102,241,0.16) !important;
  border-radius: 26px !important;
  overflow: hidden;
  box-shadow: 0 24px 56px rgba(31,42,68,0.13) !important;
  backdrop-filter: none !important;
  transition: transform 0.35s cubic-bezier(0.16,1,0.3,1), box-shadow 0.35s ease, border-color 0.35s ease;
}
body.Home-page #consultancy .consultancy-slide::before { display: none !important; }
body.Home-page #consultancy .consultancy-carousel-inner .carousel-item:hover .consultancy-slide {
  transform: translateY(-6px);
  box-shadow: 0 32px 66px rgba(31,42,68,0.18) !important;
  border-color: rgba(99,102,241,0.34) !important;
}

/* Redundant second icon circle removed — the visual panel carries it */
body.Home-page #consultancy .consultancy-slide .consulting-icon { display: none !important; }

/* Left visual panel — full-height branded gradient */
body.Home-page #consultancy .consultancy-slide-visual {
  grid-area: visual;
  width: 100%;
  height: 100%;
  min-height: 230px;
  margin: 0;
  padding: 1.6rem 1.2rem;
  border: none !important;
  border-radius: 0 !important;
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  color: #fff !important;
  box-shadow: none !important;
  position: relative;
  overflow: hidden;
  transition: transform 0.4s cubic-bezier(0.16,1,0.3,1);
}
body.Home-page #consultancy .consultancy-slide-visual::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 26% 22%, rgba(255,255,255,0.30), transparent 42%),
    radial-gradient(circle at 78% 84%, rgba(255,255,255,0.16), transparent 46%);
  pointer-events: none;
}
body.Home-page #consultancy .consultancy-slide:hover .consultancy-slide-visual {
  transform: none;
  box-shadow: none !important;
}
body.Home-page #consultancy .consultancy-slide-visual.visual-purple { background: linear-gradient(160deg, #7c3aed 0%, #6d28d9 52%, #4f46e5 100%) !important; }
body.Home-page #consultancy .consultancy-slide-visual.visual-green  { background: linear-gradient(160deg, #10b981 0%, #059669 52%, #0891b2 100%) !important; }
body.Home-page #consultancy .consultancy-slide-visual.visual-red    { background: linear-gradient(160deg, #f43f5e 0%, #e11d48 52%, #f97316 100%) !important; }
body.Home-page #consultancy .consultancy-slide-visual.visual-blue   { background: linear-gradient(160deg, #3b82f6 0%, #2563eb 52%, #06b6d4 100%) !important; }

body.Home-page #consultancy .consultancy-slide-visual i {
  position: relative;
  z-index: 1;
  font-size: 2rem;
  width: 4.2rem;
  height: 4.2rem;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff !important;
  background: rgba(255,255,255,0.18) !important;
  border: 1px solid rgba(255,255,255,0.38);
  box-shadow: 0 12px 30px rgba(0,0,0,0.18), inset 0 1px 0 rgba(255,255,255,0.4) !important;
  backdrop-filter: blur(4px);
}
body.Home-page #consultancy .consultancy-slide-visual span {
  position: relative;
  z-index: 1;
  color: rgba(255,255,255,0.96) !important;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

/* Content column */
body.Home-page #consultancy .consultancy-slide-kicker {
  grid-area: kicker;
  justify-self: start;
  margin: 0 0 0.15rem;
  padding: 1.7rem 1.7rem 0 0;
  background: transparent !important;
  border: 0 !important;
  font-size: 0.78rem;
  letter-spacing: 0.14em;
}
body.Home-page #consultancy .consultancy-slide .consulting-feature-title {
  grid-area: title;
  text-align: left !important;
  margin: 0.35rem 0 0.55rem;
  padding: 0 1.7rem 0 0;
  font-size: clamp(1.2rem, 2.1vw, 1.55rem);
  line-height: 1.22;
}
body.Home-page #consultancy .consultancy-slide p {
  grid-area: desc;
  max-width: 54ch;
  margin: 0 !important;
  padding: 0 1.7rem 0 0;
  text-align: left !important;
  font-size: 0.99rem;
  line-height: 1.72;
}
body.Home-page #consultancy .consultancy-slide .consultancy-mini-points {
  grid-area: points;
  margin: 1.05rem 0 0 !important;
  padding: 0 1.7rem 1.7rem 0;
  align-self: start;
}
body.Home-page #consultancy .consultancy-slide .consultancy-mini-points li {
  text-align: left;
  padding-left: 1.7rem;
}
body.Home-page #consultancy .consultancy-slide .consultancy-mini-points li::before {
  content: '';
  left: 0;
  top: 0.5em;
  width: 1.05rem;
  height: 1.05rem;
  border-radius: 50%;
  background:
    linear-gradient(135deg, #4f46e5, #0891b2);
  box-shadow: 0 3px 8px rgba(79,70,229,0.28);
}
body.Home-page #consultancy .consultancy-slide .consultancy-mini-points li::after {
  content: '';
  position: absolute;
  left: 0.36rem;
  top: 0.62em;
  width: 0.28rem;
  height: 0.5rem;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

/* Carousel controls — sit at the padded shell edges, off the card */
body.Home-page #consultancy .consultancy-carousel .carousel-control-prev { left: -6px; }
body.Home-page #consultancy .consultancy-carousel .carousel-control-next { right: -6px; }

/* --- Tablet --- */
@media (max-width: 991.98px) {
  body.Home-page #consultancy .consultancy-slide {
    grid-template-columns: minmax(180px, 260px) 1fr;
    column-gap: 1.4rem;
  }
  body.Home-page #consultancy .consultancy-slide-visual { min-height: 210px; }
}

/* --- Mobile: stack into banner + content --- */
@media (max-width: 767.98px) {
  body.Home-page #consultancy .consultancy-carousel-inner { padding: 0.5rem; }
  body.Home-page #consultancy .consultancy-slide {
    grid-template-columns: 1fr;
    grid-template-areas:
      "visual"
      "kicker"
      "title"
      "desc"
      "points";
    grid-template-rows: auto auto auto auto auto;
    border-radius: 22px !important;
  }
  body.Home-page #consultancy .consultancy-slide-visual {
    min-height: 0;
    flex-direction: row;
    justify-content: center;
    gap: 0.9rem;
    padding: 1.1rem 1rem;
  }
  body.Home-page #consultancy .consultancy-slide-visual i {
    font-size: 1.55rem; width: 3.1rem; height: 3.1rem;
  }
  body.Home-page #consultancy .consultancy-slide-visual span { font-size: 0.9rem; }
  body.Home-page #consultancy .consultancy-slide-kicker { padding: 1.2rem 1.3rem 0; }
  body.Home-page #consultancy .consultancy-slide .consulting-feature-title { padding: 0 1.3rem; }
  body.Home-page #consultancy .consultancy-slide p { padding: 0 1.3rem; max-width: none; }
  body.Home-page #consultancy .consultancy-slide .consultancy-mini-points { padding: 0 1.3rem 1.3rem; }
  body.Home-page #consultancy .consultancy-carousel .carousel-control-prev { left: 0; }
  body.Home-page #consultancy .consultancy-carousel .carousel-control-next { right: 0; }
}
