/* ========================================================================
   ExcelBIPro — Shared Stylesheet
   One file controls the look of every page. Edit colors/fonts here once
   and the whole website updates.
   ======================================================================== */

:root{
  /* Brand colors */
  --forest:#0B302C;        /* deep primary / dark sections */
  --forest-2:#114039;
  --teal:#138A78;          /* secondary */
  --teal-soft:#1FA690;
  --gold:#ECB24C;          /* accent */
  --gold-soft:#F6C868;
  --gold-dark:#B5821F;

  /* Neutrals */
  --ink:#142420;           /* main text */
  --ink-soft:#5A6A65;      /* muted text */
  --bg:#FFFFFF;            /* page background */
  --bg-soft:#F4F8F5;       /* tinted sections */
  --bg-warm:#EAF2EE;
  --line:#E4EBE7;          /* borders */
  --line-strong:#CFDAD4;
  --white:#FFFFFF;

  /* Type */
  --display:'Sora',sans-serif;
  --body:'Inter',sans-serif;

  /* Effects */
  --shadow-sm:0 1px 2px rgba(14,44,40,0.06),0 2px 8px rgba(14,44,40,0.05);
  --shadow-md:0 8px 24px rgba(14,44,40,0.10);
  --shadow-lg:0 20px 48px rgba(14,44,40,0.16);
  --radius:14px;
  --radius-sm:10px;
  --maxw:1160px;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:var(--body);color:var(--ink);background:var(--bg);line-height:1.65;-webkit-font-smoothing:antialiased;}
img,svg{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
.container{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
:focus-visible{outline:2px solid var(--teal);outline-offset:3px;}
h1,h2,h3,h4{font-family:var(--display);letter-spacing:-0.02em;line-height:1.12;margin:0;}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--gold);color:#1c1505;padding:14px 26px;border-radius:999px;font-weight:600;font-family:var(--body);font-size:0.97rem;border:none;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease;}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(226,162,59,0.4);background:var(--gold-soft);}
.btn.secondary{background:transparent;border:1.5px solid rgba(255,255,255,0.35);color:#fff;}
.btn.secondary:hover{background:rgba(255,255,255,0.1);box-shadow:none;}
.btn.ghost{background:transparent;border:1.5px solid var(--line-strong);color:var(--ink);}
.btn.ghost:hover{background:var(--bg-soft);box-shadow:none;border-color:var(--teal);}
.btn-row{display:flex;flex-wrap:wrap;gap:14px;}

/* ---------- Header / Nav ---------- */
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,0.85);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--line);}
.topbar{display:flex;align-items:center;justify-content:space-between;padding:16px 0;position:relative;}
.brand{display:flex;align-items:center;gap:11px;font-family:var(--display);font-weight:700;font-size:1.32rem;letter-spacing:-0.03em;color:var(--forest);}
.brand .logo{width:38px;height:38px;border-radius:10px;flex-shrink:0;}
.brand-text{display:flex;flex-direction:column;line-height:1.05;}
.brand-text small{font-family:var(--body);font-weight:600;font-size:0.6rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--gold-dark);margin-top:3px;}
footer .brand-text small{color:var(--gold-soft);}
.nav-toggle-label{display:none;cursor:pointer;font-size:1.6rem;line-height:1;background:none;border:none;color:var(--forest);}
#nav-toggle{display:none;}
nav.main-nav{display:flex;align-items:center;gap:26px;font-size:0.94rem;font-weight:500;}
nav.main-nav a.navlink{position:relative;padding:6px 0;color:var(--ink-soft);transition:color .15s ease;}
nav.main-nav a.navlink:hover{color:var(--ink);}
nav.main-nav a.navlink.active{color:var(--forest);font-weight:600;}
nav.main-nav a.navlink.active::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;border-radius:2px;background:var(--gold);}
.nav-cta{background:var(--forest);color:#fff !important;padding:10px 20px;border-radius:999px;font-weight:600;font-size:0.9rem;white-space:nowrap;transition:background .15s ease;}
.nav-cta:hover{background:var(--teal);}
.has-dd{position:relative;}
.dd-caret{font-size:0.62em;margin-left:3px;vertical-align:middle;}
.dd-panel{position:absolute;top:calc(100% + 10px);left:0;min-width:300px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-md);padding:8px;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .16s ease,transform .16s ease,visibility .16s;z-index:200;}
.has-dd::before{content:"";position:absolute;top:100%;left:0;right:0;height:14px;}
.has-dd:hover .dd-panel,.has-dd:focus-within .dd-panel{opacity:1;visibility:visible;transform:translateY(0);}
.dd-panel a{display:block;padding:10px 14px;border-radius:9px;font-size:0.9rem;font-weight:500;color:var(--ink-soft);}
.dd-panel a:first-child{color:var(--forest);font-weight:600;border-bottom:1px solid var(--line);border-radius:9px 9px 0 0;margin-bottom:4px;}
.dd-panel a:hover{background:var(--bg-soft);color:var(--forest);}
.dd-panel a.dd-highlight{margin-top:6px;color:var(--forest);font-weight:700;background:rgba(236,178,76,0.16);border:1px solid rgba(236,178,76,0.55);line-height:1.3;animation:ddglow 1.7s ease-in-out infinite;}
.dd-panel a.dd-highlight:hover{background:rgba(236,178,76,0.30);}
.dd-highlight .tagnew{display:inline-block;font-size:0.58rem;font-weight:700;letter-spacing:0.05em;background:var(--gold);color:#1c1505;padding:2px 7px;border-radius:999px;margin-left:6px;vertical-align:middle;animation:tagblink 1.4s steps(1) infinite;}
@keyframes ddglow{0%,100%{box-shadow:0 0 0 0 rgba(236,178,76,0);}50%{box-shadow:0 0 0 5px rgba(236,178,76,0.18);}}
@keyframes tagblink{0%,60%{opacity:1;}61%,100%{opacity:0.35;}}
@media (prefers-reduced-motion:reduce){.dd-panel a.dd-highlight,.dd-highlight .tagnew{animation:none;}}
@media (max-width:980px){
  nav.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);box-shadow:var(--shadow-md);flex-direction:column;align-items:flex-start;padding:18px 24px 26px;gap:16px;}
  #nav-toggle:checked ~ nav.main-nav{display:flex;}
  .nav-toggle-label{display:block;}
  .nav-cta{width:100%;text-align:center;}
  .has-dd{width:100%;}
  .dd-panel{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:none;padding:6px 0 0 14px;min-width:auto;}
  .dd-panel a:first-child{border-bottom:none;}
}

/* ---------- Hero ---------- */
.hero{position:relative;overflow:hidden;color:#fff;
  background:radial-gradient(1200px 600px at 80% -10%,rgba(236,178,76,0.20),transparent 60%),
             radial-gradient(900px 520px at 0% 110%,rgba(31,166,144,0.28),transparent 55%),
             linear-gradient(160deg,#0B302C 0%,#114039 58%,#082420 100%);}
.hero::after{content:"";position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,0.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.04) 1px,transparent 1px);
  background-size:42px 42px;mask-image:linear-gradient(180deg,#000,transparent);pointer-events:none;}
.hero .container{position:relative;z-index:1;padding:88px 24px 80px;display:grid;grid-template-columns:1.05fr 0.95fr;gap:52px;align-items:center;}
@media (max-width:900px){.hero .container{grid-template-columns:1fr;padding:64px 24px 60px;}}
.hero.compact .container{grid-template-columns:1fr;max-width:820px;text-align:left;padding:72px 24px 64px;}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:0.78rem;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;color:var(--gold-soft);background:rgba(255,255,255,0.07);border:1px solid rgba(255,255,255,0.16);padding:6px 14px;border-radius:999px;margin-bottom:22px;}
.hero h1{font-size:clamp(2.3rem,4.6vw,3.6rem);margin:0 0 20px;color:#fff;}
.hero p.lede{font-size:1.18rem;color:rgba(255,255,255,0.82);max-width:560px;margin:0 0 32px;}
.hero .hindi-line{font-family:var(--body);color:var(--gold-soft);font-size:0.98rem;margin-top:26px;font-style:italic;}
.hero-art{position:relative;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.12);border-radius:18px;padding:20px;box-shadow:var(--shadow-lg);}
.hero-badge{position:absolute;background:#fff;color:var(--ink);border-radius:12px;box-shadow:var(--shadow-lg);padding:9px 14px;font-size:0.8rem;font-weight:600;display:flex;align-items:center;gap:8px;white-space:nowrap;}
.hero-badge.f-rating{top:-14px;left:-14px;color:var(--gold-dark);letter-spacing:1px;}
.hero-badge.f-rating b{color:var(--ink);font-weight:700;letter-spacing:0;}
.hero-badge.f-live{bottom:-14px;right:-12px;}
.hero-badge.f-live .dot{width:9px;height:9px;border-radius:50%;background:#28c840;box-shadow:0 0 0 4px rgba(40,200,64,0.2);}
@media (max-width:900px){.hero-badge{display:none;}}
.trust-row{display:flex;flex-wrap:wrap;gap:22px;margin-top:30px;font-size:0.86rem;color:rgba(255,255,255,0.7);}
.trust-row span{display:flex;align-items:center;gap:7px;}
.trust-row svg{width:16px;height:16px;color:var(--gold-soft);}

/* page hero for inner pages (lighter) */
.page-hero{background:radial-gradient(900px 500px at 90% -20%,rgba(236,178,76,0.16),transparent 60%),linear-gradient(160deg,#0B302C,#114039);color:#fff;padding:72px 0 64px;position:relative;overflow:hidden;}
.page-hero::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,0.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.04) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(180deg,#000,transparent);}
.page-hero .container{position:relative;z-index:1;max-width:840px;}
.page-hero h1{font-size:clamp(2.1rem,4vw,3.1rem);color:#fff;margin:0 0 16px;}
.page-hero p{font-size:1.12rem;color:rgba(255,255,255,0.82);margin:0;max-width:660px;}

/* ---------- Sections ---------- */
section{padding:80px 0;}
section.soft{background:var(--bg-soft);}
section.dark{background:var(--forest);color:#fff;}
.section-head{max-width:680px;margin:0 0 48px;}
.section-head.center{margin-left:auto;margin-right:auto;text-align:center;}
.tag{display:inline-block;font-size:0.78rem;font-weight:700;letter-spacing:0.05em;text-transform:uppercase;color:var(--teal);margin-bottom:14px;}
section.dark .tag{color:var(--gold-soft);}
h2.title{font-size:clamp(1.7rem,3vw,2.4rem);margin:0 0 16px;}
.section-head p{color:var(--ink-soft);font-size:1.06rem;margin:0;}
section.dark .section-head p{color:rgba(255,255,255,0.78);}

/* ---------- Grids & cards ---------- */
.grid{display:grid;gap:22px;}
.grid-2{grid-template-columns:repeat(2,1fr);}
.grid-3{grid-template-columns:repeat(3,1fr);}
.grid-4{grid-template-columns:repeat(4,1fr);}
@media (max-width:900px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr);}}
@media (max-width:640px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr;}}

.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow-sm);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}
.card.link:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--line-strong);}
.card .icon-badge{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:linear-gradient(150deg,var(--teal),var(--forest));color:#fff;margin-bottom:18px;}
.card .icon-badge svg{width:24px;height:24px;}
.card h3{font-size:1.18rem;margin:0 0 9px;}
.card p{font-size:0.97rem;color:var(--ink-soft);margin:0;}
.card .arrow{display:inline-block;margin-top:16px;font-weight:600;font-size:0.9rem;color:var(--gold-dark);}
.card.link:hover .arrow{color:var(--teal);}

/* ---------- Stats ---------- */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
@media (max-width:720px){.stats{grid-template-columns:repeat(2,1fr);}}
.stat-box{text-align:center;padding:26px 18px;border-radius:var(--radius);background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow-sm);}
section.dark .stat-box{background:rgba(255,255,255,0.05);border-color:rgba(255,255,255,0.12);}
.stat-box .num{font-family:var(--display);font-weight:700;font-size:2.6rem;line-height:1;background:linear-gradient(120deg,var(--teal),var(--gold-dark));-webkit-background-clip:text;background-clip:text;color:transparent;}
section.dark .stat-box .num{background:linear-gradient(120deg,var(--gold-soft),#fff);-webkit-background-clip:text;background-clip:text;color:transparent;}
.stat-box .lbl{font-size:0.82rem;text-transform:uppercase;letter-spacing:0.05em;color:var(--ink-soft);margin-top:12px;font-weight:500;}
section.dark .stat-box .lbl{color:rgba(255,255,255,0.7);}

/* ---------- Split feature ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
@media (max-width:820px){.split{grid-template-columns:1fr;gap:32px;}}
.split .prose p{color:var(--ink-soft);font-size:1.05rem;margin:0 0 16px;}
.split .prose p strong{color:var(--ink);}
.checklist{list-style:none;padding:0;margin:18px 0 0;}
.checklist li{display:flex;gap:12px;align-items:flex-start;margin-bottom:14px;font-size:1rem;}
.checklist li svg{width:22px;height:22px;flex-shrink:0;color:var(--teal);margin-top:2px;}
.media-card{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:var(--shadow-md);}
section.dark .media-card{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.12);}

/* ---------- Process timeline ---------- */
.timeline{position:relative;padding-left:60px;max-width:780px;}
.timeline::before{content:"";position:absolute;left:19px;top:8px;bottom:8px;width:2px;background:linear-gradient(var(--teal),var(--gold));}
.step{position:relative;margin-bottom:30px;}
.step:last-child{margin-bottom:0;}
.step .num{position:absolute;left:-60px;top:0;width:40px;height:40px;border-radius:11px;background:var(--forest);color:#fff;font-family:var(--display);font-weight:700;font-size:0.9rem;display:flex;align-items:center;justify-content:center;}
.step h3{font-size:1.1rem;margin:0 0 6px;}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.step p{margin:0;color:var(--ink-soft);font-size:0.97rem;}

/* ---------- Compare (before/after) ---------- */
.compare{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);}
@media (max-width:640px){.compare{grid-template-columns:1fr;}}
.compare>div{padding:30px;}
.compare .before{background:var(--bg-warm);}
.compare .after{background:linear-gradient(160deg,var(--forest),var(--teal));color:#fff;}
.compare h3{font-size:0.8rem;letter-spacing:0.05em;text-transform:uppercase;margin:0 0 18px;opacity:0.85;font-family:var(--display);}
.scribble{height:9px;border-radius:5px;background:repeating-linear-gradient(90deg,#C3CDC7 0,#C3CDC7 6px,transparent 6px,transparent 11px);margin-bottom:11px;}
.compare .after .row{display:flex;gap:10px;align-items:center;margin-bottom:12px;font-size:0.95rem;}
.compare .after .row svg{width:18px;height:18px;flex-shrink:0;color:var(--gold-soft);}

/* ---------- Chips ---------- */
.chips{display:flex;flex-wrap:wrap;gap:10px;}
.chip{font-size:0.88rem;font-weight:500;background:var(--white);border:1px solid var(--line);border-radius:999px;padding:8px 18px;color:var(--ink-soft);}

/* ---------- Testimonials ---------- */
.t-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:30px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;}
.stars{color:var(--gold);font-size:1.05rem;letter-spacing:2px;margin-bottom:14px;}
.t-card p{font-size:1rem;color:var(--ink);margin:0 0 22px;flex-grow:1;}
.t-card .who{display:flex;align-items:center;gap:13px;border-top:1px solid var(--line);padding-top:18px;}
.t-card .avatar{width:46px;height:46px;border-radius:50%;background:linear-gradient(150deg,var(--teal),var(--forest));color:#fff;font-family:var(--display);font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.t-card .name{font-weight:600;font-size:0.97rem;}
.t-card .role{font-size:0.84rem;color:var(--ink-soft);}

/* ---------- CTA band ---------- */
.cta-band{background:radial-gradient(800px 400px at 80% 0%,rgba(226,162,59,0.2),transparent 60%),linear-gradient(160deg,var(--forest),var(--teal));color:#fff;text-align:center;padding:72px 0;}
.cta-band h2{font-size:clamp(1.7rem,3vw,2.3rem);color:#fff;margin:0 0 14px;}
.cta-band p{color:rgba(255,255,255,0.85);max-width:560px;margin:0 auto 30px;font-size:1.06rem;}

/* ---------- Contact / forms ---------- */
.contact-grid{display:grid;grid-template-columns:0.85fr 1.15fr;gap:44px;align-items:start;}
@media (max-width:820px){.contact-grid{grid-template-columns:1fr;}}
.contact-info .line{display:flex;align-items:center;gap:14px;margin-bottom:20px;font-size:1.04rem;}
.contact-info .line .ico{width:42px;height:42px;border-radius:11px;background:var(--bg-soft);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.contact-info .line .ico svg{width:20px;height:20px;color:var(--teal);}
.contact-info .line a:hover{color:var(--gold-dark);}
.form-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:32px;box-shadow:var(--shadow-md);}
.field{margin-bottom:18px;}
.field.row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media (max-width:520px){.field.row{grid-template-columns:1fr;}}
label{display:block;font-size:0.84rem;font-weight:600;color:var(--ink);margin-bottom:7px;}
input,textarea,select{width:100%;font-family:var(--body);font-size:1rem;padding:13px 15px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:#fff;color:var(--ink);transition:border-color .15s ease,box-shadow .15s ease;}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(21,122,110,0.12);}
textarea{resize:vertical;min-height:130px;}

/* ---------- Blog ---------- */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
@media (max-width:900px){.blog-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:640px){.blog-grid{grid-template-columns:1fr;}}
.post-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:transform .18s ease,box-shadow .18s ease;}
.post-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);}
.post-thumb{height:170px;background:linear-gradient(150deg,var(--teal),var(--forest));position:relative;display:flex;align-items:center;justify-content:center;}
.post-thumb svg{width:64px;height:64px;color:rgba(255,255,255,0.85);}
.post-thumb.alt{background:linear-gradient(150deg,var(--gold),var(--gold-dark));}
.post-thumb.alt2{background:linear-gradient(150deg,#2b6f8f,var(--forest));}
.post-body{padding:24px;display:flex;flex-direction:column;flex-grow:1;}
.post-meta{font-size:0.8rem;color:var(--ink-soft);margin-bottom:10px;display:flex;gap:10px;align-items:center;}
.post-cat{background:var(--bg-soft);color:var(--teal);font-weight:600;padding:3px 10px;border-radius:999px;}
.post-body h3{font-size:1.15rem;margin:0 0 10px;}
.post-body p{font-size:0.95rem;color:var(--ink-soft);margin:0 0 16px;flex-grow:1;}
.read-more{font-weight:600;font-size:0.9rem;color:var(--gold-dark);}

/* Blog toolbar + featured */
.blog-toolbar{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:center;margin-bottom:28px;}
.blog-search{flex:1;min-width:220px;max-width:340px;}
.blog-search input{width:100%;padding:12px 18px;border:1px solid var(--line-strong);border-radius:999px;font-family:var(--body);font-size:0.95rem;background:#fff;}
.blog-search input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(21,122,110,.12);}
.blog-cats{display:flex;flex-wrap:wrap;gap:8px;}
.cat-chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 16px;font-size:0.86rem;font-weight:600;cursor:pointer;color:var(--ink-soft);font-family:var(--body);transition:all .15s ease;}
.cat-chip:hover{border-color:var(--teal);color:var(--forest);}
.cat-chip.active{background:var(--forest);color:#fff;border-color:var(--forest);}
.featured-post{display:grid;grid-template-columns:1.05fr 0.95fr;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow-md);margin-bottom:36px;transition:transform .18s ease,box-shadow .18s ease;}
.featured-post:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);}
@media (max-width:760px){.featured-post{grid-template-columns:1fr;}}
.fp-media{min-height:280px;position:relative;display:flex;align-items:center;justify-content:center;background:linear-gradient(150deg,var(--teal),var(--forest));}
.fp-media.alt{background:linear-gradient(150deg,var(--gold),var(--gold-dark));}
.fp-media.alt2{background:linear-gradient(150deg,#2b6f8f,var(--forest));}
.fp-media svg{width:78px;height:78px;color:rgba(255,255,255,.9);}
.fp-body{padding:34px 38px;display:flex;flex-direction:column;justify-content:center;}
.fp-tag{display:inline-block;background:var(--gold);color:#1c1505;font-size:.72rem;font-weight:700;letter-spacing:.03em;padding:5px 12px;border-radius:999px;margin-bottom:14px;width:fit-content;}
.fp-body h2{font-size:1.55rem;margin:0 0 12px;line-height:1.2;}
.fp-body p{color:var(--ink-soft);margin:0 0 14px;font-size:1.02rem;}

/* ---------- Floating buttons (WhatsApp + back to top) ---------- */
.wa-fab{position:fixed;right:20px;bottom:20px;z-index:300;width:56px;height:56px;border-radius:50%;background:#25D366;box-shadow:0 8px 22px rgba(0,0,0,0.28);display:flex;align-items:center;justify-content:center;transition:transform .15s ease;}
.wa-fab:hover{transform:scale(1.09);}
.wa-fab svg{width:32px;height:32px;fill:#fff;}
.wa-fab::after{content:"Chat with us";position:absolute;right:66px;background:var(--forest);color:#fff;font-size:0.78rem;padding:6px 12px;border-radius:8px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s ease;}
.wa-fab:hover::after{opacity:1;}
.to-top{position:fixed;right:24px;bottom:88px;z-index:300;width:44px;height:44px;border-radius:50%;background:var(--forest);border:none;cursor:pointer;display:none;align-items:center;justify-content:center;box-shadow:var(--shadow-md);}
.to-top.show{display:flex;}
.to-top svg{width:20px;height:20px;stroke:#fff;fill:none;}
@media (max-width:600px){.wa-fab::after{display:none;}}

/* ---------- Trust badges ---------- */
.trust-badges{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:34px;}
@media (max-width:720px){.trust-badges{grid-template-columns:repeat(2,1fr);}}
.trust-badge{display:flex;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 18px;box-shadow:var(--shadow-sm);}
.trust-badge .ic{width:40px;height:40px;border-radius:10px;background:var(--bg-soft);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--teal);}
.trust-badge .ic svg{width:22px;height:22px;}
.trust-badge b{font-size:0.9rem;display:block;line-height:1.2;}
.trust-badge span{font-size:0.78rem;color:var(--ink-soft);}

/* ---------- Buy button + payment modal ---------- */
.wa-enquire{display:block;text-align:center;margin-top:9px;font-size:0.85rem;color:var(--ink-soft);}
.wa-enquire:hover{color:var(--gold-dark);}
.buy-overlay{display:none;position:fixed;inset:0;background:rgba(10,30,26,0.55);z-index:400;align-items:center;justify-content:center;padding:20px;}
.buy-box{position:relative;background:#fff;border-radius:16px;max-width:440px;width:100%;padding:30px;box-shadow:var(--shadow-lg);max-height:92vh;overflow:auto;}
.buy-box h3{font-family:var(--display);margin:0 0 4px;}
.buy-box>p{color:var(--ink-soft);font-size:0.9rem;margin:0 0 16px;}
.buy-close{position:absolute;right:14px;top:8px;background:none;border:none;font-size:1.7rem;cursor:pointer;color:var(--ink-soft);line-height:1;}
#buy-msg{font-size:0.86rem;margin-top:12px;text-align:center;min-height:18px;color:var(--ink-soft);}

/* ---------- Featured CRM/LMS banner ---------- */
.crm-feature{display:grid;grid-template-columns:1.05fr 0.95fr;gap:44px;align-items:center;
  background:radial-gradient(700px 380px at 90% 0%,rgba(236,178,76,0.20),transparent 60%),linear-gradient(150deg,var(--forest),var(--teal));
  border-radius:22px;padding:48px;color:#fff;box-shadow:var(--shadow-lg);position:relative;overflow:hidden;}
@media (max-width:820px){.crm-feature{grid-template-columns:1fr;padding:34px;gap:28px;}}
.crm-feature .badge{display:inline-block;font-size:0.76rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:var(--forest);background:var(--gold-soft);padding:6px 14px;border-radius:999px;margin-bottom:16px;}
.crm-feature h2{color:#fff;font-size:clamp(1.55rem,2.7vw,2.2rem);margin:0 0 14px;}
.crm-feature p{color:rgba(255,255,255,0.86);margin:0 0 18px;font-size:1.06rem;}
.crm-feature .mini-list{list-style:none;padding:0;margin:0 0 26px;display:flex;flex-wrap:wrap;gap:10px 22px;}
.crm-feature .mini-list li{display:flex;gap:8px;align-items:center;font-size:0.94rem;color:rgba(255,255,255,0.9);}
.crm-feature .mini-list svg{width:18px;height:18px;color:var(--gold-soft);flex-shrink:0;}
.crm-art{background:rgba(255,255,255,0.07);border:1px solid rgba(255,255,255,0.16);border-radius:16px;padding:16px;}
.crm-art img{border-radius:10px;display:block;width:100%;}

/* ---------- Service showcase image ---------- */
.showcase{max-width:440px;margin:0 auto 44px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-md);background:var(--white);}
.showcase img{width:100%;height:auto;display:block;}
.showcase figcaption{font-size:0.85rem;color:var(--ink-soft);text-align:center;padding:12px 16px;background:var(--bg-soft);border-top:1px solid var(--line);}

/* ---------- Video gallery ---------- */
.video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;}
@media (max-width:780px){.video-grid{grid-template-columns:1fr;}}
.video-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);}
.video-frame{position:relative;aspect-ratio:16/9;background:var(--forest);}
.video-frame video,.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;}
.video-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:rgba(255,255,255,0.85);background:linear-gradient(150deg,var(--teal),var(--forest));}
.video-placeholder svg{width:60px;height:60px;}
.video-placeholder span{font-size:0.9rem;}
.video-card .vbody{padding:20px 22px;}
.video-card h3{font-size:1.1rem;margin:0 0 6px;}
.video-card p{font-size:0.92rem;color:var(--ink-soft);margin:0;}
.upload-box{margin-top:46px;padding:34px;border:2px dashed var(--line-strong);border-radius:var(--radius);background:var(--bg-soft);text-align:center;}
.upload-box svg{width:46px;height:46px;color:var(--teal);margin:0 auto 14px;}

/* ---------- Products / Shop ---------- */
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
@media (max-width:900px){.product-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:640px){.product-grid{grid-template-columns:1fr;}}
.product-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:transform .18s ease,box-shadow .18s ease;}
.product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);}
.product-thumb{height:160px;position:relative;display:flex;align-items:center;justify-content:center;background:linear-gradient(150deg,var(--teal),var(--forest));}
.product-thumb.g2{background:linear-gradient(150deg,var(--gold),var(--gold-dark));}
.product-thumb.g3{background:linear-gradient(150deg,#2b6f8f,var(--forest));}
.product-thumb svg{width:58px;height:58px;color:rgba(255,255,255,0.9);}
.product-badge{position:absolute;top:12px;left:12px;background:rgba(255,255,255,0.95);color:var(--forest);font-size:0.72rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;padding:4px 10px;border-radius:999px;}
.file-type{position:absolute;bottom:12px;right:12px;background:rgba(0,0,0,0.35);color:#fff;font-size:0.72rem;font-weight:600;padding:3px 9px;border-radius:6px;}
.product-body{padding:24px;display:flex;flex-direction:column;flex-grow:1;}
.product-body h3{font-size:1.15rem;margin:0 0 8px;}
.product-body p{font-size:0.93rem;color:var(--ink-soft);margin:0 0 14px;flex-grow:1;}
.product-feat{list-style:none;padding:0;margin:0 0 16px;}
.product-feat li{display:flex;gap:8px;align-items:flex-start;font-size:0.88rem;color:var(--ink-soft);margin-bottom:7px;}
.product-feat svg{width:16px;height:16px;color:var(--teal);flex-shrink:0;margin-top:2px;}
.price-row{display:flex;align-items:baseline;gap:10px;margin:auto 0 16px;}
.price{font-family:var(--display);font-size:1.7rem;font-weight:700;color:var(--forest);}
.price .old{font-family:var(--body);font-size:0.95rem;color:var(--ink-soft);text-decoration:line-through;font-weight:400;}
.buy-btn{width:100%;justify-content:center;}

/* Product picker + detail panel */
.pick-wrap{max-width:560px;margin:0 auto 30px;text-align:center;}
.pick-wrap label{display:block;font-weight:600;color:var(--ink);margin-bottom:10px;font-size:1.02rem;}
.product-picker{width:100%;font-size:1.05rem;font-family:var(--body);padding:15px 18px;border:1px solid var(--line-strong);border-radius:12px;background:#fff;color:var(--ink);cursor:pointer;box-shadow:var(--shadow-sm);}
.product-picker:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(21,122,110,.14);}
.product-detail{display:grid;grid-template-columns:0.82fr 1.18fr;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-md);overflow:hidden;max-width:920px;margin:0 auto;}
@media (max-width:760px){.product-detail{grid-template-columns:1fr;}}
.pd-media{position:relative;min-height:300px;display:flex;align-items:center;justify-content:center;background:linear-gradient(150deg,var(--teal),var(--forest));}
.pd-media.g2{background:linear-gradient(150deg,var(--gold),var(--gold-dark));}
.pd-media.g3{background:linear-gradient(150deg,#2b6f8f,var(--forest));}
.pd-media svg{width:104px;height:104px;color:rgba(255,255,255,.92);}
.pd-body{padding:34px 38px;display:flex;flex-direction:column;}
.pd-body h2{font-size:1.55rem;margin:0 0 12px;}
.pd-desc{color:var(--ink-soft);font-size:1.03rem;margin:0 0 16px;}
.pd-body .product-feat{margin:0 0 18px;}
.pd-body .price-row{margin:auto 0 16px;}
.secure-line{display:flex;align-items:center;justify-content:center;gap:6px;font-size:0.78rem;color:var(--ink-soft);margin-top:10px;}
.secure-line svg{width:14px;height:14px;color:var(--teal);}
.pay-badges{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:center;margin-top:14px;}
.pay-badges span{font-size:0.8rem;color:var(--ink-soft);border:1px solid var(--line);border-radius:8px;padding:5px 12px;background:#fff;}

/* ---------- Legal pages ---------- */
.legal{max-width:820px;margin:0 auto;}
.legal h2{font-size:1.4rem;margin:38px 0 12px;color:var(--forest);}
.legal h2:first-child{margin-top:0;}
.legal p,.legal li{color:var(--ink-soft);font-size:1.02rem;}
.legal ul{padding-left:22px;}
.legal li{margin-bottom:8px;}
.legal .updated{font-size:0.9rem;color:var(--ink-soft);font-style:italic;margin-bottom:30px;}

/* ---------- FAQ ---------- */
.faq{max-width:820px;margin:0 auto;}
.faq details{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-sm);padding:4px 22px;margin-bottom:14px;box-shadow:var(--shadow-sm);}
.faq summary{cursor:pointer;font-family:var(--display);font-weight:600;font-size:1.04rem;padding:16px 0;list-style:none;display:flex;justify-content:space-between;align-items:center;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";font-size:1.5rem;color:var(--teal);font-weight:400;}
.faq details[open] summary::after{content:"–";}
.faq details p{margin:0 0 18px;color:var(--ink-soft);}

/* ---------- Footer ---------- */
footer{background:var(--forest);color:rgba(255,255,255,0.75);padding:56px 0 30px;}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:34px;margin-bottom:38px;}
@media (max-width:820px){.footer-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:520px){.footer-grid{grid-template-columns:1fr;}}
footer .brand{color:#fff;margin-bottom:12px;}
footer .brand span{color:var(--gold-soft);}
.foot-about{font-size:0.92rem;max-width:300px;}
.foot-tagline{color:var(--gold-soft);font-style:italic;font-size:0.9rem;margin-top:14px;}
.footer-grid h3{font-family:var(--display);font-size:0.82rem;text-transform:uppercase;letter-spacing:0.06em;margin:0 0 16px;color:#fff;}
.footer-grid a{display:block;margin-bottom:10px;font-size:0.92rem;color:rgba(255,255,255,0.72);transition:color .15s ease;}
.footer-grid a:hover{color:var(--gold-soft);}
.fine{border-top:1px solid rgba(255,255,255,0.14);padding-top:22px;font-size:0.85rem;color:rgba(255,255,255,0.6);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;}
.fine a:hover{color:var(--gold-soft);}

/* ===== Product store grid (Idea 1 + problem finder) ===== */
.probe{max-width:860px;margin:0 auto 30px;text-align:center;background:var(--bg-soft);border:1px solid var(--line);border-radius:18px;padding:22px 20px 18px;}
.probe b{font-family:var(--display);font-size:1.06rem;color:var(--ink);display:block;margin-bottom:12px;}
.probe-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;}
.probe-chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 15px;font-size:.88rem;color:var(--ink);cursor:pointer;font-family:inherit;transition:all .15s ease;}
.probe-chip:hover{border-color:var(--teal);color:var(--teal);transform:translateY(-1px);}
.cat-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:0 0 26px;}
.cat-chip{border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:8px 18px;font-size:.9rem;font-weight:600;color:var(--ink-soft);cursor:pointer;font-family:inherit;transition:all .15s ease;}
.cat-chip:hover{border-color:var(--teal);color:var(--teal);}
.cat-chip.on{background:var(--forest);border-color:var(--forest);color:#fff;}
.store-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-bottom:34px;}
@media (max-width:960px){.store-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:620px){.store-grid{grid-template-columns:1fr;}}
.pcard{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);transition:transform .18s ease,box-shadow .18s ease;}
.pcard:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);}
.pcard-media{position:relative;height:110px;display:flex;align-items:center;justify-content:center;background:linear-gradient(150deg,var(--teal),var(--forest));}
.pcard-media.g2{background:linear-gradient(150deg,var(--gold),var(--gold-dark));}
.pcard-media.g3{background:linear-gradient(150deg,#2b6f8f,var(--forest));}
.pcard-media .ic{font-size:2.6rem;line-height:1;filter:drop-shadow(0 3px 6px rgba(0,0,0,.25));}
.pcard-badge{position:absolute;top:10px;left:10px;background:var(--gold);color:#3a2a05;font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:4px 10px;}
.pcard-fmt{position:absolute;bottom:10px;right:12px;background:rgba(0,0,0,.28);color:#fff;font-size:.68rem;font-weight:700;border-radius:6px;padding:3px 8px;letter-spacing:.05em;}
.pcard-cat{font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--teal);margin:16px 18px 4px;}
.pcard h3{font-family:var(--display);font-size:1.08rem;margin:0 18px 6px;color:var(--ink);}
.pcard-desc{font-size:.88rem;color:var(--ink-soft);margin:0 18px 10px;line-height:1.5;}
.pcard-feats{list-style:none;margin:0 18px 12px;padding:0;}
.pcard-feats li{font-size:.82rem;color:var(--ink-soft);display:flex;gap:7px;align-items:flex-start;margin-bottom:5px;}
.pcard-feats svg{width:14px;height:14px;color:var(--teal);flex-shrink:0;margin-top:2px;}
.pcard-foot{margin-top:auto;border-top:1px solid var(--line);padding:14px 18px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px;}
.pcard-price{line-height:1.15;}
.pcard-price .from{display:block;font-size:.68rem;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.05em;}
.pcard-price .amt{font-family:var(--display);font-weight:800;font-size:1.22rem;color:var(--ink);}
.pcard-price .old{font-size:.8rem;color:#a0a8a3;text-decoration:line-through;margin-left:6px;}
.pcard-buy{background:var(--forest);color:#fff;border:0;border-radius:10px;padding:10px 18px;font-weight:700;font-size:.9rem;cursor:pointer;font-family:inherit;transition:background .15s ease;}
.pcard-buy:hover{background:var(--teal);}
.pcard-wa{display:block;text-align:center;font-size:.78rem;color:var(--ink-soft);padding:0 18px 14px;text-decoration:underline;}
.pcard-wa:hover{color:var(--teal);}
.pcard.hit{animation:cardpulse 1.6s ease 2;border-color:var(--gold);}
@keyframes cardpulse{0%,100%{box-shadow:var(--shadow-sm);}50%{box-shadow:0 0 0 5px rgba(236,178,76,.35);}}

/* ===== Product full-details modal + card screenshot ===== */
.pcard-media img.shot{width:100%;height:100%;object-fit:cover;object-position:top;display:block;}
.pcard-media{height:150px;}
.pcard-more{display:block;width:calc(100% - 36px);margin:0 18px 12px;background:#fff;border:1.5px solid var(--line);border-radius:10px;padding:9px 0;font-weight:600;font-size:.86rem;color:var(--teal);cursor:pointer;font-family:inherit;transition:all .15s ease;}
.pcard-more:hover{border-color:var(--teal);background:var(--bg-soft);}
.pd-overlay{display:none;position:fixed;inset:0;background:rgba(11,32,28,.55);z-index:1000;align-items:flex-start;justify-content:center;padding:26px 14px;overflow-y:auto;}
.pd-box{background:#fff;border-radius:18px;max-width:760px;width:100%;position:relative;overflow:hidden;margin:auto;}
.pd-close{position:absolute;top:12px;right:14px;background:rgba(0,0,0,.35);color:#fff;border:0;border-radius:999px;width:34px;height:34px;font-size:19px;cursor:pointer;z-index:2;line-height:1;}
.pd-shot{width:100%;display:block;background:linear-gradient(150deg,var(--teal),var(--forest));}
.pd-inner{padding:26px 30px 30px;}
.pd-inner h2{font-family:var(--display);margin:0 0 4px;font-size:1.45rem;color:var(--ink);}
.pd-inner .pd-tag{font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--teal);}
.pd-sec{margin:18px 0 0;}
.pd-sec h4{margin:0 0 7px;font-size:.8rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);display:flex;align-items:center;gap:7px;}
.pd-sec p{margin:0;font-size:.92rem;color:var(--ink-soft);line-height:1.6;}
.pd-io{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;}
@media(max-width:560px){.pd-io{grid-template-columns:1fr;}.pd-io .arrow{transform:rotate(90deg);justify-self:center;}}
.pd-io .io-box{background:var(--bg-soft);border:1px solid var(--line);border-radius:10px;padding:12px 14px;font-size:.84rem;color:var(--ink-soft);line-height:1.55;}
.pd-io .io-box b{display:block;color:var(--ink);font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;}
.pd-io .arrow{font-size:1.4rem;color:var(--teal);font-weight:800;}
.pd-video{position:relative;padding-top:56.25%;border-radius:12px;overflow:hidden;background:#000;}
.pd-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.pd-demo-cta{display:inline-flex;align-items:center;gap:8px;background:#25D366;color:#fff;font-weight:700;font-size:.9rem;border-radius:10px;padding:10px 18px;text-decoration:none;}
.pd-demo-cta:hover{filter:brightness(1.06);}
.pd-plans{display:flex;gap:10px;flex-wrap:wrap;}
.pd-plan{flex:1;min-width:130px;border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;text-align:center;}
.pd-plan.best{border-color:var(--gold);background:#FBF3E2;position:relative;}
.pd-plan.best::after{content:"BEST VALUE";position:absolute;top:-9px;left:50%;transform:translateX(-50%);background:var(--gold);color:#3a2a05;font-size:.6rem;font-weight:800;letter-spacing:.05em;border-radius:999px;padding:2px 9px;}
.pd-plan .pl-name{font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);}
.pd-plan .pl-price{font-family:var(--display);font-weight:800;font-size:1.25rem;color:var(--ink);margin-top:3px;}
.pd-grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
@media(max-width:560px){.pd-grid2{grid-template-columns:1fr;}}
.pd-note{background:var(--bg-soft);border:1px solid var(--line);border-radius:10px;padding:11px 14px;font-size:.84rem;color:var(--ink-soft);line-height:1.55;}
.pd-note b{color:var(--ink);}
.pd-buy-row{margin-top:22px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;}

/* ===== Mobile hardening (no horizontal scroll on phones) ===== */
.split>*,.grid>*,.store-grid>*{min-width:0;}
img,svg,video,iframe{max-width:100%;}
@media (max-width:560px){
  .split{gap:24px;}
  .stats{gap:12px;}
  .stat-box{padding:18px 10px;}
  .stat-box .num{font-size:1.9rem;}
  .page-hero h1{font-size:1.7rem;word-wrap:break-word;}
  .hero h1{word-wrap:break-word;}
  .section-head .title{word-wrap:break-word;}
  .cta-band h2{font-size:1.5rem;}
  .btn-row{flex-wrap:wrap;}
  .fine{flex-direction:column;text-align:center;}
  .pay-badges{flex-wrap:wrap;justify-content:center;}
  .pd-inner{padding:20px 16px 24px;}
  .pd-buy-row .btn{width:100%;justify-content:center;}
  .probe{padding:16px 12px 14px;}
  .timeline{grid-template-columns:1fr;}
}

/* Clean product cards: 2-line description + popup feature list */
.pcard-desc.clamp2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.pd-feats{list-style:none;margin:0;padding:0;}
.pd-feats li{position:relative;padding-left:24px;margin-bottom:7px;font-size:.92rem;color:var(--ink-soft);line-height:1.5;}
.pd-feats li::before{content:"✓";position:absolute;left:0;color:var(--teal);font-weight:800;}
