/* ======================================================================
   VTE - Vocational Training Equipments | Bootstrap 5 Custom Styles
   Modernized 2026 - SEO Friendly
   ====================================================================== */

:root{
  --vte-primary:#0b3d91;       /* deep blue */
  --vte-primary-dark:#082c6a;
  --vte-accent:#f5a623;        /* warm accent */
  --vte-accent-dark:#d88a0a;
  --vte-dark:#0d1b2a;
  --vte-muted:#5b6b7a;
  --vte-light:#f4f7fb;
  --vte-border:#e3e8ef;
  --vte-success:#1c9b73;
  --vte-radius:14px;
  --vte-shadow:0 10px 30px rgba(11,61,145,.08);
  --vte-shadow-hover:0 18px 40px rgba(11,61,145,.16);
}

/* ---------- Base ---------- */
html{scroll-behavior:smooth}
body{
  font-family:'Inter','Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  color:#1e2a38;
  background:#fff;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--vte-primary);text-decoration:none;transition:color .2s ease}
a:hover{color:var(--vte-accent-dark)}
img{max-width:100%;height:auto}

h1,h2,h3,h4,h5,h6{
  font-family:'Poppins','Inter',sans-serif;
  font-weight:700;
  color:var(--vte-dark);
  letter-spacing:-.01em;
}
h1{font-size:clamp(1.9rem,3vw + .5rem,2.75rem);line-height:1.2}
h2{font-size:clamp(1.5rem,1.6vw + .8rem,2.1rem)}
h3{font-size:1.25rem}

.section-pad{padding:72px 0}
@media (max-width:767px){.section-pad{padding:48px 0}}

.section-title{
  font-size:clamp(1.6rem,1.8vw + .8rem,2.25rem);
  margin-bottom:.5rem;
}
.section-eyebrow{
  display:inline-block;
  font-size:.78rem;
  font-weight:600;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:var(--vte-accent-dark);
  background:rgba(245,166,35,.12);
  padding:.35rem .9rem;
  border-radius:99px;
  margin-bottom:.85rem;
}
.section-divider{
  width:64px;height:4px;border-radius:2px;
  background:linear-gradient(90deg,var(--vte-primary),var(--vte-accent));
  margin:.75rem 0 1.5rem;
}
.text-vte-primary{color:var(--vte-primary)!important}
.bg-vte-light{background:var(--vte-light)!important}
.bg-vte-primary{background:var(--vte-primary)!important;color:#fff}

/* ---------- Buttons ---------- */
.btn-vte-primary{
  background:var(--vte-primary);
  border:1px solid var(--vte-primary);
  color:#fff;
  padding:.75rem 1.6rem;
  font-weight:600;
  border-radius:99px;
  transition:all .25s ease;
  display:inline-flex;align-items:center;gap:.5rem;
}
.btn-vte-primary:hover{
  background:var(--vte-primary-dark);
  border-color:var(--vte-primary-dark);
  color:#fff;transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(11,61,145,.25);
}
.btn-vte-accent{
  background:var(--vte-accent);
  border:1px solid var(--vte-accent);
  color:#1a1a1a;
  padding:.75rem 1.6rem;
  font-weight:600;
  border-radius:99px;
  transition:all .25s ease;
  display:inline-flex;align-items:center;gap:.5rem;
}
.btn-vte-accent:hover{
  background:var(--vte-accent-dark);
  border-color:var(--vte-accent-dark);
  color:#fff;transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(245,166,35,.35);
}
.btn-vte-outline{
  background:transparent;
  border:1.5px solid var(--vte-primary);
  color:var(--vte-primary);
  padding:.7rem 1.5rem;
  font-weight:600;
  border-radius:99px;
  transition:all .25s ease;
}
.btn-vte-outline:hover{background:var(--vte-primary);color:#fff}

/* ---------- Top Info Bar ---------- */
.topbar{
  background:var(--vte-dark);
  color:#cfd8e3;
  font-size:.85rem;
  padding:.5rem 0;
}
.topbar a{color:#cfd8e3}
.topbar a:hover{color:var(--vte-accent)}
.topbar .topbar-list{display:flex;gap:1.25rem;flex-wrap:wrap}
.topbar i{color:var(--vte-accent);margin-right:.35rem}

/* ---------- Header / Navbar ---------- */
.headersec{
  background:#fff;
  box-shadow:0 2px 10px rgba(0,0,0,.06);
  position:sticky;top:0;z-index:1030;
  padding:.5rem 0;
}
.navbar-brand{
  display:inline-flex;align-items:center;
  padding:.25rem 0;
  margin-right:1.25rem;
  transition:opacity .25s ease;
  text-decoration:none;
}
.navbar-brand:hover{opacity:.85}
.navbar-brand .brand-text{
  display:inline-flex;align-items:center;
  line-height:1;
}
.navbar-brand .brand-name{
  font-family:'Poppins','Inter',sans-serif;
  font-size:1.85rem;font-weight:900;
  color:var(--vte-primary);
  letter-spacing:-.02em;
  line-height:1;
}
.navbar-brand .brand-tagline{
  font-family:'Poppins','Inter',sans-serif;
  font-size:1.05rem;font-weight:600;
  color:var(--vte-dark);
  letter-spacing:.01em;
  line-height:1.1;
  margin-left:.75rem;
  padding-left:.85rem;
  border-left:2px solid var(--vte-accent);
}
@media (max-width:991px){
  .navbar-brand .brand-name{font-size:1.6rem}
  .navbar-brand .brand-tagline{font-size:.92rem;margin-left:.55rem;padding-left:.65rem}
}
@media (max-width:575px){
  .navbar-brand .brand-name{font-size:1.4rem}
  .navbar-brand .brand-tagline{display:none}
}
.navbar .nav-link{
  color:var(--vte-dark);
  font-weight:600;
  padding:.6rem 1rem !important;
  position:relative;
  font-size:.95rem;
}
.navbar .nav-link:hover,.navbar .nav-link.active{color:var(--vte-primary)}
.navbar .nav-link.active::after{
  content:"";position:absolute;bottom:.2rem;left:1rem;right:1rem;
  height:3px;border-radius:2px;background:var(--vte-accent);
}
.header-cta{
  background:var(--vte-accent)!important;
  color:#1a1a1a!important;
  font-weight:700!important;
  border-radius:99px;
  padding:.65rem 1.4rem!important;
  margin-left:.75rem;
  box-shadow:0 6px 16px rgba(245,166,35,.28);
  border:2px solid var(--vte-accent);
  transition:all .25s ease;
  letter-spacing:.02em;
}
.header-cta:hover{
  background:var(--vte-accent-dark)!important;
  border-color:var(--vte-accent-dark);
  color:#fff!important;
  transform:translateY(-2px);
  box-shadow:0 10px 22px rgba(245,166,35,.38);
}
.header-cta::after{display:none!important}
.header-cta i{color:#1a1a1a;transition:color .25s ease}
.header-cta:hover i{color:#fff}
@media (max-width:991.98px){
  .header-cta{
    margin-left:0;margin-top:.5rem;
    display:inline-flex!important;
  }
}

/* ---------- SEO Content Section (homepage) ---------- */
.seo-content-sec{position:relative}
.seo-content-sec .seo-intro{
  color:#3a4a5b;line-height:1.9;font-size:1.02rem;
  max-width:900px;margin:0 auto;
}
.seo-content-sec .seo-intro p{margin-bottom:1.15rem}
.seo-content-sec .seo-intro strong{color:var(--vte-dark)}

/* Equipment category grid inside SEO block */
.seo-cat-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;
  margin-top:2.5rem;
}
@media (max-width:991px){.seo-cat-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:575px){.seo-cat-grid{grid-template-columns:1fr}}

.seo-cat-card{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);
  padding:1.6rem 1.4rem;height:100%;
  transition:all .3s ease;position:relative;overflow:hidden;
}
.seo-cat-card::before{
  content:"";position:absolute;top:0;left:0;right:0;height:4px;
  background:linear-gradient(90deg,var(--vte-primary),var(--vte-accent));
  transform:scaleX(0);transform-origin:left;transition:transform .35s ease;
}
.seo-cat-card:hover{
  transform:translateY(-5px);
  box-shadow:var(--vte-shadow-hover);
  border-color:transparent;
}
.seo-cat-card:hover::before{transform:scaleX(1)}
.seo-cat-card .scc-ico{
  width:52px;height:52px;border-radius:13px;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,rgba(11,61,145,.1),rgba(245,166,35,.15));
  color:var(--vte-primary);font-size:1.35rem;margin-bottom:1rem;
}
.seo-cat-card h3{
  font-size:1.08rem;color:var(--vte-dark);
  font-weight:700;margin-bottom:.55rem;line-height:1.35;
}
.seo-cat-card p{
  color:var(--vte-muted);font-size:.9rem;line-height:1.65;margin:0;
}

/* Collapsible long-form text */
.seo-collapse{
  max-height:0;overflow:hidden;
  transition:max-height .5s ease;
}
.seo-collapse.open{max-height:4000px}
.seo-readmore-btn{
  margin-top:1.5rem;cursor:pointer;
}
.seo-readmore-btn .rm-icon{transition:transform .3s ease;margin-left:.35rem;font-size:.8rem}

/* Africa / regions chips */
.seo-regions{
  display:flex;flex-wrap:wrap;gap:.5rem;
  margin-top:1.25rem;justify-content:center;
}
.seo-regions .region-chip{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:99px;padding:.45rem 1rem;
  font-size:.85rem;font-weight:600;color:#3a4a5b;
  display:inline-flex;align-items:center;gap:.4rem;
  transition:all .25s ease;
}
.seo-regions .region-chip i{color:var(--vte-accent);font-size:.75rem}
.seo-regions .region-chip:hover{
  background:var(--vte-primary);color:#fff;border-color:var(--vte-primary);
  transform:translateY(-2px);
}
.seo-regions .region-chip:hover i{color:#fff}

/* ---------- Catalog Dropdown ---------- */
.catalog-dropdown .dropdown-toggle{
  display:inline-flex;align-items:center;gap:.35rem;
}
.catalog-dropdown .dropdown-toggle::after{
  border:none;
  content:"\f078";
  font-family:"Font Awesome 6 Free";font-weight:900;
  font-size:.65rem;
  vertical-align:middle;margin-left:.15rem;
  transition:transform .25s ease;
}
.catalog-dropdown .dropdown-toggle.show::after,
.catalog-dropdown:hover .dropdown-toggle::after{
  transform:rotate(180deg);
}
.catalog-menu{
  border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);
  box-shadow:var(--vte-shadow-hover);
  padding:.5rem;
  min-width:280px;
  margin-top:.35rem!important;
  max-height:calc(100vh - 140px);overflow-y:auto;
}
.catalog-menu .dropdown-item{
  display:flex;align-items:center;gap:.6rem;
  padding:.6rem .85rem;
  border-radius:8px;
  color:#3a4a5b;font-weight:500;font-size:.92rem;
  white-space:normal;
  transition:all .2s ease;
}
.catalog-menu .dropdown-item i{
  color:var(--vte-accent);font-size:.7rem;flex:none;
  transition:transform .2s ease;
}
.catalog-menu .dropdown-item span{flex:1;line-height:1.35}
.catalog-menu .dropdown-item:hover,
.catalog-menu .dropdown-item:focus{
  background:var(--vte-light);
  color:var(--vte-primary);
}
.catalog-menu .dropdown-item:hover i{transform:translateX(3px)}
.catalog-menu .dropdown-item-all{
  background:rgba(11,61,145,.06);
  color:var(--vte-primary);font-weight:600;
}
.catalog-menu .dropdown-item-all:hover{
  background:var(--vte-primary);color:#fff;
}
.catalog-menu .dropdown-item-all:hover i{color:#fff}
.catalog-menu .dropdown-divider{
  border-color:var(--vte-border);
  margin:.35rem -.5rem;
}
/* Custom scrollbar for long category lists */
.catalog-menu::-webkit-scrollbar{width:6px}
.catalog-menu::-webkit-scrollbar-track{background:transparent}
.catalog-menu::-webkit-scrollbar-thumb{
  background:var(--vte-border);border-radius:3px;
}
.catalog-menu::-webkit-scrollbar-thumb:hover{background:var(--vte-primary)}

/* Mobile: native list-style dropdown */
@media (max-width:991.98px){
  .catalog-menu{
    border:none;box-shadow:none;
    padding:0 0 0 1rem;margin-top:0!important;
    max-height:none;
    background:transparent;
    min-width:0;
  }
  .catalog-menu .dropdown-item{
    padding:.5rem .65rem;font-size:.9rem;
  }
  .catalog-dropdown .dropdown-toggle::after{margin-left:.4rem}
}

/* ---------- Hero / Banner ---------- */
.homebanner-wrap{position:relative}
.homebanner{position:relative}
.homebanner .bitem{position:relative}
.homebanner .bitem img{
  width:100%;height:clamp(320px,46vw,600px);object-fit:cover;display:block;
}
.homebanner .bitem::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(11,27,42,.65) 0%,rgba(11,27,42,.25) 60%,rgba(11,27,42,0) 100%);
  pointer-events:none;
}

/* Hero overlay caption */
.hero-caption{
  position:absolute;inset:0;display:flex;align-items:center;
  pointer-events:none;z-index:2;
}
.hero-caption .container{pointer-events:auto}
.hero-eyebrow{
  display:inline-block;
  background:rgba(245,166,35,.95);
  color:#1a1a1a;
  font-size:.78rem;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;
  padding:.4rem .9rem;border-radius:99px;
  margin-bottom:1rem;
  box-shadow:0 6px 18px rgba(0,0,0,.2);
}
.hero-caption h1,
.hero-caption .hero-heading{
  color:#fff;font-weight:800;
  font-size:clamp(1.6rem,2.6vw + .6rem,2.75rem);
  line-height:1.2;
  text-shadow:0 4px 24px rgba(0,0,0,.45);
  max-width:680px;margin-bottom:1rem;
}
.hero-caption p{
  color:#e9eef5;max-width:580px;margin-bottom:1.5rem;
  text-shadow:0 2px 12px rgba(0,0,0,.4);
  font-size:1.02rem;
}
.hero-outline-btn{
  background:rgba(255,255,255,.9)!important;
  border-color:#fff!important;
}
/* Owl auto-applies fade — animate caption in on each active slide */
.homebanner .owl-item .hero-caption > .container{
  opacity:0;transform:translateY(18px);
  transition:opacity .6s ease .15s, transform .6s ease .15s;
}
.homebanner .owl-item.active .hero-caption > .container{
  opacity:1;transform:translateY(0);
}

/* Prev / Next nav buttons */
.hero-nav{
  position:absolute;top:50%;transform:translateY(-50%);
  width:48px;height:48px;border-radius:50%;
  background:rgba(255,255,255,.92);
  border:none;color:var(--vte-primary);
  font-size:1.05rem;
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;z-index:5;
  box-shadow:0 8px 22px rgba(0,0,0,.18);
  transition:background .25s ease, color .25s ease, transform .25s ease;
}
.hero-nav:hover{
  background:var(--vte-accent);color:#1a1a1a;
  transform:translateY(-50%) scale(1.06);
}
.hero-prev{left:18px}
.hero-next{right:18px}

/* Owl dots styled */
.homebanner .owl-dots{
  position:absolute;left:0;right:0;bottom:18px;
  text-align:center;z-index:4;
}
.homebanner .owl-dots .owl-dot span{
  width:10px;height:10px;margin:4px;border-radius:50%;
  background:rgba(255,255,255,.5);transition:all .25s ease;
}
.homebanner .owl-dots .owl-dot.active span,
.homebanner .owl-dots .owl-dot:hover span{
  background:var(--vte-accent);width:28px;border-radius:99px;
}

@media (max-width:767px){
  .hero-caption h1,
  .hero-caption .hero-heading{font-size:1.4rem;margin-bottom:.6rem}
  .hero-caption p{font-size:.9rem;margin-bottom:1rem}
  .hero-eyebrow{font-size:.7rem;padding:.3rem .7rem;margin-bottom:.6rem}
  .hero-nav{width:38px;height:38px;font-size:.85rem}
  .hero-prev{left:8px}
  .hero-next{right:8px}
}

/* ---------- Trust Badges Strip ---------- */
.trust-strip{
  background:var(--vte-light);
  border-top:1px solid var(--vte-border);
  border-bottom:1px solid var(--vte-border);
  padding:1.25rem 0;
}
.trust-item{
  display:flex;align-items:center;gap:.75rem;
  color:var(--vte-dark);font-weight:600;
}
.trust-item .ti-ico{
  width:42px;height:42px;border-radius:50%;
  background:#fff;border:1px solid var(--vte-border);
  display:flex;align-items:center;justify-content:center;
  color:var(--vte-primary);font-size:1.1rem;flex:none;
}

/* ---------- Featured Categories ---------- */
.cat-card{
  display:block;background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);overflow:hidden;
  transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;
  height:100%;
}
.cat-card:hover{
  transform:translateY(-6px);
  box-shadow:var(--vte-shadow-hover);
  border-color:transparent;
}
.cat-card .cat-img{
  position:relative;background:#f4f7fb;
  aspect-ratio:4/3;overflow:hidden;
}
.cat-card .cat-img img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .5s ease;
}
.cat-card:hover .cat-img img{transform:scale(1.06)}
.cat-card .cat-body{padding:1.1rem 1.25rem 1.25rem}
.cat-card .cat-title{
  font-weight:700;color:var(--vte-dark);font-size:1.05rem;margin:0 0 .35rem;
  display:flex;justify-content:space-between;align-items:center;gap:.5rem;
}
.cat-card .cat-title::after{
  content:"\f061";font-family:"FontAwesome";color:var(--vte-accent);
  font-size:.8rem;transition:transform .3s ease;
}
.cat-card:hover .cat-title::after{transform:translateX(4px)}
.cat-card .cat-sub{color:var(--vte-muted);font-size:.875rem;margin:0}

/* ---------- About Section ---------- */
.about-img-wrap{
  position:relative;border-radius:var(--vte-radius);overflow:hidden;
  box-shadow:var(--vte-shadow);
}
.about-img-wrap::before{
  content:"";position:absolute;left:-18px;top:-18px;
  width:120px;height:120px;border-radius:var(--vte-radius);
  background:linear-gradient(135deg,var(--vte-accent),var(--vte-primary));
  z-index:-1;
}
.about-stats{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;
  margin-top:1.75rem;
}
.about-stats .stat{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);
  padding:1rem;text-align:center;
}
.about-stats .stat .num{
  display:block;font-size:1.6rem;font-weight:800;color:var(--vte-primary);
  font-family:'Poppins',sans-serif;line-height:1.1;
}
.about-stats .stat .lbl{
  font-size:.8rem;color:var(--vte-muted);text-transform:uppercase;letter-spacing:.05em;
}

/* ---------- Why Choose Us / Features (SEO) ---------- */
.feature-card{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);
  padding:1.75rem 1.5rem;height:100%;
  transition:all .3s ease;
}
.feature-card:hover{
  transform:translateY(-4px);
  box-shadow:var(--vte-shadow-hover);
  border-color:transparent;
}
.feature-card .fc-ico{
  width:56px;height:56px;border-radius:14px;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,rgba(11,61,145,.1),rgba(245,166,35,.15));
  color:var(--vte-primary);font-size:1.5rem;margin-bottom:1rem;
}
.feature-card h3{font-size:1.1rem;margin-bottom:.5rem}
.feature-card p{color:var(--vte-muted);font-size:.92rem;margin:0}

/* ---------- Industries / Applications ---------- */
.industry-tile{
  position:relative;display:block;border-radius:var(--vte-radius);
  overflow:hidden;height:200px;
}
.industry-tile img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .5s ease;
}
.industry-tile:hover img{transform:scale(1.08)}
.industry-tile::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(11,27,42,0) 40%,rgba(11,27,42,.85) 100%);
}
.industry-tile span{
  position:absolute;left:1rem;right:1rem;bottom:1rem;
  color:#fff;font-weight:700;z-index:2;font-size:1.05rem;
}

/* ---------- Stats Counter Bar ---------- */
.stats-bar{
  background:linear-gradient(135deg,var(--vte-primary) 0%,var(--vte-primary-dark) 100%);
  color:#fff;padding:48px 0;
}
.stats-bar .stat-num{
  font-size:clamp(1.8rem,2vw + 1rem,2.6rem);font-weight:800;
  font-family:'Poppins',sans-serif;color:var(--vte-accent);
}
.stats-bar .stat-lbl{
  font-size:.9rem;color:#dbe4f0;text-transform:uppercase;letter-spacing:.1em;
}

/* ---------- News / Blog Cards ---------- */
.blog-card{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);overflow:hidden;
  height:100%;display:flex;flex-direction:column;
  transition:all .3s ease;
}
.blog-card:hover{
  transform:translateY(-4px);
  box-shadow:var(--vte-shadow-hover);
  border-color:transparent;
}
.blog-card .blog-img{aspect-ratio:16/10;overflow:hidden;background:#f4f7fb}
.blog-card .blog-img img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .5s ease;
}
.blog-card:hover .blog-img img{transform:scale(1.05)}
.blog-card .blog-body{padding:1.25rem;flex:1;display:flex;flex-direction:column}
.blog-card .blog-tag{
  display:inline-block;background:rgba(11,61,145,.1);
  color:var(--vte-primary);font-size:.72rem;font-weight:600;
  padding:.25rem .65rem;border-radius:99px;margin-bottom:.6rem;
  text-transform:uppercase;letter-spacing:.05em;
}
.blog-card .blog-title{
  font-size:1.05rem;font-weight:700;color:var(--vte-dark);
  margin-bottom:.5rem;line-height:1.35;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.blog-card .blog-meta{font-size:.8rem;color:var(--vte-muted);margin-bottom:.5rem}
.blog-card .blog-brief{
  color:var(--vte-muted);font-size:.9rem;flex:1;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
.blog-card .blog-more{
  color:var(--vte-primary);font-weight:600;margin-top:.75rem;
  display:inline-flex;align-items:center;gap:.35rem;font-size:.9rem;
}

/* ---------- FAQ Accordion (SEO Schema-friendly) ---------- */
.faq-section .accordion-item{
  border:1px solid var(--vte-border);
  border-radius:var(--vte-radius)!important;
  margin-bottom:.75rem;overflow:hidden;
}
.faq-section .accordion-button{
  background:#fff;color:var(--vte-dark);font-weight:600;
  padding:1.1rem 1.25rem;border:none;box-shadow:none;
  font-size:1rem;
}
.faq-section .accordion-button:not(.collapsed){
  background:var(--vte-light);color:var(--vte-primary);
}
.faq-section .accordion-button:focus{box-shadow:none;border-color:transparent}
.faq-section .accordion-body{
  color:var(--vte-muted);padding:1rem 1.25rem 1.25rem;
  background:#fff;border-top:1px solid var(--vte-border);
}

/* ---------- Testimonials ---------- */
.testi-card{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);
  padding:1.75rem;height:100%;
  position:relative;
}
.testi-card::before{
  content:"\201C";position:absolute;top:-10px;left:18px;
  font-size:4rem;color:var(--vte-accent);
  font-family:Georgia,serif;line-height:1;
}
.testi-card .testi-text{color:var(--vte-dark);font-style:italic;margin-bottom:1rem}
.testi-card .testi-author{font-weight:700;color:var(--vte-primary);margin:0}
.testi-card .testi-role{font-size:.85rem;color:var(--vte-muted)}
.testi-card .testi-stars{color:var(--vte-accent);margin-bottom:.75rem}

/* ---------- CTA Banner ---------- */
.cta-banner{
  background:linear-gradient(135deg,var(--vte-primary) 0%,var(--vte-primary-dark) 100%);
  color:#fff;border-radius:var(--vte-radius);
  padding:3rem 2rem;text-align:center;
  position:relative;overflow:hidden;
}
.cta-banner::before{
  content:"";position:absolute;top:-50%;right:-10%;
  width:300px;height:300px;border-radius:50%;
  background:rgba(245,166,35,.15);
}
.cta-banner h2{color:#fff;margin-bottom:.75rem;position:relative;z-index:2}
.cta-banner p{color:#dbe4f0;max-width:620px;margin:0 auto 1.5rem;position:relative;z-index:2}
.cta-banner .btn-group-cta{position:relative;z-index:2;display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}

/* ---------- Footer ---------- */
.footersec{
  background:var(--vte-dark);color:#b8c5d3;padding:60px 0 0;
}
.footersec .footertitle{
  color:#fff;font-weight:700;font-size:1.05rem;
  margin-bottom:1.25rem;position:relative;padding-bottom:.65rem;
}
.footersec .footertitle::after{
  content:"";position:absolute;bottom:0;left:0;
  width:36px;height:3px;background:var(--vte-accent);border-radius:2px;
}
.footersec a{color:#b8c5d3;transition:color .2s ease}
.footersec a:hover{color:var(--vte-accent)}
.footersec ul{list-style:none;padding:0;margin:0}
.footersec ul li{margin-bottom:.55rem;font-size:.92rem}
.footersec .flogo img{max-height:60px;margin-bottom:1rem;filter:brightness(0) invert(1)}
.footersec .fadd p{margin:0 0 .25rem;font-size:.9rem;color:#b8c5d3}
.footersec .fsocial{margin-top:1rem;display:flex;gap:.5rem}
.footersec .fsocial a{
  width:38px;height:38px;border-radius:50%;
  background:rgba(255,255,255,.08);
  display:inline-flex;align-items:center;justify-content:center;
  color:#fff;font-size:.95rem;
}
.footersec .fsocial a:hover{background:var(--vte-accent);color:#1a1a1a}
.footersec .contactinfo li{display:flex;gap:.65rem;align-items:flex-start;margin-bottom:.85rem}
.footersec .contactinfo i{
  color:var(--vte-accent);margin-top:.2rem;flex:none;width:18px;
}
.footersec .contactinfo p,.footersec .contactinfo a{
  margin:0;font-size:.92rem;color:#b8c5d3;
}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.08);
  margin-top:40px;padding:1.25rem 0;
  text-align:center;font-size:.85rem;color:#8b9aab;
}
.footer-bottom a{color:#b8c5d3}

/* ---------- Floating Support ---------- */
.support{
  position:fixed;bottom:24px;right:24px;width:54px;height:54px;
  background:var(--vte-accent);border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;z-index:1040;
  box-shadow:0 8px 24px rgba(0,0,0,.2);
  transition:transform .25s ease;
}
.support:hover{transform:scale(1.08)}
.support img{width:24px;height:24px}
.inner-fabs{
  position:fixed;bottom:90px;right:24px;display:flex;flex-direction:column;
  gap:.5rem;z-index:1040;opacity:0;pointer-events:none;
  transform:translateY(10px);transition:all .25s ease;
}
.inner-fabs.show{opacity:1;pointer-events:auto;transform:translateY(0)}
.inner-fabs a{
  width:46px;height:46px;border-radius:50%;
  background:var(--vte-primary);color:#fff;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 18px rgba(0,0,0,.18);font-size:1.05rem;
}
.inner-fabs a:hover{background:var(--vte-accent-dark);color:#fff}

/* ---------- Owl Carousel patch (kept for compatibility) ---------- */
.owl-carousel .owl-stage-outer{overflow:hidden}

/* ---------- Utility ---------- */
.text-muted-vte{color:var(--vte-muted)!important}
.shadow-vte{box-shadow:var(--vte-shadow)}
.rounded-vte{border-radius:var(--vte-radius)!important}

/* ============================================================
   INNER PAGES - shared styles for about / products / articles /
   contacts / product-detail
   ============================================================ */

/* ---------- Inner page banner ---------- */
.page-banner{
  position:relative;
  background:linear-gradient(135deg,var(--vte-primary) 0%,var(--vte-primary-dark) 100%);
  color:#fff;
  padding:60px 0 50px;
  overflow:hidden;
}
.page-banner::before{
  content:"";position:absolute;top:-100px;right:-80px;
  width:340px;height:340px;border-radius:50%;
  background:rgba(245,166,35,.12);
}
.page-banner::after{
  content:"";position:absolute;bottom:-120px;left:-60px;
  width:260px;height:260px;border-radius:50%;
  background:rgba(255,255,255,.05);
}
.page-banner .container{position:relative;z-index:2}
.page-banner h1,
.page-banner .h1{
  color:#fff;font-weight:800;
  font-size:clamp(1.7rem,2vw + 1rem,2.5rem);
  margin:0 0 .5rem;
}
.page-banner .breadcrumbs{
  color:#cfd8e3;font-size:.92rem;
}
.page-banner .breadcrumbs a{color:#fff;font-weight:600}
.page-banner .breadcrumbs a:hover{color:var(--vte-accent)}

/* ---------- About page ---------- */
.about-page-img{
  border-radius:var(--vte-radius);
  overflow:hidden;
  box-shadow:var(--vte-shadow);
  margin-bottom:1.75rem;
}
.about-page-img img{width:100%;height:auto;display:block}
.about-page-content h2,
.about-page-content .heading2{
  font-size:1.75rem;color:var(--vte-dark);
  margin-bottom:1rem;font-weight:700;
}
.about-page-content p{
  color:#3a4a5b;line-height:1.8;margin-bottom:1.1rem;font-size:1rem;
}

/* ---------- Products listing page ---------- */
.product-listing-cat{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);
  padding:1.75rem;margin-bottom:2rem;
}
.product-listing-cat h1,
.product-listing-cat h3{
  color:var(--vte-dark);font-weight:700;
  font-size:1.6rem;margin-bottom:1rem;
}
.product-listing-cat .col-md-12 + .col-md-12 p{
  color:var(--vte-muted);line-height:1.75;
}

/* Sub-category card (used in products.php loop) */
.productsb{
  display:flex;flex-direction:column;
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);overflow:hidden;
  height:100%;transition:all .3s ease;
  text-align:center;
}
.productsb:hover{
  transform:translateY(-4px);
  box-shadow:var(--vte-shadow-hover);border-color:transparent;
}
.productsb .productimage{
  display:block;background:#f4f7fb;aspect-ratio:4/3;overflow:hidden;
}
.productsb .productimage img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .5s ease;
}
.productsb:hover .productimage img{transform:scale(1.06)}
.productsb .product_name{padding:.9rem 1rem 1.1rem}
.productsb .product_name a{color:var(--vte-dark);font-weight:600;font-size:1rem}
.productsb .product_name a:hover{color:var(--vte-primary)}

/* Product list row (with image + details) */
.product-row{
  display:flex;flex-wrap:wrap;
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);
  padding:1.25rem;margin-bottom:1.25rem;
  transition:all .3s ease;
}
.product-row:hover{box-shadow:var(--vte-shadow);border-color:transparent}
.product-row .img-thumbnail{
  border-radius:10px;border:1px solid var(--vte-border);
  background:#fafbfd;padding:.4rem;width:100%;height:auto;
}
.product-row .details_name h3{
  font-size:1.2rem;margin:.25rem 0 .5rem;
}
.product-row .details_name h3 a{color:var(--vte-dark)}
.product-row .details_name h3 a:hover{color:var(--vte-primary)}
.product-row .details_name span{color:var(--vte-muted);font-size:.9rem}
.product-row .details_name .disc1{
  color:#3a4a5b;line-height:1.7;margin:.85rem 0;
}
.product-row .btngroup{display:flex;gap:.5rem;flex-wrap:wrap}
.product-row .btngroup .btn{
  border-radius:99px;font-weight:600;padding:.55rem 1.25rem;
}
.product-row .btn-primary{
  background:var(--vte-primary);border-color:var(--vte-primary);
}
.product-row .btn-primary:hover{
  background:var(--vte-primary-dark);border-color:var(--vte-primary-dark);
}
.product-row .btn-danger{
  background:var(--vte-accent);border-color:var(--vte-accent);color:#1a1a1a;
}
.product-row .btn-danger:hover{
  background:var(--vte-accent-dark);border-color:var(--vte-accent-dark);color:#fff;
}

/* Sidebar */
.sidebar-card{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);
  padding:1.25rem;margin-bottom:1.25rem;
}
.sidebar-card h4,
.sidebar-card .sb-title{
  font-size:1rem;font-weight:700;color:var(--vte-dark);
  margin:0 0 .85rem;padding-bottom:.65rem;
  border-bottom:2px solid var(--vte-light);
}
.sidebar-card ul{list-style:none;padding:0;margin:0}
.sidebar-card ul li{margin:.4rem 0}
.sidebar-card ul li a{
  color:#3a4a5b;font-size:.92rem;
  display:flex;align-items:center;gap:.5rem;padding:.35rem 0;
}
.sidebar-card ul li a::before{
  content:"\f054";font-family:"Font Awesome 6 Free";font-weight:900;
  font-size:.65rem;color:var(--vte-accent);
}
.sidebar-card ul li a:hover{color:var(--vte-primary)}

/* ---------- Articles / Blog list page ---------- */
.alist-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
@media (max-width:991px){.alist-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:575px){.alist-grid{grid-template-columns:1fr}}

/* ---------- Contact page ---------- */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
@media (max-width:767px){.contact-grid{grid-template-columns:1fr}}

.contact-info-card{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);padding:2rem;height:100%;
}
.contact-info-card h2{font-size:1.5rem;margin-bottom:.75rem;color:var(--vte-dark)}
.contact-info-card .ci-item{
  display:flex;gap:1rem;align-items:flex-start;
  padding:1rem 0;border-bottom:1px solid var(--vte-light);
}
.contact-info-card .ci-item:last-child{border-bottom:none}
.contact-info-card .ci-ico{
  width:44px;height:44px;border-radius:12px;flex:none;
  background:linear-gradient(135deg,rgba(11,61,145,.1),rgba(245,166,35,.15));
  color:var(--vte-primary);font-size:1.1rem;
  display:flex;align-items:center;justify-content:center;
}
.contact-info-card .ci-text strong{
  display:block;color:var(--vte-dark);margin-bottom:.15rem;
}
.contact-info-card .ci-text a,
.contact-info-card .ci-text p{
  color:var(--vte-muted);margin:0;font-size:.95rem;line-height:1.6;
}
.contact-info-card .ci-text a:hover{color:var(--vte-primary)}

.contact-form-card{
  background:linear-gradient(135deg,var(--vte-primary) 0%,var(--vte-primary-dark) 100%);
  color:#fff;border-radius:var(--vte-radius);padding:2rem;
  position:relative;overflow:hidden;
}
.contact-form-card::before{
  content:"";position:absolute;top:-60px;right:-60px;
  width:200px;height:200px;border-radius:50%;
  background:rgba(245,166,35,.18);
}
.contact-form-card h2{color:#fff;font-size:1.5rem;margin-bottom:.5rem;position:relative;z-index:2}
.contact-form-card .subtext{
  color:#cfd8e3;margin-bottom:1.5rem;font-size:.95rem;position:relative;z-index:2;
}
.contact-form-card form{position:relative;z-index:2}
.contact-form-card .form-control,
.contact-form-card .form-control:focus{
  background:rgba(255,255,255,.95);
  border:1px solid rgba(255,255,255,.2);
  border-radius:10px;padding:.7rem 1rem;
  margin-bottom:.85rem;font-size:.95rem;color:#1e2a38;
}
.contact-form-card .form-control:focus{
  box-shadow:0 0 0 3px rgba(245,166,35,.3);outline:none;
}
.contact-form-card textarea.form-control{min-height:110px;resize:vertical}
.contact-form-card .captcha{
  display:flex;align-items:center;gap:.75rem;
  background:rgba(255,255,255,.08);
  padding:.65rem .9rem;border-radius:10px;
  margin-bottom:.85rem;
}
.contact-form-card .captcha .ctext{
  color:#fff;font-weight:700;font-size:1rem;flex:none;
}
.contact-form-card .captcha .form-control{margin:0;flex:1;max-width:140px}
.contact-form-card .submit-btn{
  background:var(--vte-accent);
  border:none;color:#1a1a1a;
  padding:.8rem 2rem;font-weight:700;
  border-radius:99px;cursor:pointer;
  transition:all .25s ease;font-size:1rem;width:100%;
}
.contact-form-card .submit-btn:hover{
  background:#fff;color:var(--vte-primary-dark);transform:translateY(-2px);
}
.contact-form-card ul{list-style:none;padding:0;margin:0}
.contact-form-card ul li{margin-bottom:0}

/* ---------- Contact SEO Cards (replaces form area) ---------- */
.contact-seo-card{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);
  padding:1.75rem 1.5rem;
  display:flex;flex-direction:column;
  transition:all .3s ease;
  position:relative;overflow:hidden;
}
.contact-seo-card:hover{
  transform:translateY(-4px);
  box-shadow:var(--vte-shadow-hover);
  border-color:transparent;
}
.contact-seo-card .csc-ico{
  width:54px;height:54px;border-radius:14px;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,rgba(11,61,145,.1),rgba(245,166,35,.15));
  color:var(--vte-primary);font-size:1.4rem;
  margin-bottom:1rem;
}
.contact-seo-card h3{
  font-size:1.1rem;color:var(--vte-dark);
  margin-bottom:.6rem;font-weight:700;
}
.contact-seo-card p{
  color:var(--vte-muted);font-size:.92rem;line-height:1.65;
  margin:0 0 1rem;flex:1;
}
.contact-seo-card .csc-link{
  display:inline-flex;align-items:center;gap:.4rem;
  color:var(--vte-primary);font-weight:600;font-size:.92rem;
  margin-top:auto;align-self:flex-start;
  transition:gap .25s ease, color .25s ease;
}
.contact-seo-card .csc-link:hover{
  gap:.65rem;color:var(--vte-accent-dark);
}
.contact-seo-card .csc-link i{font-size:.75rem}

/* Highlighted CTA variant (WhatsApp card) */
.contact-seo-card.csc-cta{
  background:linear-gradient(135deg,var(--vte-primary) 0%,var(--vte-primary-dark) 100%);
  border-color:transparent;color:#fff;
}
.contact-seo-card.csc-cta::before{
  content:"";position:absolute;top:-40px;right:-40px;
  width:160px;height:160px;border-radius:50%;
  background:rgba(245,166,35,.18);
}
.contact-seo-card.csc-cta h3{color:#fff;position:relative;z-index:2}
.contact-seo-card.csc-cta p{color:#dbe4f0;position:relative;z-index:2}
.contact-seo-card.csc-cta .csc-ico-light{
  background:rgba(255,255,255,.15);
  color:var(--vte-accent);
  position:relative;z-index:2;
}
.contact-seo-card.csc-cta .csc-link-light{
  color:var(--vte-accent);position:relative;z-index:2;
}
.contact-seo-card.csc-cta .csc-link-light:hover{color:#fff}

/* Map placeholder */
.contact-map{
  border-radius:var(--vte-radius);overflow:hidden;
  box-shadow:var(--vte-shadow);background:#eef2f7;
  min-height:300px;
}
.contact-map iframe{width:100%;height:100%;min-height:300px;border:0;display:block}

/* ---------- Product detail page ---------- */
.pd-image-wrap{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);overflow:hidden;
  padding:1rem;margin-bottom:1rem;
}
.pd-image-wrap img{
  width:100%;height:auto;display:block;border-radius:8px;
}
.pd-info{padding-left:1rem}
@media (max-width:991px){.pd-info{padding-left:0;margin-top:1.5rem}}
.pd-info h1{
  font-size:clamp(1.5rem,1vw + 1.1rem,2rem);
  color:var(--vte-dark);margin-bottom:1rem;font-weight:700;
}
.pd-info .content-text p{
  background:var(--vte-light);
  padding:.75rem 1rem;border-radius:8px;
  margin-bottom:.6rem;font-size:.95rem;
  color:#3a4a5b;
}
.pd-info .content-text p strong{color:var(--vte-dark)}
.pd-info .content-text p a{color:var(--vte-primary);font-weight:600}
.pd-info .content-text p a:hover{color:var(--vte-accent-dark)}
.pd-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.25rem}
.pd-actions .btn{
  border-radius:99px;font-weight:600;padding:.65rem 1.4rem;
  display:inline-flex;align-items:center;gap:.45rem;
}
.pd-actions .btn-cart{
  background:var(--vte-accent);border:1px solid var(--vte-accent);color:#1a1a1a;
}
.pd-actions .btn-cart:hover{
  background:var(--vte-accent-dark);border-color:var(--vte-accent-dark);color:#fff;
}
.pd-actions .btn-pdf{
  background:#fff;border:1px solid var(--vte-border);color:var(--vte-dark);
}
.pd-actions .btn-pdf:hover{
  background:var(--vte-primary);border-color:var(--vte-primary);color:#fff;
}
.pd-actions .btn-enq{
  background:var(--vte-primary);border:1px solid var(--vte-primary);color:#fff;
}
.pd-actions .btn-enq:hover{
  background:var(--vte-primary-dark);border-color:var(--vte-primary-dark);color:#fff;
}
.pd-actions form{display:inline-flex;gap:.6rem;flex-wrap:wrap;margin:0}

/* Description tabs */
.pd-tabs{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);overflow:hidden;
  margin-top:2rem;
}
.pd-tabs .nav-tabs{
  border-bottom:1px solid var(--vte-border);
  background:var(--vte-light);padding:0 .5rem;
}
.pd-tabs .nav-tabs .nav-link{
  border:none;color:var(--vte-muted);font-weight:600;
  padding:1rem 1.5rem;border-radius:0;
  border-bottom:3px solid transparent;
}
.pd-tabs .nav-tabs .nav-link.active{
  background:transparent;color:var(--vte-primary);
  border-bottom-color:var(--vte-accent);
}
.pd-tabs .tab-content{padding:1.75rem;color:#3a4a5b;line-height:1.75}
.pd-tabs .tab-content h2,
.pd-tabs .tab-content .heading2{
  font-size:1.25rem;color:var(--vte-dark);
  margin:1.5rem 0 .75rem;font-weight:700;
}
.pd-tabs .tab-content table{
  width:100%;border-collapse:collapse;margin:.75rem 0;
}
.pd-tabs .tab-content table td,
.pd-tabs .tab-content table th{
  border:1px solid var(--vte-border);
  padding:.6rem .85rem;font-size:.92rem;
}
.pd-tabs .tab-content table th{background:var(--vte-light);font-weight:700}

/* Related products */
.related-products{margin-top:3rem}
.related-products .section_header{text-align:center;margin-bottom:2rem}
.related-products .section_header h2{
  font-size:1.6rem;color:var(--vte-dark);margin-bottom:.4rem;
}
.related-products .section_header p{color:var(--vte-muted)}
.related-products ul.shop{
  list-style:none;padding:0;margin:0;
  display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;
}
@media (max-width:991px){.related-products ul.shop{grid-template-columns:repeat(2,1fr)}}
@media (max-width:480px){.related-products ul.shop{grid-template-columns:1fr}}

/* ---------- Article / Blog Detail Page ---------- */
.article-detail-card{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);
  overflow:hidden;
}
.article-detail-card .ad-hero{
  position:relative;background:#f4f7fb;
  aspect-ratio:16/8;overflow:hidden;
}
.article-detail-card .ad-hero img{
  width:100%;height:100%;object-fit:cover;display:block;
}
.article-detail-card .ad-body{padding:2rem 2rem 2.25rem}
@media (max-width:575px){
  .article-detail-card .ad-body{padding:1.5rem 1.25rem}
}
.article-detail-card .ad-meta{
  display:flex;flex-wrap:wrap;gap:1rem;
  color:var(--vte-muted);font-size:.9rem;
  margin-bottom:1rem;
}
.article-detail-card .ad-meta i{color:var(--vte-accent);margin-right:.35rem}
.article-detail-card h2,
.article-detail-card .ad-title{
  font-size:clamp(1.4rem,1.5vw + .8rem,1.95rem);
  color:var(--vte-dark);font-weight:700;
  margin:.25rem 0 1.25rem;line-height:1.3;
}
.article-detail-card .ad-content{
  color:#3a4a5b;line-height:1.85;font-size:1rem;
}
.article-detail-card .ad-content p{margin-bottom:1.1rem}
.article-detail-card .ad-content h2,
.article-detail-card .ad-content h3{
  margin:1.75rem 0 .75rem;color:var(--vte-dark);
}
.article-detail-card .ad-content h3{font-size:1.25rem}
.article-detail-card .ad-content ul,
.article-detail-card .ad-content ol{margin:0 0 1.1rem 1.25rem;padding-left:.5rem}
.article-detail-card .ad-content ul li,
.article-detail-card .ad-content ol li{margin-bottom:.4rem}
.article-detail-card .ad-content img{
  max-width:100%;height:auto;border-radius:10px;
  margin:1rem 0;
}
.article-detail-card .ad-content a{
  color:var(--vte-primary);font-weight:600;
  text-decoration:underline;text-decoration-color:rgba(11,61,145,.25);
  text-underline-offset:3px;
}
.article-detail-card .ad-content a:hover{
  color:var(--vte-accent-dark);
  text-decoration-color:var(--vte-accent);
}
.article-detail-card .ad-content blockquote{
  border-left:4px solid var(--vte-accent);
  padding:.5rem 0 .5rem 1rem;
  margin:1.25rem 0;color:var(--vte-dark);
  background:var(--vte-light);
  font-style:italic;border-radius:0 8px 8px 0;
}

/* Share row */
.ad-share{
  display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;
  margin-top:1.75rem;padding-top:1.25rem;
  border-top:1px solid var(--vte-light);
}
.ad-share .ad-share-label{
  color:var(--vte-muted);font-size:.9rem;font-weight:600;margin-right:.25rem;
}
.ad-share a{
  width:38px;height:38px;border-radius:50%;
  background:var(--vte-light);color:var(--vte-primary);
  display:inline-flex;align-items:center;justify-content:center;
  font-size:.95rem;transition:all .25s ease;
}
.ad-share a:hover{background:var(--vte-primary);color:#fff;transform:translateY(-2px)}

/* Other articles sidebar (article-left.php) */
.other-articles{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);overflow:hidden;
  margin-bottom:1.5rem;
}
.other-articles .oa-head{
  background:linear-gradient(135deg,var(--vte-primary),var(--vte-primary-dark));
  color:#fff;padding:1.1rem 1.25rem;
  display:flex;align-items:center;gap:.6rem;cursor:pointer;
}
.other-articles .oa-head h2{
  color:#fff;font-size:1.05rem;font-weight:700;margin:0;
  flex:1;
}
.other-articles .oa-head .oa-toggle{
  display:none;color:#fff;transition:transform .25s ease;
}
.other-articles .oa-head.collapsed .oa-toggle{transform:rotate(-90deg)}
.other-articles ul{list-style:none;padding:0;margin:0}
.other-articles ul li{border-bottom:1px solid var(--vte-light)}
.other-articles ul li:last-child{border-bottom:none}
.other-articles ul li a{
  display:flex;align-items:flex-start;gap:.6rem;
  padding:.85rem 1.25rem;
  color:#3a4a5b;font-size:.92rem;line-height:1.45;
  transition:all .2s ease;
}
.other-articles ul li a::before{
  content:"\f054";font-family:"Font Awesome 6 Free";font-weight:900;
  font-size:.7rem;color:var(--vte-accent);
  margin-top:.3rem;flex:none;transition:transform .2s ease;
}
.other-articles ul li a:hover{
  background:var(--vte-light);color:var(--vte-primary);
}
.other-articles ul li a:hover::before{transform:translateX(2px)}
.other-articles ul li.active a{
  background:var(--vte-light);color:var(--vte-primary);font-weight:600;
}

@media (max-width:991.98px){
  .other-articles .oa-head{cursor:pointer}
  .other-articles .oa-head .oa-toggle{display:block}
  .other-articles .oa-list{display:none}
  .other-articles .oa-list.show{display:block}
}

/* ---------- Left Panel - Category Tree (left_pannel.php) ---------- */
.cssmenu{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);overflow:hidden;
}
.cssmenu > ul{list-style:none;padding:0;margin:0}
.cssmenu > ul > li{position:relative;border-bottom:1px solid var(--vte-light)}
.cssmenu > ul > li:last-child{border-bottom:none}
.cssmenu > ul > li > a{
  display:flex;align-items:center;justify-content:space-between;gap:.5rem;
  padding:.85rem 1.1rem;
  color:#3a4a5b;font-weight:600;font-size:.93rem;
  transition:all .2s ease;
}
.cssmenu > ul > li > a span{flex:1}
.cssmenu > ul > li > a:hover{
  background:var(--vte-light);color:var(--vte-primary);
}
.cssmenu > ul > li.has-child > a::before{
  content:"\f054";font-family:"Font Awesome 6 Free";font-weight:900;
  font-size:.65rem;color:var(--vte-accent);
  flex:none;order:-1;margin-right:.5rem;
}
.cssmenu > ul > li.has-child:not(.is-open) > a::before{
  /* arrow stays right-pointing when closed */
}
.cssmenu .submenu-toogle{
  width:28px;height:28px;border-radius:6px;
  background:var(--vte-light);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;transition:all .25s ease;flex:none;
  color:var(--vte-primary);font-size:.7rem;
}
.cssmenu .submenu-toogle::before{
  content:"\f078";font-family:"Font Awesome 6 Free";font-weight:900;
}
.cssmenu .submenu-toogle.active{
  background:var(--vte-primary);color:#fff;transform:rotate(180deg);
}
.cssmenu .submenu{
  list-style:none;padding:0;margin:0;display:none;
  background:var(--vte-light);
  border-top:1px solid var(--vte-border);
}
.cssmenu .submenu li{border-bottom:1px solid rgba(11,61,145,.06)}
.cssmenu .submenu li:last-child{border-bottom:none}
.cssmenu .submenu li a{
  display:block;padding:.6rem 1.1rem .6rem 2rem;
  color:var(--vte-muted);font-size:.88rem;
  transition:all .2s ease;
  position:relative;
}
.cssmenu .submenu li a::before{
  content:"";position:absolute;left:1.1rem;top:50%;transform:translateY(-50%);
  width:5px;height:5px;border-radius:50%;background:var(--vte-accent);
  opacity:.6;
}
.cssmenu .submenu li a:hover{
  background:#fff;color:var(--vte-primary);padding-left:2.25rem;
}

/* ---------- Search Page ---------- */
.search-alphabet{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);
  padding:1.25rem;margin-bottom:1.5rem;
}
.search-alphabet h3{
  font-size:1rem;color:var(--vte-dark);font-weight:700;
  margin:0 0 .85rem;display:flex;align-items:center;gap:.5rem;
}
.search-alphabet h3 i{color:var(--vte-accent)}
.search-alphabet .alpha-grid{
  display:flex;flex-wrap:wrap;gap:.4rem;
}
.search-alphabet .alpha{
  display:inline-flex;align-items:center;justify-content:center;
  width:36px;height:36px;border-radius:8px;
  background:var(--vte-light);color:var(--vte-primary);
  font-weight:700;font-size:.9rem;
  transition:all .2s ease;
  text-decoration:none;
}
.search-alphabet .alpha:hover,
.search-alphabet .alpha.active{
  background:var(--vte-primary);color:#fff;transform:translateY(-2px);
  box-shadow:0 6px 14px rgba(11,61,145,.25);
}

.search-empty{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);
  padding:3rem 1.5rem;text-align:center;
}
.search-empty i{font-size:3rem;color:var(--vte-muted);opacity:.4;margin-bottom:1rem}
.search-empty h3{color:var(--vte-dark);margin-bottom:.5rem}
.search-empty p{color:var(--vte-muted);margin:0}

/* Pagination (paginate function output) */
.paging-wrap{
  display:flex;justify-content:center;align-items:center;
  flex-wrap:wrap;gap:.4rem;padding:1.5rem 0;
}
.paging-wrap a,
.paging-wrap span{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:38px;height:38px;padding:0 .65rem;
  border-radius:8px;font-weight:600;font-size:.9rem;
  background:#fff;border:1px solid var(--vte-border);
  color:var(--vte-primary);text-decoration:none;
  transition:all .2s ease;
}
.paging-wrap a:hover{
  background:var(--vte-primary);color:#fff;border-color:var(--vte-primary);
}
.paging-wrap .current,
.paging-wrap strong{
  background:var(--vte-primary);color:#fff;border-color:var(--vte-primary);
}

/* ---------- Shopping Cart ---------- */
.cart-card{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);
  overflow:hidden;
}
.cart-card .cart-head{
  background:linear-gradient(135deg,var(--vte-primary),var(--vte-primary-dark));
  color:#fff;padding:1.25rem 1.5rem;
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;
}
.cart-card .cart-head h2{
  color:#fff;font-size:1.2rem;margin:0;font-weight:700;
  display:flex;align-items:center;gap:.5rem;
}
.cart-card .cart-head .cart-count{
  background:var(--vte-accent);color:#1a1a1a;
  font-size:.85rem;font-weight:700;
  padding:.25rem .75rem;border-radius:99px;
}

.cart-table{
  width:100%;border-collapse:collapse;
}
.cart-table thead{
  background:var(--vte-light);
}
.cart-table thead th{
  padding:.85rem 1rem;text-align:left;
  font-size:.78rem;font-weight:700;
  color:var(--vte-dark);text-transform:uppercase;letter-spacing:.05em;
  border-bottom:1px solid var(--vte-border);
}
.cart-table thead th:first-child,
.cart-table thead th:last-child{text-align:center}
.cart-table tbody tr{border-bottom:1px solid var(--vte-light)}
.cart-table tbody tr:last-child{border-bottom:none}
.cart-table tbody td{
  padding:1rem;font-size:.92rem;color:#3a4a5b;
  vertical-align:middle;
}
.cart-table tbody td:first-child,
.cart-table tbody td:last-child{text-align:center}
.cart-table .qty-input{
  width:70px;padding:.45rem .6rem;
  border:1px solid var(--vte-border);border-radius:8px;
  font-size:.9rem;text-align:center;
}
.cart-table .qty-input:focus{
  outline:none;border-color:var(--vte-primary);
  box-shadow:0 0 0 3px rgba(11,61,145,.12);
}
.cart-table input[type="checkbox"]{
  width:18px;height:18px;cursor:pointer;
  accent-color:var(--vte-primary);
}
.cart-actions{
  padding:1.25rem 1.5rem;background:var(--vte-light);
  display:flex;gap:.6rem;flex-wrap:wrap;justify-content:flex-end;
  border-top:1px solid var(--vte-border);
}
.cart-actions .btn{
  border-radius:99px;font-weight:600;padding:.6rem 1.4rem;
  display:inline-flex;align-items:center;gap:.45rem;font-size:.92rem;
  border:1px solid transparent;cursor:pointer;
}
.cart-actions .btn-update{background:#fff;border-color:var(--vte-border);color:var(--vte-dark)}
.cart-actions .btn-update:hover{background:var(--vte-light);border-color:var(--vte-primary);color:var(--vte-primary)}
.cart-actions .btn-add-more{background:var(--vte-success);color:#fff}
.cart-actions .btn-add-more:hover{background:#157d5b;color:#fff}
.cart-actions .btn-next{background:var(--vte-accent);color:#1a1a1a;border-color:var(--vte-accent)}
.cart-actions .btn-next:hover{background:var(--vte-accent-dark);border-color:var(--vte-accent-dark);color:#fff}

.cart-empty{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);
  padding:3rem 1.5rem;text-align:center;
}
.cart-empty i{font-size:3.5rem;color:var(--vte-muted);opacity:.4;margin-bottom:1rem}
.cart-empty h3{color:var(--vte-dark);margin-bottom:.5rem}
.cart-empty p{color:var(--vte-muted);margin-bottom:1.5rem}

@media (max-width:575px){
  .cart-table thead{display:none}
  .cart-table tbody tr{
    display:block;padding:1rem;border-bottom:1px solid var(--vte-light);
  }
  .cart-table tbody td{
    display:flex;justify-content:space-between;padding:.4rem 0;
    text-align:left!important;border:none;
  }
  .cart-table tbody td::before{
    content:attr(data-label);font-weight:700;color:var(--vte-dark);
    font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;
  }
}

/* ---------- Tenders Page ---------- */
.tender-card{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);
  padding:2rem;
}
.tender-card h2,
.tender-card h3{
  color:var(--vte-dark);font-weight:700;margin-bottom:1rem;
}
.tender-card h2{font-size:1.6rem}
.tender-card h3{font-size:1.2rem;margin-top:1.5rem}
.tender-card p{color:#3a4a5b;line-height:1.75;margin-bottom:1rem}
.tender-card .darkgray{color:var(--vte-muted)}
.tender-card a{color:var(--vte-primary);font-weight:600}
.tender-card a:hover{color:var(--vte-accent-dark)}
.tender-info-block{
  background:var(--vte-light);border-left:4px solid var(--vte-accent);
  padding:1.25rem 1.5rem;border-radius:0 8px 8px 0;
  margin:1.25rem 0;
}
.tender-info-block strong{color:var(--vte-dark)}

/* ---------- Countries / Marketplace List ---------- */
.country-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:1rem;
}
@media (max-width:991px){.country-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:575px){.country-grid{grid-template-columns:repeat(2,1fr)}}

.country-card{
  display:flex;align-items:center;gap:.75rem;
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);
  padding:1rem 1.1rem;
  color:var(--vte-dark);font-weight:600;font-size:.95rem;
  transition:all .25s ease;
  text-decoration:none;
  position:relative;overflow:hidden;
}
.country-card::before{
  content:"";position:absolute;left:0;top:0;bottom:0;
  width:4px;background:var(--vte-accent);
  transform:scaleY(0);transform-origin:bottom;
  transition:transform .25s ease;
}
.country-card:hover{
  border-color:transparent;
  box-shadow:var(--vte-shadow-hover);
  transform:translateY(-3px);
  color:var(--vte-primary);
}
.country-card:hover::before{transform:scaleY(1);transform-origin:top}
.country-card .country-flag{
  width:38px;height:38px;border-radius:50%;flex:none;
  background:linear-gradient(135deg,rgba(11,61,145,.1),rgba(245,166,35,.15));
  display:flex;align-items:center;justify-content:center;
  color:var(--vte-primary);font-size:1rem;
}
.country-card .country-name{flex:1}
.country-card::after{
  content:"\f061";font-family:"Font Awesome 6 Free";font-weight:900;
  color:var(--vte-accent);font-size:.75rem;
  opacity:0;transform:translateX(-4px);transition:all .25s ease;
}
.country-card:hover::after{opacity:1;transform:translateX(0)}

/* ---------- Country Landing Page Sections ---------- */
.cl-categories-sec{padding:64px 0}
.cl-categories-sec .heading2{
  font-size:1.05rem;color:var(--vte-muted);
  font-weight:400;line-height:1.7;
  max-width:700px;margin:0 auto 2.25rem;text-align:center;
}
.cl-cat-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;
  list-style:none;padding:0;margin:0;
}
@media (max-width:991px){.cl-cat-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:575px){.cl-cat-grid{grid-template-columns:1fr}}

.cl-cat-card{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);overflow:hidden;
  display:block;height:100%;
  transition:all .3s ease;
}
.cl-cat-card:hover{
  transform:translateY(-5px);
  box-shadow:var(--vte-shadow-hover);
  border-color:transparent;
}
.cl-cat-card .cc-img{
  background:#f4f7fb;aspect-ratio:4/3;overflow:hidden;
}
.cl-cat-card .cc-img img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .5s ease;
}
.cl-cat-card:hover .cc-img img{transform:scale(1.06)}
.cl-cat-card .cc-title{
  padding:1rem 1.25rem;color:var(--vte-dark);font-weight:600;
  display:flex;align-items:center;justify-content:space-between;gap:.5rem;
}
.cl-cat-card .cc-title::after{
  content:"\f061";font-family:"Font Awesome 6 Free";font-weight:900;
  font-size:.75rem;color:var(--vte-accent);
  transition:transform .25s ease;
}
.cl-cat-card:hover .cc-title::after{transform:translateX(4px)}

/* Country featured products carousel items */
.cl-feat-item{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);overflow:hidden;
  height:100%;text-align:center;
  transition:all .3s ease;
}
.cl-feat-item:hover{
  transform:translateY(-4px);box-shadow:var(--vte-shadow-hover);border-color:transparent;
}
.cl-feat-item .fi-img{
  background:#f4f7fb;aspect-ratio:4/3;overflow:hidden;
  display:flex;align-items:center;justify-content:center;
}
.cl-feat-item .fi-img img{width:100%;height:100%;object-fit:cover}
.cl-feat-item .fi-title{
  padding:.85rem 1rem 1rem;color:var(--vte-dark);
  font-weight:600;font-size:.95rem;display:block;
}
.cl-feat-item:hover .fi-title{color:var(--vte-primary)}

/* Country about section */
.cl-about{padding:64px 0;background:var(--vte-light)}
.cl-about-img{
  border-radius:var(--vte-radius);overflow:hidden;
  box-shadow:var(--vte-shadow);
}
.cl-about-img img{width:100%;height:auto;display:block}
.cl-about .cl-about-content{padding-left:1.5rem}
@media (max-width:991px){.cl-about .cl-about-content{padding-left:0;margin-top:1.5rem}}

/* Country "Why Us" 4-up icons */
.cl-why{padding:64px 0}
.cl-why-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;
  list-style:none;padding:0;margin:0;
}
@media (max-width:991px){.cl-why-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:480px){.cl-why-grid{grid-template-columns:1fr}}

.cl-why-card{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);
  padding:1.5rem 1.25rem;text-align:center;
  display:flex;flex-direction:column;align-items:center;gap:.75rem;
  color:var(--vte-dark);font-weight:600;font-size:.95rem;
  transition:all .3s ease;text-decoration:none;
}
.cl-why-card:hover{
  transform:translateY(-4px);box-shadow:var(--vte-shadow-hover);
  border-color:transparent;color:var(--vte-primary);
}
.cl-why-card .cw-icon{
  width:60px;height:60px;border-radius:50%;flex:none;
  background:linear-gradient(135deg,rgba(11,61,145,.1),rgba(245,166,35,.15));
  display:flex;align-items:center;justify-content:center;
  color:var(--vte-primary);font-size:1.5rem;
}

/* Country enquiry section */
.cl-enq{padding:64px 0;background:var(--vte-light)}
.cl-enq-grid{
  display:grid;grid-template-columns:1.2fr 1fr;gap:2rem;align-items:center;
}
@media (max-width:991px){.cl-enq-grid{grid-template-columns:1fr}}
.cl-enq-side-img{
  border-radius:var(--vte-radius);overflow:hidden;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--vte-primary),var(--vte-primary-dark));
  padding:2rem;
}
.cl-enq-side-img img{max-width:100%;height:auto}
@media (max-width:991px){.cl-enq-side-img{order:-1;max-height:240px;overflow:hidden}}

/* Country blog slider items */
.cl-blog-item{
  background:#fff;border:1px solid var(--vte-border);
  border-radius:var(--vte-radius);overflow:hidden;
  height:100%;display:flex;flex-direction:column;
  transition:all .3s ease;
}
.cl-blog-item:hover{
  transform:translateY(-4px);box-shadow:var(--vte-shadow-hover);
  border-color:transparent;
}
.cl-blog-item .bi-img{
  position:relative;aspect-ratio:16/10;overflow:hidden;background:#f4f7fb;
}
.cl-blog-item .bi-img img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .5s ease;
}
.cl-blog-item:hover .bi-img img{transform:scale(1.05)}
.cl-blog-item .bi-date{
  position:absolute;left:1rem;bottom:1rem;
  background:var(--vte-accent);color:#1a1a1a;
  font-size:.78rem;font-weight:700;
  padding:.3rem .75rem;border-radius:99px;
  letter-spacing:.05em;text-transform:uppercase;
}
.cl-blog-item .bi-body{padding:1rem 1.25rem 1.25rem;flex:1}
.cl-blog-item .bi-title{
  font-size:1rem;font-weight:700;color:var(--vte-dark);
  line-height:1.4;margin:0;
}
.cl-blog-item:hover .bi-title{color:var(--vte-primary)}

/* ---------- Mobile ---------- */
@media (max-width:991.98px){
  .navbar-collapse{
    background:#fff;border-top:1px solid var(--vte-border);
    margin-top:.5rem;padding:.75rem 0;
  }
  .navbar .nav-link.active::after{display:none}
  .about-stats{grid-template-columns:repeat(3,1fr);gap:.5rem}
  .about-stats .stat{padding:.75rem .25rem}
  .about-stats .stat .num{font-size:1.25rem}
  .about-stats .stat .lbl{font-size:.7rem}
}
@media (max-width:575px){
  .topbar .topbar-list{justify-content:center;font-size:.78rem}
  .stats-bar .stat-num{font-size:1.6rem}
  .cta-banner{padding:2rem 1.25rem}
}
