.elementor-54611 .elementor-element.elementor-element-671b5f10:not(.elementor-motion-effects-element-type-background), .elementor-54611 .elementor-element.elementor-element-671b5f10 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#031816;}.elementor-54611 .elementor-element.elementor-element-671b5f10{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-671b5f10 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-54611 .elementor-element.elementor-element-4cc27949 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-474ae5a8:not(.elementor-motion-effects-element-type-background), .elementor-54611 .elementor-element.elementor-element-474ae5a8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#031816;}.elementor-54611 .elementor-element.elementor-element-474ae5a8{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-474ae5a8 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-54611 .elementor-element.elementor-element-62e9e63f > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-1f7eadcc:not(.elementor-motion-effects-element-type-background), .elementor-54611 .elementor-element.elementor-element-1f7eadcc > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#031816;}.elementor-54611 .elementor-element.elementor-element-1f7eadcc{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-1f7eadcc > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-54611 .elementor-element.elementor-element-4b429c6b > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-4647998d:not(.elementor-motion-effects-element-type-background), .elementor-54611 .elementor-element.elementor-element-4647998d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#031816;}.elementor-54611 .elementor-element.elementor-element-4647998d{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-4647998d > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-54611 .elementor-element.elementor-element-248249c4 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-ba1726c:not(.elementor-motion-effects-element-type-background), .elementor-54611 .elementor-element.elementor-element-ba1726c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#031816;}.elementor-54611 .elementor-element.elementor-element-ba1726c{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-ba1726c > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-54611 .elementor-element.elementor-element-2b2e9cc9 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-1b469c70:not(.elementor-motion-effects-element-type-background), .elementor-54611 .elementor-element.elementor-element-1b469c70 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#031816;}.elementor-54611 .elementor-element.elementor-element-1b469c70{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-1b469c70 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-54611 .elementor-element.elementor-element-6269f7a6 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-4bf2effa:not(.elementor-motion-effects-element-type-background), .elementor-54611 .elementor-element.elementor-element-4bf2effa > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#031816;}.elementor-54611 .elementor-element.elementor-element-4bf2effa{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-4bf2effa > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-54611 .elementor-element.elementor-element-69d1f3d7 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-3cd6d4cc:not(.elementor-motion-effects-element-type-background), .elementor-54611 .elementor-element.elementor-element-3cd6d4cc > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#031816;}.elementor-54611 .elementor-element.elementor-element-3cd6d4cc{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-3cd6d4cc > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-54611 .elementor-element.elementor-element-3fcc9f96 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-146a236f:not(.elementor-motion-effects-element-type-background), .elementor-54611 .elementor-element.elementor-element-146a236f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#031816;}.elementor-54611 .elementor-element.elementor-element-146a236f{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-146a236f > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-54611 .elementor-element.elementor-element-f7d3ffc > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-451beddf:not(.elementor-motion-effects-element-type-background), .elementor-54611 .elementor-element.elementor-element-451beddf > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#031816;}.elementor-54611 .elementor-element.elementor-element-451beddf{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-451beddf > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-54611 .elementor-element.elementor-element-5f73c9a1 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-27a59d08:not(.elementor-motion-effects-element-type-background), .elementor-54611 .elementor-element.elementor-element-27a59d08 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#031816;}.elementor-54611 .elementor-element.elementor-element-27a59d08{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-27a59d08 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-54611 .elementor-element.elementor-element-52516530 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-16f08682:not(.elementor-motion-effects-element-type-background), .elementor-54611 .elementor-element.elementor-element-16f08682 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#031816;}.elementor-54611 .elementor-element.elementor-element-16f08682{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-16f08682 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-54611 .elementor-element.elementor-element-6e137a54 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-682daac8:not(.elementor-motion-effects-element-type-background), .elementor-54611 .elementor-element.elementor-element-682daac8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#031816;}.elementor-54611 .elementor-element.elementor-element-682daac8{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-682daac8 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-54611 .elementor-element.elementor-element-3c20aaeb > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-34f8acce:not(.elementor-motion-effects-element-type-background), .elementor-54611 .elementor-element.elementor-element-34f8acce > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#031816;}.elementor-54611 .elementor-element.elementor-element-34f8acce{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-34f8acce > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-54611 .elementor-element.elementor-element-32760813 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-56dff7c7:not(.elementor-motion-effects-element-type-background), .elementor-54611 .elementor-element.elementor-element-56dff7c7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#031816;}.elementor-54611 .elementor-element.elementor-element-56dff7c7{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-56dff7c7 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-54611 .elementor-element.elementor-element-74ec9ecf > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-34fa0011:not(.elementor-motion-effects-element-type-background), .elementor-54611 .elementor-element.elementor-element-34fa0011 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#031816;}.elementor-54611 .elementor-element.elementor-element-34fa0011{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-54611 .elementor-element.elementor-element-34fa0011 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-54611 .elementor-element.elementor-element-304818b8 > .elementor-element-populated{padding:0px 0px 0px 0px;}/* Start custom CSS for section, class: .elementor-element-34fa0011 *//* ═══════════════════════════════════════════════════════════════════
   Practical GenAI in FP&A · v4.0 · 2026-04-20
   Per-page theme override. Paste into Elementor → Site Settings → Custom CSS,
   OR WP Customize → Additional CSS, OR enqueue only on this page.
   Includes: core design tokens + production hardening §2 block (rescoped).
   ═══════════════════════════════════════════════════════════════════ */


/* ═══════════════════════════════════════════════════════════════════
   DIGISOUL — PRACTICAL GENAI FOR FP&A (v4.0 · 2026-04-20)
   Motherboard v2.0 aesthetic · bilingual EN/AR · hardened for production
   ═══════════════════════════════════════════════════════════════════ */

:root{
  /* DIGISOUL BRAND TOKENS */
  --sap:#0A244A; --sap-2:#06182F; --sap-3:#04101F;
  --obs:#0F0F0F; --alab:#F7F7F7;
  --gold:#C9A86E; --gold-2:#E8C88A;
  --teal:#00716C; --purple:#4A154B; --burg:#6D213C; --copper:#B87333;
  /* MOTHERBOARD PCB ACCENT */
  --pcb-dark:#04201A; --pcb-mid:#0A3D2F; --pcb-lit:#0F6E42;
  --phos:#00E879; --phos-soft:#6AFFB4; --phos-glow:rgba(0,232,121,0.18);
  /* GREEN-DOMINANT BASE (with subtle sapphire accents kept for cards/pockets) */
  --bg-deep:#031816;   /* deepest green-black — body base */
  --bg-mid:#052824;    /* mid-green — section base */
  --bg-rich:#07342C;   /* richer mid-green — hover states */
  --bg-blue-accent:rgba(10,36,74,0.30); /* sapphire used only as accent layer */
  /* FONTS */
  --f-disp:'Playfair Display',Georgia,serif;
  --f-body:'Montserrat','Helvetica Neue',sans-serif;
  --f-acc:'Cormorant Garamond',Georgia,serif;
  --f-data:'IBM Plex Mono',ui-monospace,monospace;
  --f-ar-head:'IBM Plex Sans Arabic','Cairo',Tahoma,sans-serif;
  --f-ar-body:'Cairo','IBM Plex Sans Arabic',Tahoma,sans-serif;
  /* SPACING (8-grid) */
  --s1:8px; --s2:16px; --s3:24px; --s4:32px; --s5:48px; --s6:64px; --s7:96px; --s8:128px;
  /* CONTENT WIDTH LADDER */
  --cw:min(92vw, 1320px);
  --cw-w:min(92vw, 1440px);
  --cw-x:min(92vw, 1560px);
  --cw-u:min(92vw, 1680px);
  /* SHADOW / BORDER */
  --br:16px; --br-s:10px; --br-l:24px;
  --bd:rgba(201,168,110,0.20);
  --bd-strong:rgba(201,168,110,0.45);
  --sh:0 10px 30px rgba(0,0,0,0.35);
  --sh-xl:0 20px 60px rgba(0,0,0,0.45);
}

/* Scope everything to .genai-section-wrap — lets Elementor host this
   without polluting other widgets. */
body{
  background:
    radial-gradient(1200px 600px at 10% 0%, rgba(15,110,66,0.35), transparent 60%),
    radial-gradient(1000px 500px at 90% 100%, rgba(10,36,74,0.28), transparent 60%),
    linear-gradient(180deg, var(--bg-mid) 0%, var(--bg-deep) 100%);
  min-height:100vh;
  overflow-x:clip;
  max-width:100%
}
.genai-section-wrap{
  color:var(--alab);
  font-family:var(--f-body);
  font-weight:300;
  line-height:1.7
}

.genai-section-wrap *{box-sizing:border-box}

/* Arabic typography */
html[data-lang-state="ar"] .genai-section-wrap,
body[dir="rtl"]{
  font-family:var(--f-ar-body);
  line-height:1.85;
}
html[data-lang-state="ar"] .genai-section-wrap h1,
html[data-lang-state="ar"] .genai-section-wrap h2,
html[data-lang-state="ar"] .genai-section-wrap h3,
html[data-lang-state="ar"] .genai-section-wrap h4{
  font-family:var(--f-ar-head);
  font-weight:700;
  letter-spacing:0;
}

/* Language toggle visibility */
.genai-section-wrap .lang-en{display:inline}
.genai-section-wrap .lang-ar{display:none}
html[data-lang-state="ar"] .genai-section-wrap .lang-en{display:none}
html[data-lang-state="ar"] .genai-section-wrap .lang-ar{display:inline}
html[data-lang-state="ar"] .genai-section-wrap .block-en{display:none}
html[data-lang-state="ar"] .genai-section-wrap .block-ar{display:block!important}
.genai-section-wrap .block-ar{display:none}
.genai-section-wrap .block-en{display:block}

/* Typography */
.genai-section-wrap h1,
.genai-section-wrap h2,
.genai-section-wrap h3{
  font-family:var(--f-disp);
  color:var(--alab);
  font-weight:700;
  line-height:1.15;
  margin:0 0 var(--s3) 0;
  letter-spacing:-0.01em;
}
.genai-section-wrap h1{font-size:clamp(2.2rem, 1.5rem + 3.2vw, 4.2rem)}
.genai-section-wrap h2{font-size:clamp(1.7rem, 1.2rem + 2.2vw, 3rem)}
.genai-section-wrap h3{font-size:clamp(1.2rem, 0.95rem + 1.3vw, 1.6rem)}
.genai-section-wrap p{margin:0 0 var(--s2) 0; color:rgba(247,247,247,0.88)}
.genai-section-wrap .eyebrow{
  font-family:var(--f-data);
  font-size:0.8rem;
  letter-spacing:0.22em;
  text-transform:uppercase;
  color:var(--gold);
  margin:0 0 var(--s2) 0;
  display:inline-block;
}
.genai-section-wrap .tagline{
  font-family:var(--f-acc);
  font-style:italic;
  font-size:clamp(1.1rem, 0.9rem + 0.7vw, 1.4rem);
  color:var(--gold-2);
  margin:var(--s2) 0;
}

/* Section wrapper */
.genai-section-wrap .genai-section{
  position:relative;
  padding:clamp(48px, 4vw + 32px, 112px) 0;
  overflow:hidden;
}
.genai-section-wrap .genai-container{
  width:var(--cw);
  margin-inline:auto;
  position:relative;
  z-index:2;
}
@media(min-width:1920px){
  .genai-section-wrap .genai-container{width:var(--cw-w)}
}
@media(min-width:2560px){
  .genai-section-wrap .genai-container{width:var(--cw-x)}
}
@media(min-width:3440px){
  .genai-section-wrap .genai-container{width:var(--cw-u)}
}

/* Universal section background — subtle PCB motif */
.genai-section-wrap .genai-section::before{
  content:'';
  position:absolute;inset:0;
  background-image:
    linear-gradient(90deg, rgba(201,168,110,0.04) 1px, transparent 1px),
    linear-gradient(0deg, rgba(201,168,110,0.04) 1px, transparent 1px);
  background-size:64px 64px;
  pointer-events:none;
  z-index:1;
}

/* Buttons */
.genai-section-wrap .btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:52px; min-width:44px;
  padding:14px 32px;
  border-radius:999px;
  border:1.5px solid transparent;
  font-family:var(--f-body);
  font-weight:600;
  font-size:0.95rem;
  letter-spacing:0.02em;
  text-decoration:none;
  cursor:pointer;
  transition:transform .22s ease, box-shadow .22s ease, background .22s ease;
  white-space:nowrap;
}
.genai-section-wrap .btn-primary{
  background:linear-gradient(135deg, var(--gold) 0%, var(--copper) 100%);
  color:var(--obs);
  box-shadow:0 10px 30px rgba(201,168,110,0.35);
}
.genai-section-wrap .btn-primary:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 40px rgba(201,168,110,0.55);
}
.genai-section-wrap .btn-secondary{
  background:transparent;
  color:var(--alab);
  border-color:rgba(247,247,247,0.35);
}
.genai-section-wrap .btn-secondary:hover{
  border-color:var(--gold);
  color:var(--gold);
}
.genai-section-wrap .btn-phos{
  background:linear-gradient(135deg, var(--phos) 0%, var(--teal) 100%);
  color:var(--pcb-dark);
  font-weight:700;
  box-shadow:0 10px 30px var(--phos-glow);
}

/* Card primitive */
.genai-section-wrap .card{
  background:rgba(10,36,74,0.55);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  border:1px solid var(--bd);
  border-radius:var(--br);
  padding:clamp(20px, 1.2vw + 12px, 32px);
  transition:transform .3s ease, border-color .3s ease, box-shadow .3s ease;
  position:relative;
  overflow:hidden;
}
.genai-section-wrap .card:hover{
  transform:translateY(-4px);
  border-color:var(--bd-strong);
  box-shadow:var(--sh-xl);
}
.genai-section-wrap .card-icon{
  width:48px;height:48px;
  border-radius:12px;
  background:linear-gradient(135deg, rgba(201,168,110,0.22), rgba(0,113,108,0.18));
  display:grid;place-items:center;
  color:var(--gold);
  margin-bottom:var(--s2);
  font-size:1.5rem;
}

/* AI tool tiles — brand logo + name + blurb */
.genai-section-wrap .tool-card{
  text-align:center;
  display:flex; flex-direction:column; align-items:center;
}
.genai-section-wrap .tool-card h3{
  font-family:var(--f-disp);
  font-size:1.1rem;
  margin-bottom:8px;
  color:var(--alab);
}
.genai-section-wrap .tool-card p{
  font-size:0.88rem;
  color:rgba(247,247,247,0.75);
  max-width:28ch;
}
.genai-section-wrap .tool-logo{
  width:84px; height:84px;
  margin:0 auto var(--s2);
  border-radius:20px;
  background:#F7F7F7;
  border:1px solid rgba(201,168,110,0.35);
  box-shadow:0 6px 18px rgba(0,0,0,0.35), inset 0 0 0 1px rgba(255,255,255,0.6);
  display:grid; place-items:center;
  padding:14px;
  transition:transform .3s ease, border-color .3s ease, box-shadow .3s ease;
}
.genai-section-wrap .tool-card:hover .tool-logo{
  transform:translateY(-3px) scale(1.05);
  border-color:rgba(201,168,110,0.65);
  box-shadow:0 10px 26px rgba(0,0,0,0.45), 0 0 22px rgba(0,232,121,0.20), inset 0 0 0 1px rgba(255,255,255,0.75);
}
.genai-section-wrap .tool-logo img,
.genai-section-wrap .tool-logo svg.tool-svg{
  width:100%; height:100%;
  object-fit:contain;
  display:block;
}

/* Reveal on scroll */
.genai-section-wrap .reveal,
.genai-section-wrap .reveal-l,
.genai-section-wrap .reveal-r,
.genai-section-wrap .reveal-b{
  opacity:0;
  transform:translateY(24px);
  transition:opacity .9s cubic-bezier(0.2,0.8,0.2,1), transform .9s cubic-bezier(0.2,0.8,0.2,1);
}
.genai-section-wrap .reveal-l{transform:translateX(-32px)}
.genai-section-wrap .reveal-r{transform:translateX(32px)}
.genai-section-wrap .reveal.in,
.genai-section-wrap .reveal-l.in,
.genai-section-wrap .reveal-r.in,
.genai-section-wrap .reveal-b.in{opacity:1; transform:none}

@media(prefers-reduced-motion: reduce){
  .genai-section-wrap .reveal,
  .genai-section-wrap .reveal-l,
  .genai-section-wrap .reveal-r,
  .genai-section-wrap .reveal-b{opacity:1; transform:none; transition:none}
}

/* ─────────────────────────────────────────────────────────
   CINEMATIC HERO
   ───────────────────────────────────────────────────────── */
.genai-section-wrap .hero{
  min-height:88vh;
  min-height:88svh;
  padding:clamp(48px, 5vw + 24px, 120px) 0 clamp(48px, 4vw + 24px, 96px);
  display:flex;align-items:center;
  background:
    radial-gradient(1400px 700px at 20% 10%, rgba(0,232,121,0.14), transparent 60%),
    radial-gradient(1000px 600px at 85% 40%, rgba(10,36,74,0.32), transparent 60%),
    radial-gradient(900px 500px at 60% 90%, rgba(201,168,110,0.15), transparent 60%),
    linear-gradient(135deg, var(--pcb-dark) 0%, var(--bg-deep) 100%);
  overflow:hidden;
}
.genai-section-wrap .hero-bg{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  opacity:0.55;
}
.genai-section-wrap .hero-pcb{
  position:absolute;inset:0;
  background-image:
    linear-gradient(90deg, rgba(0,232,121,0.09) 1px, transparent 1px),
    linear-gradient(0deg, rgba(0,232,121,0.09) 1px, transparent 1px),
    radial-gradient(circle at 15% 20%, rgba(0,232,121,0.35) 0 2px, transparent 3px),
    radial-gradient(circle at 85% 25%, rgba(201,168,110,0.4) 0 2px, transparent 3px),
    radial-gradient(circle at 40% 70%, rgba(0,232,121,0.25) 0 1.5px, transparent 3px),
    radial-gradient(circle at 70% 60%, rgba(201,168,110,0.3) 0 1.5px, transparent 3px);
  background-size:72px 72px, 72px 72px, 100% 100%, 100% 100%, 100% 100%, 100% 100%;
  mix-blend-mode:screen;
}
.genai-section-wrap .hero-particles{
  position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none;
  opacity:0.6;
}
.genai-section-wrap .hero-glow{
  position:absolute; z-index:1; pointer-events:none;
  width:min(60vw, 720px); aspect-ratio:1;
  right:-10%; top:10%;
  background:radial-gradient(circle, rgba(0,232,121,0.22) 0%, rgba(0,232,121,0) 70%);
  filter:blur(30px);
  animation:heroGlow 9s ease-in-out infinite alternate;
}
.genai-section-wrap .hero-glow.second{
  right:auto; left:-15%; top:auto; bottom:-10%;
  background:radial-gradient(circle, rgba(201,168,110,0.20) 0%, rgba(201,168,110,0) 70%);
  animation-delay:-4.5s;
}
@keyframes heroGlow{
  from{opacity:0.5; transform:scale(0.95)}
  to{opacity:1; transform:scale(1.08)}
}

.genai-section-wrap .hero-inner{
  position:relative; z-index:3;
  width:var(--cw);
  margin-inline:auto;
  display:grid;
  grid-template-columns:1.1fr 0.9fr;
  gap:clamp(24px, 2vw + 16px, 56px);
  align-items:center;
}
@media(max-width:1024px){
  .genai-section-wrap .hero-inner{grid-template-columns:1fr; gap:48px}
}

.genai-section-wrap .hero-copy .eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 14px;border-radius:999px;
  background:rgba(0,232,121,0.08);
  border:1px solid rgba(0,232,121,0.28);
  color:var(--phos-soft);
}
.genai-section-wrap .hero-copy .eyebrow::before{
  content:''; width:8px;height:8px;border-radius:50%;
  background:var(--phos);
  box-shadow:0 0 12px var(--phos);
  animation:pulse 1.8s ease-in-out infinite;
}
@keyframes pulse{0%,100%{opacity:.45;transform:scale(.85)} 50%{opacity:1;transform:scale(1.1)}}

.genai-section-wrap .hero-copy h1{
  font-size:clamp(2.2rem, 1.2rem + 3.5vw, 4.4rem);
  line-height:1.08;
  margin-bottom:var(--s3);
  background:linear-gradient(135deg, #F7F7F7 0%, #E8C88A 60%, #C9A86E 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.genai-section-wrap .hero-copy .tagline{
  font-size:clamp(1.15rem, 0.9rem + 0.8vw, 1.55rem);
  color:var(--phos-soft);
  margin-bottom:var(--s3);
  max-width:56ch;
}
.genai-section-wrap .hero-sub{
  font-size:clamp(0.95rem, 0.85rem + 0.2vw, 1.05rem);
  max-width:56ch;
  margin-bottom:var(--s4);
  color:rgba(247,247,247,0.8);
}
.genai-section-wrap .hero-chips{
  display:flex;flex-wrap:wrap;gap:10px;margin-bottom:var(--s4);
}
.genai-section-wrap .hero-chips .chip{
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 14px;border-radius:999px;
  background:rgba(247,247,247,0.06);
  border:1px solid rgba(247,247,247,0.15);
  font-size:0.82rem;
  color:var(--alab);
}
.genai-section-wrap .hero-chips .chip.gold{color:var(--gold); border-color:rgba(201,168,110,0.35)}
.genai-section-wrap .hero-chips .chip.phos{color:var(--phos-soft); border-color:rgba(0,232,121,0.35)}
.genai-section-wrap .hero-ctas{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:var(--s4)}

/* Hero right column — FluentForm card */
.genai-section-wrap .hero-form-wrap{
  position:relative;
}
.genai-section-wrap .hero-form-card{
  position:relative;
  background:linear-gradient(180deg, rgba(10,36,74,0.85) 0%, rgba(4,16,31,0.92) 100%);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  border:1px solid rgba(0,232,121,0.28);
  border-radius:var(--br-l);
  padding:clamp(24px, 1.6vw + 16px, 40px);
  box-shadow:
    0 30px 80px rgba(0,0,0,0.5),
    0 0 0 1px rgba(201,168,110,0.18) inset,
    0 0 60px rgba(0,232,121,0.08);
  overflow:hidden;
}
.genai-section-wrap .hero-form-card::before{
  content:'';
  position:absolute;inset:0;
  background-image:
    linear-gradient(90deg, rgba(0,232,121,0.04) 1px, transparent 1px),
    linear-gradient(0deg, rgba(0,232,121,0.04) 1px, transparent 1px);
  background-size:32px 32px;
  pointer-events:none;
  opacity:0.5;
}
.genai-section-wrap .hero-form-card > *{position:relative;z-index:1}
.genai-section-wrap .hero-form-card .form-eyebrow{
  font-family:var(--f-data);
  font-size:0.75rem;
  letter-spacing:0.22em;
  text-transform:uppercase;
  color:var(--phos-soft);
  margin-bottom:8px;
}
.genai-section-wrap .hero-form-card h3{
  font-size:clamp(1.3rem, 1rem + 0.7vw, 1.6rem);
  margin-bottom:8px;
  color:var(--alab);
}
.genai-section-wrap .hero-form-card .form-sub{
  font-size:0.9rem;
  color:rgba(247,247,247,0.75);
  margin-bottom:var(--s3);
}
.genai-section-wrap .hero-form-card .form-meta{
  display:flex;flex-wrap:wrap;gap:10px;
  font-size:0.78rem;
  color:rgba(247,247,247,0.7);
  margin-top:var(--s3);
  padding-top:var(--s3);
  border-top:1px solid rgba(201,168,110,0.15);
}
.genai-section-wrap .hero-form-card .form-meta-item{
  display:inline-flex;align-items:center;gap:6px;
}

/* ─── FLUENT FORMS + CHOICES.JS OVERRIDE ─────────────────────────────
   Hero form card sits on dark sapphire. Layout contract:
     · Labels ABOVE inputs   → WHITE (alabaster) — readable on dark card
     · Typed / selected text → GRAY on white field
     · Placeholder           → lighter gray
     · One font (Montserrat) and one sizing token (--ff-control-*) for
       every input + select + textarea + Choices.js inner so Country
       dropdown is visually identical to Name / Email / Phone.
   ──────────────────────────────────────────────────────────────────── */

/* Unified font-family for every form element */
.genai-section-wrap .ff-slot,
.genai-section-wrap .ff-slot *,
.genai-section-wrap .ff-slot input,
.genai-section-wrap .ff-slot select,
.genai-section-wrap .ff-slot textarea,
.genai-section-wrap .ff-slot button,
.genai-section-wrap .ff-slot label,
.genai-section-wrap .ff-slot .choices,
.genai-section-wrap .ff-slot .choices *,
.genai-section-wrap .ff-slot .choices__inner,
.genai-section-wrap .ff-slot .choices__item,
.genai-section-wrap .ff-slot .choices__input,
.genai-section-wrap .ff-slot .choices__placeholder{
  font-family:var(--f-body)!important;
  font-feature-settings:normal;
}

/* Labels (above each input) — WHITE on the dark card */
.genai-section-wrap .ff-slot label,
.genai-section-wrap .ff-slot .ff-el-input--label,
.genai-section-wrap .ff-slot .ff-el-input--label label,
.genai-section-wrap .ff-slot .ff-el-input--label > label,
.genai-section-wrap .ff-slot .ff-el-form-check-label,
.genai-section-wrap .ff-slot .ff-el-group > label,
.genai-section-wrap .ff-slot .ff-el-form-top label{
  color:var(--alab)!important;
  font-weight:500!important;
  font-size:0.9rem!important;
  letter-spacing:0.01em;
  margin-bottom:6px;
  display:block;
}

/* Shared sizing token for every control */
.genai-section-wrap .ff-slot{
  --ff-control-height:44px;
  --ff-control-pad-y:10px;
  --ff-control-pad-x:14px;
  --ff-control-radius:10px;
  --ff-control-border:1px solid rgba(15,15,15,0.18);
  --ff-control-font-size:0.95rem;
  --ff-text-gray:#4B5563;
  --ff-placeholder-gray:#9CA3AF;
}

/* Base inputs / textareas / selects — GRAY text on white */
.genai-section-wrap .ff-slot input[type="text"],
.genai-section-wrap .ff-slot input[type="email"],
.genai-section-wrap .ff-slot input[type="tel"],
.genai-section-wrap .ff-slot input[type="number"],
.genai-section-wrap .ff-slot input[type="url"],
.genai-section-wrap .ff-slot input[type="search"],
.genai-section-wrap .ff-slot input[type="date"],
.genai-section-wrap .ff-slot input[type="time"],
.genai-section-wrap .ff-slot input[type="datetime-local"],
.genai-section-wrap .ff-slot input[type="password"],
.genai-section-wrap .ff-slot textarea,
.genai-section-wrap .ff-slot select{
  color:var(--ff-text-gray)!important;
  background:#FFFFFF!important;
  border:var(--ff-control-border)!important;
  border-radius:var(--ff-control-radius)!important;
  min-height:var(--ff-control-height)!important;
  height:var(--ff-control-height)!important;
  padding:var(--ff-control-pad-y) var(--ff-control-pad-x)!important;
  font-size:var(--ff-control-font-size)!important;
  line-height:1.4!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
}
.genai-section-wrap .ff-slot textarea{
  height:auto!important;
  min-height:96px!important;
  resize:vertical;
}
.genai-section-wrap .ff-slot input::placeholder,
.genai-section-wrap .ff-slot textarea::placeholder{
  color:var(--ff-placeholder-gray)!important;
  opacity:1;
}
.genai-section-wrap .ff-slot input:focus,
.genai-section-wrap .ff-slot textarea:focus,
.genai-section-wrap .ff-slot select:focus{
  border-color:#0A244A!important;
  outline:2px solid rgba(10,36,74,0.22);
  outline-offset:1px;
}

/* Choices.js (Country .elementor-54611 .elementor-element.elementor-element-34fa0011) — mirror base input EXACTLY */
.genai-section-wrap .ff-slot .choices{
  margin-bottom:0!important;
}
.genai-section-wrap .ff-slot .choices__inner{
  background:#FFFFFF!important;
  color:var(--ff-text-gray)!important;
  border:var(--ff-control-border)!important;
  border-radius:var(--ff-control-radius)!important;
  min-height:var(--ff-control-height)!important;
  height:var(--ff-control-height)!important;
  padding:var(--ff-control-pad-y) var(--ff-control-pad-x)!important;
  font-size:var(--ff-control-font-size)!important;
  line-height:1.4!important;
  display:flex;align-items:center;
  box-sizing:border-box!important;
}
.genai-section-wrap .ff-slot .choices[data-type*="select-one"] .choices__inner{
  padding-inline-end:32px!important;
}
.genai-section-wrap .ff-slot .choices__list--single{
  padding:0!important;
}
.genai-section-wrap .ff-slot .choices__list--single .choices__item,
.genai-section-wrap .ff-slot .choices__list--single .choices__item--selectable{
  color:var(--ff-text-gray)!important;
  background:transparent!important;
  padding:0!important;
  font-size:var(--ff-control-font-size)!important;
}
.genai-section-wrap .ff-slot .choices__placeholder{
  color:var(--ff-placeholder-gray)!important;
  opacity:1!important;
  font-size:var(--ff-control-font-size)!important;
}
.genai-section-wrap .ff-slot .choices__list--dropdown,
.genai-section-wrap .ff-slot .choices__list[aria-expanded]{
  background:#FFFFFF!important;
  border:var(--ff-control-border)!important;
  border-radius:var(--ff-control-radius)!important;
  box-shadow:0 10px 24px rgba(0,0,0,0.18);
  z-index:20;
}
.genai-section-wrap .ff-slot .choices__list--dropdown .choices__item,
.genai-section-wrap .ff-slot .choices__list--dropdown .choices__item--choice,
.genai-section-wrap .ff-slot .choices__list--dropdown .choices__item--selectable{
  color:var(--ff-text-gray)!important;
  background:#FFFFFF!important;
  font-size:var(--ff-control-font-size)!important;
  padding:8px 14px!important;
}
.genai-section-wrap .ff-slot .choices__list--dropdown .choices__item--selectable.is-highlighted{
  background:rgba(10,36,74,0.08)!important;
  color:#0F0F0F!important;
}
.genai-section-wrap .ff-slot .choices__input{
  color:var(--ff-text-gray)!important;
  background:#FFFFFF!important;
  font-size:var(--ff-control-font-size)!important;
  padding:6px 10px!important;
  margin:4px;
}
.genai-section-wrap .ff-slot .choices.is-focused .choices__inner,
.genai-section-wrap .ff-slot .choices.is-open .choices__inner{
  border-color:#0A244A!important;
  outline:2px solid rgba(10,36,74,0.22);
  outline-offset:1px;
}
.genai-section-wrap .ff-slot .choices__list--multiple .choices__item{
  color:#0F0F0F!important;
  background:rgba(10,36,74,0.10)!important;
  border:1px solid rgba(10,36,74,0.25)!important;
  font-size:0.85rem!important;
}

/* Submit button — brand gold, dark text */
.genai-section-wrap .ff-slot button[type="submit"],
.genai-section-wrap .ff-slot .ff-btn-submit,
.genai-section-wrap .ff-slot .ff_btn_style{
  color:#0F0F0F!important;
  background:var(--gold)!important;
  border:none!important;
  border-radius:var(--ff-control-radius)!important;
  font-weight:600!important;
  font-size:0.95rem!important;
  padding:12px 22px!important;
  min-height:var(--ff-control-height)!important;
  cursor:pointer;
}
.genai-section-wrap .ff-slot button[type="submit"]:hover,
.genai-section-wrap .ff-slot .ff-btn-submit:hover{
  background:#D9B77E!important;
}

/* Validation / help text (soft coral reads on dark card) */
.genai-section-wrap .ff-slot .ff-el-is-error .text-danger,
.genai-section-wrap .ff-slot .error.text-danger,
.genai-section-wrap .ff-slot .ff-errors-in-stack{
  color:#FFB4A8!important;
  font-size:0.82rem!important;
  margin-top:4px;
}
.genai-section-wrap .ff-slot .ff-message-success{
  color:#064e3b!important;background:#d1fae5!important;
  border:1px solid #10b981!important;border-radius:var(--ff-control-radius);padding:12px
}
.genai-section-wrap .ff-slot .ff-el-group,
.genai-section-wrap .ff-slot .ff-t-container{
  margin-bottom:14px;
}

/* Analytics widget floating elements (pure CSS, responsive-safe) */
.genai-section-wrap .hero-analytics{
  position:absolute;
  z-index:3;
  pointer-events:none;
  opacity:0;
  animation:analFade 1.2s .8s ease-out forwards;
}
@keyframes analFade{to{opacity:1}}
.genai-section-wrap .hero-analytics.chart-1{
  top:8%; right:-4%;
  width:240px;
  transform:rotate(-4deg);
}
.genai-section-wrap .hero-analytics.chart-2{
  bottom:6%; left:-3%;
  width:220px;
  transform:rotate(3deg);
}
@media(max-width:1280px){
  .genai-section-wrap .hero-analytics{display:none}
}
.genai-section-wrap .hero-analytics .mini{
  background:rgba(10,36,74,0.85);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  border:1px solid rgba(201,168,110,0.3);
  border-radius:14px;
  padding:16px;
  box-shadow:0 20px 60px rgba(0,0,0,0.5);
}
.genai-section-wrap .hero-analytics .mini-label{
  font-family:var(--f-data);
  font-size:0.7rem;
  letter-spacing:0.18em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:6px;
}
.genai-section-wrap .hero-analytics .mini-value{
  font-family:var(--f-disp);
  font-size:1.7rem;
  font-weight:700;
  color:var(--alab);
  line-height:1;
}
.genai-section-wrap .hero-analytics .mini-delta{
  font-family:var(--f-data);
  font-size:0.75rem;
  color:var(--phos-soft);
  margin-top:2px;
}
.genai-section-wrap .hero-analytics .spark{
  display:flex;align-items:flex-end;gap:2px;
  height:28px;
  margin-top:8px;
}
.genai-section-wrap .hero-analytics .spark > i{
  display:inline-block;
  flex:1;
  background:linear-gradient(180deg, var(--phos) 0%, var(--teal) 100%);
  border-radius:2px 2px 0 0;
  min-height:4px;
}

/* KPI BAND */
.genai-section-wrap .kpi-band{
  background:
    radial-gradient(900px 300px at 50% 50%, rgba(10,36,74,0.22), transparent 70%),
    linear-gradient(180deg, var(--pcb-dark) 0%, var(--bg-deep) 100%);
  border-block:1px solid rgba(0,232,121,0.15);
  padding:clamp(32px, 3vw + 16px, 72px) 0;
}
.genai-section-wrap .kpi-grid{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:clamp(16px, 1.5vw + 8px, 40px);
}
@media(max-width:768px){
  .genai-section-wrap .kpi-grid{grid-template-columns:repeat(2, 1fr)}
}
.genai-section-wrap .kpi{
  text-align:center;
  padding:var(--s2);
  position:relative;
}
.genai-section-wrap .kpi-value{
  font-family:var(--f-disp);
  font-size:clamp(2.2rem, 1.5rem + 2.4vw, 3.6rem);
  font-weight:700;
  color:var(--gold);
  line-height:1;
  margin-bottom:8px;
  background:linear-gradient(135deg, var(--gold-2) 0%, var(--gold) 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.genai-section-wrap .kpi-label{
  font-family:var(--f-data);
  font-size:0.8rem;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:rgba(247,247,247,0.75);
}

/* GRID primitives */
.genai-section-wrap .g-2{display:grid;grid-template-columns:repeat(2, 1fr);gap:var(--s3)}
.genai-section-wrap .g-3{display:grid;grid-template-columns:repeat(3, 1fr);gap:var(--s3)}
.genai-section-wrap .g-4{display:grid;grid-template-columns:repeat(4, 1fr);gap:var(--s3)}
.genai-section-wrap .g-5{display:grid;grid-template-columns:repeat(5, 1fr);gap:var(--s2)}
@media(max-width:1024px){
  .genai-section-wrap .g-3,
  .genai-section-wrap .g-4,
  .genai-section-wrap .g-5{grid-template-columns:repeat(2, 1fr)}
}
@media(max-width:640px){
  .genai-section-wrap .g-2,
  .genai-section-wrap .g-3,
  .genai-section-wrap .g-4,
  .genai-section-wrap .g-5{grid-template-columns:1fr}
}

/* SECTION HEADER pattern */
.genai-section-wrap .sec-head{
  text-align:center;
  margin-bottom:clamp(32px, 2vw + 24px, 64px);
  max-width:800px;
  margin-inline:auto;
}
.genai-section-wrap .sec-head h2{
  margin-bottom:var(--s2);
}
.genai-section-wrap .sec-head p{
  font-size:clamp(1rem, 0.9rem + 0.3vw, 1.15rem);
  color:rgba(247,247,247,0.8);
  max-width:640px;
  margin-inline:auto;
}

/* COMPARE TABLE */
.genai-section-wrap .cmp-table{
  width:100%;
  border-collapse:collapse;
  border-radius:var(--br);
  overflow:hidden;
  background:rgba(10,36,74,0.5);
  border:1px solid var(--bd);
}
.genai-section-wrap .cmp-table th,
.genai-section-wrap .cmp-table td{
  padding:14px 18px;
  text-align:start;
  border-bottom:1px solid rgba(247,247,247,0.08);
  font-size:0.92rem;
}
.genai-section-wrap .cmp-table thead th{
  background:var(--sap-2);
  color:var(--gold);
  font-family:var(--f-disp);
  font-size:0.95rem;
  font-weight:700;
}
.genai-section-wrap .cmp-table thead th.featured{
  background:linear-gradient(135deg, rgba(201,168,110,0.25) 0%, rgba(0,113,108,0.2) 100%);
  color:var(--gold-2);
}
.genai-section-wrap .cmp-table tbody td{color:var(--alab)}
.genai-section-wrap .cmp-table tbody td.featured{
  background:rgba(201,168,110,0.06);
  color:var(--gold-2);
  font-weight:500;
}
.genai-section-wrap .cmp-check{color:var(--phos); font-weight:700}
.genai-section-wrap .cmp-cross{color:rgba(247,247,247,0.35)}

@media(max-width:768px){
  .genai-section-wrap .cmp-wrap{overflow-x:auto}
  .genai-section-wrap .cmp-table{min-width:720px}
}

/* CURRICULUM accordion */
.genai-section-wrap .cur-item{
  background:rgba(10,36,74,0.5);
  border:1px solid var(--bd);
  border-radius:var(--br);
  margin-bottom:12px;
  overflow:hidden;
}
.genai-section-wrap .cur-item summary{
  list-style:none;
  padding:var(--s3);
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--s2);
  font-family:var(--f-disp);
  font-size:clamp(1rem, 0.9rem + 0.25vw, 1.15rem);
  font-weight:600;
  color:var(--alab);
}
.genai-section-wrap .cur-item summary::-webkit-details-marker{display:none}
.genai-section-wrap .cur-item summary::after{
  content:'+';
  font-size:1.5rem;
  color:var(--gold);
  transition:transform .3s ease;
  flex-shrink:0;
}
.genai-section-wrap .cur-item[open] summary::after{transform:rotate(45deg)}
.genai-section-wrap .cur-body{
  padding:0 var(--s3) var(--s3);
  border-top:1px dashed rgba(201,168,110,0.18);
  padding-top:var(--s2);
  color:rgba(247,247,247,0.8);
  font-size:0.95rem;
}
.genai-section-wrap .cur-num{
  display:inline-grid;place-items:center;
  width:36px;height:36px;
  border-radius:10px;
  background:linear-gradient(135deg, var(--gold) 0%, var(--copper) 100%);
  color:var(--obs);
  font-family:var(--f-data);
  font-weight:700;
  font-size:0.95rem;
  flex-shrink:0;
}

/* PRICING BOX */
.genai-section-wrap .pricing-box{
  background:linear-gradient(180deg, rgba(10,36,74,0.8) 0%, rgba(4,16,31,0.9) 100%);
  border:1.5px solid rgba(201,168,110,0.4);
  border-radius:var(--br-l);
  padding:clamp(32px, 2vw + 24px, 56px);
  text-align:center;
  max-width:640px;
  margin-inline:auto;
  box-shadow:var(--sh-xl), 0 0 80px rgba(201,168,110,0.1);
  position:relative;
}
.genai-section-wrap .pricing-box .price{
  font-family:var(--f-disp);
  font-size:clamp(3rem, 2rem + 3vw, 5rem);
  font-weight:700;
  color:var(--gold-2);
  line-height:1;
  margin:var(--s3) 0 8px;
}
.genai-section-wrap .pricing-box .price sup{
  font-size:0.4em;
  vertical-align:top;
  margin-inline-end:4px;
  color:var(--gold);
}
.genai-section-wrap .pricing-box .price-value{
  font-family:var(--f-data);
  color:rgba(247,247,247,0.6);
  font-size:0.9rem;
  margin-bottom:var(--s3);
  text-decoration:line-through;
  text-decoration-color:rgba(247,247,247,0.3);
}
.genai-section-wrap .pricing-box ul.inclusions{
  list-style:none;
  padding:0;margin:0 0 var(--s4);
  text-align:start;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px 20px;
}
@media(max-width:640px){
  .genai-section-wrap .pricing-box ul.inclusions{grid-template-columns:1fr}
}
.genai-section-wrap .pricing-box ul.inclusions li{
  display:flex;
  align-items:flex-start;
  gap:8px;
  font-size:0.88rem;
  color:rgba(247,247,247,0.85);
}
.genai-section-wrap .pricing-box ul.inclusions li::before{
  content:'✓';
  color:var(--phos);
  font-weight:700;
  flex-shrink:0;
}

/* FAQ */
.genai-section-wrap .faq-item{
  background:rgba(10,36,74,0.4);
  border:1px solid var(--bd);
  border-radius:var(--br);
  margin-bottom:10px;
  overflow:hidden;
}
.genai-section-wrap .faq-item summary{
  list-style:none;
  padding:var(--s3);
  cursor:pointer;
  font-family:var(--f-disp);
  font-size:1.05rem;
  font-weight:600;
  color:var(--alab);
  display:flex;
  justify-content:space-between;
  gap:var(--s2);
}
.genai-section-wrap .faq-item summary::-webkit-details-marker{display:none}
.genai-section-wrap .faq-item summary::after{
  content:'+';
  font-size:1.4rem;
  color:var(--gold);
  transition:transform .3s ease;
}
.genai-section-wrap .faq-item[open] summary::after{transform:rotate(45deg)}
.genai-section-wrap .faq-a{
  padding:0 var(--s3) var(--s3);
  color:rgba(247,247,247,0.8);
  font-size:0.95rem;
  border-top:1px dashed rgba(201,168,110,0.18);
  padding-top:var(--s2);
}

/* Language toggle chip (floating) — pushed below Elementor header + "Get in Touch" */
.genai-section-wrap .lang-toggle{
  position:fixed;
  top:clamp(88px, 11vh, 116px);
  inset-inline-end:14px;
  z-index:2147483600;
  display:inline-flex;
  align-items:center;
  gap:6px;
  background:rgba(10,36,74,0.9);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border:1px solid rgba(201,168,110,0.35);
  border-radius:999px;
  padding:5px;
  box-shadow:var(--sh);
}
/* WP admin-bar pushes toggle further down */
body.admin-bar .genai-section-wrap .lang-toggle{ top:clamp(120px, 13vh, 148px); }
@media(max-width:780px){
  .genai-section-wrap .lang-toggle{ top:clamp(72px, 9vh, 96px); }
  body.admin-bar .genai-section-wrap .lang-toggle{ top:clamp(118px, 14vh, 142px); }
}
.genai-section-wrap .lang-toggle button{
  min-width:44px;
  padding:6px 14px;
  border-radius:999px;
  border:none;
  background:transparent;
  color:var(--alab);
  font-family:var(--f-body);
  font-weight:500;
  font-size:0.85rem;
  cursor:pointer;
  transition:background .2s ease;
}
.genai-section-wrap .lang-toggle button.active{
  background:linear-gradient(135deg, var(--gold) 0%, var(--copper) 100%);
  color:var(--obs);
  font-weight:600;
}

/* INSTRUCTOR */
.genai-section-wrap .instructor{
  display:grid;
  grid-template-columns:280px 1fr;
  gap:clamp(24px, 2vw + 16px, 56px);
  align-items:center;
}
@media(max-width:900px){
  .genai-section-wrap .instructor{grid-template-columns:1fr; text-align:center}
}
.genai-section-wrap .instructor-photo{
  width:100%;
  aspect-ratio:4 / 5;
  border-radius:20px;
  background:linear-gradient(135deg, var(--purple) 0%, var(--sap) 100%);
  border:2px solid var(--gold);
  position:relative;
  overflow:hidden;
  box-shadow:var(--sh-xl);
}
.genai-section-wrap .instructor-photo img{
  width:100%;height:100%;
  object-fit:cover;
  object-position:center 20%;
}
.genai-section-wrap .instructor-photo::after{
  content:'';
  position:absolute; inset:0;
  background:linear-gradient(180deg, transparent 60%, rgba(10,36,74,0.4) 100%);
  pointer-events:none;
}
.genai-section-wrap .creds{
  display:flex;gap:12px;flex-wrap:wrap;margin-top:var(--s3);
}
.genai-section-wrap .creds .cred{
  padding:8px 14px;
  border-radius:999px;
  background:rgba(247,247,247,0.05);
  border:1px solid var(--bd);
  font-family:var(--f-data);
  font-size:0.78rem;
  color:var(--gold);
}

/* FINAL CTA */
.genai-section-wrap .final-cta{
  text-align:center;
  padding:clamp(48px, 5vw + 24px, 120px) 0;
  background:
    radial-gradient(900px 500px at 50% 30%, rgba(201,168,110,0.18), transparent 60%),
    radial-gradient(800px 400px at 50% 90%, rgba(10,36,74,0.25), transparent 60%),
    linear-gradient(180deg, var(--pcb-dark) 0%, var(--bg-deep) 100%);
}
.genai-section-wrap .final-cta h2{
  font-size:clamp(2rem, 1.3rem + 2.4vw, 3.6rem);
}
.genai-section-wrap .final-cta .tagline{
  font-size:clamp(1.1rem, 0.9rem + 0.6vw, 1.35rem);
  margin-bottom:var(--s4);
}

/* Responsive touch targets */
@media(hover: none) and (pointer: coarse){
  .genai-section-wrap .btn{min-height:48px}
}

/* Reduced motion — kill all animated glows */
@media(prefers-reduced-motion: reduce){
  .genai-section-wrap .hero-glow,
  .genai-section-wrap .hero-copy .eyebrow::before,
  .genai-section-wrap .hero-analytics{animation:none}
  .genai-section-wrap .hero-analytics{opacity:1}
}

/* RTL tweaks */
html[data-lang-state="ar"] .genai-section-wrap .hero-copy h1,
html[data-lang-state="ar"] .genai-section-wrap .hero-copy .tagline{
  background:none;
  -webkit-text-fill-color:initial;
  color:var(--gold-2);
}
html[data-lang-state="ar"] .genai-section-wrap .hero-copy h1{color:var(--alab)}
html[data-lang-state="ar"] .genai-section-wrap .hero-analytics.chart-1{right:auto; left:-4%; transform:rotate(4deg)}
html[data-lang-state="ar"] .genai-section-wrap .hero-analytics.chart-2{left:auto; right:-3%; transform:rotate(-3deg)}



/* ═══════════════════════════════════════════════════════════════════
   DIGISOUL PRODUCTION HARDENING — Cross-browser + Admin-mode + Navbar
   Additive only. Zero impact on design, copy, or animations.
   Source: digisoul-landing-creator/references/production-hardening.md §2
   ═══════════════════════════════════════════════════════════════════ */

/* (a) Scrollbar gutter + horizontal overflow clip */
html{
  scrollbar-gutter:stable!important;
  overflow-x:clip!important;
  max-width:100vw!important;
  scroll-behavior:smooth
}
body{
  overflow-x:clip!important;
  max-width:100vw!important;
  margin:0!important;
  background:#031816!important
}

body{
  overflow-x:clip!important;
  max-width:100%!important
}


/* (b) Teleported full-viewport elements use 100% (NOT 100vw) */
body > .curtain{
  position:fixed!important;inset:0!important;
  width:100%!important;height:100vh!important;height:100dvh!important;
  z-index:2147483646!important
}
body > #particles{
  position:fixed!important;inset:0!important;
  width:100%!important;height:100vh!important;height:100dvh!important;
  z-index:0!important;pointer-events:none!important
}

/* (c) Scroll-progress uses CSS custom property */
body > .scroll-progress{
  position:fixed!important;bottom:0!important;left:0!important;right:auto!important;
  width:var(--_sp,0%)!important;height:2px!important;
  z-index:2147483645!important;
  transform:translateZ(0);
  pointer-events:none;
  background:linear-gradient(90deg, #C9A86E 0%, #00E879 100%)!important;
}

/* (d) Curtain force-hide on .done */
.curtain.done, .curtain.ds-gone,
body > .curtain.done, body > .curtain.ds-gone,
.genai-section-wrap > .curtain.done, .genai-section-wrap > .curtain.ds-gone{
  transition:none!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  display:none!important
}

/* (e) Comparison table — defeat Hello Elementor theme td color rules */
.genai-section-wrap .cmp-table,
.genai-section-wrap .cmp-table table,
.genai-section-wrap .cmp-table tbody td,
.genai-section-wrap .cmp-table tbody th,
.genai-section-wrap .cmp-table tbody tr td,
.genai-section-wrap .cmp-table tbody tr th{color:#F7F7F7!important}
.genai-section-wrap .cmp-table thead th{color:#C9A86E!important;background:#052824!important}
.genai-section-wrap .cmp-table thead th.featured{background:linear-gradient(135deg, rgba(201,168,110,0.25) 0%, rgba(0,113,108,0.2) 100%)!important;color:#E8C88A!important}
.genai-section-wrap .cmp-table tbody td.featured{background:rgba(201,168,110,0.06)!important;color:#E8C88A!important}

/* (f) Defeat Elementor .elementor-invisible wrapper */
.elementor-invisible,
.genai-section-wrap .elementor-invisible,
body.elementor-invisible{
  visibility:visible!important;opacity:1!important;animation:none!important
}

/* (g) Hero svh fallback */
@supports not (height:1svh){.genai-section-wrap .hero{min-height:88vh!important}}
.genai-section-wrap .hero{min-height:88vh;min-height:88svh}

/* (h) GPU composite animated full-viewport layers */
body > .curtain,
body > #particles,
body > .scroll-progress{will-change:transform,opacity;transform:translateZ(0)}

/* (i) iOS safe-area insets */
body{
  padding-inline:env(safe-area-inset-left,0) env(safe-area-inset-right,0)
}


/* (j) ADMIN-MODE DEFENSIVE */
html.wp-toolbar,
body.admin-bar,
body.elementor-editor-active{
  overflow-x:clip!important;
  max-width:100vw!important;
  scrollbar-gutter:stable!important
}
body.admin-bar .genai-section-wrap,
body.elementor-editor-active .genai-section-wrap{
  width:100%!important;max-width:100%!important;
  margin:0!important;transform:none!important
}
body.admin-bar .elementor-widget-html,
body.elementor-editor-active .elementor-widget-html{
  width:100%!important;max-width:100%!important;
  padding:0!important;margin:0!important;overflow-x:clip!important
}
body.admin-bar .elementor,
body.admin-bar .elementor-section,
body.admin-bar .elementor-container,
body.admin-bar .elementor-column,
body.admin-bar .elementor-widget,
body.elementor-editor-active .elementor,
body.elementor-editor-active .elementor-section,
body.elementor-editor-active .elementor-container,
body.elementor-editor-active .elementor-column,
body.elementor-editor-active .elementor-widget{
  transform:none!important;filter:none!important;perspective:none!important
}

/* (k) HEADER NAVBAR OVERRIDE — force Alabaster White on dark page */
.desktop-menu-active .menu-item>a,
.desktop-menu-active .menu-item>a:link,
.desktop-menu-active .menu-item>a:visited,
.elementor-location-header .menu-item>a,
header .menu-item>a,
[data-elementor-type="header"] .menu-item>a{
  color:#F7F7F7!important;fill:#F7F7F7!important;opacity:1!important
}
.desktop-menu-active .menu-item>a:hover,
.desktop-menu-active .menu-item>a:focus,
.desktop-menu-active .menu-item.current-menu-item>a,
.desktop-menu-active .menu-item.current-menu-ancestor>a,
.desktop-menu-active .menu-item-active>a,
.elementor-location-header .menu-item.current-menu-item>a,
header .menu-item.current-menu-item>a{
  color:#C9A86E!important;fill:#C9A86E!important
}
.mobile-menu-active .menu-item>a,
.mobile-menu-active .menu-item>a:link,
.mobile-menu-active .menu-item>a:visited{
  color:#F7F7F7!important;fill:#F7F7F7!important
}
/* Submenu dropdown keeps dark text on its own bg */
.desktop-menu-active .sub-menu .menu-item>a,
.mobile-menu-active .sub-menu .menu-item>a{
  color:#0F0F0F!important;fill:#0F0F0F!important
}

/* (l) ANCHOR-SCROLL HARDENING — prevents section clipping on #hash navigation.
   Fixes: content "wipeout" when clicking hero #pricing button. Root cause is
   race between smooth-scroll and lazy-loaded media above the target, plus
   Elementor header overlap. Defense in depth:
     1) scroll-padding on html keeps targets visible under fixed header
     2) scroll-margin on sections + anchor DIVs provides per-element offset
     3) overflow:visible on ancestor sections so :target doesn't get clipped
     4) min-height on body guarantees scroll container never collapses */
html{ scroll-padding-top:clamp(100px, 12vh, 148px)!important; }
body.admin-bar{ scroll-padding-top:clamp(132px, 14vh, 180px)!important; }

.genai-section,
.genai-section-wrap,
[id="pricing"], [id="reserve-seat"], [id="hero"], [id="toolbox"],
[id="who-enrolls"], [id="curriculum"], [id="trainer"], [id="faq"],
[id="final-cta"]{
  scroll-margin-top:clamp(100px, 12vh, 148px)!important;
}
body.admin-bar .genai-section,
body.admin-bar .genai-section-wrap,
body.admin-bar [id^="pricing"],
body.admin-bar [id="reserve-seat"]{
  scroll-margin-top:clamp(132px, 14vh, 180px)!important;
}

/* Keep sections visible even when they are the :target of a hash — do NOT
   use overflow:hidden on any ancestor of a target element. */
.genai-section,
.elementor-section:has(.genai-section),
.elementor-widget-html:has(.genai-section){
  overflow:visible!important;
  contain:none!important;
}

/* Guarantee body has room to scroll back up after hash navigation */
body{
  min-height:100vh
}



/* Page-scope lock — only applies when a .genai-section-wrap is on the page */
body:has(.genai-section-wrap){
  background:#031816!important;
}
body:has(.genai-section-wrap) .site-content,
body:has(.genai-section-wrap) .elementor-section-wrap{
  background:transparent!important;
}/* End custom CSS */