*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --green:#00A882;--green-light:#00c99b;--green-dim:#008f6e;--green-glow:rgba(0,168,130,0.25);
  --dark:#0B1228;--darker:#060B18;--white:#ffffff;--off-white:#f6f8fb;--cream:#fafbfc;
  --w80:rgba(255,255,255,0.8);--w60:rgba(255,255,255,0.6);--w40:rgba(255,255,255,0.4);
  --w20:rgba(255,255,255,0.2);--w10:rgba(255,255,255,0.1);--w06:rgba(255,255,255,0.06);
  --w03:rgba(255,255,255,0.03);--border:rgba(255,255,255,0.08);
  /* light theme tokens */
  --ink:#0B1228;--ink-soft:#3a4256;--ink-muted:#6b7383;
  --light-border:rgba(11,18,40,0.08);--light-border-strong:rgba(11,18,40,0.14);
  --light-bg-soft:#f3f5f9;--light-card-shadow:0 4px 14px rgba(11,18,40,0.04),0 24px 60px rgba(11,18,40,0.06);
}
html{scroll-behavior:smooth}
body{font-family:'Poppins',sans-serif;background:var(--darker);color:var(--white);overflow-x:hidden;line-height:1.6;cursor:none}
 
/* ── CUSTOM CURSOR ── */
#cursor{position:fixed;width:12px;height:12px;background:var(--green);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:transform 0.1s,width 0.3s,height 0.3s,opacity 0.3s;mix-blend-mode:normal}
#cursor-ring{position:fixed;width:36px;height:36px;border:1.5px solid rgba(0,168,130,0.5);border-radius:50%;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:transform 0.15s ease,width 0.3s,height 0.3s,opacity 0.3s}
body:hover #cursor{opacity:1}
 

/* ── HERO ── */
.hero{min-height:100vh;display:flex;align-items:center;padding:100px 5% 60px;position:relative;overflow:hidden}
.hero-bg{position:absolute;inset:0;background:var(--darker)}
.hero-orb{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none}
.orb1{width:600px;height:600px;background:rgba(0,168,130,0.12);top:-100px;right:-100px;animation:orbFloat1 8s ease-in-out infinite}
.orb2{width:400px;height:400px;background:rgba(0,168,130,0.07);bottom:-50px;left:-80px;animation:orbFloat2 10s ease-in-out infinite}
.orb3{width:300px;height:300px;background:rgba(11,18,40,0.9);top:30%;left:40%;animation:orbFloat3 12s ease-in-out infinite}
@keyframes orbFloat1{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-30px,20px) scale(1.05)}}
@keyframes orbFloat2{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(20px,-25px) scale(1.08)}}
@keyframes orbFloat3{0%,100%{transform:translate(0,0)}50%{transform:translate(-15px,15px)}}
.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.03) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse 90% 90% at 50% 50%,black 0%,transparent 75%)}
.hero-pulse-line{position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--green),transparent);animation:pulseLine 3s ease-in-out infinite}
@keyframes pulseLine{0%{opacity:0;transform:scaleX(0)}50%{opacity:1;transform:scaleX(1)}100%{opacity:0;transform:scaleX(1)}}
 
.hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;max-width:1200px;margin:0 auto;width:100%;position:relative;z-index:5}
 
.hero-badge{display:inline-flex;align-items:center;gap:10px;background:rgba(0,168,130,0.1);border:1px solid rgba(0,168,130,0.25);border-radius:100px;padding:7px 16px 7px 8px;font-size:12px;font-weight:600;color:var(--green);margin-bottom:28px;opacity:0;animation:fadeUp 0.7s 0.2s forwards}
.badge-pulse{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 0 rgba(0,168,130,0.4);animation:ripple 2s infinite}
@keyframes ripple{0%{box-shadow:0 0 0 0 rgba(0,168,130,0.5)}70%{box-shadow:0 0 0 8px rgba(0,168,130,0)}100%{box-shadow:0 0 0 0 rgba(0,168,130,0)}}
 
.hero-heading{font-size:clamp(34px,4.5vw,60px);font-weight:900;line-height:1.08;letter-spacing:-2px;margin-bottom:20px;opacity:0;animation:fadeUp 0.7s 0.35s forwards}
.hero-heading .line{display:block;overflow:hidden}
.hero-heading em{font-style:normal;color:var(--green)}
.hero-heading .underline-word{position:relative;display:inline-block}
.hero-heading .underline-word::after{content:'';position:absolute;bottom:-2px;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--green),var(--green-light));border-radius:2px;animation:drawLine 1s 1.1s both}
@keyframes drawLine{from{transform:scaleX(0);transform-origin:left}to{transform:scaleX(1);transform-origin:left}}
 
.hero-sub{font-size:16px;font-weight:400;color:var(--w60);line-height:1.75;max-width:500px;margin-bottom:36px;opacity:0;animation:fadeUp 0.7s 0.5s forwards}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:52px;opacity:0;animation:fadeUp 0.7s 0.65s forwards}
.btn-p{display:inline-flex;align-items:center;gap:8px;background:var(--green);color:var(--darker);font-family:'Poppins',sans-serif;font-size:14.5px;font-weight:700;padding:14px 30px;border-radius:8px;text-decoration:none;border:none;cursor:none;transition:all 0.25s;position:relative;overflow:hidden}
.btn-p::before{content:'';position:absolute;inset:0;background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,0.15) 50%,transparent 100%);transform:translateX(-100%);transition:transform 0.4s}
.btn-p:hover::before{transform:translateX(100%)}
.btn-p:hover{background:var(--green-light);transform:translateY(-2px);box-shadow:0 16px 40px rgba(0,168,130,0.4)}
.btn-g{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--white);font-family:'Poppins',sans-serif;font-size:14.5px;font-weight:500;padding:14px 30px;border-radius:8px;text-decoration:none;border:1.5px solid var(--w20);cursor:none;transition:all 0.25s}
.btn-g:hover{border-color:rgba(255,255,255,0.45);background:var(--w06);transform:translateY(-2px)}
/* light variant of ghost button */
.btn-g.btn-g-dark{color:var(--ink);border-color:var(--light-border-strong)}
.btn-g.btn-g-dark:hover{border-color:var(--green);color:var(--green);background:rgba(0,168,130,0.06)}
 
.hero-stats{display:flex;gap:36px;opacity:0;animation:fadeUp 0.7s 0.8s forwards}
.hstat-num{font-size:30px;font-weight:900;letter-spacing:-1px;line-height:1}
.hstat-num span{color:var(--green)}
.hstat-lbl{font-size:11px;color:var(--w60);margin-top:3px}
 
/* ── HERO VISUAL — Restaurant booking dashboard ── */
.hero-visual{position:relative;opacity:0;animation:fadeIn 1s 0.6s forwards}
@keyframes fadeIn{from{opacity:0;transform:scale(0.97)}to{opacity:1;transform:scale(1)}}
.dashboard-card{background:var(--dark);border:1px solid var(--border);border-radius:20px;overflow:hidden;box-shadow:0 40px 100px rgba(0,0,0,0.6),0 0 0 1px rgba(0,168,130,0.05)}
.db-topbar{background:rgba(255,255,255,0.04);padding:12px 18px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border)}
.db-dots{display:flex;gap:6px}
.db-dot{width:11px;height:11px;border-radius:50%}
.db-url{flex:1;background:rgba(255,255,255,0.06);border-radius:6px;padding:5px 12px;font-size:10.5px;color:var(--w40)}
 
.db-body{display:grid;grid-template-columns:56px 1fr;min-height:340px}
.db-sidebar{background:rgba(255,255,255,0.025);border-right:1px solid var(--border);padding:16px 8px;display:flex;flex-direction:column;gap:6px;align-items:center}
.db-s-ico{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:none;transition:background 0.2s}
.db-s-ico:hover,.db-s-ico.active{background:rgba(0,168,130,0.15)}
.db-s-ico svg{width:16px;height:16px;stroke:var(--w40);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:stroke 0.2s}
.db-s-ico.active svg,.db-s-ico:hover svg{stroke:var(--green)}
.db-sep{width:28px;height:1px;background:var(--border);margin:4px auto}
 
.db-main{padding:18px;overflow:hidden}
.db-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.db-title{font-size:12px;font-weight:700;letter-spacing:-0.3px}
.db-green-pill{background:rgba(0,168,130,0.15);color:var(--green);font-size:9px;font-weight:700;padding:3px 9px;border-radius:20px;border:1px solid rgba(0,168,130,0.25)}
 
.db-hero-banner{background:linear-gradient(135deg,rgba(0,168,130,0.18) 0%,rgba(11,18,40,0.9) 100%);border:1px solid rgba(0,168,130,0.2);border-radius:10px;padding:18px;margin-bottom:12px;position:relative;overflow:hidden}
.db-hero-banner::before{content:'';position:absolute;width:80px;height:80px;border-radius:50%;background:rgba(0,168,130,0.1);top:-20px;right:-20px}
.db-banner-tag{display:inline-block;background:rgba(0,168,130,0.25);color:var(--green);font-size:7px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:2px 8px;border-radius:10px;margin-bottom:8px}
.db-banner-h{font-size:13px;font-weight:800;line-height:1.2;margin-bottom:5px;letter-spacing:-0.3px}
.db-banner-p{font-size:7.5px;color:var(--w60);margin-bottom:10px;line-height:1.5}
.db-banner-row{display:flex;gap:7px;align-items:center}
.db-banner-btn{background:var(--green);color:var(--darker);font-size:7px;font-weight:800;padding:5px 12px;border-radius:5px}
.db-banner-link{font-size:7px;color:var(--green);display:flex;align-items:center;gap:3px}
 
.db-3col{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.db-mini-card{background:var(--w03);border:1px solid var(--border);border-radius:8px;padding:10px 8px}
.db-mini-ico{width:22px;height:22px;border-radius:6px;background:rgba(0,168,130,0.15);margin-bottom:7px;display:flex;align-items:center;justify-content:center}
.db-mini-ico svg{width:11px;height:11px;stroke:var(--green);fill:none;stroke-width:1.8;stroke-linecap:round}
.db-mini-title{font-size:7.5px;font-weight:700;margin-bottom:3px}
.db-mini-val{font-size:10px;font-weight:800;color:var(--green)}
 
.db-chart-wrap{background:var(--w03);border:1px solid var(--border);border-radius:8px;padding:10px;position:relative;overflow:hidden}
.db-chart-label{font-size:8px;font-weight:600;color:var(--w60);margin-bottom:8px}
.heartbeat-svg{width:100%;height:36px;overflow:visible}
.hb-path{fill:none;stroke:var(--green);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;animation:drawHB 2s ease-out 1.5s both}
@keyframes drawHB{from{stroke-dashoffset:600}to{stroke-dashoffset:0}}
.hb-area{fill:url(#hbGrad);animation:fadeInArea 1s 2.5s both}
@keyframes fadeInArea{from{opacity:0}to{opacity:1}}
 
.float-badge{position:absolute;background:var(--dark);border:1px solid var(--border);border-radius:12px;padding:10px 14px;box-shadow:0 12px 32px rgba(0,0,0,0.5);backdrop-filter:blur(12px);white-space:nowrap;animation:floatBadge 4s ease-in-out infinite}
.fb1{bottom:-16px;right:-24px;animation-delay:0s}
.fb2{top:40px;left:-36px;animation-delay:1.5s}
.fb3{bottom:80px;left:-40px;animation-delay:0.8s}
@keyframes floatBadge{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.fb-num{font-size:20px;font-weight:900;color:var(--green);line-height:1;letter-spacing:-0.5px}
.fb-lbl{font-size:9px;color:var(--w60);margin-top:2px}
.fb-row{display:flex;align-items:center;gap:8px}
.fb-ico{width:28px;height:28px;border-radius:50%;background:rgba(0,168,130,0.15);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.fb-ico svg{width:12px;height:12px;stroke:var(--green);fill:none;stroke-width:2;stroke-linecap:round}
.fb-text{font-size:10px;font-weight:600}
.fb-sub{font-size:8.5px;color:var(--w60)}
.fb-check{display:flex;align-items:center;gap:6px;font-size:9px;color:var(--green);margin-top:2px}
 
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
 
/* ── SCROLL REVEAL ── */
.reveal{opacity:0;transform:translateY(36px);transition:opacity 0.7s ease,transform 0.7s ease}
.reveal.visible{opacity:1;transform:translateY(0)}
.reveal-left{opacity:0;transform:translateX(-40px);transition:opacity 0.7s ease,transform 0.7s ease}
.reveal-left.visible{opacity:1;transform:translateX(0)}
.reveal-right{opacity:0;transform:translateX(40px);transition:opacity 0.7s ease,transform 0.7s ease}
.reveal-right.visible{opacity:1;transform:translateX(0)}
.reveal-scale{opacity:0;transform:scale(0.93);transition:opacity 0.6s ease,transform 0.6s ease}
.reveal-scale.visible{opacity:1;transform:scale(1)}
.stagger-1{transition-delay:0.1s}.stagger-2{transition-delay:0.2s}.stagger-3{transition-delay:0.3s}.stagger-4{transition-delay:0.4s}.stagger-5{transition-delay:0.5s}.stagger-6{transition-delay:0.6s}
 
/* ── SECTION COMMON ── */
section{padding:100px 5%}
.max-w{max-width:1200px;margin:0 auto}
.section-lbl{font-size:11px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--green);margin-bottom:14px;display:flex;align-items:center;gap:8px}
.section-lbl::before{content:'';width:20px;height:2px;background:var(--green);border-radius:1px;display:inline-block}
.section-h{font-size:clamp(28px,3.8vw,50px);font-weight:900;line-height:1.1;letter-spacing:-1.5px;margin-bottom:16px}
.section-sub{font-size:15.5px;color:var(--w60);line-height:1.75;max-width:560px}
 
/* ── LIGHT SECTION OVERRIDES ── */
.light-bg{background:var(--white);color:var(--ink)}
.light-bg .section-h{color:var(--ink)}
.light-bg .section-sub{color:var(--ink-muted)}
.light-bg .section-lbl{color:var(--green)}
 
/* ── MARQUEE TRUST BAR ── */
.trust-bar{background:var(--dark);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:18px 0;overflow:hidden;position:relative}
.trust-bar::before,.trust-bar::after{content:'';position:absolute;top:0;bottom:0;width:120px;z-index:2}
.trust-bar::before{left:0;background:linear-gradient(90deg,var(--dark),transparent)}
.trust-bar::after{right:0;background:linear-gradient(270deg,var(--dark),transparent)}
.marquee-inner{display:flex;gap:0;animation:marquee 28s linear infinite;width:max-content}
.marquee-inner:hover{animation-play-state:paused}
.trust-item{display:flex;align-items:center;gap:10px;padding:0 36px;border-right:1px solid var(--border);font-size:13px;font-weight:600;color:var(--w60);white-space:nowrap}
.trust-item svg{width:16px;height:16px;stroke:var(--green);fill:none;stroke-width:1.8;flex-shrink:0}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
 
/* ── SERVICES GRID — LIGHT ── */
.svc-section{background:var(--white)}
.svc-header{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:64px}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.svc-card{background:var(--white);border:1px solid var(--light-border);border-radius:16px;padding:28px;position:relative;overflow:hidden;transition:all 0.35s cubic-bezier(0.34,1.56,0.64,1);cursor:none;box-shadow:0 1px 3px rgba(11,18,40,0.04)}
.svc-card::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,168,130,0.08),transparent 60%);opacity:0;transition:opacity 0.4s}
.svc-card:hover{border-color:rgba(0,168,130,0.3);transform:translateY(-6px) scale(1.01);box-shadow:0 24px 60px rgba(11,18,40,0.10),0 0 0 1px rgba(0,168,130,0.15)}
.svc-card:hover::before{opacity:1}
.svc-card.featured{border-color:rgba(0,168,130,0.3);background:linear-gradient(145deg,rgba(0,168,130,0.04),var(--white));box-shadow:0 8px 28px rgba(0,168,130,0.08)}
.svc-card.featured::after{content:'Featured';position:absolute;top:14px;right:14px;background:rgba(0,168,130,0.12);color:var(--green);font-size:9px;font-weight:700;letter-spacing:1px;padding:3px 9px;border-radius:20px;border:1px solid rgba(0,168,130,0.25)}
.svc-icon{width:50px;height:50px;border-radius:14px;background:rgba(0,168,130,0.08);border:1px solid rgba(0,168,130,0.2);display:flex;align-items:center;justify-content:center;margin-bottom:20px;transition:all 0.3s}
.svc-icon svg{width:22px;height:22px;stroke:var(--green);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transition:transform 0.3s}
.svc-card:hover .svc-icon{background:rgba(0,168,130,0.15);box-shadow:0 8px 20px rgba(0,168,130,0.15)}
.svc-card:hover .svc-icon svg{transform:scale(1.1) rotate(-5deg)}
.svc-num{font-size:11px;font-weight:700;color:var(--green);letter-spacing:1px;margin-bottom:10px;opacity:0.7}
.svc-title{font-size:17px;font-weight:800;margin-bottom:10px;letter-spacing:-0.3px;color:var(--ink)}
.svc-desc{font-size:13.5px;color:var(--ink-muted);line-height:1.7;margin-bottom:18px}
.svc-tags{display:flex;flex-wrap:wrap;gap:6px}
.svc-tag{font-size:10.5px;color:var(--ink-muted);background:var(--light-bg-soft);border:1px solid var(--light-border);padding:3px 10px;border-radius:100px;transition:all 0.2s}
.svc-card:hover .svc-tag{border-color:rgba(0,168,130,0.25);color:var(--ink-soft);background:rgba(0,168,130,0.04)}
 
/* ── PROCESS SECTION (DARK) ── */
.process-section{background:var(--darker);position:relative;overflow:hidden}
.process-bg-line{position:absolute;top:50%;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(0,168,130,0.15),rgba(0,168,130,0.15),transparent);transform:translateY(-50%)}
.process-header{text-align:center;margin-bottom:80px}
.process-header .section-sub{margin:0 auto}
.process-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;position:relative}
.process-step{display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 8px;position:relative}
.step-circle{width:76px;height:76px;border-radius:50%;background:var(--dark);border:1.5px solid var(--border);display:flex;align-items:center;justify-content:center;margin-bottom:24px;position:relative;z-index:2;transition:all 0.4s cubic-bezier(0.34,1.56,0.64,1);cursor:none}
.process-step:hover .step-circle{border-color:var(--green);box-shadow:0 0 30px rgba(0,168,130,0.25);transform:scale(1.1)}
.step-circle svg{width:26px;height:26px;stroke:var(--green);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.step-badge{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:50%;background:var(--green);color:var(--darker);font-size:9px;font-weight:800;display:flex;align-items:center;justify-content:center}
.step-title{font-size:13.5px;font-weight:700;margin-bottom:8px}
.step-desc{font-size:12px;color:var(--w60);line-height:1.6}
.step-connector{position:absolute;top:38px;right:-50%;width:100%;z-index:1;display:flex;align-items:center;justify-content:center;gap:5px}
.connector-dot{width:4px;height:4px;border-radius:50%;background:var(--green);opacity:0.3;animation:connDot 1.5s ease-in-out infinite}
.connector-dot:nth-child(2){animation-delay:0.3s}
.connector-dot:nth-child(3){animation-delay:0.6s}
@keyframes connDot{0%,100%{opacity:0.2;transform:scale(0.8)}50%{opacity:0.7;transform:scale(1.2)}}
 
/* ── FEATURES (LIGHT) ── */
.features-section{background:var(--off-white)}
.features-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.feat-card{background:var(--white);border:1px solid var(--light-border);border-radius:16px;padding:30px;transition:all 0.35s;cursor:none;position:relative;overflow:hidden;box-shadow:0 1px 3px rgba(11,18,40,0.04)}
.feat-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--green);transform:scaleX(0);transform-origin:left;transition:transform 0.4s}
.feat-card:hover{border-color:rgba(0,168,130,0.25);transform:translateY(-4px);box-shadow:var(--light-card-shadow)}
.feat-card:hover::after{transform:scaleX(1)}
.feat-card.wide{grid-column:span 2;display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}
.feat-icon{width:52px;height:52px;border-radius:14px;background:rgba(0,168,130,0.08);border:1px solid rgba(0,168,130,0.2);display:flex;align-items:center;justify-content:center;margin-bottom:20px;transition:all 0.3s}
.feat-icon svg{width:24px;height:24px;stroke:var(--green);fill:none;stroke-width:1.6;stroke-linecap:round}
.feat-card:hover .feat-icon{background:rgba(0,168,130,0.16);box-shadow:0 8px 24px rgba(0,168,130,0.18)}
.feat-title{font-size:17px;font-weight:800;letter-spacing:-0.3px;margin-bottom:12px;color:var(--ink)}
.feat-desc{font-size:13.5px;color:var(--ink-muted);line-height:1.75}
 
/* Performance meter (light) */
.compliance-visual{background:var(--white);border:1px solid var(--light-border);border-radius:12px;padding:22px;box-shadow:inset 0 0 0 1px rgba(0,168,130,0.04)}
.comp-title{font-size:11px;font-weight:600;color:var(--ink-muted);letter-spacing:1px;text-transform:uppercase;margin-bottom:20px}
.comp-bar-row{margin-bottom:14px}
.comp-label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}
.comp-label{font-size:12px;color:var(--ink-soft)}
.comp-pct{font-size:11px;font-weight:700;color:var(--green)}
.comp-track{background:rgba(11,18,40,0.06);border-radius:4px;height:5px;overflow:hidden}
.comp-fill{height:5px;border-radius:4px;background:linear-gradient(90deg,var(--green-dim),var(--green));transform:scaleX(0);transform-origin:left;transition:transform 1.2s cubic-bezier(0.4,0,0.2,1)}
.comp-fill.animated{transform:scaleX(1)}
 
/* ── WHO WE SERVE (DARK) ── */
.serve-section{background:var(--darker);position:relative;overflow:hidden}
.serve-section::before{content:'';position:absolute;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(0,168,130,0.07),transparent 70%);top:-100px;right:-100px;pointer-events:none}
.serve-header{text-align:center;margin-bottom:64px}
.serve-header .section-sub{margin:0 auto}
.serve-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.serve-card{background:var(--w03);border:1px solid var(--border);border-radius:16px;padding:28px 22px;text-align:center;transition:all 0.4s cubic-bezier(0.34,1.56,0.64,1);cursor:none;position:relative;overflow:hidden}
.serve-card:hover{border-color:rgba(0,168,130,0.3);transform:translateY(-8px) scale(1.02);background:linear-gradient(145deg,rgba(0,168,130,0.07),var(--w03))}
.serve-card:hover .serve-big-ico{transform:scale(1.15) rotate(5deg)}
.serve-big-ico{font-size:38px;margin-bottom:16px;transition:transform 0.4s cubic-bezier(0.34,1.56,0.64,1);display:block}
.serve-card-title{font-size:14px;font-weight:700;margin-bottom:8px}
.serve-card-desc{font-size:12px;color:var(--w60);line-height:1.65}
.serve-card-tags{display:flex;flex-wrap:wrap;gap:5px;justify-content:center;margin-top:14px}
.serve-stag{font-size:10px;color:var(--green);background:rgba(0,168,130,0.1);border:1px solid rgba(0,168,130,0.2);padding:2px 9px;border-radius:100px}
 
/* ── METRICS (LIGHT) ── */
.metrics-section{background:var(--white);padding:80px 5%}
.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--light-border);border:1px solid var(--light-border);border-radius:20px;overflow:hidden}
.metric-cell{background:var(--white);padding:40px 32px;text-align:center;transition:background 0.3s;position:relative;overflow:hidden}
.metric-cell::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 0%,rgba(0,168,130,0.06),transparent 60%);opacity:0;transition:opacity 0.3s}
.metric-cell:hover{background:rgba(0,168,130,0.03)}
.metric-cell:hover::before{opacity:1}
.metric-num{font-size:clamp(36px,4vw,56px);font-weight:900;letter-spacing:-2px;line-height:1;color:var(--ink);margin-bottom:8px}
.metric-num span{color:var(--green)}
.metric-lbl{font-size:13px;color:var(--ink-muted);line-height:1.4}
.counter{display:inline-block}
 
/* ── TESTIMONIALS (LIGHT) ── */
.testi-section{background:var(--off-white)}
.testi-section .section-h{color:#000}
.testi-header{text-align:center;margin-bottom:56px}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.testi-card{background:var(--white);border:1px solid var(--light-border);border-radius:16px;padding:28px;transition:all 0.35s;cursor:none;position:relative;box-shadow:0 1px 3px rgba(11,18,40,0.04)}
.testi-card:hover{border-color:rgba(0,168,130,0.25);transform:translateY(-4px);box-shadow:var(--light-card-shadow)}
.testi-card::before{content:'❝';position:absolute;top:18px;right:22px;font-size:42px;color:rgba(0,168,130,0.15);font-family:serif;line-height:1}
.testi-stars{display:flex;gap:3px;margin-bottom:16px}
.testi-star{color:var(--green);font-size:13px}
.testi-quote{font-size:13.5px;color:var(--ink-soft);line-height:1.75;margin-bottom:24px;font-style:italic}
.testi-author{display:flex;align-items:center;gap:12px}
.testi-av{width:40px;height:40px;border-radius:50%;background:rgba(0,168,130,0.12);border:1.5px solid rgba(0,168,130,0.3);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;color:var(--green);flex-shrink:0}
.testi-name{font-size:13px;font-weight:700;color:var(--ink)}
.testi-role{font-size:11px;color:var(--ink-muted)}
.testi-badge{display:inline-flex;align-items:center;gap:5px;font-size:10px;color:var(--green);background:rgba(0,168,130,0.08);border:1px solid rgba(0,168,130,0.2);padding:2px 8px;border-radius:20px;margin-top:5px}
 
/* ── PRICING (DARK) ── */
.pricing-section{background:var(--dark)}
.pricing-header{text-align:center;margin-bottom:60px}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1000px;margin:0 auto}
.price-card{background:var(--darker);border:1px solid var(--border);border-radius:18px;padding:38px;position:relative;transition:all 0.35s;cursor:none}
.price-card:hover{transform:translateY(-5px)}
.price-card.popular{border-color:rgba(0,168,130,0.4);background:linear-gradient(160deg,rgba(0,168,130,0.08),var(--darker));box-shadow:0 24px 60px rgba(0,0,0,0.5),inset 0 1px 0 rgba(0,168,130,0.2)}
.popular-tag{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:linear-gradient(90deg,var(--green-dim),var(--green));color:var(--darker);font-size:10.5px;font-weight:800;letter-spacing:0.5px;padding:4px 18px;border-radius:100px;white-space:nowrap}
.price-plan{font-size:12px;font-weight:700;color:var(--green);letter-spacing:1.5px;text-transform:uppercase;margin-bottom:12px}
.price-amount{font-size:46px;font-weight:900;letter-spacing:-2px;line-height:1;margin-bottom:6px}
.price-amount sup{font-size:22px;font-weight:700;letter-spacing:0}
.price-period{font-size:12.5px;color:var(--w60);margin-bottom:26px}
.price-hr{border:none;border-top:1px solid var(--border);margin:22px 0}
.price-features{list-style:none;margin-bottom:32px}
.price-features li{font-size:13px;color:var(--w80);padding:7px 0;display:flex;gap:10px;align-items:flex-start;line-height:1.5}
.price-features li .check{width:16px;height:16px;border-radius:50%;background:rgba(0,168,130,0.15);border:1px solid rgba(0,168,130,0.35);flex-shrink:0;margin-top:2px;display:flex;align-items:center;justify-content:center}
.price-features li .check svg{width:8px;height:8px;stroke:var(--green);fill:none;stroke-width:2.5}
 
/* ── FAQ (LIGHT) ── */
.faq-section{background:var(--white)}
.faq-header{text-align:center;margin-bottom:56px}
.faq-list{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.faq-item{background:var(--off-white);border:1px solid var(--light-border);border-radius:12px;overflow:hidden;transition:border-color 0.3s,box-shadow 0.3s;cursor:none}
.faq-item:hover{border-color:rgba(0,168,130,0.25);box-shadow:0 6px 18px rgba(11,18,40,0.05)}
.faq-q-row{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;gap:16px}
.faq-q{font-size:14.5px;font-weight:600;color:var(--ink)}
.faq-toggle{width:28px;height:28px;border-radius:50%;border:1.5px solid var(--light-border-strong);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all 0.3s;background:var(--white)}
.faq-toggle svg{width:12px;height:12px;stroke:var(--ink-muted);fill:none;stroke-width:2.5;transition:transform 0.3s}
.faq-item.open .faq-toggle{background:rgba(0,168,130,0.12);border-color:rgba(0,168,130,0.35)}
.faq-item.open .faq-toggle svg{stroke:var(--green);transform:rotate(45deg)}
.faq-answer{max-height:0;overflow:hidden;transition:max-height 0.4s ease,padding 0.3s}
.faq-answer p{padding:0 24px 20px;font-size:13.5px;color:var(--ink-muted);line-height:1.75}
.faq-item.open .faq-answer{max-height:240px}
 
/* ── CTA (DARK) ── */
.cta-section{background:var(--dark);padding:110px 5%;text-align:center;position:relative;overflow:hidden}
.cta-orb{position:absolute;border-radius:50%;pointer-events:none}
.cta-orb1{width:700px;height:700px;background:radial-gradient(circle,rgba(0,168,130,0.1),transparent 70%);top:-200px;left:50%;transform:translateX(-50%)}
.cta-orb2{width:300px;height:300px;background:radial-gradient(circle,rgba(0,168,130,0.07),transparent 70%);bottom:-100px;right:10%}
.cta-inner{position:relative;z-index:2;max-width:680px;margin:0 auto}
.cta-h{font-size:clamp(32px,5vw,58px);font-weight:900;line-height:1.08;letter-spacing:-2px;margin-bottom:18px}
.cta-h span{color:var(--green)}
.cta-sub{font-size:16px;color:var(--w60);line-height:1.75;margin-bottom:48px}
.cta-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.cta-trust{display:flex;justify-content:center;gap:28px;margin-top:36px;flex-wrap:wrap}
.cta-trust-item{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--w60)}
.cta-trust-item svg{width:14px;height:14px;stroke:var(--green);fill:none;stroke-width:2}

/* Responsive */
@media(max-width:1024px){.hero-inner{grid-template-columns:1fr}.hero-visual{display:none}.svc-grid{grid-template-columns:1fr 1fr}.serve-grid{grid-template-columns:1fr 1fr}.metrics-grid{grid-template-columns:1fr 1fr}.testi-grid{grid-template-columns:1fr 1fr}.pricing-grid{grid-template-columns:1fr;max-width:420px}.process-steps{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.nav-links{display:none}.svc-header{grid-template-columns:1fr;gap:30px}}
@media(max-width:640px){.svc-grid{grid-template-columns:1fr}.serve-grid{grid-template-columns:1fr 1fr}.testi-grid{grid-template-columns:1fr}.features-grid{grid-template-columns:1fr}.feat-card.wide{grid-column:span 1;grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.process-steps{grid-template-columns:1fr}body{cursor:auto}#cursor,#cursor-ring{display:none}}