/* KVB ENTERPRISES — editorial redesign v2 */
:root{--kvb-v2-ink:#101d32;--kvb-v2-navy:#102644;--kvb-v2-green:#087a53;--kvb-v2-mint:#c7f2df;--kvb-v2-gold:#e9bd67;--kvb-v2-paper:#f6f7f4}
html{scroll-padding-top:96px}body{background:var(--kvb-v2-paper);color:var(--kvb-v2-ink)}
.topbar{background:rgba(250,252,250,.94);border-bottom-color:rgba(16,38,68,.1);box-shadow:0 10px 35px rgba(16,38,68,.07)}
.hero{min-height:680px;padding:clamp(82px,10vw,132px) 0 clamp(76px,9vw,112px);color:#f8fbff;background:radial-gradient(ellipse at 78% 20%,rgba(57,188,139,.24),transparent 34%),radial-gradient(ellipse at 12% 92%,rgba(233,189,103,.13),transparent 33%),linear-gradient(122deg,#0b1d35 0%,#102b4b 56%,#0b493f 120%);isolation:isolate}
.hero:before{width:min(58vw,720px);height:min(58vw,720px);right:-15%;top:-48%;border:1px solid rgba(255,255,255,.14);box-shadow:0 0 0 32px rgba(255,255,255,.025),0 0 0 84px rgba(255,255,255,.018),0 0 0 150px rgba(255,255,255,.012)}
.hero:after{width:380px;height:380px;left:38%;bottom:-300px;background:rgba(29,178,124,.16);filter:blur(36px)}
.hero .wrap.hero-grid{width:min(1200px,88%);grid-template-columns:minmax(0,1.15fr) minmax(300px,.72fr);gap:clamp(38px,7vw,104px);align-items:center}
.hero .eyebrow{color:#b9efd9;font-size:11px;font-weight:800;letter-spacing:2.2px;margin-bottom:24px}.hero .eyebrow:before{width:34px;background:var(--kvb-v2-gold)}
.hero h1{max-width:760px;margin:0 0 24px;font-size:clamp(40px,5.2vw,72px);line-height:1.02;letter-spacing:-2.8px;font-weight:780}.hero h1 .hero-title-main{color:#fff}.hero h1 .hero-title-accent{display:inline-block;margin-top:12px;color:#b9efd9;font-size:.58em;line-height:1.2;letter-spacing:-.8px;font-weight:650}
.hero .lead{max-width:610px;color:rgba(242,247,252,.78);font-size:clamp(16px,1.5vw,19px);line-height:1.8}
.hero .actions{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0 20px}.hero .actions .btn{min-height:54px;padding:0 23px;border-radius:999px;font-size:14px;font-weight:750}
.hero .btn.primary{color:#082b20;background:linear-gradient(135deg,#c8f3df,#7ad7ae);box-shadow:0 14px 32px rgba(35,192,132,.2)}.hero .btn.secondary{color:#f7fbff;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.22)}.hero .trust{color:rgba(235,244,250,.68);font-size:12px;line-height:1.8;letter-spacing:.1px}
.hero-card{position:relative;padding:clamp(26px,3.2vw,42px);border-radius:30px;border:1px solid rgba(255,255,255,.22);background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.055));box-shadow:0 32px 90px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.23);backdrop-filter:blur(20px) saturate(135%);-webkit-backdrop-filter:blur(20px) saturate(135%)}
.hero-card:before{content:"";position:absolute;width:190px;height:190px;right:-65px;top:-65px;border-radius:50%;border:1px solid rgba(195,241,220,.28);box-shadow:0 0 0 18px rgba(195,241,220,.035),0 0 0 42px rgba(195,241,220,.025);pointer-events:none}
.hero-card .logo-card{width:92px;height:92px;margin-bottom:22px;border-radius:22px;background:rgba(255,255,255,.96)}
.hero-card .trust{position:relative;z-index:1;color:rgba(246,250,255,.82);font-size:12px;line-height:1.8}.hero-card .quick{position:relative;z-index:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:24px 0}
.hero-card .quick a{min-height:46px;padding:11px 13px;border:1px solid rgba(255,255,255,.15);border-radius:12px;background:rgba(255,255,255,.075);color:#f7fbff;font-size:12px;font-weight:700;text-align:left}
.hero-card .mini{position:relative;z-index:1;padding-top:18px;border-top:1px solid rgba(255,255,255,.17);color:rgba(238,247,251,.66);font-size:10px;letter-spacing:1.4px}.hero-card .mini-number{display:block;margin-top:5px;color:#c6f2df;font-size:clamp(25px,3vw,34px);font-weight:800;letter-spacing:-.7px}
#why-kvb{background:#102644;color:#f6f9fc}#why-kvb .section-head h2,#why-kvb .section-head p{color:#f6f9fc}#why-kvb .section-head p{opacity:.72}
#why-kvb .glass-card{border:1px solid rgba(255,255,255,.15);background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.045));box-shadow:0 20px 50px rgba(0,0,0,.18)}#why-kvb .glass-card h3{color:#fff}#why-kvb .glass-card p{color:rgba(241,247,251,.72)}#why-kvb .glass-card strong{color:#bcefd8}
.section{padding-top:clamp(68px,8vw,108px);padding-bottom:clamp(68px,8vw,108px)}.section-head{max-width:760px;margin-bottom:34px}
.section-head h2,#about h2,.faq .section-head h2{color:var(--kvb-v2-ink);font-size:clamp(32px,4.3vw,50px);line-height:1.06;letter-spacing:-1.8px;font-weight:780}.section-head p{max-width:650px;color:#647184;font-size:15px;line-height:1.8}
#services{background:#f6f7f4}#services .tiles-carousel .tile{border-radius:18px;box-shadow:0 14px 34px rgba(16,38,68,.075),inset 0 1px 0 #fff}#services .tiles-carousel .tile b{color:var(--kvb-v2-ink);font-size:18px}
#how{background:linear-gradient(180deg,#eef3f0,#f8f9f6)}#how .step{border-radius:18px;box-shadow:0 14px 36px rgba(16,38,68,.07)}
#business .newbiz{border-radius:28px;background:linear-gradient(125deg,#102644,#153e4b 68%,#087a53);box-shadow:0 26px 65px rgba(16,38,68,.19)}
#about .about-grid{gap:clamp(32px,6vw,78px)}#about .about-visual{overflow:hidden;border-radius:24px;box-shadow:0 26px 58px rgba(16,38,68,.16)}#about .about-visual img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}#about .about-points>div{border-radius:16px;box-shadow:0 12px 32px rgba(16,38,68,.06)}
#locations{background:#eef3f0}#tools{background:#f8f9f6}#tools .tool-grid>div{border-radius:18px;box-shadow:0 12px 32px rgba(16,38,68,.06)}.faq{background:#f6f7f4}.faq-list details{border-radius:14px}
#contact.contact{background:linear-gradient(125deg,#0b1d35,#102b4b 58%,#0b493f)}#contact .contact-box{border-radius:24px;box-shadow:0 30px 70px rgba(0,0,0,.28)}#contact .contact-box :is(input,select,textarea){border-radius:10px}
@media(max-width:760px){
.hero{min-height:0;padding:66px 0 58px}.hero .wrap.hero-grid{width:min(100% - 36px,560px);grid-template-columns:minmax(0,1fr);gap:30px}
.hero .eyebrow{margin-bottom:18px;font-size:9px;letter-spacing:1.6px}.hero h1{max-width:560px;font-size:clamp(37px,9.2vw,52px);line-height:1.02;letter-spacing:-1.8px;margin-bottom:19px}.hero h1 .hero-title-accent{margin-top:9px;font-size:.61em}
.hero .lead{font-size:15px;line-height:1.7}.hero .actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:23px 0 15px}.hero .actions .btn{min-height:49px;padding:0 12px;font-size:12px}.hero .actions .hero-services-cta{grid-column:1/-1}
.hero .trust{font-size:10px;line-height:1.7}.hero-card{padding:23px;border-radius:22px}.hero-card .logo-card{width:68px;height:68px;border-radius:17px;margin-bottom:16px}.hero-card .quick{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:17px 0}.hero-card .quick a{min-height:40px;padding:8px 4px;text-align:center;font-size:10px}.hero-card .mini-number{font-size:27px}
.section{padding-top:58px;padding-bottom:58px}.section-head{margin-bottom:25px}.section-head h2,#about h2,.faq .section-head h2{font-size:clamp(30px,7.5vw,38px);letter-spacing:-1.1px}
#why-kvb .glass-grid{gap:12px}#why-kvb .glass-card{border-radius:17px}#about .about-grid{gap:24px}#about .about-points>div{padding:18px}#contact .contact-grid{grid-template-columns:minmax(0,1fr);gap:26px}
}
@media(max-width:380px){.hero .wrap.hero-grid{width:calc(100% - 28px)}.hero h1{font-size:35px}.hero .actions{grid-template-columns:1fr}.hero .actions .hero-services-cta{grid-column:auto}.hero-card .quick{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.hero-card,.hero .actions .btn,#services .tiles-carousel .tile{transition:none!important}}

/* Layout correction: keep the language switcher inside the header. */
@media (max-width: 1280px) {
  .topbar .nav { gap: 12px; }
  .topbar .nav-right { gap: 10px; min-width: 0; }
  .topbar #mainNav { display: none; }
  .topbar #menuBtn { display: inline-flex; align-items: center; justify-content: center; }
  .topbar #mainNav.is-open,
  .topbar #mainNav.open {
    display: flex;
    position: absolute;
    top: calc(100% + 8px);
    left: 5%;
    right: 5%;
    z-index: 60;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 10px;
    border: 1px solid #dce6e2;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(12,32,48,.16);
  }
  .topbar #mainNav.is-open a,
  .topbar #mainNav.open a {
    padding: 12px 14px;
    color: #172b3d;
  }
}
.topbar .nav { position: relative; }
.topbar .nav-right { flex-shrink: 0; }
.topbar .lang { flex: 0 0 auto; white-space: nowrap; }
.topbar .brand { min-width: 0; flex: 1 1 auto; }

/* Restore the hero information panel as a readable, complete glass card. */
.hero .hero-card {
  opacity: 1 !important;
  visibility: visible !important;
  color: #f7fbff !important;
  background: linear-gradient(145deg,rgba(255,255,255,.17),rgba(255,255,255,.07)) !important;
}
.hero .hero-card .quick,
.hero .hero-card .quick a,
.hero .hero-card .mini,
.hero .hero-card .mini strong {
  opacity: 1 !important;
  visibility: visible !important;
}
.hero .hero-card .quick a { color: #f7fbff !important; }
.hero .hero-card .mini { color: #e1eaf1 !important; }
.hero .hero-card .mini strong { color: #bcefd8 !important; }

/* Full-width footer composition with balanced columns and wave. */
.footer-wave {
  display: block;
  width: 100% !important;
  max-width: none !important;
  height: clamp(72px, 10vw, 140px);
  object-fit: cover;
  object-position: center;
}
footer { width: 100%; }
footer .wrap.footer {
  width: min(1160px, 90%) !important;
  max-width: 1160px;
  margin-inline: auto;
  display: grid !important;
  grid-template-columns: minmax(230px, 1.1fr) minmax(260px, 1fr) minmax(180px, .7fr);
  align-items: center;
  gap: clamp(20px, 4vw, 56px);
  padding: 28px 0 34px;
}
footer .footer-brand { display: flex; align-items: center; gap: 14px; min-width: 0; }
footer .footer-brand img { flex: 0 0 48px; width: 48px; height: 48px; object-fit: contain; }
footer .footer-brand p { margin: 5px 0 0; color: #d2e2dc !important; opacity: 1 !important; }
footer .footer > div { min-width: 0; line-height: 1.8; }
@media (max-width: 760px) {
  footer .wrap.footer { grid-template-columns: 1fr; gap: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .hero::before, .hero::after { animation: none !important; }
}

/* Tamil navigation: prevent the language switcher from protruding on desktop. */
@media (min-width: 1281px) {
  .topbar .nav { gap: 8px; }
  .topbar .brand { flex: 0 1 190px; }
  .topbar .nav-right { flex: 1 1 auto; min-width: 0; gap: 8px; }
  .topbar #mainNav {
    flex: 1 1 auto;
    min-width: 0;
    justify-content: flex-end;
    gap: clamp(5px, .65vw, 10px);
  }
  .topbar #mainNav a {
    font-size: clamp(9px, .68vw, 11px);
    white-space: nowrap;
    letter-spacing: 0;
  }
  .topbar .lang {
    padding: 7px 9px;
    font-size: 11px;
  }
}

/* Final header fit: reserve a fixed slot for the language switcher. */
@media (min-width: 1281px) {
  .topbar .nav { display: flex !important; flex-wrap: nowrap !important; }
  .topbar .brand { flex: 0 0 165px !important; max-width: 165px; }
  .topbar .nav-right { display: flex !important; flex: 1 1 0 !important; min-width: 0 !important; gap: 6px !important; }
  .topbar #mainNav { display: flex !important; flex: 1 1 0 !important; min-width: 0 !important; justify-content: flex-end !important; gap: 6px !important; }
  .topbar #mainNav a { font-size: 10px !important; letter-spacing: 0 !important; white-space: nowrap !important; }
  .topbar .lang { display: inline-flex !important; flex: 0 0 auto !important; margin-left: 2px; padding: 7px 9px !important; font-size: 10px !important; }
}
