/* ==========================================================
   Synergy Solutions — Frontend Stylesheet
   ========================================================== */
:root{
  --navy:#0f172a;
  --navy-2:#111c34;
  --blue:#2563eb;
  --blue-light:#3b82f6;
  --cyan:#22d3ee;
  --green:#10b981;
  --green-light:#d1fae5;
  --green-dark:#047857;
  --gray-50:#f8fafc;
  --gray-100:#f1f5f9;
  --gray-200:#e2e8f0;
  --gray-400:#94a3b8;
  --gray-500:#64748b;
  --gray-700:#334155;
  --radius:14px;
  --shadow:0 10px 30px rgba(15,23,42,.08);
  --container:1180px;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:"Inter","Segoe UI",Arial,sans-serif;
  color:var(--navy);
  background:#fff;
  line-height:1.55;
}
img{max-width:100%;display:block;}
a{text-decoration:none;color:inherit;}
ul{list-style:none;margin:0;padding:0;}
button{font-family:inherit;cursor:pointer;}

.container{max-width:var(--container);margin:0 auto;padding:0 24px;}
.accent{font-style:italic;font-family:Georgia,'Times New Roman',serif;color:var(--blue);}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:13px 24px;border-radius:10px;font-weight:600;font-size:15px;
  border:1px solid transparent;transition:.2s;white-space:nowrap;
}
.btn-primary{background:var(--navy);color:#fff;}
.btn-primary:hover{background:#000;}
.btn-outline{background:#fff;border-color:var(--gray-200);color:var(--navy);}
.btn-outline:hover{border-color:var(--navy);}
.btn-blue{background:var(--blue);color:#fff;}
.btn-blue:hover{background:#1d4ed8;}
.btn-green{background:var(--green);color:#fff;}
.btn-green:hover{background:var(--green-dark);}
.btn-block{width:100%;justify-content:center;}
.btn-sm{padding:8px 14px;font-size:13px;}

/* ---------- Navbar ---------- */
.navbar{
  position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--gray-100);
}
.navbar-inner{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;max-width:var(--container);margin:0 auto;}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:19px;}
.brand img{width:34px;height:34px;}
.nav-links{display:flex;gap:30px;align-items:center;}
.nav-links a{font-weight:500;font-size:15px;color:var(--navy);}
.nav-links a:hover{color:var(--blue);}
.nav-right{display:flex;align-items:center;gap:10px;}
.icon-btn{
  width:38px;height:38px;border-radius:50%;border:1px solid var(--gray-200);
  display:flex;align-items:center;justify-content:center;background:#fff;font-size:13px;font-weight:600;color:var(--gray-700);
}
.nav-toggle{display:none;background:none;border:none;font-size:24px;}

@media(max-width:900px){
  .nav-links{position:absolute;top:70px;left:0;right:0;background:#fff;flex-direction:column;
    padding:20px 24px;gap:18px;border-bottom:1px solid var(--gray-100);display:none;}
  .nav-links.open{display:flex;}
  .nav-toggle{display:block;}
}

/* ---------- Hero ---------- */
.hero{padding:70px 0 40px;background:linear-gradient(180deg,#fff 0%,#f6fbff 100%);}
.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:50px;align-items:center;}
.badge{
  display:inline-flex;align-items:center;gap:6px;background:var(--gray-100);
  padding:7px 14px;border-radius:20px;font-size:12px;font-weight:700;letter-spacing:.04em;
  color:var(--gray-700);margin-bottom:18px;
}
.hero h1{font-size:48px;line-height:1.12;font-weight:800;margin:0 0 20px;letter-spacing:-.02em;}
.hero p.lead{font-size:17px;color:var(--gray-500);max-width:520px;margin-bottom:28px;}
.hero-cta{display:flex;gap:14px;margin-bottom:22px;flex-wrap:wrap;}
.hero-trust{display:flex;gap:22px;flex-wrap:wrap;font-size:13px;color:var(--gray-500);font-weight:600;}
.hero-trust span{display:inline-flex;align-items:center;gap:6px;}

.hero-visual{position:relative;}
.hero-card{
  background:linear-gradient(160deg,#eafaf0,#eef6ff);
  border-radius:22px;padding:20px;box-shadow:var(--shadow);position:relative;overflow:hidden;
}
.hero-card .mock-dark{
  background:var(--navy);border-radius:14px;padding:16px;color:#fff;
}
.hero-card .mock-bars{display:flex;align-items:flex-end;gap:6px;height:70px;margin-top:10px;}
.hero-card .mock-bars span{flex:1;background:linear-gradient(180deg,var(--cyan),var(--blue));border-radius:3px;}
.float-card{
  position:absolute;background:#fff;border-radius:12px;padding:12px 16px;box-shadow:var(--shadow);font-size:12px;
}
.float-card.sales{top:-10px;left:-10px;}
.float-card.gst{bottom:20px;right:-10px;max-width:200px;}
.float-card .label{color:var(--gray-500);font-weight:700;letter-spacing:.03em;font-size:10px;text-transform:uppercase;}
.float-card .value{font-size:20px;font-weight:800;margin:2px 0;}
.float-card .up{color:var(--green-dark);font-weight:700;font-size:12px;}

/* ---------- Stats bar ---------- */
.stats-bar{padding:50px 0;border-bottom:1px solid var(--gray-100);}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:left;}
.stats-grid .num{font-size:34px;font-weight:800;}
.stats-grid .label{color:var(--gray-500);font-size:13px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;}

/* ---------- Trusted-by ---------- */
.trusted{padding:34px 0;overflow:hidden;}
.trusted .tag{color:var(--gray-400);font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin-bottom:18px;}
.trusted-row{display:flex;gap:44px;flex-wrap:wrap;color:var(--gray-400);font-weight:700;font-size:18px;}

/* ---------- Section heading ---------- */
.section{padding:80px 0;}
.section.alt{background:var(--gray-50);}
.eyebrow{color:var(--blue);font-weight:700;font-size:13px;letter-spacing:.05em;text-transform:uppercase;margin-bottom:10px;}
.section h2{font-size:34px;font-weight:800;letter-spacing:-.01em;margin:0 0 12px;max-width:640px;}
.section .desc{color:var(--gray-500);font-size:16px;max-width:520px;}
.section-head{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;margin-bottom:44px;}

/* ---------- Products / Industries grid ---------- */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.card{
  background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius);padding:26px;transition:.2s;
}
.card:hover{box-shadow:var(--shadow);transform:translateY(-2px);}
.card .tag-pill{
  display:inline-block;background:var(--gray-100);color:var(--gray-700);font-size:11px;font-weight:700;
  padding:4px 10px;border-radius:20px;letter-spacing:.04em;text-transform:uppercase;margin-bottom:12px;
}
.card h3{margin:0 0 8px;font-size:18px;}
.card p{margin:0;color:var(--gray-500);font-size:14px;}
.card-foot{display:flex;justify-content:space-between;align-items:center;margin-top:18px;padding-top:14px;border-top:1px dashed var(--gray-200);font-size:12px;color:var(--gray-500);font-weight:600;}

/* ---------- Feature list (3-col rows) ---------- */
.feature-table{border:1px solid var(--gray-200);border-radius:var(--radius);overflow:hidden;background:#fff;}
.feature-row{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--gray-100);}
.feature-row:last-child{border-bottom:none;}
.feature-item{display:flex;gap:14px;align-items:flex-start;padding:22px;border-right:1px solid var(--gray-100);}
.feature-item:last-child{border-right:none;}
.feature-icon{
  width:40px;height:40px;border-radius:10px;background:var(--green-light);color:var(--green-dark);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:18px;
}
.feature-item h4{margin:0 0 2px;font-size:15px;}
.feature-item span{font-size:12px;color:var(--gray-500);font-weight:600;}

/* ---------- Dashboard preview (dark) ---------- */
.dark-section{background:var(--navy);color:#fff;}
.dark-section .eyebrow{color:var(--cyan);}
.dark-section h2{color:#fff;}
.dark-section .desc{color:#94a3b8;}
.dash-card{
  background:#111c34;border:1px solid #1e293b;border-radius:20px;padding:30px;margin-top:40px;
  display:grid;grid-template-columns:2fr 1fr;gap:24px;
}
.tabs{display:flex;gap:8px;margin-bottom:22px;flex-wrap:wrap;}
.tab{padding:9px 16px;border-radius:8px;font-size:13px;font-weight:600;color:#cbd5e1;background:transparent;border:none;}
.tab.active{background:#fff;color:var(--navy);}
.chart-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px;}
.chart-head .amt{font-size:26px;font-weight:800;}
.chart-head .change{color:#34d399;font-weight:700;font-size:13px;}
.chart-bars{display:flex;align-items:flex-end;gap:10px;height:160px;}
.chart-bars .bar{flex:1;background:linear-gradient(180deg,var(--cyan),var(--blue));border-radius:4px 4px 0 0;}
.chart-bars .m{text-align:center;font-size:11px;color:#94a3b8;margin-top:8px;}
.side-stat{background:#0b1526;border:1px solid #1e293b;border-radius:14px;padding:18px;margin-bottom:16px;}
.side-stat .k{font-size:11px;color:#94a3b8;text-transform:uppercase;font-weight:700;letter-spacing:.04em;margin-bottom:10px;}
.side-stat .n{font-size:22px;font-weight:800;margin-bottom:12px;}
.side-stat .row{display:flex;justify-content:space-between;font-size:13px;color:#cbd5e1;padding:4px 0;}
.gst-box{background:linear-gradient(135deg,var(--blue),#1d4ed8);border-radius:14px;padding:18px;}
.gst-box .k{font-size:11px;text-transform:uppercase;font-weight:700;opacity:.85;margin-bottom:6px;}
.gst-box .n{font-size:17px;font-weight:800;margin-bottom:6px;}
.gst-box p{font-size:12px;opacity:.9;margin:0;}

/* ---------- Why choose us ---------- */
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.why-card .ic{
  width:44px;height:44px;border-radius:10px;background:var(--blue);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:18px;margin-bottom:14px;
}

/* ---------- Pricing ---------- */
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:start;}
.price-card{border:1px solid var(--gray-200);border-radius:18px;padding:30px;background:#fff;position:relative;}
.price-card.popular{border-color:var(--green);box-shadow:0 15px 40px rgba(16,185,129,.15);}
.popular-badge{
  position:absolute;top:-14px;left:24px;background:var(--green);color:#fff;font-size:11px;font-weight:700;
  padding:6px 14px;border-radius:20px;letter-spacing:.03em;
}
.price-card h3{font-size:20px;margin:6px 0 4px;}
.price-card .tagline{color:var(--gray-500);font-size:13px;margin-bottom:18px;}
.price-card .amount{font-size:36px;font-weight:800;margin-bottom:4px;}
.price-card .amount small{font-size:14px;font-weight:600;color:var(--gray-500);}
.price-card .btn{margin:18px 0 20px;}
.plan-feature{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--gray-700);padding:6px 0;}
.plan-feature svg{flex-shrink:0;margin-top:3px;color:var(--green-dark);}

/* ---------- FAQ ---------- */
.faq-list{max-width:800px;}
.faq-item{border-bottom:1px solid var(--gray-200);}
.faq-q{
  width:100%;background:none;border:none;text-align:left;padding:20px 4px;font-size:16px;font-weight:600;
  display:flex;justify-content:space-between;align-items:center;color:var(--navy);
}
.faq-a{max-height:0;overflow:hidden;transition:max-height .25s ease;color:var(--gray-500);font-size:14px;}
.faq-a p{padding:0 4px 18px;margin:0;}
.faq-item.open .faq-a{max-height:200px;}
.faq-item.open .faq-q .chev{transform:rotate(180deg);}
.chev{transition:.2s;}

/* ---------- Testimonials ---------- */
.testi-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;}
.testi-card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius);padding:24px;}
.testi-head{display:flex;gap:12px;align-items:center;margin-bottom:14px;}
.testi-head img{width:44px;height:44px;border-radius:50%;object-fit:cover;}
.testi-head .n{font-weight:700;font-size:14px;}
.testi-head .b{font-size:12px;color:var(--gray-500);}
.testi-card p{font-size:14px;color:var(--gray-700);margin:0;}

/* ---------- Contact ---------- */
.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:50px;}
.contact-methods{display:flex;flex-direction:column;gap:14px;margin-top:26px;}
.contact-method{
  display:flex;gap:14px;align-items:center;border:1px solid var(--gray-200);border-radius:12px;padding:16px;
}
.contact-method .ic{
  width:42px;height:42px;border-radius:10px;background:#eef2ff;color:var(--blue);
  display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;
}
.contact-method .k{font-size:11px;text-transform:uppercase;color:var(--gray-500);font-weight:700;letter-spacing:.04em;}
.contact-method .v{font-weight:700;font-size:15px;}
.form-card{border:1px solid var(--gray-200);border-radius:18px;padding:28px;background:#fff;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}
.field label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--gray-500);margin-bottom:6px;}
.field input,.field select,.field textarea{
  width:100%;padding:12px 14px;border:1px solid var(--gray-200);border-radius:10px;font-size:14px;font-family:inherit;
}
.field textarea{resize:vertical;min-height:90px;}
.form-note{font-size:12px;color:var(--gray-500);margin-top:10px;}
.form-msg{padding:12px 16px;border-radius:10px;font-size:14px;margin-bottom:16px;}
.form-msg.ok{background:var(--green-light);color:var(--green-dark);}
.form-msg.err{background:#fee2e2;color:#b91c1c;}

/* ---------- Footer ---------- */
footer{background:var(--navy);color:#cbd5e1;padding:60px 0 0;position:relative;overflow:hidden;}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1fr;gap:30px;padding-bottom:40px;}
.footer-grid h5{color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:.05em;margin:0 0 16px;}
.footer-grid li{margin-bottom:10px;font-size:14px;}
.footer-grid a:hover{color:#fff;}
.footer-brand p{font-size:14px;color:#94a3b8;margin:14px 0 18px;}
.subscribe-form{display:flex;gap:8px;}
.subscribe-form input{flex:1;padding:11px 14px;border-radius:8px;border:none;font-size:13px;}
.footer-social{display:flex;gap:10px;margin-top:20px;}
.footer-social a{
  width:34px;height:34px;border-radius:50%;border:1px solid #334155;display:flex;align-items:center;justify-content:center;
}
.footer-bottom{
  border-top:1px solid #1e293b;padding:20px 0;display:flex;justify-content:space-between;font-size:13px;color:#64748b;flex-wrap:wrap;gap:10px;
}
.footer-bottom a{margin-left:16px;}
.footer-wordmark{
  font-size:150px;font-weight:800;color:#152238;text-align:left;line-height:1;margin:20px 0 -40px;letter-spacing:-4px;
  user-select:none;
}

/* ---------- Legal pages (Privacy / Terms) ---------- */
.legal-content{padding-bottom:60px;}
.legal-content h2{font-size:30px;font-weight:800;margin:0 0 6px;}
.legal-content h3{font-size:18px;font-weight:700;margin:28px 0 8px;}
.legal-content p{color:var(--gray-700);font-size:15px;line-height:1.7;margin:0 0 14px;}

/* ---------- Responsive ---------- */
@media(max-width:960px){
  .hero-grid,.contact-grid,.dash-card{grid-template-columns:1fr;}
  .stats-grid,.grid-4,.grid-3,.pricing-grid,.testi-grid{grid-template-columns:repeat(2,1fr);}
  .feature-row{grid-template-columns:1fr;}
  .feature-item{border-right:none;border-bottom:1px solid var(--gray-100);}
  .footer-grid{grid-template-columns:repeat(2,1fr);}
  .footer-wordmark{font-size:80px;}
}
@media(max-width:600px){
  .hero h1{font-size:32px;}
  .stats-grid,.grid-4,.grid-3,.pricing-grid,.testi-grid,.form-row{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr;}
}

/* ==========================================================
   DARK MODE
   Toggled by assets/js/main.js adding/removing "dark-mode" on <body>.
   Only light-section components need overrides — the dashboard
   preview section and footer are already dark by design.
   ========================================================== */
body.dark-mode{background:#0b1220;color:#e2e8f0;}

body.dark-mode .navbar{background:#0f172a;border-bottom-color:#1e293b;}
body.dark-mode .brand{color:#e2e8f0;}
body.dark-mode .nav-links a{color:#e2e8f0;}
body.dark-mode .nav-links a:hover{color:var(--cyan);}
body.dark-mode .icon-btn{background:#0f172a;border-color:#334155;color:#e2e8f0;}
body.dark-mode .btn-outline{background:transparent;border-color:#334155;color:#e2e8f0;}
body.dark-mode .btn-primary{background:#fff;color:var(--navy);}
body.dark-mode .btn-primary:hover{background:#e2e8f0;}
body.dark-mode .nav-links{background:#0f172a;border-bottom-color:#1e293b;}

body.dark-mode .hero{background:linear-gradient(180deg,#0b1220 0%,#0f172a 100%);}
body.dark-mode .badge{background:#1e293b;color:#cbd5e1;}
body.dark-mode .hero h1{color:#f1f5f9;}
body.dark-mode .hero p.lead{color:#94a3b8;}
body.dark-mode .hero-trust{color:#94a3b8;}
body.dark-mode .hero-card{background:linear-gradient(160deg,#0f2418,#0f1b2e);}
body.dark-mode .float-card{background:#111c34;box-shadow:0 10px 30px rgba(0,0,0,.4);}
body.dark-mode .float-card .value{color:#f1f5f9;}
body.dark-mode .float-card p{color:#94a3b8 !important;}

body.dark-mode .stats-bar{border-bottom-color:#1e293b;}
body.dark-mode .stats-grid .num{color:#f1f5f9;}
body.dark-mode .stats-grid .label{color:#94a3b8;}

body.dark-mode .trusted .tag{color:#64748b;}
body.dark-mode .trusted-row{color:#475569;}

body.dark-mode .section.alt{background:#0f172a;}
body.dark-mode .eyebrow{color:var(--cyan);}
body.dark-mode .section h2{color:#f1f5f9;}
body.dark-mode .section .desc{color:#94a3b8;}

body.dark-mode .card{background:#111c34;border-color:#1e293b;}
body.dark-mode .card h3{color:#f1f5f9;}
body.dark-mode .card p{color:#94a3b8;}
body.dark-mode .card:hover{box-shadow:0 10px 30px rgba(0,0,0,.4);}
body.dark-mode .tag-pill{background:#1e293b;color:#cbd5e1;}
body.dark-mode .card-foot{color:#94a3b8;border-top-color:#1e293b;}

body.dark-mode .feature-table{background:#111c34;border-color:#1e293b;}
body.dark-mode .feature-row{border-bottom-color:#1e293b;}
body.dark-mode .feature-item{border-right-color:#1e293b;}
body.dark-mode .feature-item h4{color:#f1f5f9;}
body.dark-mode .feature-item span{color:#94a3b8;}
body.dark-mode .feature-icon{background:#0f2b20;color:#34d399;}

body.dark-mode .price-card{background:#111c34;border-color:#1e293b;}
body.dark-mode .price-card h3{color:#f1f5f9;}
body.dark-mode .price-card .tagline{color:#94a3b8;}
body.dark-mode .price-card .amount{color:#f1f5f9;}
body.dark-mode .price-card .amount small{color:#94a3b8;}
body.dark-mode .plan-feature{color:#cbd5e1;}
body.dark-mode .price-card.popular{box-shadow:0 15px 40px rgba(16,185,129,.25);}

body.dark-mode .faq-item{border-bottom-color:#1e293b;}
body.dark-mode .faq-q{color:#f1f5f9;}
body.dark-mode .faq-a{color:#94a3b8;}

body.dark-mode .testi-card{background:#111c34;border-color:#1e293b;}
body.dark-mode .testi-head .n{color:#f1f5f9;}
body.dark-mode .testi-head .b{color:#94a3b8;}
body.dark-mode .testi-card p{color:#cbd5e1;}

body.dark-mode .contact-method{background:#111c34;border-color:#1e293b;}
body.dark-mode .contact-method .k{color:#94a3b8;}
body.dark-mode .contact-method .v{color:#f1f5f9;}
body.dark-mode .contact-method .ic{background:#1e293b;}

body.dark-mode .form-card{background:#111c34;border-color:#1e293b;}
body.dark-mode .field label{color:#94a3b8;}
body.dark-mode .field input,
body.dark-mode .field select,
body.dark-mode .field textarea{background:#0b1526;border-color:#334155;color:#e2e8f0;}
body.dark-mode .field input::placeholder,
body.dark-mode .field textarea::placeholder{color:#64748b;}
body.dark-mode .form-note{color:#94a3b8;}

body.dark-mode .legal-content h2,
body.dark-mode .legal-content h3{color:#f1f5f9;}
body.dark-mode .legal-content p,
body.dark-mode .legal-content li{color:#cbd5e1;}
