/* ==========================================================================
   AFRIQUE HABITAT — Premium Clean CSS (Final Consolidated)
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. TOKENS
   -------------------------------------------------------------------------- */
:root {
  --clr-primary: hsl(161, 60%, 18%);
  --clr-primary-light: hsl(161, 60%, 27%);
  --clr-primary-dark: hsl(161, 75%, 10%);
  --clr-secondary: hsl(43, 65%, 52%);
  --clr-secondary-dim: hsl(43, 50%, 44%);
  --clr-accent: hsl(18, 57%, 48%);
  --clr-bg-main: hsl(60, 13%, 98%);
  --clr-bg-alt: hsl(150, 10%, 95%);
  --clr-bg-card: hsl(0, 0%, 100%);
  --clr-bg-dark: hsl(161, 40%, 7%);
  --clr-text: hsl(0, 0%, 18%);
  --clr-text-muted: hsl(0, 0%, 40%);
  --clr-text-light: hsl(0, 0%, 96%);
  --shadow-sm: 0 4px 16px rgba(0,0,0,.07);
  --shadow-md: 0 8px 30px rgba(0,0,0,.1);
  --shadow-lg: 0 20px 50px rgba(0,0,0,.14);
  --radius-sm: 8px;
  --radius-md: 14px;
  --radius-lg: 22px;
  --radius-xl: 28px;
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --transition: .35s var(--ease-out);
  --container-max: 1240px;
  --container-px: 1.5rem;
  --section-py: clamp(38px, 4vw, 56px);
  --navbar-h: 72px;
}

[data-theme="dark"] {
  --clr-bg-main: hsl(161, 22%, 8%);
  --clr-bg-alt: hsl(161, 18%, 10%);
  --clr-bg-card: hsl(161, 18%, 13%);
  --clr-bg-dark: hsl(161, 28%, 5%);
  --clr-text: hsl(0, 0%, 92%);
  --clr-text-muted: hsl(0, 0%, 74%);
  --shadow-sm: 0 6px 18px rgba(0,0,0,.32);
  --shadow-md: 0 10px 32px rgba(0,0,0,.4);
  --shadow-lg: 0 20px 50px rgba(0,0,0,.5);
}

/* --------------------------------------------------------------------------
   2. RESET & BASE
   -------------------------------------------------------------------------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:var(--navbar-h)}
body{font-family:'Inter',sans-serif;background:var(--clr-bg-main);color:var(--clr-text);line-height:1.6;overflow-x:hidden;transition:background-color .35s ease,color .35s ease}
h1,h2,h3,h4,h5,h6{font-family:'Outfit',sans-serif;font-weight:700;line-height:1.15;color:var(--clr-primary-dark)}
[data-theme="dark"] h1,[data-theme="dark"] h2,[data-theme="dark"] h3,[data-theme="dark"] h4{color:var(--clr-text)}
a{text-decoration:none;color:inherit;transition:color var(--transition)}
img{display:block;max-width:100%;height:auto}
ul{list-style:none}

/* --------------------------------------------------------------------------
   3. UTILITIES
   -------------------------------------------------------------------------- */
.container{max-width:var(--container-max);margin:0 auto;padding:0 var(--container-px)}
.section-padding{padding:var(--section-py) 0}
.bg-alt{background:var(--clr-bg-alt)}
.text-center{text-align:center}
.text-white{color:var(--clr-text-light)!important}
.mt-section{margin-top:34px}
.mt-3{margin-top:1rem}
.mt-4{margin-top:1.75rem}
.fw-bold{font-weight:700}

.section-header{margin-bottom:26px;max-width:820px}
.section-header.text-center{margin-left:auto;margin-right:auto}
.section-title{font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.12;letter-spacing:-.025em;margin-bottom:.7rem}
.section-lead{font-size:1rem;line-height:1.72;max-width:680px;color:var(--clr-text-muted);font-weight:400;margin:0 auto}
.section-header:not(.text-center) .section-lead{margin:0;max-width:640px}
.title-underline{width:80px;height:4px;border-radius:999px;background:linear-gradient(90deg,var(--clr-secondary) 0%,var(--clr-accent) 100%);margin:0 0 1.5rem}
.title-underline.center{margin-left:auto;margin-right:auto}
.title-underline.accent-line{background:var(--clr-secondary)}

.bullet-list{margin-top:16px}
.bullet-list li{position:relative;padding-left:22px;margin-bottom:10px;font-size:.92rem;line-height:1.55;color:var(--clr-text)}
.bullet-list li:last-child{margin-bottom:0}
.bullet-list li::before{content:'';position:absolute;left:0;top:8px;width:7px;height:7px;border-radius:50%;background:var(--clr-secondary)}

.fade-in{opacity:0;transform:translateY(32px);transition:opacity .9s var(--ease-out),transform .9s var(--ease-out)}
.fade-in.visible{opacity:1;transform:none}
.fade-in-up{animation:fadeInUp 1s .2s var(--ease-out) both}
.delay-1{transition-delay:.1s!important}
.delay-2{transition-delay:.2s!important}
.delay-3{transition-delay:.3s!important}

@keyframes fadeInUp{
  from{opacity:0;transform:translateY(40px)}
  to{opacity:1;transform:none}
}

/* --------------------------------------------------------------------------
   4. BUTTONS
   -------------------------------------------------------------------------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 30px;font-family:'Outfit',sans-serif;font-weight:600;font-size:1rem;border-radius:var(--radius-sm);border:2px solid transparent;cursor:pointer;transition:all var(--transition)}
.btn:focus-visible{outline:3px solid var(--clr-secondary);outline-offset:3px}
.btn-primary{background:var(--clr-primary);color:var(--clr-text-light);box-shadow:0 4px 14px rgba(15,76,58,.25)}
.btn-primary:hover{background:var(--clr-primary-dark);transform:translateY(-3px);box-shadow:0 8px 24px rgba(15,76,58,.35)}
.btn-secondary{background:transparent;border-color:rgba(255,255,255,.7);color:var(--clr-text-light)}
.btn-secondary:hover{background:rgba(255,255,255,.12);border-color:#fff;transform:translateY(-3px)}

/* --------------------------------------------------------------------------
   5. OPTIONAL CURSOR
   -------------------------------------------------------------------------- */
.cursor-outer,.cursor-inner{display:none}

/* --------------------------------------------------------------------------
   6. NAVBAR
   -------------------------------------------------------------------------- */
.navbar{position:fixed;top:0;left:0;width:100%;z-index:1000;background:rgba(250,250,250,.95);backdrop-filter:blur(14px);transition:all .35s var(--ease-out)}
.navbar.scrolled{box-shadow:var(--shadow-md);border-bottom:1px solid rgba(255,255,255,.4)}
[data-theme="dark"] .navbar{background:rgba(12,20,17,.94);border-color:rgba(255,255,255,.08)}
.nav-container{max-width:var(--container-max);margin:0 auto;padding:0 var(--container-px);height:var(--navbar-h);display:flex;justify-content:space-between;align-items:center;gap:24px}
.logo{display:flex;align-items:center;gap:10px;flex-shrink:0}
.logo-img{height:38px;width:auto;object-fit:contain}
.logo-text{font-family:'Outfit',sans-serif;font-weight:800;font-size:clamp(1rem,4vw,1.2rem);color:var(--clr-primary-dark);letter-spacing:.06em;white-space:nowrap}
[data-theme="dark"] .logo-text{color:var(--clr-text)}
.nav-links{display:flex;gap:32px;align-items:center}
.nav-link{font-family:'Outfit',sans-serif;font-weight:500;font-size:.92rem;color:var(--clr-text-muted);position:relative;padding:4px 0;letter-spacing:.02em;white-space:nowrap}
.nav-link::after{content:'';position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--clr-secondary);transition:width .3s var(--ease-out);border-radius:2px}
.nav-link:hover{color:var(--clr-primary)}
.nav-link:hover::after{width:100%}
.nav-link.active{color:var(--clr-primary);font-weight:600}
.nav-link.active::after{width:100%}
[data-theme="dark"] .nav-link{color:rgba(255,255,255,.82)}
[data-theme="dark"] .nav-link:hover,[data-theme="dark"] .nav-link.active{color:#fff}
.nav-actions{display:flex;align-items:center;gap:16px;flex-shrink:0}
.theme-toggle,.lang-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:1.5px solid rgba(0,0,0,.1);background:transparent;cursor:pointer;color:var(--clr-text-muted);transition:var(--transition);flex-shrink:0}
[data-theme="dark"] .theme-toggle,[data-theme="dark"] .lang-toggle{border-color:rgba(255,255,255,.16);color:rgba(255,255,255,.9)}
.theme-toggle:hover,.lang-toggle:hover{background:var(--clr-bg-alt);color:var(--clr-primary)}
.moon-icon{display:none}
[data-theme="dark"] .sun-icon{display:none}
[data-theme="dark"] .moon-icon{display:block}
.lang-label{font-size:.85rem;font-weight:600}
.whatsapp-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#25D366;color:#fff;border-radius:50px;font-weight:600;font-size:.9rem;transition:all .3s ease;box-shadow:0 2px 8px rgba(37,211,102,.3)}
.whatsapp-btn:hover{background:#20BA5A;transform:translateY(-2px);box-shadow:0 4px 12px rgba(37,211,102,.4)}
.menu-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;border-radius:var(--radius-sm)}
.menu-toggle span{width:24px;height:2.5px;background:var(--clr-primary-dark);transition:transform .3s,opacity .3s;border-radius:2px;display:block}
[data-theme="dark"] .menu-toggle span{background:var(--clr-text)}
.menu-toggle.active span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.menu-toggle.active span:nth-child(2){opacity:0;transform:scaleX(0)}
.menu-toggle.active span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
.mobile-nav-content{display:none}

/* --------------------------------------------------------------------------
   7. HERO
   -------------------------------------------------------------------------- */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;padding-top:var(--navbar-h);overflow:hidden}
.hero-image-wrapper{position:absolute;inset:0;z-index:-1}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

@keyframes kenBurnsFade{
  0%{opacity:0;transform:scale(1) translate(0,0)}
  5%{opacity:1}
  28%{opacity:1;transform:scale(1.15) translate(-15px,-10px)}
  35%{opacity:0;transform:scale(1.2) translate(-20px,-15px)}
  100%{opacity:0;transform:scale(1) translate(0,0)}
}

.hero-overlay{position:absolute;inset:0;background:linear-gradient(105deg,rgba(7,50,37,.94) 0%,rgba(7,50,37,.72) 40%,rgba(7,50,37,.45) 100%);z-index:1}
[data-theme="dark"] .hero-overlay{background:linear-gradient(105deg,rgba(6,20,15,.94) 0%,rgba(6,20,15,.74) 42%,rgba(6,20,15,.52) 100%)}
.hero-content{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;color:#fff;padding:36px 0 28px}
.hero-content-centered{align-items:center;text-align:center;margin-left:auto;margin-right:auto}
.hero-eyebrow{font-family:'Outfit',sans-serif;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--clr-secondary);margin-bottom:1.5rem}
.hero-title{font-size:clamp(2.4rem,5vw,4.2rem);line-height:1.04;letter-spacing:-.03em;color:#fff;margin-bottom:1rem;font-weight:800}
.hero-elite{display:flex;flex-direction:column;gap:6px;max-width:760px;line-height:1.05}
.hero-line{display:block;overflow:hidden}

.hero-line,.hero-line span{animation:heroReveal .8s ease forwards}
.hero-line-1{animation-delay:.2s}
.hero-line-2{animation-delay:.4s}

@keyframes heroReveal{
  to{transform:translateY(0);opacity:1}
}

.hero-highlight{position:relative;color:#fff}
.hero-subtitle{font-family:'Outfit',sans-serif;font-size:clamp(1rem,1.6vw,1.22rem);line-height:1.6;font-weight:400;color:rgba(255,255,255,.9);margin-bottom:1.75rem;max-width:800px}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px}
.hero-scroll-cue{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);color:rgba(255,255,255,.5);animation:bounceY 2s ease-in-out infinite}
.hero-scroll-cue:hover{color:var(--clr-secondary)}

@keyframes bounceY{
  0%,100%{transform:translateX(-50%) translateY(0)}
  50%{transform:translateX(-50%) translateY(10px)}
}

/* --------------------------------------------------------------------------
   8. INTRO
   -------------------------------------------------------------------------- */
.intro-section{padding:var(--section-py) 0;background:var(--clr-bg-main);position:relative;overflow:hidden}
.intro-section::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 20% 30%,rgba(15,76,58,0.08) 0%,transparent 50%),radial-gradient(ellipse at 80% 70%,rgba(212,175,55,0.05) 0%,transparent 50%);pointer-events:none}
.intro-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.intro-card{background:var(--clr-bg-card);border:1px solid rgba(15,76,58,.08);border-radius:var(--radius-lg);padding:28px 24px;transition:all .4s var(--ease-out);position:relative;overflow:hidden}
.intro-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--clr-primary) 0%,var(--clr-secondary) 100%);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease-out)}
.intro-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md)}
.intro-card:hover::before{transform:scaleX(1)}
.intro-number{font-family:'Outfit',sans-serif;font-size:2.8rem;font-weight:800;color:rgba(15,76,58,.28);position:absolute;top:16px;right:20px;line-height:1}
.intro-card h3{font-size:1.15rem;margin-bottom:14px;color:var(--clr-primary-dark);font-weight:600}
.intro-card p{font-size:.95rem;color:var(--clr-text-muted);line-height:1.7}

/* --------------------------------------------------------------------------
   9. INTERSECTION
   -------------------------------------------------------------------------- */
.intersection-block{background:linear-gradient(135deg,var(--clr-primary-dark) 0%,var(--clr-primary) 100%);padding:42px 0 72px;position:relative;overflow:hidden}
.intersection-block::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 20% 20%,rgba(212,175,55,.15) 0%,transparent 50%),radial-gradient(ellipse at 80% 80%,rgba(212,175,55,.1) 0%,transparent 40%),radial-gradient(circle at 50% 120%,rgba(15,76,58,.3) 0%,transparent 50%)}
.intersection-block::after{content:'';position:absolute;top:-100px;right:-50px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(212,175,55,.08) 0%,transparent 70%);pointer-events:none}
.intersection-inner{text-align:center;position:relative;z-index:1}
.intersection-title{font-family:'Outfit',sans-serif;font-size:clamp(1.5rem,3vw,2rem);font-weight:700;color:#fff;margin-bottom:12px;line-height:1.2}
.intersection-label{font-family:'Outfit',sans-serif;font-size:.78rem;font-weight:400;color:rgba(255,255,255,.76);margin-bottom:28px;letter-spacing:.14em;line-height:1.4;text-transform:uppercase}
.intersection-partners{display:flex;flex-wrap:nowrap;justify-content:center;align-items:center;gap:12px;margin-bottom:28px;overflow-x:auto;padding:10px 0}
.partner-tag{font-family:'Outfit',sans-serif;font-size:.95rem;font-weight:600;color:#fff;padding:10px 20px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:50px;white-space:nowrap;transition:all .3s ease}
.partner-tag:hover{background:var(--clr-secondary);border-color:var(--clr-secondary);color:var(--clr-primary-dark);transform:translateY(-3px)}
.intersection-signature{max-width:760px;margin:0 auto}
.signature-text{font-size:1rem;color:rgba(255,255,255,.78);line-height:1.72;font-weight:400}

/* --------------------------------------------------------------------------
   10. ABOUT / VMA
   -------------------------------------------------------------------------- */
.about{padding:var(--section-py) 0;background:var(--clr-bg-main)}
.vma-grid-premium{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.vma-card-premium{position:relative;display:flex;flex-direction:column;min-height:100%;background:var(--clr-bg-card);border:1px solid rgba(15,76,58,.08);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}
.vma-card-premium:hover{transform:translateY(-8px);box-shadow:var(--shadow-md)}
.vma-card-img{width:100%;height:200px;object-fit:cover}
.vma-card-premium::before{content:'';position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--clr-primary) 0%,var(--clr-secondary) 100%)}
.vma-card-head{padding:24px 24px 18px;border-bottom:1px solid rgba(15,76,58,.06);background:linear-gradient(180deg,rgba(15,76,58,.03) 0%,rgba(15,76,58,.01) 100%)}
.vma-card-body{display:flex;flex-direction:column;gap:16px;padding:20px 24px 24px;flex:1}
.vma-icon{width:64px;height:64px;display:flex;align-items:center;justify-content:center;margin-bottom:16px;border-radius:var(--radius-md);border:1px solid rgba(15,76,58,.1);background:linear-gradient(135deg,rgba(15,76,58,.1) 0%,rgba(15,76,58,.05) 100%);color:var(--clr-primary)}
.vma-icon.gold{border-color:rgba(212,175,55,.2);background:linear-gradient(135deg,rgba(212,175,55,.15) 0%,rgba(212,175,55,.05) 100%);color:var(--clr-secondary)}
.vma-card-head h3{font-size:1.22rem;line-height:1.22;letter-spacing:-.02em}
.vma-intro{font-size:.95rem;line-height:1.68;color:var(--clr-text-muted)}
.approach-items-premium{display:flex;flex-direction:column;gap:12px}
.approach-items-premium .approach-item{padding:14px 14px 12px;border-radius:var(--radius-md);border:1px solid rgba(15,76,58,.05);border-left:3px solid var(--clr-secondary);background:rgba(15,76,58,.03)}
.approach-items-premium .approach-item-header{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.approach-items-premium .approach-item-number{font-family:'Outfit',sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.08em;padding:5px 9px;border-radius:999px;background:rgba(212,175,55,.14);color:var(--clr-secondary-dim)}
.approach-items-premium .approach-item strong{font-family:'Outfit',sans-serif;font-size:.96rem;line-height:1.35;color:var(--clr-primary-dark)}
.approach-items-premium .approach-item p{margin:0;padding-left:0;font-size:.9rem;line-height:1.58;color:var(--clr-text-muted)}
.vma-card-premium-dark{background:linear-gradient(135deg,var(--clr-primary-dark) 0%,var(--clr-primary) 100%);border:none}
.vma-card-premium-dark::before{background:linear-gradient(90deg,rgba(255,255,255,.18) 0%,var(--clr-secondary) 100%)}
.vma-card-premium-dark .vma-card-head{border-bottom-color:rgba(255,255,255,.08);background:transparent}
.vma-card-premium-dark .vma-card-head h3{color:var(--clr-secondary)}
.vma-card-premium-dark .vma-intro,.vma-card-premium-dark .bullet-list li{color:rgba(255,255,255,.84)}
.vma-card-premium-dark .bullet-list li::before{background:var(--clr-secondary)}

/* --------------------------------------------------------------------------
   11. CHALLENGE / OPPORTUNITY
   -------------------------------------------------------------------------- */
.challenge-opp-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:34px}
.challenge-card{background:var(--clr-bg-card);border-radius:var(--radius-lg);padding:26px 22px;box-shadow:var(--shadow-sm);border:1px solid rgba(15,76,58,.08);border-left:4px solid var(--clr-primary);transition:transform var(--transition),box-shadow var(--transition)}
.challenge-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md)}
.opp-card{border-left-color:var(--clr-secondary)}
.challenge-card h3{font-size:1.18rem;margin-bottom:14px;font-weight:600;line-height:1.24}
.challenge-card p{color:var(--clr-text-muted);font-size:.95rem;line-height:1.68}
.challenge-card .bullet-list li::before{background:var(--clr-primary)}
.opp-card .bullet-list li::before{background:var(--clr-secondary)}
.strategic-note{margin-top:20px;padding:18px 20px;border-radius:var(--radius-md);font-size:.95rem;line-height:1.6;font-weight:500}
.challenge-card .strategic-note{background:rgba(15,76,58,.05);border-left:3px solid var(--clr-primary);color:var(--clr-primary-dark)}
.opp-card .strategic-note{background:rgba(212,175,55,.08);border-left:3px solid var(--clr-secondary);color:var(--clr-primary-dark)}

/* --------------------------------------------------------------------------
   12. PLATFORM
   -------------------------------------------------------------------------- */
.platform{padding:48px 0;background:var(--clr-bg-alt)}
.platform-cards-premium{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:34px}
.entity-card-premium{position:relative;display:flex;flex-direction:column;min-height:100%;background:var(--clr-bg-card);border:1px solid rgba(15,76,58,.08);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}
.entity-card-premium:hover{transform:translateY(-8px);box-shadow:var(--shadow-md)}
.entity-card-premium::before{content:'';position:absolute;inset:0 0 auto 0;height:4px}
.entity-card-premium.entity-card--ahd::before{background:var(--clr-primary)}
.entity-card-premium.entity-card--ahip::before{background:var(--clr-secondary)}
.entity-card-premium.entity-card--ahpam::before{background:var(--clr-accent)}
.entity-card-premium .entity-card-top{padding:24px 24px 18px;border-bottom:1px solid rgba(15,76,58,.06);background:linear-gradient(180deg,rgba(15,76,58,.03) 0%,rgba(15,76,58,.01) 100%)}
.entity-card-premium .entity-logo-wrap{display:flex;align-items:center;justify-content:flex-start;margin-bottom:18px;width:auto;height:auto}
.entity-card-premium .entity-logo-img{max-height:52px;width:auto;max-width:180px;object-fit:contain}
.entity-card-premium .entity-meta{display:flex;flex-direction:column;gap:10px}
.entity-card-premium .entity-acronym{display:inline-flex}
.entity-card-premium .acronym-text{display:inline-block;padding:5px 10px;border-radius:999px;font-family:'Outfit',sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.entity-card-premium.entity-card--ahd .acronym-text{background:rgba(15,76,58,.1);color:var(--clr-primary)}
.entity-card-premium.entity-card--ahip .acronym-text{background:rgba(212,175,55,.16);color:hsl(43,58%,36%)}
.entity-card-premium.entity-card--ahpam .acronym-text{background:rgba(192,90,53,.12);color:var(--clr-accent)}
.entity-card-premium .entity-title{font-size:1.22rem;line-height:1.2;letter-spacing:-.02em;margin:0}
.entity-card-premium .entity-role{font-family:'Outfit',sans-serif;font-size:.82rem;line-height:1.35;font-weight:600;text-transform:uppercase;letter-spacing:.08em;margin:0}
.entity-card-premium.entity-card--ahd .entity-role{color:var(--clr-primary)}
.entity-card-premium.entity-card--ahip .entity-role{color:hsl(43,58%,40%)}
.entity-card-premium.entity-card--ahpam .entity-role{color:var(--clr-accent)}
.entity-card-premium .entity-card-body{display:flex;flex-direction:column;gap:18px;padding:22px 24px 24px;flex:1}
.entity-card-premium .entity-desc{display:block;font-size:.95rem;line-height:1.68;color:var(--clr-text-muted);margin:0}
.entity-card-premium .entity-activities-block{margin-top:auto;padding-top:16px;border-top:1px solid rgba(15,76,58,.06)}
.entity-card-premium .entity-activities-label{display:block!important;font-family:'Outfit',sans-serif;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--clr-text-muted);margin-bottom:12px}
.entity-card-premium .entity-activities{display:flex;flex-direction:column;gap:10px}
.entity-card-premium .entity-activities li{display:flex;align-items:flex-start;gap:10px;padding-left:0;margin-bottom:0;font-size:.92rem;line-height:1.5;color:var(--clr-text)}
.entity-card-premium .entity-activities li::before{content:'';position:static;width:7px;height:7px;margin-top:7px;border-radius:50%;flex-shrink:0;background:var(--clr-secondary)}
.entity-card-premium.entity-card--ahd .entity-activities li::before{background:var(--clr-primary)}
.entity-card-premium.entity-card--ahip .entity-activities li::before{background:var(--clr-secondary)}
.entity-card-premium.entity-card--ahpam .entity-activities li::before{background:var(--clr-accent)}
.platform-footer-note{text-align:center;margin-top:40px;font-size:1rem;color:var(--clr-text-muted);font-style:italic}

/* --------------------------------------------------------------------------
   13. ACTIVITIES
   -------------------------------------------------------------------------- */
.activities{padding:48px 0;background:var(--clr-bg-main)}
.activities-visual-block{position:relative;margin-bottom:34px;border-radius:var(--radius-xl);overflow:hidden;max-height:320px}
.activities-banner-img{width:100%;height:320px;object-fit:cover;object-position:center}
.activities-banner-overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(7,50,37,.7) 0%,transparent 60%);pointer-events:none}
.activities-banner-badge{position:absolute;top:50%;left:48px;transform:translateY(-50%);color:#fff;display:flex;flex-direction:column}
.activities-banner-badge .number{font-family:'Outfit',sans-serif;font-size:4rem;font-weight:800;line-height:1;color:var(--clr-secondary)}
.activities-banner-badge .text{margin-top:6px;font-family:'Outfit',sans-serif;font-size:1rem;font-weight:500;text-transform:uppercase;letter-spacing:.1em;opacity:.85}
.activities-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.activity-card-premium{background:var(--clr-bg-card);border:1px solid rgba(15,76,58,.08);border-radius:var(--radius-lg);padding:0;overflow:hidden;transition:all .4s var(--ease-out);border-left-width:4px}
.activity-card-premium:hover{transform:translateY(-6px);box-shadow:var(--shadow-md)}
.activity-card-premium .activity-card-top{padding:24px 24px 18px;border-bottom:1px solid rgba(15,76,58,.06);background:linear-gradient(180deg,rgba(15,76,58,.03) 0%,rgba(15,76,58,.01) 100%)}
.activity-card-premium .activity-card-body{margin-top:0;padding:18px 24px 24px;display:flex;flex-direction:column;gap:14px;flex:1}
.activity-card-premium .activity-num{font-family:'Outfit',sans-serif;font-size:3rem;font-weight:800;color:rgba(15,76,58,.18);line-height:1;margin-bottom:10px}
.activity-card-premium h3{font-size:1.18rem;font-weight:600;color:var(--clr-primary-dark);margin-bottom:10px;line-height:1.22}
.activity-intro{font-size:.95rem;color:var(--clr-text-muted);line-height:1.66;max-width:95%}
.activity-card-premium .activity-services{display:flex;flex-direction:column;gap:12px}
.activity-card-premium .service-item{padding:14px 14px 12px;border-radius:var(--radius-md);border:1px solid rgba(15,76,58,.05);background:rgba(15,76,58,.03)}
.activity-card-premium .service-item strong{display:block;font-family:'Outfit',sans-serif;font-size:.96rem;font-weight:600;color:var(--clr-primary-dark);margin-bottom:4px}
.activity-card-premium .service-item p{font-size:.9rem;color:var(--clr-text-muted);line-height:1.58}
.activity-card-premium:nth-child(1){border-left-color:var(--clr-primary)}
.activity-card-premium:nth-child(2){border-left-color:var(--clr-secondary)}
.activity-card-premium:nth-child(3){border-left-color:var(--clr-accent)}
.activity-card-premium:nth-child(4){border-left-color:var(--clr-primary-light)}
.activity-card-premium:nth-child(5){border-left-color:hsl(43,65%,40%)}
.activity-card-premium:nth-child(6){border-left-color:hsl(18,57%,38%)}
.activity-card-premium:nth-child(1) .bullet-list li::before{background:var(--clr-primary)}
.activity-card-premium:nth-child(2) .bullet-list li::before{background:var(--clr-secondary)}
.activity-card-premium:nth-child(3) .bullet-list li::before{background:var(--clr-accent)}
.activity-card-premium:nth-child(4) .bullet-list li::before{background:var(--clr-primary-light)}
.activity-card-premium:nth-child(5) .bullet-list li::before{background:hsl(43,65%,40%)}
.activity-card-premium:nth-child(6) .bullet-list li::before{background:hsl(18,57%,38%)}

/* --------------------------------------------------------------------------
   14. INVESTMENT
   -------------------------------------------------------------------------- */
.investment{position:relative;overflow:hidden;padding:72px 0}
.investment-bg{position:absolute;inset:0;background:linear-gradient(135deg,var(--clr-primary-dark) 0%,hsl(161,55%,14%) 100%);z-index:0}
.investment-image{position:absolute;inset:0;background-size:cover;background-position:center;z-index:1;opacity:.18}
.investment-bg::after{content:'';position:absolute;top:-40%;right:-10%;width:70%;height:180%;background:radial-gradient(ellipse,rgba(212,175,55,.1),transparent 70%)}
.investment .container{position:relative;z-index:1}
.investment-intro-text{max-width:680px;margin:0 auto 34px;font-size:1rem;line-height:1.7;color:rgba(255,255,255,.84);text-align:center}
.investment-two-col{display:grid;grid-template-columns:1fr 1.2fr;gap:24px;align-items:start}
.inv-col{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:var(--radius-lg);padding:26px 22px;backdrop-filter:blur(8px)}
.inv-col-title{color:var(--clr-secondary);font-size:1.18rem;line-height:1.24;letter-spacing:-.015em;margin-bottom:14px}
.inv-col-sub{margin-bottom:18px;font-size:.95rem;line-height:1.6;color:rgba(255,255,255,.78)}
.inv-list{display:flex;flex-direction:column;gap:12px}
.inv-list li{display:flex;align-items:center;gap:14px;font-family:'Outfit',sans-serif;font-size:.94rem;font-weight:500;line-height:1.52;color:rgba(255,255,255,.92)}
.inv-list li svg{color:var(--clr-secondary);flex-shrink:0}
.why-invest-full{display:block}
.why-invest-block{display:flex;align-items:flex-start;gap:14px;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.why-invest-block:last-child{border-bottom:0}
.why-invest-icon-row{width:40px;height:40px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:linear-gradient(135deg,rgba(212,175,55,.2) 0%,rgba(212,175,55,.08) 100%);border:1px solid rgba(212,175,55,.2);color:var(--clr-secondary)}
.why-invest-block strong{display:block;margin-bottom:6px;font-family:'Outfit',sans-serif;font-size:.98rem;line-height:1.35;color:#fff}
.why-invest-block p{font-size:.95rem;line-height:1.68;color:rgba(255,255,255,.8)}

/* --------------------------------------------------------------------------
   15. SUSTAINABILITY
   -------------------------------------------------------------------------- */
.sustainability{padding:44px 0;background:var(--clr-bg-main)}
.sustainability-layout{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}
.sustain-text>p{font-size:.95rem;line-height:1.68;color:var(--clr-text-muted)}
.check-list{margin-top:1.75rem}
.check-list li{position:relative;padding-left:32px;margin-bottom:10px;font-size:.94rem;line-height:1.52;color:var(--clr-text)}
.check-list li::before{content:'';position:absolute;left:0;top:4px;width:20px;height:20px;border-radius:6px;background:linear-gradient(135deg,var(--clr-primary) 0%,var(--clr-primary-light) 100%)}
.sustain-conclusion{margin-top:1rem;padding:18px 18px 18px 14px;border-left:4px solid var(--clr-secondary);border-radius:0 var(--radius-md) var(--radius-md) 0;background:linear-gradient(90deg,rgba(212,175,55,.1) 0%,transparent 100%);font-family:'Outfit',sans-serif;font-size:1rem;line-height:1.65;font-weight:600;color:var(--clr-primary-dark)}
.sustain-visual{position:relative;display:flex;justify-content:center}
.sustain-visual::before{content:'';position:absolute;inset:-20px;border-radius:var(--radius-lg);background:linear-gradient(135deg,rgba(15,76,58,.05) 0%,rgba(212,175,55,.05) 100%);z-index:-1}
.sustain-img{width:100%;border-radius:var(--radius-lg);object-fit:cover;box-shadow:var(--shadow-md)}

/* --------------------------------------------------------------------------
   16. PARTNERS
   -------------------------------------------------------------------------- */
.partners{padding:46px 0;background:var(--clr-bg-alt)}
.partners-grid-premium{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:10px}
.partner-card-premium{display:flex;align-items:flex-start;gap:16px;text-align:left;background:var(--clr-bg-card);border:1px solid rgba(15,76,58,.08);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:22px 20px;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}
.partner-card-premium:hover{transform:translateY(-6px);box-shadow:var(--shadow-md)}
.partner-card-premium .partner-card-icon{width:52px;height:52px;min-width:52px;border-radius:14px;background:rgba(15,76,58,.06);color:var(--clr-primary);display:flex;align-items:center;justify-content:center}
.partner-card-premium .partner-card-body{display:flex;flex-direction:column;gap:6px}
.partner-card-premium .partner-card-body h3{font-family:'Outfit',sans-serif;font-size:1.02rem;line-height:1.3;letter-spacing:-.01em;margin:0}
.partner-card-note{font-size:.9rem;line-height:1.58;color:var(--clr-text-muted);margin:0}

/* --------------------------------------------------------------------------
   17. CONTACT CTA
   -------------------------------------------------------------------------- */
.contact-cta{padding-top:48px;padding-bottom:48px;background:linear-gradient(180deg,transparent 0%,rgba(15,76,58,.025) 100%)}
.contact-cta-shell-premium{display:grid;grid-template-columns:1.08fr .92fr;gap:24px;align-items:stretch;background:var(--clr-bg-card);border:1px solid rgba(15,76,58,.08);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);overflow:hidden;padding:0}
.contact-cta-copy-premium{padding:28px;background:linear-gradient(180deg,rgba(15,76,58,.03) 0%,rgba(15,76,58,.01) 100%);border-right:1px solid rgba(15,76,58,.06)}
.contact-cta-eyebrow{font-family:'Outfit',sans-serif;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--clr-secondary-dim);margin-bottom:12px}
.contact-cta-title{margin-bottom:14px;max-width:620px}
.contact-cta-text{font-size:.96rem;line-height:1.7;color:var(--clr-text-muted);margin-bottom:10px;max-width:620px}
.contact-cta-points-premium{display:grid;gap:12px;margin-top:18px}
.contact-cta-point-premium{padding:16px 16px 14px;border-radius:var(--radius-md);background:rgba(15,76,58,.03);border:1px solid rgba(15,76,58,.06);transition:transform .3s ease,border-color .3s ease,background .3s ease}
.contact-cta-point-premium:hover{transform:translateY(-2px);background:rgba(15,76,58,.045)}
.contact-cta-point-premium strong{display:block;font-family:'Outfit',sans-serif;font-size:.98rem;line-height:1.35;color:var(--clr-primary-dark);margin-bottom:4px}
.contact-cta-point-premium span{display:block;font-size:.9rem;line-height:1.58;color:var(--clr-text-muted)}
.contact-form-wrap-premium{background:var(--clr-bg-card);padding:28px;display:flex;align-items:center}
.contact-form-wrap-premium .contact-form{width:100%}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-field{display:flex;flex-direction:column;gap:8px}
.form-field-full{grid-column:1 / -1}
.form-field label{font-size:.88rem;font-weight:600;color:var(--clr-primary-dark);font-family:'Outfit',sans-serif}
.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid rgba(15,76,58,.12);background:rgba(255,255,255,.96);color:var(--clr-text);border-radius:12px;padding:13px 14px;font:inherit;line-height:1.5;transition:border-color .25s ease,box-shadow .25s ease,background-color .25s ease}
.form-field textarea{resize:vertical;min-height:146px}
.form-field input::placeholder,.form-field textarea::placeholder{color:rgba(46,46,46,.48)}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:rgba(15,76,58,.3);box-shadow:0 0 0 4px rgba(15,76,58,.08);background:#fff}
.form-actions-premium{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.form-actions-premium .btn{min-width:190px}

/* --------------------------------------------------------------------------
   18. FOOTER
   -------------------------------------------------------------------------- */
.footer{position:relative;padding-top:62px;background:var(--clr-bg-dark);color:rgba(255,255,255,.65)}
.footer::before{content:'';position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--clr-primary) 0%,var(--clr-secondary) 50%,var(--clr-accent) 100%)}
.footer-container{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:34px;padding-bottom:38px;border-bottom:1px solid rgba(255,255,255,.08)}
.footer-logo .logo-text{color:#fff}
.footer-tagline{margin-top:8px;font-family:'Outfit',sans-serif;font-size:.78rem;font-weight:600;line-height:1.4;letter-spacing:.14em;text-transform:uppercase;color:var(--clr-secondary)}
.footer-desc{max-width:320px;color:rgba(255,255,255,.6);font-size:.9rem;line-height:1.6}
.footer-links ul{display:flex;flex-direction:column;gap:8px}
.footer-heading{margin-bottom:16px;font-size:1rem;line-height:1.3;letter-spacing:.02em;color:#fff}
.footer-links ul a{font-size:.9rem;line-height:1.6;color:rgba(255,255,255,.55)}
.footer-links ul a:hover{color:var(--clr-secondary)}
.footer-contact{font-style:normal}
.contact-person{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.1)}
.contact-name{font-family:'Outfit',sans-serif;font-size:1.15rem;font-weight:700;color:#fff;margin-bottom:4px}
.contact-role{color:var(--clr-secondary);font-size:.85rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em}
.contact-item{display:flex;align-items:center;gap:14px;margin-bottom:8px;padding:12px 14px;border-radius:var(--radius-md);background:rgba(255,255,255,.04)}
.contact-item svg{color:var(--clr-secondary);flex-shrink:0}
.contact-item a{font-size:.9rem;line-height:1.6;color:rgba(255,255,255,.78)}
.contact-item a:hover{color:var(--clr-secondary)}
.social-links{display:flex;gap:14px}
.social-links a{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.06);color:rgba(255,255,255,.7);transition:var(--transition)}
.social-links a:hover{transform:translateY(-4px);background:var(--clr-secondary);border-color:var(--clr-secondary);color:var(--clr-primary-dark)}
.footer-bottom{padding:16px 0;color:rgba(255,255,255,.5)}

/* --------------------------------------------------------------------------
   19. OPTIONAL
   -------------------------------------------------------------------------- */
.back-to-top{position:fixed;bottom:24px;right:24px;width:44px;height:44px;background:var(--clr-primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all .3s ease;z-index:999;box-shadow:var(--shadow-md);border:0;cursor:pointer}

.whatsapp-float{position:fixed;bottom:24px;right:90px;width:56px;height:56px;background:#25D366;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:999;box-shadow:var(--shadow-md);transition:all .3s ease;text-decoration:none}
.whatsapp-float:hover{background:#20BA5A;transform:translateY(-4px)}
.back-to-top.visible{opacity:1;visibility:visible}
.back-to-top:hover{background:var(--clr-primary-dark);transform:translateY(-4px)}

.page-loader{position:fixed;inset:0;background:var(--clr-bg-main);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9999;transition:opacity .5s ease,visibility .5s ease}
.page-loader.hidden{opacity:0;visibility:hidden}
.loader-logo{margin-bottom:24px}
.loader-logo img{height:60px;width:auto}
.loader-spinner{width:40px;height:40px;border:3px solid rgba(15,76,58,.1);border-top-color:var(--clr-primary);border-radius:50%;animation:spin 1s linear infinite}
.loader-text{margin-top:16px;font-family:'Outfit',sans-serif;font-size:.85rem;font-weight:500;color:var(--clr-text-muted);letter-spacing:.1em;text-transform:uppercase}

@keyframes spin{
  to{transform:rotate(360deg)}
}

/* --------------------------------------------------------------------------
   20. DARK MODE SPECIFIC
   -------------------------------------------------------------------------- */
[data-theme="dark"] .intro-card,
[data-theme="dark"] .vma-card-premium,
[data-theme="dark"] .challenge-card,
[data-theme="dark"] .entity-card-premium,
[data-theme="dark"] .activity-card-premium,
[data-theme="dark"] .partner-card-premium{background:rgba(28,42,35,.9);border-color:rgba(255,255,255,.08)}

[data-theme="dark"] .intro-number{color:rgba(255,255,255,.15)}

[data-theme="dark"] .vma-card-head,
[data-theme="dark"] .entity-card-premium .entity-card-top,
[data-theme="dark"] .activity-card-premium .activity-card-top{border-bottom-color:rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.03) 0%,rgba(255,255,255,.015) 100%)}

[data-theme="dark"] .intro-card h3,
[data-theme="dark"] .vma-card-premium .vma-card-head h3,
[data-theme="dark"] .approach-items-premium .approach-item strong,
[data-theme="dark"] .entity-card-premium .entity-title,
[data-theme="dark"] .activity-card-premium h3,
[data-theme="dark"] .activity-card-premium .service-item strong,
[data-theme="dark"] .partner-card-premium .partner-card-body h3,
[data-theme="dark"] .contact-cta-point-premium strong,
[data-theme="dark"] .form-field label{color:#fff}

[data-theme="dark"] .intro-card p,
[data-theme="dark"] .vma-intro,
[data-theme="dark"] .bullet-list li,
[data-theme="dark"] .approach-items-premium .approach-item p,
[data-theme="dark"] .challenge-card p,
[data-theme="dark"] .entity-card-premium .entity-desc,
[data-theme="dark"] .entity-card-premium .entity-activities li,
[data-theme="dark"] .activity-intro,
[data-theme="dark"] .activity-card-premium .service-item p,
[data-theme="dark"] .partner-card-note,
[data-theme="dark"] .sustain-text>p,
[data-theme="dark"] .check-list li,
[data-theme="dark"] .contact-cta-text,
[data-theme="dark"] .contact-cta-point-premium span{color:rgba(255,255,255,.78)}

[data-theme="dark"] .challenge-card .strategic-note{color:rgba(255,255,255,.84);background:rgba(15,76,58,.14)}
[data-theme="dark"] .opp-card .strategic-note{background:rgba(212,175,55,.1)}
[data-theme="dark"] .approach-items-premium .approach-item,
[data-theme="dark"] .activity-card-premium .service-item{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.06)}

[data-theme="dark"] .activity-card-premium .activity-num{color:rgba(255,255,255,.18)}

[data-theme="dark"] .entity-card-premium .entity-activities-block{border-top-color:rgba(255,255,255,.08)}
[data-theme="dark"] .entity-card-premium .entity-activities-label{color:rgba(255,255,255,.78)}
[data-theme="dark"] .entity-card-premium.entity-card--ahd .acronym-text{background:rgba(15,76,58,.22);color:hsl(161,55%,62%)}
[data-theme="dark"] .entity-card-premium.entity-card--ahip .acronym-text{background:rgba(212,175,55,.18);color:hsl(43,75%,68%)}
[data-theme="dark"] .entity-card-premium.entity-card--ahpam .acronym-text{background:rgba(192,90,53,.18);color:hsl(18,70%,66%)}

[data-theme="dark"] .partner-card-premium .partner-card-icon{background:rgba(255,255,255,.06);color:var(--clr-secondary)}
[data-theme="dark"] .sustain-conclusion{color:rgba(255,255,255,.84)}
[data-theme="dark"] .sustain-visual::before{background:linear-gradient(135deg,rgba(255,255,255,.03) 0%,rgba(212,175,55,.04) 100%)}

[data-theme="dark"] .contact-cta{background:linear-gradient(180deg,transparent 0%,rgba(255,255,255,.02) 100%)}
[data-theme="dark"] .contact-cta-shell-premium{background:rgba(25,38,32,.94);border-color:rgba(255,255,255,.08);box-shadow:0 18px 42px rgba(0,0,0,.35)}
[data-theme="dark"] .contact-cta-copy-premium{background:linear-gradient(180deg,rgba(255,255,255,.03) 0%,rgba(255,255,255,.015) 100%);border-color:rgba(255,255,255,.08)}
[data-theme="dark"] .contact-cta-eyebrow{color:var(--clr-secondary)}
[data-theme="dark"] .contact-cta-point-premium{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.06)}
[data-theme="dark"] .contact-cta-point-premium:hover{background:rgba(255,255,255,.055)}
[data-theme="dark"] .contact-form-wrap-premium{background:rgba(19,29,24,.96)}
[data-theme="dark"] .form-field input,
[data-theme="dark"] .form-field select,
[data-theme="dark"] .form-field textarea{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.1);color:rgba(255,255,255,.92)}
[data-theme="dark"] .form-field input::placeholder,
[data-theme="dark"] .form-field textarea::placeholder{color:rgba(255,255,255,.44)}
[data-theme="dark"] .form-field input:focus,
[data-theme="dark"] .form-field select:focus,
[data-theme="dark"] .form-field textarea:focus{border-color:rgba(255,255,255,.18);box-shadow:0 0 0 4px rgba(255,255,255,.05);background:rgba(255,255,255,.07)}

[data-theme="dark"] .footer{background-color:hsl(161,30%,4%)}
[data-theme="dark"] .social-links a{background:rgba(255,255,255,.08);color:rgba(255,255,255,.82);border-color:rgba(255,255,255,.12)}

/* --------------------------------------------------------------------------
   21. RESPONSIVE
   -------------------------------------------------------------------------- */
@media (max-width:1100px){
  .intro-grid,
  .vma-grid-premium,
  .platform-cards-premium,
  .activities-grid,
  .investment-two-col,
  .sustainability-layout,
  .partners-grid-premium,
  .footer-container{
    grid-template-columns:1fr;
    gap:18px;
  }

  .contact-cta-shell-premium{
    grid-template-columns:1fr;
  }

  .contact-cta-copy-premium{
    border-right:none;
    border-bottom:1px solid rgba(15,76,58,.06);
  }

  [data-theme="dark"] .contact-cta-copy-premium{
    border-bottom-color:rgba(255,255,255,.08);
  }
}

@media (max-width:768px){
  :root{--container-px:1rem}

  .nav-links{
    position:fixed;
    top:0;
    right:-100%;
    width:min(85%,320px);
    height:100vh;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:0;
    padding:calc(var(--navbar-h) + 20px) 25px 40px;
    background:var(--clr-bg-main);
    box-shadow:-8px 0 40px rgba(0,0,0,.12);
    overflow-y:auto;
    transition:right .4s var(--ease-out);
    z-index:2000;
  }

  [data-theme="dark"] .nav-links{background:var(--clr-bg-alt)}
  .nav-links.open{right:0}

  .nav-link{
    width:100%;
    padding:14px 0;
    border-bottom:1px solid rgba(0,0,0,.05);
    font-size:1.05rem;
    color:var(--clr-text);
  }

  [data-theme="dark"] .nav-link{border-bottom-color:rgba(255,255,255,.05)}

  .nav-actions .whatsapp-btn{display:none}
  .menu-toggle{display:flex}
  .mobile-nav-content{display:flex;flex-direction:column;width:100%;gap:20px;margin-top:30px}
  .mobile-nav-divider{width:100%;height:1px;background:rgba(0,0,0,.1)}
  .mobile-lang-theme{display:flex;justify-content:center;gap:12px}
  .whatsapp-btn-mobile{width:100%;justify-content:center;margin-top:10px}
  .mobile-socials{display:flex;justify-content:center;gap:15px;margin-top:10px}

  .hero-title{font-size:clamp(2rem,7vw,2.6rem);line-height:1.06}
  .hero-cta{flex-direction:column;width:100%}
  .hero-cta .btn{width:100%}

  .section-title{font-size:1.65rem;line-height:1.14}

  .activities-banner-badge{left:24px}
  .activities-banner-badge .number{font-size:3rem}

  .vma-card-head,.vma-card-body,
  .entity-card-premium .entity-card-top,.entity-card-premium .entity-card-body,
  .activity-card-premium .activity-card-top,.activity-card-premium .activity-card-body,
  .contact-cta-copy-premium,.contact-form-wrap-premium{
    padding-left:18px;
    padding-right:18px;
  }

  .form-grid{grid-template-columns:1fr;gap:12px}
  .form-field-full{grid-column:auto}
  .form-actions-premium{flex-direction:column}
  .form-actions-premium .btn{width:100%;min-width:0}

  .footer-bottom{text-align:center}
}

@media (max-width:480px){
  .logo-text{display:none!important}
  .hero-title{font-size:1.8rem}
}

.form-field select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image:
        linear-gradient(45deg, transparent 50%, currentColor 50%),
        linear-gradient(135deg, currentColor 50%, transparent 50%);
    background-position:
        calc(100% - 18px) calc(50% - 3px),
        calc(100% - 12px) calc(50% - 3px);
    background-size: 6px 6px, 6px 6px;
    background-repeat: no-repeat;
    padding-right: 42px;
}

[data-theme="dark"] .form-field select {
    background-color: rgba(255,255,255,0.08);
    color: #fff;
}

[data-theme="dark"] .form-field select option {
    background: #14211c;
    color: #fff;
}

[data-theme="dark"] .form-field select:invalid {
    color: rgba(255,255,255,0.72);
}

[data-theme="dark"] .form-field select option[value=""] {
    color: rgba(255,255,255,0.72);
}

/* ============================================
   INVESTMENT — RESTRUCTURE PREMIUM
   ============================================ */

.investment-two-col {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    gap: 24px;
    align-items: start;
}

.why-invest-wrap {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.why-invest-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.why-invest-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.why-dot {
    width: 8px;
    height: 8px;
    background: var(--clr-secondary);
    border-radius: 50%;
    margin-top: 0.45em;
    flex-shrink: 0;
}

.why-invest-item p {
    margin: 0;
    font-size: 0.88rem;
    line-height: 1.58;
    color: rgba(255,255,255,0.82);
}

.why-invest-item strong {
    color: var(--clr-secondary);
}

.why-invest-card .why-invest-icon-row {
    margin-top: 2px;
    width: 32px;
    height: 32px;
}

.why-invest-card .why-invest-icon-row svg {
    width: 16px;
    height: 16px;
}

.why-invest-card strong {
    display: block;
    margin-bottom: 8px;
    font-family: 'Outfit', sans-serif;
    font-size: 0.98rem;
    line-height: 1.35;
    color: #fff;
}

.why-invest-card p {
    margin: 0;
    font-size: 0.92rem;
    line-height: 1.62;
    color: rgba(255,255,255,0.82);
}

.why-invest-card .why-invest-icon-row {
    margin-top: 2px;
}

/* retire les anciens blocs longs */
.why-invest-full {
    display: block;
}

.why-invest-full .why-invest-block {
    display: none;
}

/* dark mode */
[data-theme="dark"] .why-invest-card {
    background: rgba(255,255,255,0.08);
    border-color: rgba(255,255,255,0.14);
}

[data-theme="dark"] .why-invest-card p {
    color: rgba(255,255,255,0.82);
}

/* responsive */
@media (max-width: 1100px) {
    .investment-two-col {
        grid-template-columns: 1fr;
    }

    .why-invest-grid {
        grid-template-columns: 1fr;
    }
}

/* --------------------------------------------------------------------------
   FORM SUCCESS STATE
   -------------------------------------------------------------------------- */
.form-success {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 3rem 2rem;
    gap: 1rem;
    min-height: 320px;
}

.form-success[hidden] {
    display: none;
}

.form-success-icon {
    color: var(--clr-secondary);
    margin-bottom: 0.5rem;
}

.form-success-title {
    font-family: 'Outfit', sans-serif;
    font-size: 1.4rem;
    font-weight: 700;
    color: var(--clr-primary-dark);
    margin: 0;
}

[data-theme="dark"] .form-success-title {
    color: #fff;
}

.form-success-text {
    font-size: 0.95rem;
    color: var(--clr-text-muted);
    max-width: 380px;
    line-height: 1.7;
    margin: 0;
}

.form-success-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    margin-top: 0.5rem;
}

.form-success-back {
    background: none;
    border: none;
    color: var(--clr-text-muted);
    font-size: 0.85rem;
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 3px;
    padding: 0;
    transition: color var(--transition);
}

.form-success-back:hover {
    color: var(--clr-primary);
}

/* --------------------------------------------------------------------------
   COOKIE CONSENT BANNER
   -------------------------------------------------------------------------- */
.cookie-banner {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    background: var(--clr-bg-card);
    border-top: 1px solid rgba(15, 76, 58, 0.12);
    box-shadow: 0 -8px 32px rgba(0, 0, 0, 0.1);
    padding: 1.25rem 1.5rem;
    transform: translateY(100%);
    transition: transform 0.45s var(--ease-out);
}

.cookie-banner.visible {
    transform: translateY(0);
}

.cookie-banner-inner {
    max-width: var(--container-max);
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.cookie-banner-text {
    flex: 1;
    min-width: 200px;
    font-size: 0.88rem;
    color: var(--clr-text-muted);
    line-height: 1.6;
}

.cookie-banner-text strong {
    display: block;
    font-family: 'Outfit', sans-serif;
    font-size: 0.95rem;
    color: var(--clr-text);
    margin-bottom: 0.25rem;
}

.cookie-banner-text a {
    color: var(--clr-primary-light);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.cookie-banner-actions {
    display: flex;
    gap: 0.75rem;
    flex-shrink: 0;
    flex-wrap: wrap;
}

.cookie-btn-accept {
    padding: 0.6rem 1.4rem;
    background: var(--clr-primary);
    color: #fff;
    border: none;
    border-radius: 30px;
    font-family: 'Outfit', sans-serif;
    font-size: 0.88rem;
    font-weight: 600;
    cursor: pointer;
    transition: background var(--transition);
}

.cookie-btn-accept:hover {
    background: var(--clr-primary-light);
}

.cookie-btn-decline {
    padding: 0.6rem 1.4rem;
    background: transparent;
    color: var(--clr-text-muted);
    border: 1.5px solid rgba(15, 76, 58, 0.18);
    border-radius: 30px;
    font-family: 'Outfit', sans-serif;
    font-size: 0.88rem;
    font-weight: 500;
    cursor: pointer;
    transition: all var(--transition);
}

.cookie-btn-decline:hover {
    border-color: var(--clr-primary);
    color: var(--clr-primary);
}

[data-theme="dark"] .cookie-banner {
    background: var(--clr-bg-card);
    border-color: rgba(255, 255, 255, 0.08);
    box-shadow: 0 -8px 32px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .cookie-banner-text strong {
    color: var(--clr-text);
}

[data-theme="dark"] .cookie-banner-text {
    color: var(--clr-text-muted);
}

[data-theme="dark"] .cookie-btn-decline {
    border-color: rgba(255, 255, 255, 0.15);
    color: rgba(255, 255, 255, 0.7);
}

[data-theme="dark"] .cookie-btn-decline:hover {
    border-color: var(--clr-secondary);
    color: var(--clr-secondary);
}

@media (max-width: 640px) {
    .cookie-banner-inner {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }

    .cookie-banner-actions {
        width: 100%;
    }

    .cookie-btn-accept,
    .cookie-btn-decline {
        flex: 1;
        text-align: center;
    }
}
