/* =============================================
   بَنِين — Marketing Website — Light Theme
   ============================================= */
:root{
  --white:#fff;--bg:#F8FAFB;--bg-alt:#F0F4F7;
  --t50:#ECFDF5;--t100:#D1FAE5;--t400:#34D399;--t500:#10B981;--t600:#059669;--t700:#047857;--t800:#065F46;
  --n900:#0F172A;--n800:#1E293B;--n700:#334155;--n600:#475569;--n500:#64748B;--n400:#94A3B8;--n300:#CBD5E1;--n200:#E2E8F0;--n100:#F1F5F9;
  --b50:#EFF6FF;--b500:#3B82F6;--a50:#FFFBEB;--a400:#FBBF24;--a500:#F59E0B;--p50:#F5F3FF;--p500:#8B5CF6;--r50:#FFF1F2;--r500:#F43F5E;
  --primary:var(--t600);--primary-h:var(--t700);--text:var(--n800);--text-l:var(--n500);--text-m:var(--n400);--border:var(--n200);--border-l:var(--n100);
  --sh-sm:0 1px 3px rgba(0,0,0,.04);--sh-md:0 4px 16px rgba(0,0,0,.06);--sh-lg:0 12px 40px rgba(0,0,0,.08);--sh-xl:0 20px 60px rgba(0,0,0,.1);
  --r-sm:8px;--r-md:14px;--r-lg:20px;--r-xl:28px;--r-full:9999px;
  --font:'IBM Plex Sans Arabic','Tajawal',sans-serif;--font-d:'Tajawal','IBM Plex Sans Arabic',sans-serif;
  --tr:.3s cubic-bezier(.4,0,.2,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.7;overflow-x:hidden;direction:rtl;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}a{text-decoration:none;color:inherit}ul{list-style:none}
::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--n300);border-radius:3px}
.container{max-width:1240px;margin:0 auto;padding:0 2rem}

/* ---- NAV ---- */
.nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:1rem 0;transition:all var(--tr)}
.nav.scrolled{background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--border-l);padding:.7rem 0;box-shadow:var(--sh-sm)}
.nav-inner{max-width:1240px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;justify-content:space-between}
.logo{display:flex;align-items:baseline}.logo-ar{font-family:var(--font-d);font-size:1.8rem;font-weight:900;color:var(--n900)}.logo-dot{font-size:2.4rem;font-weight:900;color:var(--primary);line-height:0}
.nav-links{display:flex;align-items:center;gap:.25rem}
.nav-links a{padding:.5rem .8rem;font-size:.87rem;color:var(--n600);border-radius:var(--r-sm);font-weight:500;transition:all var(--tr)}
.nav-links a:hover{color:var(--primary);background:var(--t50)}
.nav-cta{background:var(--primary) !important;color:var(--white) !important;padding:.55rem 1.3rem !important;border-radius:var(--r-full) !important;font-weight:600 !important;margin-right:.5rem;box-shadow:0 2px 12px rgba(5,150,105,.25)}
.nav-cta:hover{background:var(--primary-h) !important;transform:translateY(-1px)}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px}
.burger span{display:block;width:22px;height:2px;background:var(--n700);border-radius:2px;transition:all var(--tr)}

/* ---- HERO ---- */
.hero{position:relative;padding:9rem 0 5rem;background:linear-gradient(135deg,#ECFDF5 0%,#F0F9FF 30%,#F8FAFB 60%,#FFFBEB 100%);overflow:hidden;min-height:100vh;display:flex;align-items:center}
.hero-bg{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.blob{position:absolute;border-radius:50%;opacity:.5;filter:blur(80px)}
.b1{width:500px;height:500px;background:rgba(16,185,129,.12);top:-15%;right:-10%}.b2{width:400px;height:400px;background:rgba(59,130,246,.08);bottom:5%;left:-8%}.b3{width:300px;height:300px;background:rgba(251,191,36,.1);top:40%;right:50%}
.hero-wrap{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;position:relative;z-index:2}
.hero-text{max-width:560px}
.chip{display:inline-flex;align-items:center;gap:.5rem;background:rgba(16,185,129,.08);border:1px solid rgba(16,185,129,.2);color:var(--t700);padding:.4rem 1rem;border-radius:var(--r-full);font-size:.8rem;font-weight:600;margin-bottom:1.5rem}
.chip-dot{width:7px;height:7px;border-radius:50%;background:var(--t500);animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(1.4)}}
.hero h1{font-family:var(--font-d);font-size:clamp(2.2rem,5vw,3.4rem);font-weight:900;line-height:1.15;color:var(--n900);margin-bottom:1.2rem}
.hero h1 em{font-style:normal;background:linear-gradient(135deg,var(--t500),var(--b500));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hero-sub{font-size:1.05rem;color:var(--n600);line-height:1.85;margin-bottom:2rem;max-width:500px}
.hero-btns{display:flex;gap:.75rem;margin-bottom:2rem;flex-wrap:wrap}
.btn-main{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1.8rem;background:var(--primary);color:var(--white);border-radius:var(--r-full);font-size:.95rem;font-weight:600;font-family:var(--font-d);border:none;cursor:pointer;transition:all var(--tr);box-shadow:0 2px 16px rgba(5,150,105,.25)}
.btn-main:hover{background:var(--primary-h);transform:translateY(-2px);box-shadow:0 6px 24px rgba(5,150,105,.3)}
.btn-main.full{width:100%;justify-content:center;padding:1rem}
.btn-sec{display:inline-flex;align-items:center;padding:.85rem 1.8rem;border:1.5px solid var(--border);color:var(--n700);border-radius:var(--r-full);font-size:.95rem;font-weight:500;transition:all var(--tr)}
.btn-sec:hover{border-color:var(--primary);color:var(--primary);background:var(--t50)}
.hero-pills{display:flex;gap:.6rem;flex-wrap:wrap}
.pill{font-size:.78rem;color:var(--n500);background:var(--white);border:1px solid var(--border-l);padding:.3rem .7rem;border-radius:var(--r-full);font-weight:500}

/* ---- HERO VISUAL ---- */
.hero-visual{position:relative}
.mock{background:var(--white);border-radius:var(--r-xl);box-shadow:var(--sh-xl);border:1px solid var(--border-l);overflow:hidden}
.mock-bar{display:flex;align-items:center;gap:6px;padding:.7rem 1.1rem;background:var(--n900);color:var(--n300)}
.mock-bar span{width:9px;height:9px;border-radius:50%}.mock-bar span:nth-child(1){background:#FF5F57}.mock-bar span:nth-child(2){background:#FEBC2E}.mock-bar span:nth-child(3){background:#28C840}
.mock-bar i{font-style:normal;margin-right:auto;font-size:.74rem}
.mock-body{padding:1.3rem}
.mock-row{display:flex;align-items:center;gap:.8rem;padding:.65rem 0;border-bottom:1px solid var(--border-l)}
.mock-row.sm{border:none;padding:.45rem 0}
.mock-av{width:34px;height:34px;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;font-size:1.1rem}
.av-bank{background:var(--b50)}.av-user{background:var(--t50)}.av-con{background:var(--a50)}.av-eng{background:var(--p50)}
.mock-row strong{font-size:.82rem;display:block;color:var(--n800);font-weight:600}.mock-row small{font-size:.72rem;color:var(--n400)}
.tag{font-size:.68rem;font-weight:600;padding:.15rem .5rem;border-radius:var(--r-full);margin-right:auto}
.tag-ok{background:var(--t50);color:var(--t700)}.tag-active{background:var(--b50);color:var(--b500)}
.mock-progress{padding:.8rem 0;border-bottom:1px solid var(--border-l)}
.prog-top{display:flex;justify-content:space-between;margin-bottom:.3rem}.prog-top span{font-size:.75rem;color:var(--n500)}.prog-top strong{font-size:.75rem;color:var(--t600)}
.prog-track{height:7px;background:var(--n100);border-radius:4px;overflow:hidden}.prog-fill{height:100%;width:0;background:linear-gradient(90deg,var(--t400),var(--t600));border-radius:4px;transition:width 1.5s ease}
.mock-stages{display:flex;padding:.65rem 0;border-bottom:1px solid var(--border-l);gap:0}
.stg{flex:1;display:flex;flex-direction:column;align-items:center;gap:.25rem;font-size:.68rem;color:var(--n400)}
.stg.done{color:var(--t600);font-weight:600}.stg.now{color:var(--b500);font-weight:600}
.stg i{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:.6rem}
.stg.done i{background:var(--t500);color:var(--white)}
.dot-pulse{width:20px;height:20px;border-radius:50%;border:2px solid var(--b500);position:relative}
.dot-pulse::after{content:'';position:absolute;inset:3px;border-radius:50%;background:var(--b500);animation:pulse 1.5s infinite}
.dot-empty{width:20px;height:20px;border-radius:50%;border:2px solid var(--n300)}
.mock-alert{padding:.7rem 1.1rem;background:var(--a50);border-top:1px solid #FEF3C7;font-size:.74rem;color:var(--a500);font-weight:500;display:flex;align-items:center;gap:.5rem}
.alert-dot{width:6px;height:6px;border-radius:50%;background:var(--a400);animation:pulse 1.5s infinite}
.float-tag{position:absolute;background:var(--white);border-radius:var(--r-full);padding:.45rem .9rem;font-size:.75rem;font-weight:600;box-shadow:var(--sh-lg);border:1px solid var(--border-l);white-space:nowrap;z-index:3;animation:float 4s ease-in-out infinite}
.f1{top:-10px;right:-15px;color:var(--a500)}.f2{bottom:22%;left:-25px;color:var(--t600);animation-delay:1.3s}.f3{bottom:-6px;right:30%;color:var(--b500);animation-delay:2.6s}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.hero-wave{position:absolute;bottom:-2px;left:0;right:0;z-index:1;display:block;width:100%}

/* ---- SECTIONS ---- */
.sec{padding:6rem 0;position:relative}.sec-alt{background:var(--white)}
.sec-head{text-align:center;max-width:700px;margin:0 auto 3.5rem}
.label{display:inline-block;background:var(--t50);color:var(--primary);padding:.3rem .9rem;border-radius:var(--r-full);font-size:.78rem;font-weight:700;margin-bottom:1rem;border:1px solid rgba(16,185,129,.15)}
.sec-head h2{font-family:var(--font-d);font-size:clamp(1.6rem,3.5vw,2.5rem);font-weight:800;line-height:1.25;color:var(--n900);margin-bottom:1rem}
.sec-head h2 em{font-style:normal;background:linear-gradient(135deg,var(--t500),var(--b500));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.sec-head p{font-size:1rem;color:var(--n500);line-height:1.8}

/* ---- PROBLEM ---- */
.pain-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}
.pain{padding:1.75rem;border-radius:var(--r-lg);background:var(--white);border:1px solid var(--border-l);transition:all var(--tr)}
.pain:hover{transform:translateY(-4px);box-shadow:var(--sh-lg)}
.pain-icon{font-size:2rem;margin-bottom:.75rem}
.pain h3{font-family:var(--font-d);font-size:1rem;font-weight:700;color:var(--n800);margin-bottom:.5rem}
.pain p{font-size:.84rem;color:var(--n500);line-height:1.75}

/* ---- SOLUTION ---- */
.diagram{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;align-items:center;max-width:850px;margin:0 auto 4rem;gap:0}
.d-node{text-align:center;padding:1.2rem .8rem;border-radius:var(--r-lg);background:var(--bg);border:1px solid var(--border-l);transition:all var(--tr)}
.d-node:hover{transform:translateY(-3px);box-shadow:var(--sh-md);border-color:var(--primary)}
.d-emoji{font-size:2rem;margin-bottom:.4rem}.d-node span{font-size:.82rem;font-weight:600;color:var(--n600)}
.d-line{height:2px;background:var(--n200);flex-grow:1;min-width:15px;position:relative}
.d-center{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,var(--t500),var(--t600));color:var(--white);z-index:2}
.d-ring{position:absolute;inset:-10px;border-radius:50%;border:2px solid rgba(16,185,129,.2);animation:pulse 3s infinite}
.d-center strong{font-family:var(--font-d);font-size:1rem;font-weight:900}.d-center small{font-size:.58rem;opacity:.8;margin-top:2px}
.steps{max-width:700px;margin:0 auto;display:flex;flex-direction:column;gap:0}
.step{display:flex;align-items:flex-start;gap:1.2rem;padding:1.4rem 0;border-bottom:1px solid var(--border-l)}
.step:last-child{border:none}
.step-n{width:40px;height:40px;border-radius:50%;flex-shrink:0;background:var(--t50);color:var(--primary);display:flex;align-items:center;justify-content:center;font-family:var(--font-d);font-size:.95rem;font-weight:800}
.step h4{font-family:var(--font-d);font-size:1rem;font-weight:700;color:var(--n800);margin-bottom:.25rem}
.step p{font-size:.87rem;color:var(--n500);line-height:1.7}

/* ---- FEATURES ---- */
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.feat{padding:1.75rem;border-radius:var(--r-lg);background:var(--white);border:1px solid var(--border-l);transition:all var(--tr)}
.feat:hover{transform:translateY(-4px);box-shadow:var(--sh-lg);border-color:transparent}
.feat-ic{width:50px;height:50px;border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;font-size:1.5rem;margin-bottom:1.1rem}
.ic-teal{background:var(--t50)}.ic-blue{background:var(--b50)}.ic-green{background:#ECFDF5}.ic-amber{background:var(--a50)}.ic-purple{background:var(--p50)}.ic-rose{background:var(--r50)}
.feat h3{font-family:var(--font-d);font-size:1rem;font-weight:700;color:var(--n800);margin-bottom:.5rem}
.feat p{font-size:.84rem;color:var(--n500);line-height:1.75}

/* ---- WHO ---- */
.who-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-bottom:3rem}
.who-card{padding:1.6rem;border-radius:var(--r-xl);background:var(--bg);border:1px solid var(--border-l);transition:all var(--tr)}
.who-card:hover{transform:translateY(-4px);box-shadow:var(--sh-lg)}
.who-card.featured{border-color:var(--primary);box-shadow:0 6px 24px rgba(5,150,105,.1);background:linear-gradient(145deg,#ECFDF5,#fff)}
.who-top{display:flex;align-items:center;gap:.6rem;margin-bottom:.8rem}
.who-emoji{font-size:2rem}
.who-badge{font-size:.68rem;font-weight:700;padding:.15rem .55rem;border-radius:var(--r-full)}
.wb-teal{background:var(--t50);color:var(--t700)}.wb-blue{background:var(--b50);color:var(--b500)}.wb-amber{background:var(--a50);color:#92400E}.wb-purple{background:var(--p50);color:var(--p500)}
.who-card h3{font-family:var(--font-d);font-size:.95rem;font-weight:700;color:var(--n800);margin-bottom:.5rem}
.who-card p{font-size:.8rem;color:var(--n500);line-height:1.75;margin-bottom:.8rem}
.who-card ul{display:flex;flex-direction:column;gap:.3rem}
.who-card li{font-size:.76rem;color:var(--n500);padding-right:1rem;position:relative;line-height:1.5}
.who-card li::before{content:'✓';position:absolute;right:0;color:var(--t500);font-weight:700;font-size:.68rem}

/* Compare */
.compare{display:grid;grid-template-columns:1fr auto 1fr;gap:0;border-radius:var(--r-xl);overflow:hidden;border:1px solid var(--border-l);box-shadow:var(--sh-md)}
.cmp-side{padding:2rem}.cmp-before{background:#FFF5F5}.cmp-after{background:#ECFDF5}
.cmp-label{font-family:var(--font-d);font-size:.88rem;font-weight:700;margin-bottom:1.2rem}
.cl-red{color:#DC2626}.cl-green{color:var(--t700)}
.cmp-side ul{display:flex;flex-direction:column;gap:.7rem}
.cmp-side li{font-size:.87rem;color:var(--n600);display:flex;align-items:center;gap:.5rem;line-height:1.5}
.cmp-divider{background:var(--white);display:flex;align-items:center;justify-content:center;padding:0 .5rem;border-left:1px solid var(--border-l);border-right:1px solid var(--border-l)}
.cmp-divider span{font-family:var(--font-d);font-size:.75rem;font-weight:800;color:var(--n400);writing-mode:vertical-rl}

/* ---- VISION ---- */
.vision-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2.5rem}
.vis-card{padding:2rem;border-radius:var(--r-xl);background:var(--white);border:1px solid var(--border-l);transition:all var(--tr);position:relative;overflow:hidden}
.vis-card:hover{transform:translateY(-4px);box-shadow:var(--sh-lg)}
.vis-card.vis-next{border-color:var(--primary);box-shadow:0 6px 20px rgba(5,150,105,.1)}
.vis-badge{display:inline-block;padding:.2rem .65rem;border-radius:var(--r-full);font-size:.68rem;font-weight:700;margin-bottom:1rem}
.vb1{background:var(--t50);color:var(--t700)}.vb2{background:var(--b50);color:var(--b500)}.vb3{background:var(--p50);color:var(--p500)}
.vis-icon{font-size:2.5rem;margin-bottom:.8rem}
.vis-card h3{font-family:var(--font-d);font-size:1.05rem;font-weight:700;color:var(--n800);margin-bottom:.5rem}
.vis-card p{font-size:.84rem;color:var(--n500);line-height:1.75}
.net-bar{display:flex;align-items:flex-start;gap:1.5rem;padding:2rem;background:linear-gradient(135deg,#F0FDFA,#EFF6FF);border:1px solid rgba(16,185,129,.1);border-radius:var(--r-xl)}
.net-ic{font-size:2.5rem;flex-shrink:0}
.net-bar strong{font-family:var(--font-d);font-size:1rem;font-weight:700;color:var(--n800);display:block;margin-bottom:.3rem}
.net-bar p{font-size:.88rem;color:var(--n500);line-height:1.7}

/* ---- FAQ ---- */
.faq-list{max-width:750px;margin:0 auto;display:flex;flex-direction:column;gap:.5rem}
.faq{border:1px solid var(--border-l);border-radius:var(--r-md);overflow:hidden;background:var(--bg);transition:all var(--tr)}
.faq.open{background:var(--white);box-shadow:var(--sh-md);border-color:var(--border)}
.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1.1rem 1.3rem;font-family:var(--font-d);font-size:.95rem;font-weight:700;color:var(--n800);background:none;border:none;cursor:pointer;text-align:right}
.faq-arrow{font-size:.7rem;color:var(--n400);transition:transform var(--tr)}
.faq.open .faq-arrow{transform:rotate(180deg);color:var(--primary)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease,padding .35s ease}
.faq.open .faq-a{max-height:300px;padding:0 1.3rem 1.1rem}
.faq-a p{font-size:.88rem;color:var(--n500);line-height:1.8}

/* ---- CTA ---- */
.sec-cta{padding:6rem 0;background:linear-gradient(135deg,var(--t700),var(--t800),#064E3B);color:var(--white);position:relative;overflow:hidden}
.sec-cta::before{content:'';position:absolute;top:-40%;left:-20%;width:500px;height:500px;border-radius:50%;background:rgba(255,255,255,.03)}
.cta-wrap{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}
.cta-text h2{font-family:var(--font-d);font-size:clamp(1.5rem,3vw,2.1rem);font-weight:800;line-height:1.3;margin-bottom:1rem}
.cta-text p{font-size:.95rem;color:rgba(255,255,255,.75);line-height:1.8;margin-bottom:2rem}
.cta-trust{display:flex;flex-wrap:wrap;gap:.8rem}
.ct-item{display:flex;align-items:center;gap:.4rem;font-size:.82rem;color:rgba(255,255,255,.7);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);padding:.45rem .9rem;border-radius:var(--r-full)}
.cta-form-wrap{position:relative}
.cta-form{background:var(--white);border-radius:var(--r-xl);padding:2rem;color:var(--text)}
.f-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.fg{margin-bottom:1rem}
.fg label{display:block;font-size:.82rem;font-weight:600;color:var(--n700);margin-bottom:.35rem}
input,select,textarea{width:100%;padding:.75rem .9rem;background:var(--bg);border:1.5px solid var(--border);border-radius:var(--r-md);color:var(--n800);font-family:var(--font);font-size:.88rem;transition:all var(--tr);direction:rtl;resize:vertical}
input::placeholder{color:var(--n400)}select{appearance:none;cursor:pointer}
input:focus,select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(16,185,129,.12);background:var(--white)}
.form-ok{display:none;text-align:center;padding:3rem 2rem;background:var(--white);border-radius:var(--r-xl)}
.ok-ic{font-size:3rem;margin-bottom:1rem}
.form-ok h4{font-family:var(--font-d);font-size:1.2rem;font-weight:700;color:var(--n800);margin-bottom:.3rem}
.form-ok p{color:var(--n500)}

/* ---- FOOTER ---- */
.footer{background:var(--n900);color:var(--white);padding:3.5rem 0 2rem}
.ft-top{display:flex;justify-content:space-between;align-items:flex-start;gap:3rem;margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid rgba(255,255,255,.08)}
.ft-logo{font-family:var(--font-d);font-size:2rem;font-weight:900;display:block;margin-bottom:.5rem}
.ft-brand p{font-size:.82rem;color:rgba(255,255,255,.4);line-height:1.7}
.ft-cols{display:flex;gap:3rem}
.ft-col{display:flex;flex-direction:column;gap:.4rem}
.ft-col h5{font-size:.78rem;font-weight:700;color:rgba(255,255,255,.5);margin-bottom:.5rem}
.ft-col a{font-size:.85rem;color:rgba(255,255,255,.45);transition:color var(--tr)}.ft-col a:hover{color:var(--t400)}
.ft-bottom{text-align:center}.ft-bottom p{font-size:.78rem;color:rgba(255,255,255,.3)}

/* ---- ANIMATIONS ---- */
.anim{opacity:0;transform:translateY(25px);transition:opacity .6s ease,transform .6s ease}
.anim.vis{opacity:1;transform:translateY(0)}
.anim[data-d="1"]{transition-delay:.1s}.anim[data-d="2"]{transition-delay:.2s}.anim[data-d="3"]{transition-delay:.3s}.anim[data-d="4"]{transition-delay:.4s}
.reveal{opacity:0;transform:translateY(25px);transition:opacity .6s ease,transform .6s ease}.reveal.vis{opacity:1;transform:translateY(0)}
.reveal-i{opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease}.reveal-i.vis{opacity:1;transform:translateY(0)}

/* ---- RESPONSIVE ---- */
@media(max-width:1024px){
  .hero-wrap{grid-template-columns:1fr;gap:3rem}.hero-text{max-width:100%;text-align:center;margin:0 auto}.hero-sub{margin:0 auto 2rem}.hero-btns,.hero-pills{justify-content:center}
  .hero-visual{max-width:480px;margin:0 auto}
  .pain-cards{grid-template-columns:repeat(2,1fr)}
  .diagram{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}.d-line{display:none}.d-center{order:-1;margin-bottom:.5rem}
  .feat-grid{grid-template-columns:repeat(2,1fr)}
  .who-grid{grid-template-columns:repeat(2,1fr)}
  .vision-cards{grid-template-columns:1fr}
  .cta-wrap{grid-template-columns:1fr;gap:3rem}
  .compare{grid-template-columns:1fr}.cmp-divider{border:none;border-top:1px solid var(--border-l);border-bottom:1px solid var(--border-l);padding:.5rem 0}.cmp-divider span{writing-mode:horizontal-tb}
  .ft-top{flex-direction:column}
}
@media(max-width:768px){
  .nav-links{display:none;position:fixed;inset:0;background:rgba(255,255,255,.98);backdrop-filter:blur(20px);flex-direction:column;align-items:center;justify-content:center;gap:1rem;z-index:999}
  .nav-links.open{display:flex}.nav-links.open a{font-size:1.15rem}.nav-links.open .nav-cta{margin-right:0 !important}
  .burger{display:flex;z-index:1001;position:relative}
  .pain-cards,.feat-grid,.who-grid{grid-template-columns:1fr}
  .f-row{grid-template-columns:1fr}
  .float-tag{display:none}
  .hero{min-height:auto;padding:7rem 0 4rem}
  .sec{padding:4rem 0}
}
@media(max-width:480px){.container{padding:0 1.25rem}}
