/* KVB ENTERPRISES — premium editorial pass
   A deliberate visual layer for the existing static site. Preserve semantic markup,
   service URLs, language routes, conversion links and the current build pipeline.
*/
:root {
  --kvb-premium-forest: #10283f;
  --kvb-premium-deep: #0a1b2e;
  --kvb-premium-paper: #f3f5f6;
  --kvb-premium-ink: #172b3d;
  --kvb-premium-muted: #637786;
  --kvb-premium-line: rgba(16, 40, 63, .15);
  --kvb-premium-brass: #cda45b;
}
html { scroll-padding-top: 92px; }
body { background: var(--kvb-premium-paper); color: var(--kvb-premium-ink); }
.topbar { min-height: 82px; background: rgba(248,249,243,.94); border-color: var(--kvb-premium-line); box-shadow: 0 8px 28px rgba(10,27,46,.055); }
.nav { min-height: 82px; }
.brand { color: var(--kvb-premium-deep); }
.brand b { color: #238a86; }
.brand img { filter: drop-shadow(0 7px 12px rgba(10,27,46,.13)); }
.topbar nav a { color: #344d43; font-size: 12px; letter-spacing: .01em; }
.lang, .menu { border-color: var(--kvb-premium-line); color: var(--kvb-premium-forest); background: #fff; }

/* Editorial hero: asymmetric copy, architectural backdrop and dimensional artwork. */
.hero {
  position: relative; isolation: isolate; overflow: hidden;
  min-height: 710px; padding: clamp(88px,10vw,136px) 0 clamp(76px,8vw,108px);
  color: #f7faf5;
  background:
    radial-gradient(ellipse at 82% 23%, rgba(49,157,165,.22), transparent 31%),
    radial-gradient(ellipse at 12% 100%, rgba(205,164,91,.15), transparent 34%),
    linear-gradient(118deg, #0a1b2e 0%, #10283f 58%, #145c62 100%);
}
.hero:before {
  content: ""; position: absolute; z-index: -1; pointer-events: none;
  width: min(58vw,760px); aspect-ratio: 1; right: -13%; top: -48%;
  border: 1px solid rgba(235,245,235,.19); border-radius: 50%;
  box-shadow: 0 0 0 28px rgba(235,245,235,.025), 0 0 0 72px rgba(235,245,235,.022), 0 0 0 128px rgba(235,245,235,.016);
}
.hero:after {
  content: ""; position: absolute; z-index: -1; pointer-events: none;
  width: 420px; height: 420px; left: 33%; bottom: -360px; border-radius: 50%;
  background: rgba(205,164,91,.16); filter: blur(55px);
}
.hero > .hero-illustration {
  position: absolute; z-index: -1; right: max(-3vw, -36px); top: 5%;
  width: min(57vw, 760px); height: auto; opacity: .17;
  filter: saturate(.75) contrast(1.15); pointer-events: none;
  mix-blend-mode: screen;
}
.hero .wrap.hero-grid {
  width: min(1240px, 88%); grid-template-columns: minmax(0,1.16fr) minmax(310px,.7fr);
  gap: clamp(42px,7vw,112px); align-items: center;
}
.hero .hero-copy { position: relative; z-index: 1; max-width: 760px; }
.hero .eyebrow { color: #b8e2df; font-size: 10px; letter-spacing: .19em; margin-bottom: 26px; }
.hero .eyebrow:before { width: 36px; height: 2px; background: var(--kvb-premium-brass); }
.hero h1 {
  max-width: 790px; margin: 0 0 26px; color: #fff;
  font-family: Georgia, "Times New Roman", serif; font-size: clamp(48px,6.1vw,82px);
  font-weight: 500; line-height: .99; letter-spacing: -.055em; text-wrap: balance;
}
.hero h1 .hero-title-main { color: #fff; }
.hero h1 .hero-title-accent {
  display: block; max-width: 680px; margin-top: 18px;
  color: #b8e2df; font-family: Inter, system-ui, sans-serif;
  font-size: clamp(19px,2.2vw,29px); font-weight: 550;
  line-height: 1.25; letter-spacing: -.035em;
}
.hero .lead { max-width: 610px; color: rgba(246,250,246,.76); font-size: clamp(16px,1.45vw,19px); line-height: 1.8; }
.hero .actions { gap: 12px; margin: 32px 0 20px; }
.hero .actions .btn { min-height: 55px; padding: 0 24px; border-radius: 5px; font-size: 13px; letter-spacing: .01em; }
.hero .btn.primary {
  color: #102e25; background: linear-gradient(135deg,#e5d0a2,#c7a15c);
  border-color: transparent; box-shadow: 0 14px 32px rgba(0,0,0,.18);
}
.hero .btn.secondary { color: #f8fbf7; background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.28); }
.hero .btn:hover { transform: translateY(-2px); }
.hero .trust { color: rgba(235,245,237,.63); font-size: 11px; letter-spacing: .02em; }

/* The right rail becomes a floating service index, not another generic card. */
.hero-card {
  position: relative; overflow: visible; padding: 34px;
  border: 1px solid rgba(235,245,235,.25); border-radius: 4px 28px 4px 28px;
  background: linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.045));
  box-shadow: 0 38px 90px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.25);
  backdrop-filter: blur(18px) saturate(135%); -webkit-backdrop-filter: blur(18px) saturate(135%);
  transform: perspective(1200px) rotateY(-4deg) rotateX(2deg);
}
.hero-card:before {
  content: ""; position: absolute; z-index: -1; inset: 13px -13px -13px 13px;
  border: 1px solid rgba(205,164,91,.55); border-radius: 4px 28px 4px 28px;
}
.hero-card:after { background: rgba(205,164,91,.16); }
.hero-card .logo-card { width: 82px; height: 82px; border-radius: 18px; margin-bottom: 20px; box-shadow: 0 10px 28px rgba(0,0,0,.16); }
.hero-card .trust { color: rgba(245,250,246,.76); font-size: 11px; line-height: 1.8; }
.hero-card .quick { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin: 22px 0; }
.hero-card .quick a {
  min-height: 44px; display: flex; align-items: center; padding: 10px 12px;
  border: 1px solid rgba(255,255,255,.17); border-radius: 3px;
  background: rgba(255,255,255,.055); color: #f6faf6; font-size: 11px;
}
.hero-card .quick a:hover { border-color: rgba(205,164,91,.75); background: rgba(205,164,91,.12); }
.hero-card .mini { padding-top: 18px; border-top: 1px solid rgba(255,255,255,.18); }
.hero-card .mini-number { color: #e7d3a7; font-size: clamp(25px,3vw,34px); letter-spacing: -.04em; }

/* Editorial section rhythm and typographic hierarchy. */
.section { padding-block: clamp(76px,8.5vw,116px); }
.section-head { max-width: 790px; margin-bottom: 42px; }
.section-head h2, #about h2, .faq .section-head h2 {
  color: var(--kvb-premium-deep); font-family: Georgia,"Times New Roman",serif;
  font-size: clamp(35px,4.5vw,58px); font-weight: 500;
  line-height: 1.04; letter-spacing: -.045em; text-wrap: balance;
}
.section-head p { max-width: 650px; color: var(--kvb-premium-muted); font-size: 15px; line-height: 1.85; }
#services { background: #f3f5f6; }
#services .services-grid { overflow: visible; }
#services .tiles {
  display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px;
}
#services .tile {
  position: relative; min-height: 224px; display: flex; flex-direction: column;
  align-items: flex-start; justify-content: flex-end; gap: 10px;
  padding: 24px; overflow: hidden; border: 1px solid var(--kvb-premium-line);
  border-radius: 3px 22px 3px 22px; background: #fff; color: var(--kvb-premium-ink);
  box-shadow: 0 12px 30px rgba(10,27,46,.055); text-decoration: none;
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}
#services .tile:before {
  content: ""; position: absolute; width: 130px; height: 130px; right: -48px; top: -48px;
  border: 1px solid rgba(16,40,63,.12); border-radius: 50%;
  box-shadow: 0 0 0 16px rgba(16,40,63,.025),0 0 0 38px rgba(16,40,63,.018);
}
#services .tile:hover { transform: translateY(-6px); border-color: rgba(22,125,131,.4); box-shadow: 0 24px 48px rgba(10,27,46,.12); }
#services .tile-ico { width: 48px; height: 48px; margin-bottom: auto; border-radius: 13px; background: #e5f0f2; color: #147a80; }
#services .tile-ico svg { width: 24px; height: 24px; }
#services .tile b { color: var(--kvb-premium-deep); font-size: 17px; line-height: 1.25; }
#services .tile small { color: var(--kvb-premium-muted); font-size: 11px; letter-spacing: .04em; }
#why-kvb { background: #10283f; color: #fff; }
#why-kvb .section-head h2, #why-kvb .section-head p { color: #f7faf5; }
#why-kvb .section-head p { opacity: .72; }
#why-kvb .glass-card { border: 1px solid rgba(255,255,255,.16); background: linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.04)); box-shadow: 0 20px 48px rgba(0,0,0,.16); }
#why-kvb .glass-card h3 { color: #fff; }
#why-kvb .glass-card p { color: rgba(245,250,246,.7); }
#why-kvb .glass-card strong { color: #e7d3a7; }
#compliance-timeline { background: #e8eff2; }
#compliance-timeline h2 { max-width: 760px; color: var(--kvb-premium-deep); font: 500 clamp(34px,4.4vw,56px)/1.05 Georgia,"Times New Roman",serif; letter-spacing: -.045em; }
#compliance-timeline .step { border: 1px solid var(--kvb-premium-line); border-radius: 3px 18px 3px 18px; background: rgba(255,255,255,.8); box-shadow: 0 12px 28px rgba(10,27,46,.06); }
#compliance-timeline .step > b { border-color: #b98e49; background: #e7d3a7; color: #173d31; }
.proof-strip { background: #fff; }
.proof-chip { border-color: var(--kvb-premium-line); color: #294b5c; }
#business .chips a { text-decoration: none; }
#business .chips span { display: inline-flex; border: 1px solid #d5e2e8; background: #fff; color: #294b5c; }
#business .newbiz { border-radius: 3px 26px 3px 26px; background: linear-gradient(120deg,#0a1b2e,#145c62); box-shadow: 0 24px 60px rgba(10,27,46,.17); }
#business .newbiz .eyebrow { color: #e7d3a7; }
#about { background: #f7f9fa; }
#about .about-grid { gap: clamp(36px,6vw,84px); align-items: center; }
#about h2 { max-width: 540px; }
#about .about-visual { overflow: hidden; border-radius: 3px 24px 3px 24px; box-shadow: 0 22px 52px rgba(10,27,46,.14); }
#about .about-visual img { display: block; width: 100%; aspect-ratio: 16/10; object-fit: cover; }
#about .about-points > div { padding: 24px; border: 1px solid var(--kvb-premium-line); border-radius: 3px 16px 3px 16px; background: #fff; }
#locations { background: #e8eff2; }
#locations .location-card { border: 1px solid var(--kvb-premium-line); border-radius: 3px 16px 3px 16px; background: rgba(255,255,255,.82); }
#tools { background: #f7f9fa; }
#tools .tool-grid > div { padding: 24px; border: 1px solid var(--kvb-premium-line); border-radius: 3px 16px 3px 16px; background: #fff; }
.faq { background: #f3f5f6; }
.faq-list details { border: 1px solid var(--kvb-premium-line); border-radius: 3px 14px 3px 14px; background: #fff; }
#contact.contact { background: linear-gradient(120deg,#0a1b2e,#10283f 62%,#145c62); }
#contact .contact-box { border-radius: 3px 24px 3px 24px; box-shadow: 0 26px 64px rgba(0,0,0,.2); }

/* Responsive composition: retain the hierarchy without shrinking the editorial type. */
@media (max-width: 980px) {
  .hero { min-height: 0; padding: 78px 0 70px; }
  .hero .wrap.hero-grid { width: min(100% - 48px,760px); grid-template-columns: 1fr; gap: 38px; }
  .hero .hero-copy { max-width: 720px; }
  .hero-card { max-width: 620px; width: 100%; transform: none; }
  .hero > .hero-illustration { width: 80vw; right: -18vw; top: 2%; opacity: .12; }
  #services .tiles { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 600px) {
  .topbar,.nav { min-height: 68px; }
  .hero { padding: 58px 0 52px; }
  .hero .wrap.hero-grid { width: calc(100% - 36px); gap: 30px; }
  .hero .eyebrow { margin-bottom: 18px; font-size: 9px; letter-spacing: .14em; }
  .hero h1 { font-size: clamp(43px,11.4vw,59px); line-height: 1; letter-spacing: -.055em; }
  .hero h1 .hero-title-accent { margin-top: 13px; font-size: clamp(18px,5vw,23px); line-height: 1.3; }
  .hero .lead { font-size: 15px; line-height: 1.72; }
  .hero .actions { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 24px; }
  .hero .actions .btn { min-height: 49px; padding: 0 10px; font-size: 11px; }
  .hero .actions .hero-services-cta { grid-column: 1/-1; }
  .hero-card { padding: 22px; border-radius: 3px 20px 3px 20px; }
  .hero-card:before { inset: 8px -8px -8px 8px; }
  .hero-card .quick { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 6px; }
  .hero-card .quick a { min-height: 38px; padding: 7px 3px; justify-content: center; text-align: center; font-size: 9px; }
  .section { padding-block: 60px; }
  .section-head { margin-bottom: 28px; }
  .section-head h2,#about h2,.faq .section-head h2 { font-size: clamp(34px,9vw,43px); }
  #services .tiles { gap: 9px; }
  #services .tile { min-height: 178px; padding: 16px; gap: 8px; }
  #services .tile b { font-size: 14px; }
  #services .tile small { font-size: 10px; }
  #services .tile-ico { width: 40px; height: 40px; }
  #services .tile-ico svg { width: 21px; height: 21px; }
  #why-kvb .glass-grid { grid-template-columns: 1fr; }
  #about .about-grid { gap: 25px; }
  #contact .contact-grid { grid-template-columns: 1fr; gap: 26px; }
}
@media (max-width: 360px) {
  .hero .actions { grid-template-columns: 1fr; }
  .hero .actions .hero-services-cta { grid-column: auto; }
  #services .tiles { grid-template-columns: 1fr; }
  #services .tile { min-height: 150px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .hero .btn,#services .tile { transition: none; }
  .hero .btn:hover,#services .tile:hover { transform: none; }
}
@media (prefers-color-scheme: dark) {
  :root { color-scheme: dark; }
  body { background: #101a17; color: #edf5ef; }
  .topbar { background: rgba(13,29,24,.97); border-color: #30443a; }
  .brand,.topbar nav a { color: #edf5ef; }
  #services,#about,#tools,.faq { background: #101a17; }
  .section-head h2,#about h2,.faq .section-head h2,#compliance-timeline h2 { color: #edf5ef; }
  .section-head p { color: #b8c8bf; }
  #services .tile,#about .about-points > div,#tools .tool-grid > div,.faq-list details { background: #182820; border-color: #30443a; }
  #services .tile b,#tools .tool-grid h3,.faq-list summary { color: #edf5ef; }
  #services .tile small,#tools .tool-grid p { color: #b8c8bf; }
  #compliance-timeline,#locations { background: #14221c; }
  #compliance-timeline .step,#locations .location-card { background: #182820; border-color: #30443a; }
  #business .chips span { background: #182820; border-color: #30443a; color: #d9eeee; }
  .proof-strip { background: #14221c; }
  .proof-chip { background: #182820; color: #d9eeee; border-color: #30443a; }
}


/* Final visual-review fixes: keep process content visible and protect mobile controls. */
#compliance-timeline { padding-block: clamp(64px, 7vw, 88px); }
#compliance-timeline .timeline-steps { margin-top: 30px; align-items: stretch; }
#compliance-timeline .timeline-steps > .step {
  display:flex; flex-direction:column; justify-content:flex-start;
  min-height:190px; height:auto; padding:22px 20px;
  opacity:1 !important; visibility:visible !important; transform:none !important;
}
#compliance-timeline .timeline-steps > .step > b {
  position:static !important; flex:0 0 42px; width:42px; height:42px; margin:0 0 16px;
}
#compliance-timeline .timeline-steps h3,
#compliance-timeline .timeline-steps p {
  position:static !important; display:block; width:100%; max-width:none;
  opacity:1 !important; visibility:visible !important; transform:none !important;
}
#compliance-timeline .how-cta { margin-top:26px; }
@media (max-width:960px) {
  #compliance-timeline .timeline-steps { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
  #compliance-timeline .timeline-steps > .step { min-height:0; }
}
@media (max-width:700px) {
  body { padding-bottom:calc(6.25rem + env(safe-area-inset-bottom,0px)); }
  .mbar { min-height:60px; padding-bottom:env(safe-area-inset-bottom,0px); z-index:1000; }
  .mbar a { min-height:60px; }
  .floating-wa { display:none !important; }
}
@media (max-width:600px) {
  #compliance-timeline .timeline-steps { grid-template-columns:minmax(0,1fr); gap:12px; }
  #compliance-timeline .timeline-steps > .step { padding:20px; }
}


/* Signature redesign — editorial hierarchy, image-led services and conversion flow. */
:root {
  --kvb-premium-teal: #258b8b;
  --kvb-premium-teal-dark: #176b70;
  --kvb-premium-gold: #cda45b;
  --kvb-premium-surface: #ffffff;
  --kvb-premium-soft: #eaf0f2;
  --kvb-premium-radius: 4px 22px 4px 22px;
}
body { font-family: Inter, "Aptos", "Segoe UI", system-ui, sans-serif; }
.topbar {
  background: rgba(249,250,249,.96);
  border-bottom: 1px solid rgba(16,40,63,.12);
  box-shadow: 0 7px 26px rgba(10,27,46,.07);
  backdrop-filter: blur(18px);
}
.brand { gap: 12px; letter-spacing: .015em; }
.brand img { width: 52px; height: 52px; }
.brand span { gap: 3px; }
.brand b { color: var(--kvb-premium-teal-dark); }
.brand small { font-size: 9px; letter-spacing: .14em; text-transform: uppercase; }
.topbar nav { gap: clamp(12px,1.45vw,22px); }
.topbar nav a {
  position: relative; padding: 10px 0; color: #34495a;
  font-size: 12px; font-weight: 700; letter-spacing: .015em;
}
.topbar nav a:after {
  content: ""; position: absolute; left: 0; right: 100%; bottom: 3px;
  height: 2px; background: var(--kvb-premium-gold);
  transition: right .22s ease;
}
.topbar nav a:hover:after, .topbar nav a:focus-visible:after { right: 0; }
.lang, .menu {
  min-height: 40px; border-radius: 3px 12px 3px 12px;
  font-size: 12px; font-weight: 800;
}
.hero {
  min-height: 650px;
  padding: clamp(76px,8vw,108px) 0 clamp(68px,7vw,92px);
  background:
    linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px, transparent 1px),
    radial-gradient(ellipse at 82% 20%, rgba(37,139,139,.28), transparent 34%),
    radial-gradient(ellipse at 12% 96%, rgba(205,164,91,.16), transparent 34%),
    linear-gradient(118deg,#08192b 0%,#10283f 57%,#145c62 100%);
  background-size: 54px 54px,54px 54px,auto,auto,auto;
}
.hero .wrap.hero-grid {
  width: min(1200px, calc(100% - 64px));
  grid-template-columns: minmax(0,1.12fr) minmax(300px,.78fr);
  gap: clamp(34px,5.4vw,82px);
}
.hero .eyebrow {
  display: inline-flex; align-items: center; gap: 12px;
  margin-bottom: 22px; padding: 9px 13px;
  border: 1px solid rgba(184,226,223,.24);
  border-radius: 2px 12px 2px 12px;
  background: rgba(255,255,255,.055);
  color: #c3e7e3; font-size: 10px; letter-spacing: .16em;
  text-transform: uppercase;
}
.hero .eyebrow:before { width: 22px; height: 2px; }
.hero h1 {
  max-width: 730px; margin-bottom: 22px;
  font-size: clamp(49px,5.5vw,76px);
  line-height: .99; letter-spacing: -.058em;
}
.hero h1 .hero-title-accent {
  max-width: 620px; margin-top: 15px;
  font-size: clamp(19px,2vw,27px);
  line-height: 1.32; letter-spacing: -.025em;
}
.hero .lead { max-width: 570px; font-size: 16px; line-height: 1.78; }
.hero .actions { gap: 10px; margin: 28px 0 17px; }
.hero .actions .btn {
  min-height: 52px; padding: 0 20px;
  border-radius: 3px 14px 3px 14px;
  font-size: 12px; font-weight: 800;
}
.hero .btn.primary {
  color: #0a1b2e;
  background: linear-gradient(135deg,#f0d9a8,#cda45b);
  box-shadow: 0 12px 28px rgba(0,0,0,.2);
}
.hero .btn.secondary { background: rgba(255,255,255,.055); }
.hero .trust { font-size: 11px; line-height: 1.8; }
.hero-card {
  padding: 32px; border-radius: 3px 28px 3px 28px;
  background: linear-gradient(150deg,rgba(255,255,255,.17),rgba(255,255,255,.055));
  box-shadow: 0 34px 76px rgba(0,0,0,.27), inset 0 1px 0 rgba(255,255,255,.28);
  transform: perspective(1400px) rotateY(-2.5deg) rotateX(1deg);
}
.hero-card:before { inset: 12px -12px -12px 12px; border-radius: 3px 28px 3px 28px; }
.hero-card .logo-card {
  width: 76px; height: 76px; padding: 7px;
  border-radius: 3px 18px 3px 18px;
}
.hero-card .quick { gap: 8px; margin: 20px 0; }
.hero-card .quick a {
  min-height: 42px; padding: 9px 11px;
  border-radius: 2px 10px 2px 10px;
  font-size: 11px; font-weight: 750;
}
.hero-card .mini-number { color: #f0d9a8; font-weight: 750; }
.section { padding-block: clamp(72px,7.6vw,104px); }
.section-kicker {
  display: inline-flex; align-items: center; gap: 10px;
  margin-bottom: 15px; color: var(--kvb-premium-teal-dark);
  font-size: 10px; font-weight: 850; letter-spacing: .17em;
  line-height: 1.4; text-transform: uppercase;
}
.section-kicker:before { content: ""; width: 24px; height: 2px; background: var(--kvb-premium-gold); }
.section-head { max-width: 820px; margin-bottom: 38px; }
.section-head h2, #about h2, .faq .section-head h2 {
  max-width: 760px; margin: 0 0 15px;
  font-family: Georgia,"Times New Roman",serif;
  font-size: clamp(36px,4.4vw,58px); font-weight: 500;
  line-height: 1.04; letter-spacing: -.05em;
}
.section-head p { max-width: 650px; font-size: 15px; line-height: 1.85; }
#services { position: relative; background: #f3f5f6; }
#services .tiles { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 15px; }
#services .tile {
  min-height: 286px; padding: 158px 22px 22px;
  justify-content: flex-start; gap: 9px;
  border: 1px solid rgba(16,40,63,.12);
  border-radius: 3px 20px 3px 20px;
  background: #fff; box-shadow: 0 12px 30px rgba(10,27,46,.055);
}
#services .tile:before {
  inset: 0 0 auto; width: 100%; height: 145px;
  border: 0; border-radius: 0; box-shadow: none;
  background-color: #edf2f4;
  background-repeat: no-repeat; background-position: center;
  background-size: contain; opacity: 1;
  transition: transform .35s ease;
}
#services .tile:after {
  content: ""; position: absolute; left: 22px; bottom: 0;
  width: 34px; height: 3px; background: var(--kvb-premium-gold);
  transition: width .25s ease;
}
#services .tile--gst:before { background-image: url("../assets/visuals/service-gst.jpg"); }
#services .tile--itr:before { background-image: url("../assets/visuals/service-itr.jpg"); }
#services .tile--fssai:before { background-image: url("../assets/visuals/service-fssai.jpg"); }
#services .tile--pan:before { background-image: url("../assets/visuals/service-pan.jpg"); }
#services .tile--msme:before { background-image: url("../assets/visuals/service-msme.jpg"); }
#services .tile--tm:before { background-image: url("../assets/visuals/service-trademark.jpg"); }
#services .tile--dsc:before { background-image: url("../assets/visuals/service-dsc.jpg"); }
#services .tile--biz:before { background-image: url("../assets/visuals/service-business-registration.jpg"); }
#services .tile:hover { transform: translateY(-5px); border-color: rgba(37,139,139,.42); }
#services .tile:hover:before { transform: scale(1.035); }
#services .tile:hover:after { width: 62px; }
#services .tile-ico {
  position: absolute; z-index: 1; top: 12px; left: 12px;
  width: 38px; height: 38px; margin: 0;
  border: 1px solid rgba(16,40,63,.1); border-radius: 3px 12px 3px 12px;
  background: rgba(255,255,255,.94); color: var(--kvb-premium-teal-dark);
  box-shadow: 0 5px 15px rgba(10,27,46,.1);
}
#services .tile-ico svg { width: 19px; height: 19px; }
#services .tile b { color: var(--kvb-premium-deep); font-size: 16px; line-height: 1.28; }
#services .tile small { color: var(--kvb-premium-muted); font-size: 10px; letter-spacing: .07em; text-transform: uppercase; }
#why-kvb { position: relative; overflow: hidden; background: linear-gradient(115deg,#0a1b2e,#10283f 64%,#145c62); }
#why-kvb:after {
  content: ""; position: absolute; right: -160px; bottom: -240px;
  width: 520px; height: 520px; border: 1px solid rgba(255,255,255,.1);
  border-radius: 50%; box-shadow: 0 0 0 36px rgba(255,255,255,.025),0 0 0 90px rgba(255,255,255,.018);
  pointer-events: none;
}
#why-kvb .wrap { position: relative; z-index: 1; }
#why-kvb .section-kicker { color: #b8e2df; }
#why-kvb .section-head h2 { color: #fff; }
#why-kvb .glass-grid { gap: 14px; }
#why-kvb .glass-card {
  min-height: 210px; padding: 28px;
  border: 1px solid rgba(255,255,255,.17);
  border-radius: 3px 20px 3px 20px;
  background: linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.035));
  box-shadow: 0 18px 42px rgba(0,0,0,.14);
}
#why-kvb .glass-card strong {
  display: block; margin-bottom: 12px;
  color: #efd5a0; font: 500 clamp(44px,5vw,62px)/.95 Georgia,serif;
}
#why-kvb .glass-card h3 { font-size: 15px; letter-spacing: .01em; }
#why-kvb .glass-card p { max-width: 290px; font-size: 13px; line-height: 1.75; }
#compliance-timeline { background: #eaf0f2; }
#compliance-timeline .section-kicker { margin-bottom: 14px; }
#compliance-timeline h2 {
  max-width: 760px; margin: 0;
  color: var(--kvb-premium-deep);
  font: 500 clamp(36px,4.3vw,56px)/1.04 Georgia,"Times New Roman",serif;
  letter-spacing: -.05em;
}
#compliance-timeline .timeline-steps { gap: 13px; margin-top: 34px; }
#compliance-timeline .timeline-steps > .step {
  min-height: 205px; padding: 24px;
  border-radius: 3px 18px 3px 18px;
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(16,40,63,.12);
}
#compliance-timeline .timeline-steps > .step > b {
  width: 42px; height: 42px; flex-basis: 42px;
  border: 1px solid rgba(205,164,91,.55);
  background: #f1dfba; color: #10283f;
  font-size: 12px;
}
#compliance-timeline .timeline-steps h3 { margin: 0 0 9px; color: #10283f; font-size: 15px; }
#compliance-timeline .timeline-steps p { color: #637786; font-size: 12px; line-height: 1.75; }
.proof-strip { padding-block: 44px; background: #fff; }
.proof-strip .section-head { margin-bottom: 22px; }
.proof-strip .section-head h2 { font-size: clamp(27px,3.3vw,40px); }
.proof-chips { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }
.proof-chip {
  min-height: 58px; display: flex; align-items: center; justify-content: center;
  padding: 13px 16px; border-radius: 2px 14px 2px 14px;
  background: #f5f7f8; color: #294b5c; text-align: center;
  font-size: 11px; font-weight: 750; letter-spacing: .02em;
}
#business { background: #f8f9fa; }
#business .chips {
  display: grid; grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 10px; margin-top: 26px;
}
#business .chips a { display: flex; min-width: 0; text-decoration: none; }
#business .chips a span {
  position: relative; display: flex; align-items: center;
  width: 100%; min-height: 62px; padding: 14px 38px 14px 16px;
  border: 1px solid rgba(16,40,63,.12); border-radius: 2px 13px 2px 13px;
  background: #fff; color: #294b5c; font-size: 12px; font-weight: 750;
  line-height: 1.45; transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
#business .chips a span:before {
  content: ""; width: 5px; height: 24px; margin-right: 12px;
  flex: 0 0 5px; border-radius: 4px; background: var(--kvb-premium-teal);
}
#business .chips a span:after {
  content: "↗"; position: absolute; right: 14px; top: 50%;
  color: var(--kvb-premium-gold); font-size: 15px; transform: translateY(-50%);
}
#business .chips a:hover span { transform: translateY(-2px); border-color: rgba(37,139,139,.45); box-shadow: 0 10px 22px rgba(10,27,46,.07); }
#business .newbiz {
  position: relative; overflow: hidden; margin-top: 28px; padding: clamp(25px,4vw,42px);
  border-radius: 3px 24px 3px 24px;
}
#business .newbiz:after {
  content: ""; position: absolute; right: -75px; top: -120px;
  width: 280px; height: 280px; border: 1px solid rgba(255,255,255,.17);
  border-radius: 50%; box-shadow: 0 0 0 26px rgba(255,255,255,.025),0 0 0 66px rgba(255,255,255,.018);
  pointer-events: none;
}
#business .newbiz > * { position: relative; z-index: 1; }
#about { background: #f2f5f6; }
#about .about-grid { grid-template-columns: minmax(0,1.05fr) minmax(280px,.8fr); }
#about h2 { max-width: 620px; }
#about p { color: #526a7a; font-size: 14px; line-height: 1.85; }
#about .about-visual { margin-top: 26px; border-radius: 3px 22px 3px 22px; }
#about .about-visual img { aspect-ratio: 16/9; }
#about .about-points { gap: 12px; }
#about .about-points > div {
  padding: 24px; border-radius: 3px 16px 3px 16px;
  background: #fff; border: 1px solid rgba(16,40,63,.12);
}
#about .about-points b { color: #10283f; font-size: 15px; }
#about .about-points span { display: block; margin-top: 7px; color: #637786; font-size: 12px; line-height: 1.75; }
#locations { background: #eaf0f2; }
#locations .location-heading { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: 30px; }
#locations .location-summary {
  display: flex; align-items: baseline; gap: 9px;
  padding: 13px 18px; border: 1px solid rgba(16,40,63,.12);
  border-radius: 2px 14px 2px 14px; background: rgba(255,255,255,.65);
  color: #637786; font-size: 11px; font-weight: 750;
}
#locations .location-summary__number { color: #10283f; font: 500 36px/1 Georgia,serif; }
#locations .locations { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
#locations .location-card {
  min-height: 82px; padding: 16px 18px; border-radius: 2px 14px 2px 14px;
  background: rgba(255,255,255,.84); border: 1px solid rgba(16,40,63,.11);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
#locations .location-card:hover { transform: translateY(-2px); border-color: rgba(37,139,139,.4); box-shadow: 0 12px 26px rgba(10,27,46,.08); }
#tools { background: #f8f9fa; }
#tools .tool-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
#tools .tool-grid > div {
  min-height: 180px; padding: 22px; border-radius: 3px 17px 3px 17px;
  border: 1px solid rgba(16,40,63,.12); background: #fff;
  box-shadow: 0 10px 26px rgba(10,27,46,.045);
}
#tools .tool-grid h3 { color: #10283f; font-size: 15px; line-height: 1.35; }
#tools .tool-grid p { color: #637786; font-size: 12px; line-height: 1.7; }
#tools .tool-grid a { display: inline-flex; margin-top: 8px; color: var(--kvb-premium-teal-dark); font-size: 11px; font-weight: 850; }
.faq { background: #f3f5f6; }
.faq-list { max-width: 900px; gap: 9px; }
.faq-list details {
  padding: 19px 22px; border-radius: 2px 14px 2px 14px;
  border: 1px solid rgba(16,40,63,.12); background: #fff;
}
.faq-list summary { color: #10283f; font-size: 14px; }
.faq-list p { color: #637786; font-size: 13px; line-height: 1.75; }
#contact.contact {
  position: relative; overflow: hidden;
  padding-block: clamp(68px,7.5vw,100px);
  background: linear-gradient(120deg,#08192b 0%,#10283f 62%,#145c62 100%);
}
#contact.contact:before {
  content: ""; position: absolute; left: -160px; bottom: -260px;
  width: 520px; height: 520px; border: 1px solid rgba(255,255,255,.1);
  border-radius: 50%; box-shadow: 0 0 0 34px rgba(255,255,255,.022),0 0 0 82px rgba(255,255,255,.016);
}
#contact .contact-grid { position: relative; z-index: 1; gap: clamp(32px,6vw,84px); }
#contact h2 { max-width: 580px; font: 500 clamp(39px,4.7vw,62px)/1.02 Georgia,serif; letter-spacing: -.05em; }
#contact .contact-grid > div > p { max-width: 500px; font-size: 15px; line-height: 1.85; }
#contact .contact-line { font-size: 14px; line-height: 2; }
#contact .contact-line a { color: #f0d9a8; }
#contact .contact-box {
  gap: 13px; padding: clamp(22px,3vw,32px);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 3px 22px 3px 22px;
  box-shadow: 0 28px 68px rgba(0,0,0,.24);
}
#contact .contact-box label { color: #294354; font-size: 11px; font-weight: 800; }
#contact .contact-box :is(input,select,textarea) {
  min-height: 46px; margin-top: 6px; padding: 11px 13px;
  border: 1px solid #d5e0e5; border-radius: 2px 10px 2px 10px;
  background: #f8fafb; color: #172b3d; font: inherit; font-size: 13px;
}
#contact .contact-box :is(input,select,textarea):focus {
  outline: 3px solid rgba(37,139,139,.18); border-color: var(--kvb-premium-teal);
}
#contact .contact-box .btn.primary {
  min-height: 50px; border: 0; border-radius: 2px 12px 2px 12px;
  background: linear-gradient(135deg,#f0d9a8,#cda45b); color: #0a1b2e;
}
footer { background: #071525; color: rgba(240,246,248,.72); }
footer a { color: #e9d5a8; }
.mbar a { background: #10283f; }
.mbar a:first-child { background: #176b70; }
:where(a,button,input,select,textarea,summary):focus-visible {
  outline: 3px solid #cda45b; outline-offset: 3px;
}
@media (max-width: 1100px) {
  #services .tiles { grid-template-columns: repeat(3,minmax(0,1fr)); }
  #business .chips { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width: 980px) {
  .hero { min-height: 0; padding: 72px 0 64px; }
  .hero .wrap.hero-grid { width: min(100% - 48px,760px); grid-template-columns: 1fr; gap: 34px; }
  .hero-card { max-width: 620px; transform: none; }
  #services .tiles { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #business .chips { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #tools .tool-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 700px) {
  .topbar,.nav { min-height: 68px; }
  .brand img { width: 44px; height: 44px; }
  .hero { padding: 54px 0 48px; }
  .hero .wrap.hero-grid { width: calc(100% - 36px); gap: 28px; }
  .hero h1 { font-size: clamp(42px,10.5vw,58px); line-height: 1.02; }
  .hero h1 .hero-title-accent { margin-top: 11px; font-size: clamp(18px,4.8vw,23px); }
  .hero .lead { font-size: 14px; line-height: 1.75; }
  .hero .actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 22px; }
  .hero .actions .btn { min-height: 48px; padding: 0 9px; font-size: 10px; }
  .hero .actions .hero-services-cta { grid-column: 1/-1; }
  .hero-card { padding: 21px; }
  .hero-card:before { inset: 7px -7px -7px 7px; }
  .hero-card .quick { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 6px; }
  .hero-card .quick a { min-height: 38px; padding: 7px 3px; font-size: 9px; }
  .section { padding-block: 58px; }
  .section-head { margin-bottom: 27px; }
  .section-head h2,#about h2,.faq .section-head h2 { font-size: clamp(33px,8.8vw,43px); }
  #services .tiles { gap: 9px; }
  #services .tile { min-height: 238px; padding: 133px 15px 18px; }
  #services .tile:before { height: 122px; }
  #services .tile:after { left: 15px; }
  #services .tile-ico { top: 9px; left: 9px; width: 32px; height: 32px; }
  #services .tile-ico svg { width: 17px; height: 17px; }
  #services .tile b { font-size: 13px; }
  #services .tile small { font-size: 9px; letter-spacing: .04em; }
  #why-kvb .glass-grid { grid-template-columns: 1fr; }
  #why-kvb .glass-card { min-height: 0; padding: 22px; }
  #why-kvb .glass-card strong { font-size: 46px; }
  #compliance-timeline .timeline-steps { grid-template-columns: 1fr; gap: 10px; }
  #compliance-timeline .timeline-steps > .step { min-height: 0; padding: 19px; }
  .proof-strip { padding-block: 40px; }
  .proof-chips { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
  .proof-chip { min-height: 52px; padding: 10px; font-size: 10px; }
  #business .chips { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
  #business .chips a span { min-height: 58px; padding: 11px 28px 11px 11px; font-size: 10px; }
  #business .chips a span:before { margin-right: 8px; }
  #about .about-grid { grid-template-columns: 1fr; gap: 22px; }
  #locations .location-heading { grid-template-columns: 1fr; gap: 12px; }
  #locations .location-summary { justify-self: start; }
  #locations .locations { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
  #locations .location-card { min-height: 72px; padding: 12px; }
  #tools .tool-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
  #tools .tool-grid > div { min-height: 0; padding: 16px; }
  #tools .tool-grid h3 { font-size: 13px; }
  #tools .tool-grid p { font-size: 11px; }
  .faq-list details { padding: 16px; }
  #contact .contact-grid { grid-template-columns: 1fr; gap: 25px; }
  #contact h2 { font-size: clamp(37px,9vw,48px); }
}
@media (max-width: 380px) {
  .hero .wrap.hero-grid { width: calc(100% - 28px); }
  .hero .actions { grid-template-columns: 1fr; }
  .hero .actions .hero-services-cta { grid-column: auto; }
  #services .tiles,#business .chips,#locations .locations,#tools .tool-grid { grid-template-columns: 1fr; }
  #services .tile { min-height: 220px; padding-top: 140px; }
  #services .tile:before { height: 130px; }
}
@media (prefers-color-scheme: dark) {
  body { background: #0b1725; color: #eaf1f4; }
  .topbar { background: rgba(7,21,37,.97); border-color: #294253; }
  .brand,.topbar nav a { color: #edf4f7; }
  .brand small { color: #a9bdc8; }
  .lang,.menu { background: #10283f; border-color: #345264; color: #eaf1f4; }
  #services,#business,#tools,.faq { background: #0d1c2b; }
  #services .tile,#business .chips a span,#tools .tool-grid > div,.faq-list details,
  #about .about-points > div,#locations .location-card {
    background-color: #14283a; border-color: #2b4658; color: #eaf1f4;
  }
  #services .tile b,#business .chips a span,#tools .tool-grid h3,.faq-list summary,
  #about .about-points b { color: #eaf1f4; }
  #services .tile small,#tools .tool-grid p,.faq-list p,#about p,#about .about-points span { color: #b2c4ce; }
  #compliance-timeline,#locations,#about { background: #112337; }
  #compliance-timeline .timeline-steps > .step { background: #172d40; border-color: #2b4658; }
  #compliance-timeline .timeline-steps h3 { color: #eaf1f4; }
  #compliance-timeline .timeline-steps p { color: #b2c4ce; }
  .proof-strip { background: #102338; }
  .proof-chip { background: #172d40; color: #d6e4e9; border-color: #2b4658; }
  #locations .location-summary { background: #172d40; border-color: #2b4658; color: #b2c4ce; }
  #locations .location-summary__number { color: #f0d9a8; }
}
@media (prefers-reduced-motion: reduce) {
  *,*:before,*:after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Keep the industry grid visually consistent on the Tamil homepage, where labels are non-linked spans. */
#business .chips > span {
  display: flex; align-items: center; min-height: 62px;
  padding: 14px 16px; border: 1px solid rgba(16,40,63,.12);
  border-radius: 2px 13px 2px 13px; background: #fff;
  color: #294b5c; font-size: 12px; font-weight: 750; line-height: 1.45;
}
#business .chips > span:before {
  content: ""; width: 5px; height: 24px; margin-right: 12px;
  flex: 0 0 5px; border-radius: 4px; background: var(--kvb-premium-teal);
}
#contact .section-kicker { color: #b8e2df; }
@media (max-width:700px) {
  #business .chips > span { min-height: 58px; padding: 11px; font-size: 10px; }
  #business .chips > span:before { margin-right: 8px; }
}
@media (prefers-color-scheme:dark) {
  #business .chips > span { background: #14283a; border-color: #2b4658; color: #eaf1f4; }
}

/* Signature direction: restore the intended midnight, teal and brass hero.
   The legacy quality layer contains light-hero !important rules; these final
   declarations intentionally take precedence without changing shared pages. */
body .hero {
  min-height: 690px !important;
  padding: clamp(88px, 10vw, 132px) 0 clamp(76px, 8vw, 108px) !important;
  overflow: hidden !important;
  color: #f7faf5 !important;
  background:
    radial-gradient(ellipse at 82% 23%, rgba(49,157,165,.24), transparent 32%),
    radial-gradient(ellipse at 12% 100%, rgba(205,164,91,.16), transparent 34%),
    linear-gradient(118deg, #0a1b2e 0%, #10283f 58%, #145c62 100%) !important;
}
body .hero::before,
body .hero::after {
  display: block !important;
}
body .hero .wrap.hero-grid {
  width: min(1240px, 88%) !important;
  grid-template-columns: minmax(0, 1.16fr) minmax(310px, .7fr) !important;
  gap: clamp(42px, 7vw, 112px) !important;
}
body .hero .eyebrow {
  color: #b8e2df !important;
}
body .hero h1,
body .hero h1 .hero-title-main,
body .hero h1 .hero-title-main .split-flap-text,
body .hero h1 .hero-title-main .split-flap-text__char {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(48px, 6.1vw, 82px) !important;
  font-weight: 500 !important;
  line-height: .99 !important;
  letter-spacing: -.055em !important;
  background: none !important;
  background-image: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  text-shadow: none !important;
}
body .hero h1 .hero-title-accent,
body .hero h1 .hero-title-accent .split-flap-text,
body .hero h1 .hero-title-accent .split-flap-text__char {
  color: #b8e2df !important;
  -webkit-text-fill-color: #b8e2df !important;
  font-family: inherit !important;
  font-size: clamp(20px, 2.3vw, 30px) !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  letter-spacing: -.035em !important;
  background: none !important;
  background-image: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
}
body .hero .lead {
  color: rgba(246,250,246,.8) !important;
}
body .hero .actions .btn.primary {
  border-color: transparent !important;
  color: #10283f !important;
  background: linear-gradient(135deg, #ead8b0, #cda45b) !important;
  box-shadow: 0 14px 32px rgba(0,0,0,.2) !important;
}
body .hero .actions .btn.secondary {
  border-color: rgba(255,255,255,.3) !important;
  color: #f8fbf7 !important;
  background: rgba(255,255,255,.07) !important;
}
body .hero .hero-card {
  border-color: rgba(255,255,255,.68) !important;
  border-radius: 4px 28px 4px 28px !important;
  background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(244,248,247,.94)) !important;
  box-shadow: 0 38px 90px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.9) !important;
  transform: perspective(1200px) rotateY(-3deg) rotateX(1.5deg) !important;
  -webkit-backdrop-filter: blur(18px) saturate(135%) !important;
  backdrop-filter: blur(18px) saturate(135%) !important;
}
body .hero > .hero-illustration {
  opacity: .23 !important;
  filter: saturate(.85) contrast(1.1) !important;
}
@media (max-width: 980px) {
  body .hero {
    min-height: 0 !important;
    padding: 76px 0 68px !important;
  }
  body .hero .wrap.hero-grid {
    width: min(100% - 48px, 760px) !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 34px !important;
  }
  body .hero .hero-card {
    max-width: 620px !important;
    transform: none !important;
  }
}
@media (max-width: 600px) {
  body .hero { padding: 58px 0 52px !important; }
  body .hero .wrap.hero-grid { width: calc(100% - 36px) !important; gap: 28px !important; }
  body .hero h1,
  body .hero h1 .hero-title-main {
    font-size: clamp(40px, 10.5vw, 56px) !important;
    line-height: 1.02 !important;
  }
  body .hero h1 .hero-title-accent { font-size: clamp(18px, 4.8vw, 23px) !important; }
  body .hero .lead { font-size: 15px !important; line-height: 1.72 !important; }
  body .hero .actions { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 9px !important; }
  body .hero .actions .btn { min-height: 49px !important; padding-inline: 10px !important; font-size: 12px !important; }
  body .hero .actions .hero-services-cta { grid-column: 1 / -1 !important; }
  body .hero .hero-card { padding: 22px !important; border-radius: 4px 20px 4px 20px !important; }
  body .hero .hero-card .quick { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 6px !important; }
  body .hero .hero-card .quick a { min-height: 39px !important; padding: 7px 3px !important; font-size: 10px !important; }
}
@media (max-width: 360px) {
  body .hero .actions { grid-template-columns: 1fr !important; }
  body .hero .actions .hero-services-cta { grid-column: auto !important; }
  body .hero .hero-card .quick { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

/* Restore the editorial service imagery over the older generic tile reset. */
body #services #serviceTiles > .tile {
  min-height: 286px !important;
  padding: 158px 22px 22px !important;
  justify-content: flex-start !important;
  gap: 9px !important;
  border: 1px solid rgba(16,40,63,.12) !important;
  border-radius: 3px 20px 3px 20px !important;
  background: #fff !important;
  box-shadow: 0 12px 30px rgba(10,27,46,.07) !important;
}
body #services #serviceTiles > .tile::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 0 auto !important;
  width: 100% !important;
  height: 145px !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background-color: #e8eff2 !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: cover !important;
  opacity: 1 !important;
}
body #services #serviceTiles > .tile.tile--gst::before { background-image: url("../assets/visuals/service-gst.jpg") !important; }
body #services #serviceTiles > .tile.tile--itr::before { background-image: url("../assets/visuals/service-itr.jpg") !important; }
body #services #serviceTiles > .tile.tile--fssai::before { background-image: url("../assets/visuals/service-fssai.jpg") !important; }
body #services #serviceTiles > .tile.tile--pan::before { background-image: url("../assets/visuals/service-pan.jpg") !important; }
body #services #serviceTiles > .tile.tile--msme::before { background-image: url("../assets/visuals/service-msme.jpg") !important; }
body #services #serviceTiles > .tile.tile--tm::before { background-image: url("../assets/visuals/service-trademark.jpg") !important; }
body #services #serviceTiles > .tile.tile--dsc::before { background-image: url("../assets/visuals/service-dsc.jpg") !important; }
body #services #serviceTiles > .tile.tile--biz::before { background-image: url("../assets/visuals/service-business-registration.jpg") !important; }
body #services #serviceTiles > .tile::after {
  display: block !important;
  content: "" !important;
  position: absolute !important;
  left: 22px !important;
  bottom: 0 !important;
  width: 34px !important;
  height: 3px !important;
  background: var(--kvb-premium-brass) !important;
}
body #services #serviceTiles > .tile .tile-ico {
  position: absolute !important;
  z-index: 1 !important;
  top: 12px !important;
  left: 12px !important;
  width: 38px !important;
  height: 38px !important;
  margin: 0 !important;
  border: 1px solid rgba(16,40,63,.1) !important;
  border-radius: 3px 12px 3px 12px !important;
  background: rgba(255,255,255,.95) !important;
  color: #147a80 !important;
  box-shadow: 0 5px 15px rgba(10,27,46,.1) !important;
}
body #services #serviceTiles > .tile small {
  color: #637786 !important;
  font-size: 10px !important;
  letter-spacing: .07em !important;
  line-height: 1.4 !important;
  text-transform: uppercase !important;
}
@media (max-width: 600px) {
  body #services #serviceTiles > .tile {
    min-height: 218px !important;
    padding: 122px 15px 18px !important;
    gap: 8px !important;
  }
  body #services #serviceTiles > .tile::before { height: 108px !important; }
  body #services #serviceTiles > .tile::after { left: 15px !important; }
  body #services #serviceTiles > .tile .tile-ico {
    top: 9px !important;
    left: 9px !important;
    width: 32px !important;
    height: 32px !important;
  }
  body #services #serviceTiles > .tile b { font-size: 14px !important; }
  body #services #serviceTiles > .tile small { font-size: 9px !important; }
}
@media (max-width: 380px) {
  body #services #serviceTiles > .tile {
    min-height: 200px !important;
    padding-top: 116px !important;
  }
  body #services #serviceTiles > .tile::before { height: 102px !important; }
}

/* Keep the featured location card inside the single-column mobile directory. */
@media (max-width: 420px) {
  html body #locations .locations {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-auto-columns: minmax(0, 1fr) !important;
  }

  html body #locations .location-card--featured {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 68px !important;
    height: auto !important;
    box-sizing: border-box !important;
  }
}

/* Keep the proof cards readable in browsers that flatten glass/backdrop effects. */
body #why-kvb {
  min-height: 0 !important;
  padding-block: clamp(58px, 7vw, 88px) !important;
  color: #f7faf5 !important;
  background:
    radial-gradient(ellipse at 88% 18%, rgba(49,157,165,.2), transparent 34%),
    linear-gradient(118deg, #0a1b2e 0%, #10283f 62%, #145c62 100%) !important;
}
body #why-kvb .section-head h2,
body #why-kvb .section-head p {
  color: #f7faf5 !important;
  opacity: 1 !important;
}
body #why-kvb .glass-card {
  min-height: 0 !important;
  border: 1px solid rgba(225,240,240,.22) !important;
  background: linear-gradient(145deg, rgba(255,255,255,.15), rgba(255,255,255,.07)) !important;
  color: #f7faf5 !important;
  box-shadow: 0 18px 42px rgba(0,0,0,.18) !important;
  -webkit-backdrop-filter: blur(14px) saturate(125%);
  backdrop-filter: blur(14px) saturate(125%);
}
body #why-kvb .glass-card .stat-counter {
  color: #efd5a0 !important;
  opacity: 1 !important;
  visibility: visible !important;
}
body #why-kvb .glass-card h3,
body #why-kvb .glass-card p {
  color: #f7faf5 !important;
  opacity: 1 !important;
  visibility: visible !important;
}
body #why-kvb .glass-card p { color: rgba(245,250,246,.82) !important; }
@media (max-width: 600px) {
  body #why-kvb { padding-block: 52px !important; }
  body #why-kvb .wrap { gap: 24px !important; }
  body #why-kvb .glass-grid { grid-template-columns: minmax(0,1fr) !important; gap: 12px !important; }
  body #why-kvb .glass-card { padding: 20px !important; }
}

/* Keep the split proof section inside the same centered page container as other sections. */
body #why-kvb > .wrap {
  width: min(1180px, calc(100% - 48px)) !important;
  max-width: 1180px !important;
  margin-inline: auto !important;
  padding-inline: 0 !important;
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1.4fr) !important;
  gap: clamp(24px, 4vw, 56px) !important;
  align-items: center !important;
}
body #why-kvb .section-head {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
}
body #why-kvb .glass-grid {
  width: 100% !important;
  min-width: 0 !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
@media (max-width: 960px) {
  body #why-kvb > .wrap {
    width: min(760px, calc(100% - 40px)) !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 24px !important;
  }
}
@media (max-width: 600px) {
  body #why-kvb > .wrap {
    width: calc(100% - 36px) !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }
  body #why-kvb .glass-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}


/* KVB premium direction: forest green, warm ivory and restrained gold.
   Keep the supplied logo artwork untouched; no filters or recolouring. */
:root {
  --kvb-premium-forest: #103d32;
  --kvb-premium-deep: #092b24;
  --kvb-premium-paper: #f7f4ec;
  --kvb-premium-ink: #172b25;
  --kvb-premium-muted: #64736b;
  --kvb-premium-line: rgba(16,61,50,.14);
  --kvb-premium-brass: #d6ad61;
}
body { background: var(--kvb-premium-paper); color: var(--kvb-premium-ink); }
.topbar { background: rgba(250,249,243,.97); border-color: var(--kvb-premium-line); }
.brand, .brand b { color: var(--kvb-premium-deep); }
.brand img { filter: none !important; }
.topbar nav a { color: #29483d; }
.lang, .menu { color: var(--kvb-premium-forest); border-color: #d8ddcf; background: #fffdf7; }
.hero {
  background:
    radial-gradient(ellipse at 80% 20%, rgba(88,153,105,.22), transparent 34%),
    radial-gradient(ellipse at 10% 95%, rgba(214,173,97,.18), transparent 36%),
    linear-gradient(118deg,#082c24 0%,#104638 58%,#1d6650 100%);
}
.hero:before { border-color: rgba(239,231,207,.2); }
.hero:after { background: rgba(214,173,97,.2); }
.hero > .hero-illustration { opacity: .13; }
.hero .eyebrow, .hero h1 .hero-title-accent { color: #e5c783; }
.hero .eyebrow:before { background: #e5c783; }
.hero .btn.primary {
  color: #12372b;
  background: linear-gradient(135deg,#f0dfb8,#d4ad62);
  border-color: transparent;
}
.hero .btn.secondary { border-color: rgba(245,238,219,.45); }
.hero-card {
  background: linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.055));
  border-color: rgba(245,238,219,.24);
}
.hero-card .logo-card { background: #fffdf7; }
.section, .section.alt, .proof-strip { background-color: var(--kvb-premium-paper); }
.section-head h2, #services .section-head h2, #business .section-head h2,
#about h2, #locations .section-head h2, #tools .section-head h2,
.faq .section-head h2 { color: var(--kvb-premium-deep); }
.section-head p { color: var(--kvb-premium-muted); }
.service-card, .tool-grid > div, .about-points > div, .faq-list details,
.location-card, #services #serviceTiles > .tile {
  border-color: #e4dfd2;
  background-color: #fffdf8;
  box-shadow: 0 12px 30px rgba(31,57,43,.07);
}
.service-card:hover, .tool-grid > div:hover, .about-points > div:hover,
#services #serviceTiles > .tile:hover {
  border-color: #c9b47e;
  box-shadow: 0 18px 38px rgba(31,57,43,.12);
}
#services #serviceTiles > .tile::after { background: #d6ad61 !important; }
#services #serviceTiles > .tile .tile-ico { color: #176247 !important; }
#why-kvb, body #why-kvb {
  background:
    radial-gradient(ellipse at 88% 18%,rgba(72,151,105,.2),transparent 34%),
    linear-gradient(118deg,#082c24 0%,#104638 62%,#1d6650 100%) !important;
}
#why-kvb .glass-card .stat-counter { color: #e8c77f !important; }
#compliance-timeline { background: #f7f4ec; }
#compliance-timeline .timeline-steps > .step {
  border-color: #e3dece;
  background: #fffdf8;
  box-shadow: 0 14px 32px rgba(31,57,43,.08);
}
#compliance-timeline .timeline-steps > .step > b {
  border-color: #176247; background: #e8f1e8; color: #104638;
}
.newbiz, .contact, footer {
  background: linear-gradient(118deg,#082c24 0%,#104638 62%,#1d6650 100%);
}
.contact-box { background: #fffdf8; }
.contact-box input, .contact-box select, .contact-box textarea {
  border-color: #ddd8ca; background: #fffefa;
}
.proof-chip { border-color: #d8d0bc; background: #fffdf8; color: #244337; }
.floating-wa, .mbar { box-shadow: 0 12px 30px rgba(8,44,36,.2); }
@media (prefers-reduced-motion: reduce) {
  .service-card, .tool-grid > div, .about-points > div,
  .faq-list details, .location-card, #services #serviceTiles > .tile {
    transition: none !important;
  }
}

/* Premium glass treatment for the WhatsApp enquiry action. */
#contact .contact-box .btn.primary {
  position: relative;
  isolation: isolate;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 58px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.62) !important;
  border-radius: 16px 16px 5px 16px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.42) 0%, rgba(255,255,255,.12) 36%, transparent 52%),
    linear-gradient(135deg, #36ed91 0%, #25d366 48%, #119b50 100%) !important;
  color: #063d27 !important;
  font-weight: 800;
  letter-spacing: -.01em;
  text-shadow: 0 1px 0 rgba(255,255,255,.24);
  box-shadow:
    0 14px 30px rgba(18,166,88,.28),
    0 5px 0 #087d43,
    inset 0 2px 1px rgba(255,255,255,.72),
    inset 0 -5px 12px rgba(0,91,48,.2) !important;
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
#contact .contact-box .btn.primary::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 1px 1px auto;
  height: 48%;
  border-radius: 14px 14px 50% 50%;
  background: linear-gradient(180deg, rgba(255,255,255,.38), rgba(255,255,255,0));
  pointer-events: none;
}
#contact .contact-box .btn.primary svg {
  width: 27px;
  height: 27px;
  flex: 0 0 auto;
  color: #063d27 !important;
  filter: drop-shadow(0 1px 0 rgba(255,255,255,.3));
}
#contact .contact-box .btn.primary span {
  position: relative;
  z-index: 1;
  color: #063d27 !important;
}
#contact .contact-box .btn.primary:hover {
  transform: translateY(-2px);
  filter: saturate(1.08) brightness(1.03);
  box-shadow:
    0 18px 34px rgba(18,166,88,.34),
    0 6px 0 #087d43,
    inset 0 2px 1px rgba(255,255,255,.78),
    inset 0 -5px 12px rgba(0,91,48,.2) !important;
}
#contact .contact-box .btn.primary:active {
  transform: translateY(2px);
  box-shadow:
    0 7px 16px rgba(18,166,88,.24),
    0 2px 0 #087d43,
    inset 0 2px 5px rgba(0,91,48,.2) !important;
}
#contact .contact-box .btn.primary:focus-visible {
  outline: 3px solid rgba(37,211,102,.4);
  outline-offset: 4px;
}
@media (prefers-reduced-motion: reduce) {
  #contact .contact-box .btn.primary { transition: none; }
  #contact .contact-box .btn.primary:hover,
  #contact .contact-box .btn.primary:active { transform: none; }
}

/* Final glossy glass depth: keep the WhatsApp CTA vivid, reflective and tactile. */
#contact .contact-box .btn.primary {
  min-height: 64px;
  border: 1px solid rgba(255,255,255,.82) !important;
  border-radius: 18px 18px 7px 18px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.58) 0%, rgba(255,255,255,.2) 17%, rgba(255,255,255,0) 43%),
    linear-gradient(112deg, #65f6b1 0%, #2ee889 23%, #25d366 57%, #0da34f 100%) !important;
  box-shadow:
    0 18px 34px rgba(14,155,79,.3),
    0 7px 0 #087a40,
    0 9px 0 rgba(4,83,44,.18),
    inset 0 2px 2px rgba(255,255,255,.88),
    inset 0 -7px 13px rgba(0,76,39,.24),
    inset 1px 0 2px rgba(255,255,255,.42) !important;
  backdrop-filter: blur(10px) saturate(155%);
  -webkit-backdrop-filter: blur(10px) saturate(155%);
}
#contact .contact-box .btn.primary::before {
  z-index: 0;
  inset: 2px 2px auto;
  height: 43%;
  border-radius: 15px 15px 55% 55%;
  background: linear-gradient(180deg, rgba(255,255,255,.62), rgba(255,255,255,.16) 58%, transparent);
}
#contact .contact-box .btn.primary::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: -65%;
  left: -28%;
  width: 42%;
  height: 230%;
  transform: rotate(24deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.2), transparent);
  pointer-events: none;
}
#contact .contact-box .btn.primary svg,
#contact .contact-box .btn.primary span {
  position: relative;
  z-index: 1;
}
#contact .contact-box .btn.primary svg {
  width: 29px;
  height: 29px;
  filter: drop-shadow(0 2px 1px rgba(255,255,255,.36));
}
#contact .contact-box .btn.primary:hover {
  transform: translateY(-3px);
  box-shadow:
    0 22px 38px rgba(14,155,79,.36),
    0 9px 0 #087a40,
    inset 0 2px 2px rgba(255,255,255,.92),
    inset 0 -7px 13px rgba(0,76,39,.2) !important;
}
#contact .contact-box .btn.primary:active {
  transform: translateY(4px);
  box-shadow:
    0 8px 16px rgba(14,155,79,.24),
    0 2px 0 #087a40,
    inset 0 3px 8px rgba(0,76,39,.24) !important;
}
@media (prefers-reduced-motion: reduce) {
  #contact .contact-box .btn.primary::after { display: none; }
}

/* Keep light-surface text readable even when the device uses dark appearance. */
@media (prefers-color-scheme: dark) {
  #business .section-head h2,
  #business .chips a,
  #business .chips a span,
  #business .chips a span *,
  #compliance-timeline .section-head h2,
  #compliance-timeline .timeline-steps h3,
  #compliance-timeline .timeline-steps p,
  #services .section-head h2,
  #services .section-head p,
  #tools .section-head h2,
  #tools .section-head p,
  .faq .section-head h2,
  .faq .section-head p,
  #contact .contact-box label {
    color: #203747 !important;
    -webkit-text-fill-color: #203747 !important;
    opacity: 1 !important;
  }

  #business .chips a span {
    background: #fffdf8 !important;
    border-color: #d8e1e5 !important;
  }

  #compliance-timeline .timeline-steps > .step {
    background: #fffdf8 !important;
    border-color: #e3dece !important;
  }

  #compliance-timeline .timeline-steps > .step > b {
    color: #104638 !important;
    -webkit-text-fill-color: #104638 !important;
  }

  #contact .contact-box {
    background: #fffdf8 !important;
  }

  #contact .contact-box :is(input, select, textarea) {
    color: #172b3d !important;
    -webkit-text-fill-color: #172b3d !important;
    background: #f8fafb !important;
  }

  footer .footer-brand p {
    color: #d2e2dc !important;
    -webkit-text-fill-color: #d2e2dc !important;
    opacity: 1 !important;
  }
}


/* Show complete service artwork: cover was cropping titles and top details. */
body #services #serviceTiles > .tile::before {
  background-size: contain !important;
  background-position: center center !important;
  background-color: #fff !important;
}
@media (max-width: 600px) {
  body #services #serviceTiles > .tile::before {
    background-size: contain !important;
    background-position: center center !important;
  }
}


/* Tamil industry chips are direct spans, not links. Keep their text readable in dark-mode browsers. */
@media (prefers-color-scheme: dark) {
  #business .chips > span {
    color: #203747 !important;
    -webkit-text-fill-color: #203747 !important;
    opacity: 1 !important;
    background: #fffdf8 !important;
    border-color: #d8e1e5 !important;
  }
}


/* KVB colour system — Stealth Black 60 / Titanium Grey 30 / Venom Green 10.
   Keep green as a deliberate accent for actions, focus states and key details. */
:root {
  color-scheme: dark;
  --kvb-stealth: #0b0d0e;
  --kvb-stealth-raised: #141719;
  --kvb-titanium: #aeb4ba;
  --kvb-titanium-soft: #d9dde0;
  --kvb-titanium-muted: #7d858c;
  --kvb-titanium-line: #343a3f;
  --kvb-venom: #a8ff00;
  --kvb-venom-deep: #78bd00;
  --kvb-venom-ink: #172000;
  --kvb-premium-paper: var(--kvb-stealth);
  --kvb-premium-ink: var(--kvb-titanium-soft);
  --kvb-premium-muted: var(--kvb-titanium-muted);
  --kvb-premium-line: var(--kvb-titanium-line);
}
html, body {
  color-scheme: dark;
  background: var(--kvb-stealth);
  color: var(--kvb-titanium-soft);
}
body { background-image: none; }
.topbar {
  color: var(--kvb-titanium-soft);
  background: rgba(11,13,14,.96);
  border-color: var(--kvb-titanium-line);
  box-shadow: 0 8px 28px rgba(0,0,0,.32);
}
.brand, .brand span, .topbar nav a, .lang, .menu {
  color: var(--kvb-titanium-soft);
}
.brand b, .topbar nav a:hover { color: var(--kvb-venom); }
.lang, .menu {
  background: var(--kvb-stealth-raised);
  border-color: var(--kvb-titanium-line);
}
.hero {
  color: var(--kvb-titanium-soft);
  background:
    radial-gradient(ellipse at 82% 18%, rgba(168,255,0,.10), transparent 30%),
    linear-gradient(118deg, #080a0b 0%, #111517 64%, #202529 100%);
}
.hero .eyebrow, .hero h1 .hero-title-accent { color: var(--kvb-venom); }
.hero .eyebrow:before { background: var(--kvb-venom); }
.hero .lead, .hero .trust { color: #c0c6ca; }
.hero .btn.primary {
  color: var(--kvb-venom-ink);
  background: linear-gradient(135deg, #c4ff42, var(--kvb-venom) 62%, #8ed900);
  border-color: transparent;
  box-shadow: 0 12px 28px rgba(168,255,0,.16);
}
.hero .btn.secondary {
  color: var(--kvb-titanium-soft);
  background: rgba(174,180,186,.07);
  border-color: rgba(174,180,186,.38);
}
.hero-card {
  color: var(--kvb-titanium-soft);
  background: linear-gradient(145deg, #202629, #111517 76%);
  border-color: #555e64;
  box-shadow: 0 30px 72px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,255,255,.08);
}
.hero-card:before { border-color: rgba(168,255,0,.38); }
.hero-card .quick a {
  color: var(--kvb-titanium-soft);
  background: rgba(174,180,186,.07);
  border-color: rgba(174,180,186,.2);
}
.hero-card .quick a:hover {
  color: var(--kvb-venom);
  border-color: rgba(168,255,0,.65);
  background: rgba(168,255,0,.08);
}
.hero-card .mini-number, .hero-card .mini strong { color: var(--kvb-venom); }
:where(.section, .section.alt, #services, #how, #business, #locations, #tools,
       .proof, .proof-strip, .clients) {
  color: var(--kvb-titanium-soft);
  background: var(--kvb-stealth);
}
:where(.section-head h2, #about h2, .faq .section-head h2,
       .service-page h1, .service-page h2, .tool-page h1, .legal h1) {
  color: var(--kvb-titanium-soft);
}
:where(.section-head p, .service-page p, .service-page li, .tool-page p,
       .tool-page li, .about-grid p, .service-card p, .step p,
       .about-points span, .faq-list p) { color: var(--kvb-titanium-muted); }
:where(.service-card, .tool-grid > div, .about-points > div, .faq-list details,
       .step, .location-card, .panel, .calculator, .contact-box, .locations a) {
  color: var(--kvb-titanium-soft);
  background: var(--kvb-stealth-raised);
  border-color: var(--kvb-titanium-line);
  box-shadow: 0 8px 24px rgba(0,0,0,.2);
}
:where(.service-card h3, .tool-grid h3, .about-points b, .faq-list summary,
       .step h3, .locations a) { color: var(--kvb-titanium-soft); }
:where(.service-card span, .service-page .back, .tool-grid a,
       .related a, .locations a:hover, .proof-main strong) { color: var(--kvb-venom); }
:where(.chips span, .proof-chip) {
  color: var(--kvb-titanium-soft);
  background: #202629;
  border-color: var(--kvb-titanium-line);
}
.newbiz, .contact, .strip, footer {
  color: var(--kvb-titanium-soft);
  background: #080a0b;
  border-color: var(--kvb-titanium-line);
}
.newbiz .eyebrow, .strip strong { color: var(--kvb-venom); }
.contact-box { background: #171b1e; border-color: #454d53; }
:where(input, select, textarea, .contact-box input, .contact-box select,
       .contact-box textarea, .calculator input, .calculator select) {
  color: var(--kvb-titanium-soft);
  background: #0d1012;
  border-color: #4a5258;
}
:where(input, select, textarea)::placeholder { color: var(--kvb-titanium-muted); }
:where(.btn.primary, .contact-box .btn, .contact-box .btn.primary,
       .calculator .btn, .btn-primary) {
  color: var(--kvb-venom-ink);
  background: var(--kvb-venom);
  border-color: var(--kvb-venom);
}
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 3px solid var(--kvb-venom);
  outline-offset: 3px;
}
#kvb-progress, .kvb-scroll-progress {
  background: var(--kvb-venom);
  box-shadow: 0 0 12px rgba(168,255,0,.35);
}
.floating-wa { box-shadow: 0 8px 24px rgba(0,0,0,.42); }
@media (prefers-color-scheme: dark) {
  body { background: var(--kvb-stealth); color: var(--kvb-titanium-soft); }
  :where(.section-head h2, #about h2, .faq .section-head h2,
         .service-page h1, .service-page h2, .tool-page h1, .legal h1,
         .service-card h3, .tool-grid h3, .about-points b, .faq-list summary) {
    color: var(--kvb-titanium-soft) !important;
    -webkit-text-fill-color: var(--kvb-titanium-soft) !important;
  }
  :where(.section-head p, .service-page p, .service-page li, .tool-page p,
         .tool-page li, .about-grid p, .service-card p, .step p,
         .about-points span, .faq-list p) { color: var(--kvb-titanium-muted) !important; }
  :where(.service-card, .tool-grid > div, .about-points > div, .faq-list details,
         .step, .location-card, .panel, .calculator, .contact-box, .locations a) {
    background: var(--kvb-stealth-raised) !important;
    color: var(--kvb-titanium-soft) !important;
    border-color: var(--kvb-titanium-line) !important;
  }
}


/* Final palette enforcement — override legacy page-specific and high-specificity themes. */
:root {
  color-scheme: dark !important;
  --kvb-stealth: #0b0d0e;
  --kvb-stealth-raised: #141719;
  --kvb-titanium: #aeb4ba;
  --kvb-titanium-soft: #d9dde0;
  --kvb-titanium-muted: #929aa1;
  --kvb-titanium-line: #343a3f;
  --kvb-venom: #a8ff00;
  --kvb-venom-deep: #78bd00;
  --kvb-venom-ink: #172000;
}
html, body {
  background: #0b0d0e !important;
  color: #d9dde0 !important;
}
body :is(main, .main, .page, .page-content) {
  color: #d9dde0;
}
body :is(.topbar, header.topbar, .nav-wrap) {
  background: rgba(11,13,14,.98) !important;
  border-color: #343a3f !important;
  box-shadow: 0 8px 28px rgba(0,0,0,.38) !important;
}
body :is(.brand, .brand span, .topbar nav a, .lang, .menu) {
  color: #d9dde0 !important;
}
body .brand b,
body .topbar nav a:hover,
body .topbar nav a:focus-visible {
  color: #a8ff00 !important;
}
body :is(.lang, .menu) {
  background: #141719 !important;
  border: 1px solid #343a3f !important;
}
body :is(.hero, section.hero, #why-kvb, body #why-kvb, #business .newbiz,
         #contact.contact, .contact, footer, .newbiz) {
  color: #d9dde0 !important;
  background: radial-gradient(ellipse at 82% 18%, rgba(168,255,0,.09), transparent 32%),
              linear-gradient(118deg,#080a0b 0%,#111517 66%,#202529 100%) !important;
}
body .hero :is(h1, h2, p, .lead, .trust) { color: #d9dde0; }
body .hero :is(.eyebrow, h1 .hero-title-accent, .mini-number, .mini strong) {
  color: #a8ff00 !important;
}
body :is(.section, .section.alt, #services, #how, #business, #locations, #tools,
         .proof, .proof-strip, .clients, .faq, #about, #compliance-timeline) {
  color: #d9dde0 !important;
  background: #0b0d0e !important;
}
body :is(.section-head h2, #about h2, .faq .section-head h2, #compliance-timeline h2,
         .service-page h1, .service-page h2, .tool-page h1, .legal h1) {
  color: #d9dde0 !important;
  -webkit-text-fill-color: #d9dde0 !important;
}
body :is(.section-head p, .service-page p, .service-page li, .tool-page p,
         .tool-page li, .about-grid p, .service-card p, .step p,
         .about-points span, .faq-list p) {
  color: #929aa1 !important;
  -webkit-text-fill-color: #929aa1 !important;
}
body :is(.service-card, .tool-grid > div, .about-points > div, .faq-list details,
         .step, .location-card, .panel, .calculator, .contact-box, .locations a,
         #services #serviceTiles > .tile, #services .tile) {
  color: #d9dde0 !important;
  background: #141719 !important;
  border: 1px solid #343a3f !important;
  box-shadow: 0 10px 28px rgba(0,0,0,.28) !important;
}
body :is(.service-card h3, .tool-grid h3, .about-points b, .faq-list summary,
         .step h3, .locations a, #services #serviceTiles > .tile b, #services .tile b) {
  color: #d9dde0 !important;
  -webkit-text-fill-color: #d9dde0 !important;
}
body :is(.service-card span, .service-page .back, .tool-grid a,
         .related a, .locations a:hover, .proof-main strong,
         #services .tile-ico, #services #serviceTiles .tile-ico) {
  color: #a8ff00 !important;
}
body :is(.chips span, .proof-chip) {
  color: #d9dde0 !important;
  background: #202529 !important;
  border-color: #343a3f !important;
}
body :is(.btn.primary, .contact-box .btn, .contact-box .btn.primary,
         .calculator .btn, .btn-primary, #contact .contact-box .btn.primary) {
  color: #172000 !important;
  background: #a8ff00 !important;
  border: 1px solid #a8ff00 !important;
  box-shadow: 0 8px 24px rgba(168,255,0,.16) !important;
}
body :is(.btn.secondary, .mbar a:last-child) {
  color: #d9dde0 !important;
  background: #141719 !important;
  border: 1px solid #555e64 !important;
}
body .mbar {
  background: rgba(11,13,14,.98) !important;
  border-color: #343a3f !important;
  box-shadow: 0 -8px 28px rgba(0,0,0,.42) !important;
}
body .mbar a:first-child {
  color: #172000 !important;
  background: #a8ff00 !important;
  border: 1px solid #a8ff00 !important;
  box-shadow: 0 5px 16px rgba(168,255,0,.18) !important;
}
body .mbar a:last-child {
  color: #d9dde0 !important;
  background: #141719 !important;
  border: 1px solid #555e64 !important;
}
body .floating-wa { filter: none !important; }
body :is(input, select, textarea, .contact-box input, .contact-box select,
         .contact-box textarea, .calculator input, .calculator select) {
  color: #d9dde0 !important;
  background: #0d1012 !important;
  border-color: #4a5258 !important;
}
body :is(input, select, textarea)::placeholder { color: #929aa1 !important; }
body :is(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 3px solid #a8ff00 !important;
  outline-offset: 3px !important;
}
#kvb-progress, .kvb-scroll-progress {
  background: #a8ff00 !important;
  box-shadow: 0 0 12px rgba(168,255,0,.35) !important;
}
@media (prefers-color-scheme: light) {
  html, body { color-scheme: dark !important; }
}
