/* Dr. Chandan Dash — Consulting | Bootstrap 5 custom theme */
:root{
  --ink:#12161f;
  --ink-soft:#1b2130;
  --ivory:#faf8f4;
  --gold:#c9a227;
  --gold-soft:#e3c766;
  --muted:#6b7280;
  --border:#e4e0d8;
}
*{scroll-behavior:smooth}
body{
  font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;
  color:#20242c;background:var(--ivory);line-height:1.7;
  overflow-x: hidden;
}
h1,h2,h3,h4,.font-display{font-family:'Marcellus',Georgia,serif;font-weight:400;letter-spacing:.01em}
h1{font-size:clamp(2.25rem,5vw,3.75rem);line-height:1.1}
h2{font-size:clamp(1.75rem,3.4vw,2.5rem)}
a{text-decoration:none}
.text-gold{color:var(--gold)!important}
.bg-ink{background:var(--ink)!important}
.bg-ink-soft{background:var(--ink-soft)!important}
.bg-ivory{background:var(--ivory)!important}
.bg-sand{background:#f2eee6!important}
.text-muted-2{color:var(--muted)}

.eyebrow{
  font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);
  margin-bottom:0;font-weight:500;
}
.gold-rule{display:block;width:64px;height:2px;background:var(--gold)}

/* Navbar */
.navbar-dash{background:rgba(18,22,31,.96);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.08)}
.navbar-dash .nav-link{color:rgba(255,255,255,.72);font-size:.95rem;padding:.5rem 0;margin:0 .85rem;position:relative}
.navbar-dash .nav-link:hover,.navbar-dash .nav-link.active{color:var(--gold)}
.navbar-dash .nav-link.active::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:var(--gold)}
.navbar-brand-title{color:#fff;font-family:'Marcellus',serif;font-size:1.05rem;line-height:1.2}
.navbar-brand-sub{color:var(--gold);font-size:.62rem;letter-spacing:.24em;text-transform:uppercase}
.navbar-toggler{border-color:rgba(255,255,255,.25)}
.navbar-toggler:focus{box-shadow:none}

/* Glassmorphic Base Button */
.navbar-toggler {
  border: 1px solid rgba(212, 175, 55, 0.4) !important;
  background: rgba(20, 20, 20, 0.6) !important;
  backdrop-filter: blur(8px);
  padding: 8px 12px;
  border-radius: 8px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  outline: none !important;
  box-shadow: none !important;
}

/* Custom Gold SVG Hamburger Icon */
.navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28212, 175, 55, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2.5' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
  transition: transform 0.3s ease;
}

/* Hover, Active & Focus Effects */
.navbar-toggler:hover {
  background: rgba(212, 175, 55, 0.15) !important;
  border-color: #d4af37 !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 15px rgba(212, 175, 55, 0.3) !important;
}

.navbar-toggler:hover .navbar-toggler-icon {
  transform: scale(1.05);
}

.navbar-toggler:focus {
  box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.3) !important;
}

/* Buttons */
.btn-gold{background:var(--gold);color:#12161f;border:0;border-radius:0;padding:.8rem 1.6rem;font-size:.9rem;font-weight:500;transition:transform .25s ease,background .25s ease}
.btn-gold:hover{background:var(--gold-soft);color:#12161f;transform:translateY(-2px)}
.btn-outline-light-thin{border:1px solid rgba(255,255,255,.28);color:#fff;border-radius:0;padding:.8rem 1.6rem;font-size:.9rem;transition:.25s}
.btn-outline-light-thin:hover{border-color:var(--gold);color:var(--gold)}
.btn-outline-ink{border:1px solid var(--ink);color:var(--ink);border-radius:0;padding:.8rem 1.6rem;font-size:.9rem;transition:.25s}
.btn-outline-ink:hover{background:var(--ink);color:#fff}

/* Hero */
.hero{position:relative;overflow:hidden;background:var(--ink);color:#fff}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.2}
.hero .container{position:relative;z-index:2}
.hero-portrait-wrap{position:relative;max-width:420px;margin-inline:auto}
.hero-portrait-wrap::before{content:"";position:absolute;top:-16px;right:-16px;width:100%;height:100%;border:1px solid rgba(201,162,39,.45)}
.hero-portrait{position:relative;width:100%;display:block}
.stat-value{font-family:'Marcellus',serif;font-size:2rem;color:var(--gold)}
.stat-label{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.6)}

/* Page banner */
.page-banner{position:relative;overflow:hidden;background:var(--ink);color:#fff;padding:5rem 0}
.page-banner .hero-bg{opacity:.18}

/* Cards */
.card-premium{background:#fff;border:1px solid var(--border);border-radius:0;height:100%;transition:transform .35s ease,box-shadow .35s ease}
.card-premium:hover{transform:translateY(-6px);box-shadow:0 24px 48px -28px rgba(18,22,31,.4)}
.icon-gold{width:28px;height:28px;color:var(--gold)}

/* Media tiles */
.tile{position:relative;overflow:hidden}
.tile img{width:100%;height:260px;object-fit:cover;transition:transform .7s ease}
.tile:hover img{transform:scale(1.06)}
.tile figcaption{position:absolute;inset:auto 0 0 0;padding:1.1rem 1.25rem;color:#fff;font-family:'Marcellus',serif;
  background:linear-gradient(to top,rgba(18,22,31,.9),rgba(18,22,31,0))}
.cert-img{width:100%;height:380px;object-fit:cover;object-position:top;background:#f2eee6}
.gallery-img{width:100%;height:420px;object-fit:cover}

/* Service rows */
.service-row img{width:100%;height:340px;object-fit:cover}
.dot-gold{display:inline-block;width:6px;height:6px;background:var(--gold);margin-top:.6rem;flex:0 0 auto}

/* Client grid */
:root {
  --brand-dark: #1b1f28;
  --brand-gold: #c9a227;
  --brand-gold-glow: rgba(201, 162, 39, 0.25);
  --border-subtle: rgba(201, 162, 39, 0.15);
  --text-muted: #a0a6b5;
}

/* Container Grid Layout */
.brand-partner-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
  gap: 1.25rem;
  padding: 0;
  margin: 3rem 0;
  list-style: none;
}

/* Individual Card Styling */
.brand-partner-card {
  background-color: var(--brand-dark);
  border: 1px solid var(--border-subtle);
  border-radius: 16px; /* Smooth rounded corners for the card */
  padding: 1.25rem 1rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
  overflow: hidden;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  cursor: pointer;
}

/* Accent Line on Hover */
.brand-partner-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: linear-gradient(90deg, transparent, var(--brand-gold), transparent);
  opacity: 0;
  transition: opacity 0.35s ease;
}

/* Card Hover Effect */
.brand-partner-card:hover {
  transform: translateY(-6px);
  border-color: var(--brand-gold);
  box-shadow: 0 12px 28px -6px var(--brand-gold-glow);
}

.brand-partner-card:hover::before {
  opacity: 1;
}

/* Rounded Logo Container Backdrop (Makes images look clean & larger) */
.brand-logo-container {
  height: 80px; /* Increased height for larger images */
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.85rem;
  background: rgba(255, 255, 255, 0.03); /* Subtle background panel */
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 12px; /* Border radius for logo wrapper */
  padding: 0.6rem;
  transition: all 0.35s ease;
}

/* Logo Image Styling */
.brand-logo {
  max-height: 100%;
  max-width: 90%;
  object-fit: contain;
  border-radius: 8px; /* Border radius applied directly to the image */
  background:#fff;
  transition: all 0.35s ease;
}

/* Hover Interactions for Logo & Container */
.brand-partner-card:hover .brand-logo-container {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(201, 162, 39, 0.3);
}

.brand-partner-card:hover .brand-logo {
  filter: grayscale(0%) opacity(1);
  transform: scale(1.08); /* Smooth enlargement on hover */
}

/* Text Label */
.brand-title {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  font-size: 0.85rem;
  font-weight: 500;
  color: var(--text-muted);
  letter-spacing: 0.2px;
  line-height: 1.3;
  transition: color 0.35s ease;
}

.brand-partner-card:hover .brand-title {
  color: var(--brand-gold);
}

/* Mobile Responsiveness */
@media (max-width: 576px) {
  .brand-partner-grid {
    grid-template-columns: repeat(auto-fill, minmax(145px, 1fr));
    gap: 0.85rem;
  }
  
  .brand-logo-container {
    height: 70px;
    border-radius: 10px;
  }

  .brand-partner-card {
    border-radius: 12px;
    padding: 1rem 0.6rem;
  }
}
/*
.client-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(255,255,255,.12)}
@media(min-width:768px){.client-grid{grid-template-columns:repeat(3,1fr)}}
.client-grid li{list-style:none;background:var(--ink);color:rgba(255,255,255,.82);min-height:96px;
  display:flex;align-items:center;justify-content:center;text-align:center;padding:1.5rem 1rem;font-family:'Marcellus',serif;transition:color .3s}
.client-grid li:hover{color:var(--gold)}*/

/* CTA band */
.cta-band{position:relative;overflow:hidden}
.cta-band .hero-bg{opacity:1}
.cta-inner{position:relative;background:rgba(18,22,31,.86);color:#fff;padding:5rem 1rem;text-align:center}

/* Footer */
.site-footer{background:var(--ink);color:rgba(255,255,255,.7)}
.site-footer a{color:rgba(255,255,255,.7)}
.site-footer a:hover{color:var(--gold)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);font-size:.78rem;color:rgba(255,255,255,.45)}

/* Contact form */
.form-control,.form-select{border-radius:0;border-color:var(--border);padding:.75rem .9rem}
.form-control:focus{border-color:var(--gold);box-shadow:0 0 0 .15rem rgba(201,162,39,.18)}

/* Reveal animation */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.reveal.is-visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* Back to top / whatsapp */
.float-wa{position:fixed;right:18px;bottom:18px;z-index:60;width:52px;height:52px;border-radius:50%;
  background:#25d366;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px -10px rgba(0,0,0,.5)}
.float-wa:hover{color:#fff;transform:translateY(-3px);transition:.25s}
#backToTop{position:fixed;right:18px;bottom:82px;z-index:60;width:44px;height:44px;border:1px solid var(--border);
  background:#fff;color:var(--ink);display:none;align-items:center;justify-content:center}
#backToTop.show{display:flex}
