/* ===================================================
   TAXCODE INDIA ADVISORY — design tokens
   Navy #032C70 / Orange #F15C2A sampled from brand logo
=================================================== */
:root{
  --navy:        #032C70;
  --navy-deep:   #021B45;
  --navy-mid:    #123B8C;
  --orange:      #F15C2A;
  --orange-light:#FF8A52;
  --ink:         #10182B;
  --slate:       #5B6478;
  --slate-light: #8892A6;
  --bg:          #F7F7F5;
  --paper:       #FFFFFF;
  --line:        #E7E6E1;

  --font-head: 'Space Grotesk', 'Inter', sans-serif;
  --font-body: 'Inter', sans-serif;

  --radius: 14px;
  --ease: cubic-bezier(.22,.68,.36,1);
}

*{ box-sizing: border-box; }

html{ scroll-behavior: smooth; }

body{
  font-family: var(--font-body);
  color: var(--ink);
  background: var(--bg);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

img{ max-width: 100%; display:block; }

::selection{ background: var(--orange); color:#fff; }

a{ text-decoration:none; color:inherit; }

@media (prefers-reduced-motion: reduce){
  *{ animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; scroll-behavior:auto !important; }
}

/* ---------- Shared type ---------- */
.tc-eyebrow{
  font-family: var(--font-head);
  font-weight: 600;
  font-size: .95rem;
  color: var(--orange);
  letter-spacing: .01em;
  margin-bottom: .9rem;
  position: relative;
  padding-left: 22px;
}
.tc-eyebrow::before{
  content:"";
  position:absolute;
  left:0; top:50%;
  transform: translateY(-50%);
  width:14px; height:2px;
  background: var(--orange);
}
.tc-eyebrow-light{ color: var(--orange-light); }

.tc-h2{
  font-family: var(--font-head);
  font-weight: 600;
  font-size: clamp(1.8rem, 3vw, 2.6rem);
  line-height: 1.18;
  color: var(--navy);
  max-width: 620px;
  margin-bottom: 1.1rem;
}
.tc-h2-light{ color: #fff; }

.tc-body-text{
  color: var(--slate);
  max-width: 520px;
  font-size: 1.02rem;
}
.tc-body-text-light{ color: #C4CBE0; }

.tc-link-arrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-family: var(--font-head);
  font-weight: 600;
  color: var(--navy);
  margin-top: 1.4rem;
  border-bottom: 2px solid var(--orange);
  padding-bottom: 3px;
  transition: gap .25s var(--ease);
}
.tc-link-arrow:hover{ gap: 14px; color: var(--orange); }

/* ---------- Buttons ---------- */
.tc-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
  font-family: var(--font-head);
  font-weight: 600;
  font-size: .98rem;
  padding: 14px 26px;
  border-radius: 999px;
  border: 2px solid transparent;
  transition: transform .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease), color .25s var(--ease);
  white-space: nowrap;
}
.tc-btn i{ font-size: .95em; }
.tc-btn-primary{
  background: var(--orange);
  color: #fff;
  box-shadow: 0 10px 24px -8px rgba(241,92,42,.55);
}
.tc-btn-primary:hover{
  transform: translateY(-2px);
  box-shadow: 0 14px 28px -8px rgba(241,92,42,.65);
  color:#fff;
}
.tc-btn-ghost{
  background: transparent;
  border-color: rgba(3,44,112,.18);
  color: var(--navy);
}
.tc-btn-ghost:hover{
  border-color: var(--navy);
  background: var(--navy);
  color:#fff;
  transform: translateY(-2px);
}
.tc-btn-white{
  background:#fff;
  color: var(--orange);
  box-shadow: 0 10px 24px -8px rgba(0,0,0,.25);
}
.tc-btn-white:hover{ transform: translateY(-2px); color: var(--orange); }

/* ---------- Reveal-on-scroll (single, restrained device) ---------- */
[data-reveal]{
  opacity: 0;
  transform: translateY(22px);
  transition: opacity .7s var(--ease), transform .7s var(--ease);
}
[data-reveal].is-visible{ opacity: 1; transform: translateY(0); }

/* ===================================================
   NAV
=================================================== */
.tc-nav{
  position: sticky;
  top:0;
  z-index: 999;
  background: rgba(247,247,245,.85);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid transparent;
  transition: border-color .3s, background .3s, box-shadow .3s;
}
.tc-nav.tc-scrolled{
  background: rgba(255,255,255,.92);
  border-bottom-color: var(--line);
  box-shadow: 0 6px 24px -18px rgba(3,44,112,.35);
}
/* .tc-nav-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding: 14px 0;
} */

/* 1. Header layout & vertical padding adjustments */
.tc-nav-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 0; /* Expanded padding to give the larger logo breathing room */
}


/* .tc-brand img{ height: 42px; width:auto; } */
/* 1. Increase header logo size */
/* 2. Larger, prominent logo sizing */
.tc-brand img {
  height: 64px; /* Increased from 42px for sharp clarity and visual impact */
  max-height: 64px;
  width: auto;
  object-fit: contain;
}

/* .tc-links{
  display:flex;
  align-items:center;
  gap: 30px;
} */

/* 3. Navigation link spacing & alignment */
.tc-links {
  display: flex;
  align-items: center;
  gap: 32px; /* Uniform spacing between navigation items */
}


/* .tc-links a{
  font-family: var(--font-head);
  font-weight: 500;
  font-size: .96rem;
  color: var(--navy);
  position:relative;
  padding: 4px 0;
} */

.tc-links a {
  font-family: var(--font-head);
  font-weight: 600;
  font-size: 0.98rem;
  color: var(--navy);
  letter-spacing: -0.01em;
}

.tc-links a:not(.tc-nav-cta)::after{
  content:"";
  position:absolute;
  left:0; bottom:-2px;
  width:0; height:2px;
  background: var(--orange);
  transition: width .25s var(--ease);
}
.tc-links a:not(.tc-nav-cta):hover::after{ width:100%; }

/* .tc-nav-cta{
  display:flex;
  align-items:center;
  gap:8px;
  background: var(--navy);
  color:#fff !important;
  padding: 10px 20px;
  border-radius: 999px;
  transition: background .25s, transform .25s;
}
.tc-nav-cta:hover{ background: var(--orange); transform: translateY(-1px); } */

/* 4. Phone number pill button fix */
.tc-nav-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: var(--navy);
  color: #ffffff !important;
  padding: 12px 24px; /* Increased horizontal padding to eliminate text overflow */
  border-radius: 999px;
  font-weight: 600;
  font-size: 0.95rem;
  white-space: nowrap; /* Prevents text clipping or wrapping inside the pill */
  transition: background 0.25s, transform 0.25s, box-shadow 0.25s;
}

.tc-nav-cta:hover {
  background: var(--orange);
  transform: translateY(-2px);
  box-shadow: 0 8px 20px -6px rgba(241, 92, 42, 0.45);
}


.tc-burger{
  display:none;
  flex-direction:column;
  gap:5px;
  background:none;
  border:none;
  padding: 6px;
}
.tc-burger span{ width:24px; height:2px; background: var(--navy); transition: transform .25s, opacity .25s; }

/* ===================================================
   HERO
=================================================== */
.tc-hero{
  position: relative;
  padding: 70px 0 60px;
  overflow: hidden;
}
.tc-hero-title{
  font-family: var(--font-head);
  font-weight: 700;
  font-size: clamp(2.3rem, 4.4vw, 3.6rem);
  line-height: 1.08;
  color: var(--navy);
  margin-bottom: 1.4rem;
  letter-spacing: -.01em;
}
.tc-hero-title span{ color: var(--orange); }

.tc-hero-sub{
  font-size: 1.1rem;
  color: var(--slate);
  max-width: 480px;
  margin-bottom: 2rem;
}
.tc-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap: 16px;
  margin-bottom: 2.6rem;
}

.tc-hero-trust{
  display:flex;
  gap: 34px;
  flex-wrap: wrap;
  padding-top: 1.6rem;
  border-top: 1px solid var(--line);
}
.tc-trust-item{ display:flex; flex-direction:column; }
.tc-trust-item strong{
  font-family: var(--font-head);
  font-size: 1.7rem;
  color: var(--navy);
  font-weight: 700;
}
.tc-trust-item span{ font-size: .85rem; color: var(--slate); }

/* Hero visual panel */
/* .tc-hero-panel{
  position: relative;
  aspect-ratio: 1/0.95;
  background: linear-gradient(155deg, var(--navy) 0%, var(--navy-deep) 100%);
  border-radius: 28px;
  overflow: hidden;
  clip-path: polygon(0 0, 100% 0, 100% 92%, 88% 100%, 0 100%);
} */

/* 2. Fix hero panel overflow & container spacing */
.tc-hero-panel {
  position: relative;
  aspect-ratio: 1 / 0.95;
  background: linear-gradient(155deg, var(--navy) 0%, var(--navy-deep) 100%);
  border-radius: 28px;
  overflow: visible; /* Allows floating cards to bleed beyond card boundaries cleanly */
  margin: 0 40px; /* Provides lateral breathing room for overflow cards */
  clip-path: none; /* Removes clipping that was hiding overflowing floating elements */
}


.tc-chevron-art{
  position:absolute;
  inset:0;
  width: 100%;
  height: 100%;
}
.tc-chev{
  fill: var(--orange);
  opacity: .9;
}
.tc-chev-2{ fill: var(--orange-light); opacity: .55; }

.tc-chev-1, .tc-chev-2{
  transform-origin: 60px 240px;
  stroke-dasharray: 900;
  stroke-dashoffset: 900;
  stroke: transparent;
  animation: tc-draw 1.4s var(--ease) forwards;
}
.tc-chev-2{ animation-delay: .18s; }

@keyframes tc-draw{
  0%{ opacity: 0; transform: translateX(-40px) scale(.85); }
  100%{ opacity: .9; transform: translateX(0) scale(1); }
}

/* .tc-float-card{
  position:absolute;
  background: rgba(255,255,255,.97);
  border-radius: 14px;
  padding: 14px 18px;
  display:flex;
  align-items:center;
  gap: 12px;
  box-shadow: 0 18px 34px -14px rgba(2,15,45,.5);
  min-width: 210px;
  opacity: 0;
  animation: tc-float-in .7s var(--ease) forwards;
} */

/* 3. Adjust floating card positioning & bounds */
.tc-float-card {
  position: absolute;
  background: rgba(255, 255, 255, 0.97);
  border-radius: 14px;
  padding: 12px 16px;
  display: flex;
  align-items: center;
  gap: 12px;
  box-shadow: 0 18px 34px -14px rgba(2, 15, 45, 0.5);
  min-width: 200px;
  z-index: 2;
  opacity: 0;
  animation: tc-float-in 0.7s var(--ease) forwards;
}


/* .tc-float-card i{
  font-size: 1.3rem;
  color: var(--orange);
  background: rgba(241,92,42,.12);
  width: 40px; height:40px;
  border-radius: 10px;
  display:flex; align-items:center; justify-content:center;
  flex-shrink:0;
} */

/* Floating positions brought within readable bounds */
.tc-float-1 {
  top: 6%;
  left: -25px;
  animation-delay: 0.7s;
}

.tc-float-2 {
  top: 42%;
  right: -25px;
  animation-delay: 0.95s;
}

.tc-float-3 {
  bottom: 6%;
  left: 20px;
  animation-delay: 1.2s;
}


.tc-float-card strong{ display:block; font-family: var(--font-head); font-size: .92rem; color: var(--navy); }
.tc-float-card span{ font-size: .78rem; color: var(--slate); }

.tc-float-1{ top: 8%; left: -6%; animation-delay: .7s; }
.tc-float-2{ top: 42%; right: -8%; animation-delay: .95s; }
.tc-float-3{ bottom: 6%; left: 4%; animation-delay: 1.2s; }

/* 4. Responsive adjustments for mobile/tablet */
@media (max-width: 991px) {
  .tc-hero-panel {
    max-width: 380px;
    margin: 20px auto 40px;
  }
  
  .tc-float-1 { left: -10px; }
  .tc-float-2 { right: -10px; }
  .tc-float-3 { left: 10px; }
}
@keyframes tc-float-in{
  0%{ opacity:0; transform: translateY(16px); }
  100%{ opacity:1; transform: translateY(0); }
}
@media (min-width: 992px){
  .tc-float-2{ animation-name: tc-float-in, tc-bob; animation-duration: .7s, 5s; animation-delay: .95s, 1.7s; animation-iteration-count: 1, infinite; animation-timing-function: var(--ease), ease-in-out; }
  .tc-float-1{ animation-name: tc-float-in, tc-bob; animation-duration: .7s, 6s; animation-delay: .7s, 1.4s; animation-iteration-count: 1, infinite; animation-timing-function: var(--ease), ease-in-out; }
  .tc-float-3{ animation-name: tc-float-in, tc-bob; animation-duration: .7s, 6s; animation-delay: .7s, 1.4s; animation-iteration-count: 1, infinite; animation-timing-function: var(--ease), ease-in-out; }

}
@keyframes tc-bob{
  0%,100%{ transform: translateY(0); }
  50%{ transform: translateY(-10px); }
}

.tc-hero-edge{
  position:absolute;
  bottom:-1px; left:0; right:0;
  height: 90px;
  background: var(--paper);
  clip-path: polygon(0 100%, 100% 100%, 100% 40%, 55% 100%, 40% 20%, 0 70%);
}

/* ===================================================
   ABOUT
=================================================== */
.tc-about{ padding: 100px 0; background: var(--paper); }

.tc-about-graphic{ display:flex; flex-direction:column; gap: 20px; }
.tc-about-card{
  background: var(--bg);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 26px 26px 22px;
  position:relative;
}
.tc-about-card-alt{
  background: var(--navy);
  color:#fff;
  margin-left: 34px;
}
.tc-about-card-alt p{ color: #D7DDF0; }
.tc-about-num{
  font-family: var(--font-head);
  font-weight: 700;
  font-size: 1.6rem;
  color: var(--orange);
  display:block;
  margin-bottom: 10px;
}
.tc-about-card p{ margin:0; color: var(--ink); font-size: .98rem; }

.tc-check-list{ list-style:none; padding:0; margin: 1.6rem 0 0; }
.tc-check-list li{
  display:flex;
  align-items:flex-start;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px dashed var(--line);
  color: var(--ink);
}
.tc-check-list li:last-child{ border-bottom:none; }
.tc-check-list i{
  color: var(--orange);
  background: rgba(241,92,42,.12);
  width: 24px; height:24px;
  border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-size:.8rem;
  flex-shrink:0;
  margin-top: 2px;
}

/* ===================================================
   WHY US
=================================================== */
.tc-why{
  background: var(--navy);
  padding: 100px 0;
  position:relative;
}
.tc-why-card{
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: var(--radius);
  padding: 30px 24px;
  height: 100%;
  transition: transform .3s var(--ease), background .3s var(--ease), border-color .3s;
}
.tc-why-card:hover{
  transform: translateY(-6px);
  background: rgba(255,255,255,.1);
  border-color: rgba(241,92,42,.5);
}
.tc-why-card i{
  font-size: 1.6rem;
  color: var(--orange-light);
  margin-bottom: 16px;
  display:block;
}
.tc-why-card h3{
  font-family: var(--font-head);
  color:#fff;
  font-size: 1.15rem;
  margin-bottom: 10px;
}
.tc-why-card p{ color: #B9C1DA; font-size: .92rem; margin:0; }

/* ===================================================
   SERVICES
=================================================== */
.tc-services{ padding: 100px 0; background: var(--paper); }

.tc-service-card{
  background: var(--bg);
  border: 1px solid var(--line);
  padding: 32px 26px;
  height: 100%;
  border-radius: var(--radius);
  clip-path: polygon(0 22px, 22px 0, 100% 0, 100% 100%, 0 100%);
  transition: transform .3s var(--ease), box-shadow .3s var(--ease), background .3s var(--ease);
  position: relative;
}
.tc-service-card:hover{
  transform: translateY(-6px);
  box-shadow: 0 22px 40px -20px rgba(3,44,112,.3);
  background: #fff;
}
.tc-service-icon{
  width: 52px; height:52px;
  border-radius: 12px;
  background: var(--navy);
  color: var(--orange-light);
  display:flex; align-items:center; justify-content:center;
  font-size: 1.4rem;
  margin-bottom: 20px;
  transition: background .3s;
}
.tc-service-card:hover .tc-service-icon{ background: var(--orange); color:#fff; }
.tc-service-card h3{
  font-family: var(--font-head);
  font-size: 1.15rem;
  color: var(--navy);
  margin-bottom: 10px;
}
.tc-service-card p{ color: var(--slate); font-size: .93rem; margin:0; }

/* ===================================================
   CTA BANNER
=================================================== */
.tc-cta-banner{
  background: linear-gradient(120deg, var(--orange) 0%, #E14A1B 100%);
  padding: 56px 0;
}
.tc-cta-banner h2{
  font-family: var(--font-head);
  color:#fff;
  font-size: clamp(1.5rem, 2.6vw, 2.1rem);
  font-weight: 600;
  margin-bottom: 8px;
}
.tc-cta-banner p{ color: rgba(255,255,255,.9); margin:0; }

/* ===================================================
   TESTIMONIALS
=================================================== */
.tc-testimonials{ padding: 100px 0; background: var(--bg); text-align:center; }
.tc-testimonials .tc-eyebrow{ justify-content:center; display:inline-flex; }
.tc-testimonials .tc-h2{ margin-left:auto; margin-right:auto; }

.tc-carousel{ position: relative; }
.tc-quote-card{
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: 20px;
  padding: 50px 40px;
}
.tc-quote-card i{
  font-size: 2.2rem;
  color: var(--orange);
  opacity: .5;
}
.tc-quote-card p{
  font-family: var(--font-head);
  font-size: clamp(1.1rem, 1.8vw, 1.4rem);
  color: var(--navy);
  line-height: 1.5;
  margin: 18px 0 24px;
}
.tc-quote-author strong{ display:block; color: var(--ink); }
.tc-quote-author span{ font-size: .85rem; color: var(--slate); }

.tc-carousel-btn{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 46px; height: 46px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid var(--line);
  color: var(--navy);
  display:flex; align-items:center; justify-content:center;
  box-shadow: 0 10px 20px -10px rgba(3,44,112,.3);
  transition: background .25s, color .25s;
  z-index: 5;
}
.tc-carousel-btn:hover{ background: var(--orange); color:#fff; }
.tc-carousel-prev{ left: -10px; }
.tc-carousel-next{ right: -10px; }
@media (min-width: 992px){
  .tc-carousel-prev{ left: 40px; }
  .tc-carousel-next{ right: 40px; }
}

.tc-carousel-dots{ display:flex; justify-content:center; gap:8px; margin-top: 28px; }
.tc-carousel-dots button{
  width: 8px; height:8px;
  border-radius:50%;
  border:none;
  background: var(--line);
  padding:0;
  transition: background .25s, width .25s;
}
.tc-carousel-dots button.active{ background: var(--orange); width: 24px; border-radius: 4px; }

/* ===================================================
   FAQ
=================================================== */
.tc-faq{ padding: 100px 0; background: var(--paper); }

.tc-accordion .accordion-item{
  background: transparent;
  border: none;
  border-bottom: 1px solid var(--line);
}
.tc-accordion .accordion-button{
  font-family: var(--font-head);
  font-weight: 600;
  color: var(--navy);
  background: transparent;
  padding: 22px 4px;
  box-shadow: none;
}
.tc-accordion .accordion-button:not(.collapsed){ color: var(--orange); background: transparent; }
.tc-accordion .accordion-button:focus{ box-shadow:none; }
.tc-accordion .accordion-button::after{
  background-image: none;
  content: "\F282";
  font-family: "bootstrap-icons";
  font-size: 1rem;
  color: var(--orange);
  transition: transform .3s var(--ease);
}
.tc-accordion .accordion-button:not(.collapsed)::after{ transform: rotate(45deg); }
.tc-accordion .accordion-body{
  padding: 0 4px 24px;
  color: var(--slate);
}

/* ===================================================
   CONTACT
=================================================== */
.tc-contact{
  background: var(--navy);
  padding: 100px 0;
}
.tc-contact-list{ margin-top: 2rem; display:flex; flex-direction:column; gap: 22px; }
.tc-contact-row{ display:flex; gap: 16px; align-items:flex-start; }
.tc-contact-row i{
  width: 44px; height:44px;
  border-radius: 12px;
  background: rgba(255,255,255,.08);
  color: var(--orange-light);
  display:flex; align-items:center; justify-content:center;
  flex-shrink:0;
  font-size: 1.05rem;
}
.tc-contact-row span{ display:block; color: #93A0C4; font-size: .78rem; text-transform: uppercase; letter-spacing: .04em; margin-bottom: 3px; }
.tc-contact-row a{ color:#fff; font-family: var(--font-head); font-size: .98rem; }
.tc-contact-row a:hover{ color: var(--orange-light); }

.tc-form{
  background: #fff;
  border-radius: 20px;
  padding: 40px;
}
.tc-form label{
  font-family: var(--font-head);
  font-size: .85rem;
  font-weight: 600;
  color: var(--navy);
  margin-bottom: 6px;
  display:block;
}
.tc-form input, .tc-form textarea{
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 12px 14px;
  font-family: var(--font-body);
  color: var(--ink);
  background: var(--bg);
  transition: border-color .25s, box-shadow .25s;
}
.tc-form input:focus, .tc-form textarea:focus{
  outline:none;
  border-color: var(--orange);
  box-shadow: 0 0 0 4px rgba(241,92,42,.12);
}
.tc-form button{ margin-top: 6px; }

/* ===================================================
   FOOTER
=================================================== */
.tc-footer{
  background: var(--navy-deep);
  color: #B9C1DA;
  padding: 70px 0 0;
}
.tc-footer-logo{
  height: 40px;
  margin-bottom: 16px;
  filter: brightness(0) invert(1);
}
.tc-footer p{ font-size: .92rem; max-width: 320px; }
.tc-footer h4{
  font-family: var(--font-head);
  color:#fff;
  font-size: 1rem;
  margin-bottom: 18px;
}
.tc-footer a{ display:block; color: #B9C1DA; font-size: .92rem; padding: 5px 0; transition: color .2s; }
.tc-footer a:hover{ color: var(--orange-light); }

.tc-social{ display:flex; gap: 10px; margin-top: 20px; }
.tc-social a{
  width: 38px; height:38px;
  border-radius: 50%;
  background: rgba(255,255,255,.08);
  display:flex; align-items:center; justify-content:center;
  padding:0;
  transition: background .25s, transform .25s;
}
.tc-social a:hover{ background: var(--orange); transform: translateY(-3px); }

.tc-footer-bottom{
  margin-top: 50px;
  padding: 24px 0;
  border-top: 1px solid rgba(255,255,255,.08);
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap: 12px;
  font-size: .85rem;
}
.tc-footer-bottom a{ display:inline-flex; align-items:center; gap:6px; color:#B9C1DA; padding:0; }
.tc-footer-bottom a:hover{ color: var(--orange-light); }

/* ===================================================
   WHATSAPP FLOAT
=================================================== */
.tc-whatsapp{
  position: fixed;
  right: 24px;
  bottom: 24px;
  width: 58px; height:58px;
  border-radius: 50%;
  background: #25D366;
  color:#fff;
  display:flex; align-items:center; justify-content:center;
  font-size: 1.6rem;
  box-shadow: 0 12px 26px -8px rgba(37,211,102,.6);
  z-index: 998;
  animation: tc-pulse 2.6s ease-in-out infinite;
}
@keyframes tc-pulse{
  0%,100%{ box-shadow: 0 12px 26px -8px rgba(37,211,102,.6); }
  50%{ box-shadow: 0 12px 26px -4px rgba(37,211,102,.9), 0 0 0 8px rgba(37,211,102,.15); }
}

/* ===================================================
   RESPONSIVE
=================================================== */
@media (max-width: 991px){
  .tc-burger{ display:flex; }
  .tc-links{
    position: fixed;
    top: 74px; left:0; right:0;
    background: #fff;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    padding: 20px 24px 28px;
    border-bottom: 1px solid var(--line);
    transform: translateY(-12px);
    opacity: 0;
    pointer-events: none;
    transition: transform .3s var(--ease), opacity .3s var(--ease);
  }
  .tc-links.tc-open{ transform: translateY(0); opacity:1; pointer-events:auto; }
  .tc-links a{ padding: 10px 0; width:100%; }
  .tc-nav-cta{ margin-top: 10px; justify-content:center; }

  .tc-hero-panel{ max-width: 420px; margin: 20px auto 60px; }
  .tc-float-card{ min-width: 170px; padding: 10px 14px; }
  .tc-float-1{ left: 0; }
  .tc-float-2{ right: 0; }

  .tc-about, .tc-why, .tc-services, .tc-testimonials, .tc-faq, .tc-contact{ padding: 70px 0; }
  .tc-about-card-alt{ margin-left: 16px; }
}

@media (max-width: 576px){
  .tc-hero-trust{ gap: 22px; }
  .tc-form{ padding: 26px; }
  .tc-carousel-prev, .tc-carousel-next{ display:none; }
}

/* ===================================================
   OUR CLIENTS SECTION
=================================================== */
.tc-clients-section {
  padding: 90px 0;
  background: var(--paper);
  border-bottom: 1px solid var(--line);
}

.tc-eyebrow-center {
  justify-content: center;
  display: inline-flex;
  padding-left: 0;
}
.tc-eyebrow-center::before {
  display: none;
}

.tc-client-card {
  background: var(--bg);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 28px 20px;
  text-align: center;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s var(--ease), box-shadow 0.3s var(--ease), border-color 0.3s;
}

.tc-client-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 16px 32px -12px rgba(3, 44, 112, 0.15);
  border-color: rgba(241, 92, 42, 0.4);
  background: #ffffff;
}

.tc-client-icon {
  width: 50px;
  height: 50px;
  border-radius: 12px;
  background: rgba(3, 44, 112, 0.06);
  color: var(--navy);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.4rem;
  margin-bottom: 14px;
  transition: background 0.3s, color 0.3s;
}

.tc-client-card:hover .tc-client-icon {
  background: var(--orange);
  color: #ffffff;
}

.tc-client-name {
  font-family: var(--font-head);
  font-size: 1.05rem;
  font-weight: 600;
  color: var(--navy);
  margin-bottom: 4px;
}

.tc-client-category {
  font-size: 0.82rem;
  color: var(--slate);
}

.tc-footer-logo {
  height: 68px;            /* Enlarge image height */
  width: auto;
  margin-bottom: 20px;
  background: #ffffff;
  padding: 10px 18px;      /* Slightly larger white padding */
  border-radius: 10px;     /* Smooth corner radius */
  display: inline-block;
  filter: none;            /* Keep image filter clear */
}

.tc-form select.tc-select {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 12px 14px;
  font-family: var(--font-body);
  color: var(--ink);
  background: var(--bg);
  transition: border-color 0.25s, box-shadow 0.25s;
  appearance: auto;
  cursor: pointer;
}

.tc-form select.tc-select:focus {
  outline: none;
  border-color: var(--orange);
  box-shadow: 0 0 0 4px rgba(241, 92, 42, 0.12);
}