@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Poppins:wght@500;600;700&display=swap');
/* Vaidam Consultancy theme - navy for trust, logo teal as brand colour, warm orange for actions.
   Loaded after the page stylesheets (from include/header.php), so it overrides the old palette. */
html:root {
  --vc-navy: #0B2545;
  --vc-navy-2: #13315C;
  --vc-teal: #0F8B8D;
  --vc-teal-dark: #0B6E70;
  --vc-orange: #E4621B;
  --vc-orange-dark: #C9520F;
  --vc-gold: #F2B233;
  --vc-bg: #F5F8FB;
  --vc-text: #1E293B;
  --vc-muted: #5B6B7F;
  --vc-font-body: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
  --vc-font-head: 'Poppins', 'Inter', system-ui, sans-serif;

  /* map the site's existing variables onto the new palette */
  --main-color: var(--vc-text);
  --primary-color: var(--vc-navy);
  --secondary-color: var(--vc-teal);
  --tertiary-color: var(--vc-teal);
  --text-color: var(--vc-gold);
  --text-info-color: var(--vc-navy);
  --text-info: var(--vc-navy);
  --button-color: var(--vc-orange);
  --secondary: var(--vc-navy);
  --secondary-light: var(--vc-teal);
  --text: var(--vc-text);
}

body {
  color: var(--vc-text);
}

/* Header: always navy so the white logo lettering stays visible */
#navbar.navbar,
.navbar#navbar,
.offcanvas-header {
  background: var(--vc-navy) !important;
  border-bottom: 3px solid var(--vc-orange) !important;
}
#navbar img[alt*="logo" i] {
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, .35));
}
.navLinks > ul > li > a { color: #fff !important; font-weight: 500; }
.navLinks > ul > li > a:hover { color: var(--vc-gold) !important; }

/* Primary call-to-action buttons */
.header-button,
.header-button:hover,
.home-btn-logo,
.get-instant-form button[type="submit"],
.get-instant-form .btn,
form button[type="submit"].btn,
.crt-blog-btn {
  background: var(--vc-orange) !important;
  border-color: var(--vc-orange) !important;
  color: #fff !important;
  font-weight: 700 !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 12px rgba(228, 98, 27, .28);
  transition: background .15s ease, transform .15s ease;
}
.header-button:hover,
.get-instant-form button[type="submit"]:hover,
form button[type="submit"].btn:hover,
.crt-blog-btn:hover {
  background: var(--vc-orange-dark) !important;
  transform: translateY(-1px);
}

/* Enquiry forms: clean white card with a teal top edge */
.get-instant-form {
  background: #fff !important;
  border-top: 4px solid var(--vc-teal) !important;
  box-shadow: 0 10px 30px rgba(11, 37, 69, .12) !important;
  border-radius: 12px !important;
}
.get-instant-form .form-control:focus,
form .form-control:focus {
  border-color: var(--vc-teal) !important;
  box-shadow: 0 0 0 .2rem rgba(15, 139, 141, .2) !important;
}

/* Headings and links */
h1, h2, h3 { color: inherit; }
main h2, section h2 { color: var(--vc-navy); }
a { color: var(--vc-teal-dark); }
a:hover { color: var(--vc-orange-dark); }
.navbar a, .footer a, .vc-sticky a { color: inherit; }

/* Footer */
.footer, footer {
  background: var(--vc-navy) !important;
  color: #fff !important;
}
.footer a { color: #fff !important; }
.footer a:hover { color: var(--vc-gold) !important; }
.footer .bar { background: var(--vc-orange) !important; }

/* Accent helpers used by the new landing-page sections */
.vc-section { padding: 56px 0; }
.vc-section-alt { background: var(--vc-bg); }
.vc-eyebrow { color: var(--vc-teal); font-weight: 700; letter-spacing: .06em; text-transform: uppercase; font-size: .8rem; }
.vc-card { background: #fff; border-radius: 12px; padding: 22px; height: 100%; box-shadow: 0 6px 20px rgba(11, 37, 69, .08); border-top: 3px solid var(--vc-teal); }
.vc-step-no { width: 42px; height: 42px; border-radius: 50%; background: var(--vc-orange); color: #fff; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; margin-bottom: 10px; }
.vc-price { color: var(--vc-orange-dark); font-size: 1.9rem; font-weight: 800; }
.vc-check { list-style: none; padding-left: 0; }
.vc-check li { padding-left: 28px; position: relative; margin-bottom: 8px; }
.vc-check li::before { content: "\2713"; position: absolute; left: 0; color: var(--vc-teal); font-weight: 800; }
.vc-cta-band { background: linear-gradient(120deg, var(--vc-navy) 0%, var(--vc-navy-2) 60%, var(--vc-teal-dark) 100%); color: #fff; border-radius: 14px; padding: 34px; }
.vc-cta-band h2 { color: #fff !important; }
.vc-btn { display: inline-block; padding: 12px 22px; border-radius: 8px; font-weight: 700; text-decoration: none !important; }
.vc-btn-orange { background: var(--vc-orange); color: #fff !important; }
.vc-btn-orange:hover { background: var(--vc-orange-dark); }
.vc-btn-outline { border: 2px solid #fff; color: #fff !important; }
.vc-faq .accordion-button:not(.collapsed) { background: rgba(15, 139, 141, .08); color: var(--vc-navy); }
.vc-faq .accordion-button:focus { box-shadow: 0 0 0 .2rem rgba(15, 139, 141, .2); }

/* Readable text inside dark bands */
.vc-cta-band, .vc-cta-band p, .vc-cta-band li, .vc-cta-band .vc-check li { color: #fff !important; }
.vc-cta-band .vc-check li::before { color: var(--vc-gold); }

/* Services mega menu */
.services { background: #fff !important; max-height: 78vh !important; border-top: 3px solid var(--vc-orange); }
.vc-mega .servicesList-title { color: var(--vc-navy); font-weight: 700; font-size: .95rem; text-transform: uppercase; letter-spacing: .04em;
  border-bottom: 2px solid var(--vc-teal); padding-bottom: 6px; margin: 14px 0 8px; }
.vc-mega-list { list-style: none; padding: 0; margin: 0 0 6px; }
.vc-mega-list li a { display: block; padding: 4px 0; color: var(--vc-text) !important; font-size: .92rem; text-decoration: none; }
.vc-mega-list li a:hover { color: var(--vc-orange-dark) !important; padding-left: 4px; transition: padding .12s ease; }

/* ---------- Typography: one body font, one heading font, everywhere ---------- */
html body { font-family: var(--vc-font-body) !important; color: var(--vc-text); line-height: 1.6; }
body :where(*:not(i, svg, svg *, .fa, .fas, .far, .fab, .fal, .fad, .fa-solid, .fa-regular, .fa-brands, [class*=" fa-"], [class^="fa-"], .material-icons)) {
  font-family: var(--vc-font-body) !important;
}
body :where(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, .home-title, .servicesList-title, .card-title, .modal-title) {
  font-family: var(--vc-font-head) !important;
  letter-spacing: -0.01em;
}
/* Headings on light backgrounds use navy; dark sections keep their white text */
body :where(.section-content, .container, main, section, .card-body) :where(h1, h2, h3, h4, h5, h6) { color: var(--vc-navy); }
body :where(.service-header, .vc-cta-band, .footer, footer, .navbar, .home-row, .vc-topbar, .vc-foot, .vc-soft-cta, .offcanvas-header) :where(h1, h2, h3, h4, h5, h6, p, li, span) { color: inherit; }
.text-muted { color: var(--vc-muted) !important; }

/* Bootstrap "primary" blue (#0d6efd) replaced with the heading navy everywhere */
html:root, [data-bs-theme] {
  --bs-primary: #0B2545;
  --bs-primary-rgb: 11, 37, 69;
  --bs-primary-text-emphasis: #0B2545;
  --bs-primary-border-subtle: #9fb0c4;
  --bs-link-color: #0B6E70;
  --bs-link-color-rgb: 11, 110, 112;
  --bs-link-hover-color: #C9520F;
  --bs-link-hover-color-rgb: 201, 82, 15;
}
.text-primary { color: var(--vc-navy) !important; }
.border-primary { border-color: rgba(11, 37, 69, .35) !important; }
.bg-primary { background-color: var(--vc-navy) !important; }
.btn-primary, .btn-primary:focus { background-color: var(--vc-navy) !important; border-color: var(--vc-navy) !important; color: #fff !important; }
.btn-primary:hover, .btn-primary:active { background-color: var(--vc-navy-2) !important; border-color: var(--vc-navy-2) !important; }
.btn-outline-primary { color: var(--vc-navy) !important; border-color: var(--vc-navy) !important; }
.btn-outline-primary:hover { background-color: var(--vc-navy) !important; color: #fff !important; }
.form-control:focus, .form-select:focus { border-color: var(--vc-teal) !important; box-shadow: 0 0 0 .2rem rgba(15, 139, 141, .2) !important; }
.accordion-button:not(.collapsed) { color: var(--vc-navy); background-color: rgba(15, 139, 141, .08); }
.nav-pills .nav-link.active { background-color: var(--vc-navy) !important; }
.page-link { color: var(--vc-navy); }

/* Footer links hover in the same light gold as the header links */
html body .footer .link a:hover,
html body .footer .contact-us .email a:hover,
html body .footer .phone-no a:hover,
html body .footer a:hover { color: var(--vc-gold) !important; }

/* ---------- All small icons in brand gold ---------- */
html:root { --vc-gold-deep: #E0A020; }
/* on light backgrounds a slightly deeper gold keeps icons visible */
body i[class*="fa-"], body i.fa, body i.fas, body i.far, body i.fab, body span.fa { color: var(--vc-gold-deep) !important; }
/* on dark sections the bright gold */
body :is(.service-header, .vc-cta-band, .footer, footer, .vh-hero, .vh-dark, .vp-hero, .vp-dark, .vl-brand, .navbar, .vc-topbar, .vc-foot, .vc-soft-cta, .vb-hero, .tab-list, .testimonial-card, .offcanvas-header) i[class*="fa-"] { color: var(--vc-gold) !important; }
/* icons inside buttons, social circles, inputs and alerts keep their own colour */
body :is(button, .btn, .vh-btn, .vp-btn, .vl-btn, .vc-btn, .header-button, .social-btn, .crt-blog-social, .vp-social a, .vc-sticky a, .wh_floating_btn, .call_floating_btn, .vl-eye, .vl-error, .navbar-toggler, .crossIcon, .vc-quote, .vb-chip, .alert-danger, .text-danger) i[class*="fa-"],
body :is(.vl-input, .vb-search) i[class*="fa-"] { color: inherit !important; }
body .vl-input i.vl-lead, body .vb-search i { color: #5B6B7F !important; }
/* icon tiles: navy background so the gold icon stands out */
.vh-cat-icon, .vp-icon { background: var(--vc-navy) !important; }
.vh-cat-icon i, .vp-icon i { color: var(--vc-gold) !important; }

/* In-depth sections added to service pages */
.vc-mistakes{list-style:none;padding:0;margin:12px 0 0}
.vc-mistakes li{position:relative;padding:12px 14px 12px 44px;margin-bottom:10px;background:#fff7f2;border:1px solid #fde2d2;border-radius:10px;color:var(--vc-text)}
.vc-mistakes li::before{content:"\f071";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;left:15px;top:12px;color:var(--vc-orange)}
.vc-rel{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;border:1px solid #e3e9f0;border-radius:12px;background:#fff;
  color:var(--vc-navy) !important;font-weight:600;text-decoration:none !important;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.vc-rel:hover{border-color:var(--vc-orange);box-shadow:0 0 0 2px var(--vc-orange);transform:translateY(-2px)}
