/* ============================================================
   Capital Hind Finance — stylesheet
   Palette: deep maroon (trust/heritage) + saffron-orange (energy)
   ============================================================ */

:root{
  --maroon: #7A1730;
  --maroon-dark: #57101F;
  --maroon-light: #A83A56;
  --orange: #E8622C;
  --orange-dark: #C94E1E;
  --orange-light: #FDE7DB;
  --gold: #F2A230;
  --ink: #241014;
  --ink-soft: #7A6468;
  --bg: #FFFBF8;
  --surface: #FFFFFF;
  --line: #EFE1DE;
  --success: #1E7A4A;
  --radius: 14px;
  --shadow: 0 8px 24px rgba(87,16,31,.08);
  --font-display: 'Fraunces', Georgia, serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  background:var(--bg);
  color:var(--ink);
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{margin:0;padding:0}
.container{max-width:1160px;margin:0 auto;padding:0 20px}

/* ---------- Top bar ---------- */
.top-bar{
  background:var(--maroon-dark);
  color:#F6D9C6;
  font-size:12px;
}
.top-bar .container{
  display:flex;justify-content:space-between;align-items:center;
  padding-top:7px;padding-bottom:7px;gap:12px;flex-wrap:wrap;
}

/* ---------- Navbar ---------- */
.navbar{
  background:var(--surface);
  border-bottom:1px solid var(--line);
  position:sticky;top:0;z-index:50;
}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:12px 20px}
.logo{display:flex;align-items:center;gap:10px}
.logo img.brand-logo{height:64px;width:auto;display:block}
.nav-links{display:flex;align-items:center;gap:22px}
.nav-links a{font-size:14px;font-weight:600;color:var(--ink-soft);transition:color .15s}
.nav-links a:hover,.nav-links a.active{color:var(--maroon)}
.nav-links a.staff-login{font-size:11px;font-weight:700;color:var(--ink-soft);opacity:.65;border-left:1px solid var(--line);padding-left:14px;margin-left:2px}
.nav-links a.staff-login:hover{opacity:1;color:var(--maroon)}
.hamburger{display:none;font-size:22px;cursor:pointer;color:var(--maroon)}
.nav-cta{display:flex;align-items:center;gap:10px;margin-left:18px;padding-left:18px;border-left:1px solid var(--line)}
.nav-cta .btn{padding:9px 16px;font-size:13px}
.nav-cta .btn-staff{background:var(--surface);color:var(--ink-soft);border:1.5px solid var(--line);opacity:.85}
.nav-cta .btn-staff:hover{opacity:1;border-color:var(--maroon);color:var(--maroon)}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  padding:11px 20px;border-radius:999px;font-weight:700;font-size:14px;
  border:none;cursor:pointer;transition:filter .15s,transform .1s;white-space:nowrap;
}
.btn:active{transform:scale(.98)}
.btn-primary{background:var(--maroon);color:#fff}
.btn-primary:hover{filter:brightness(1.1)}
.btn-secondary{background:var(--surface);color:var(--maroon);border:1.5px solid var(--maroon)}
.btn-secondary:hover{background:var(--orange-light)}
.btn-orange{background:var(--orange);color:#fff}
.btn-orange:hover{filter:brightness(1.06)}
.btn:disabled{opacity:.55;cursor:not-allowed}

/* ---------- Hero ---------- */
.hero{padding:64px 0 44px;background:linear-gradient(180deg,#FFF3ED 0%,var(--bg) 65%);position:relative;overflow:hidden}
.hero-watermark{position:absolute;right:-40px;top:-30px;width:420px;height:420px;opacity:.08;pointer-events:none;z-index:0}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;position:relative;z-index:1}
.badge{
  display:inline-block;background:var(--orange-light);color:var(--orange-dark);
  font-size:12px;font-weight:700;padding:6px 14px;border-radius:999px;margin-bottom:18px;
}
.h1{font-family:var(--font-display);font-size:46px;line-height:1.14;font-weight:600;margin:0 0 8px;letter-spacing:-.3px}
.h1 span{color:var(--maroon);display:inline-block}
.growth-accent{display:block;width:210px;height:20px;margin:2px 0 20px}
.growth-accent path{fill:none;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:340;stroke-dashoffset:340;animation:draw-accent 1.1s .25s ease-out forwards}
@media (prefers-reduced-motion: reduce){.growth-accent path{animation:none;stroke-dashoffset:0}}
@keyframes draw-accent{to{stroke-dashoffset:0}}
.lead{font-size:15px;line-height:1.65;color:var(--ink-soft);max-width:52ch;margin:0 0 24px}
.h2{font-family:var(--font-display);font-size:30px;font-weight:600;margin:6px 0 0;letter-spacing:-.2px}
.kicker{
  font-size:12px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;
  color:var(--orange-dark);margin-bottom:6px;
}
.muted{color:var(--ink-soft);line-height:1.6}

/* ---------- Cards ---------- */
.card{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  padding:22px;box-shadow:var(--shadow);
}
.emi-card h3{margin:0 0 14px;font-size:16px}
.field{margin-bottom:16px}
.field label{
  display:flex;justify-content:space-between;font-size:12px;font-weight:700;
  color:var(--ink-soft);margin-bottom:8px;
}
.field label span{color:var(--maroon);font-weight:800}
.slider,input[type="range"]{
  width:100%;accent-color:var(--maroon);height:5px;border-radius:4px;cursor:pointer;
}
.emi-result{
  background:var(--maroon);color:#fff;border-radius:12px;padding:16px 18px;margin-top:6px;
}
.emi-result .big{font-size:26px;font-weight:900;margin-top:2px}

/* ---------- Product grid ---------- */
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.product-card{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  padding:20px;transition:transform .15s,box-shadow .15s;
}
.product-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.product-card h3{font-size:15px;margin:0}
.icon-circle{
  width:44px;height:44px;border-radius:12px;background:var(--orange-light);
  display:flex;align-items:center;justify-content:center;font-size:20px;margin-bottom:10px;
}
.vehicle-card{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  overflow:hidden;transition:transform .15s,box-shadow .15s;
}
.vehicle-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.vehicle-card .vehicle-img{background:linear-gradient(180deg,#FFF3ED 0%,#FDE7DB 100%);padding:22px 16px 10px;display:flex;justify-content:center}
.vehicle-card .vehicle-img img{width:100%;max-width:190px;height:auto}
.vehicle-card .vehicle-body{padding:16px 20px 20px}
.vehicle-card h3{font-size:15px;margin:0 0 6px}

/* ---------- Sections ---------- */
.section{padding:52px 0}
.section-alt{background:#FFF6F1;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}

/* ---------- Payment ---------- */
.pay-grid{align-items:start}
.pay-section input[type="text"],.pay-section input[type="number"]{
  width:100%;padding:11px 14px;border:1.5px solid var(--line);border-radius:10px;
  font-size:14px;font-family:inherit;background:var(--surface);
}
.pay-section input:focus{outline:none;border-color:var(--maroon)}
.tabs{display:flex;gap:8px;margin:16px 0 14px}
.tab{
  flex:1;text-align:center;padding:10px 8px;border-radius:10px;border:1.5px solid var(--line);
  font-size:13px;font-weight:700;cursor:pointer;color:var(--ink-soft);background:var(--surface);
}
.tab.active{border-color:var(--maroon);color:var(--maroon);background:var(--orange-light)}
.qr-wrap{text-align:center;padding:14px 0}

/* ---------- Footer ---------- */
.footer{background:var(--maroon-dark);color:#F6D9C6;padding:44px 0 0;margin-top:10px}
.footer a{color:#F6D9C6;opacity:.85;font-size:13px}
.footer a:hover{opacity:1;text-decoration:underline}
.footer p{margin:0 0 8px;font-size:13px}
.footer h4{font-size:13px;letter-spacing:.4px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:24px;padding-bottom:28px}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.12);padding:16px 20px;
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;
  font-size:12px;opacity:.8;max-width:1160px;margin:0 auto;
}

/* ---------- Simple content pages (about/legal/contact) ---------- */
.page-hero{padding:40px 0 8px}
.content-block{max-width:74ch}
.content-block h3{margin-top:28px;font-size:17px;color:var(--maroon)}
.content-block p,.content-block li{color:var(--ink-soft);line-height:1.7;font-size:14.5px}
.content-block ul{margin-left:18px}
.stat-row{display:flex;gap:32px;flex-wrap:wrap;margin:24px 0}
.stat-row .stat b{display:block;font-size:22px;color:var(--maroon)}
.stat-row .stat span{font-size:12px;color:var(--ink-soft)}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:20px}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.info-row{display:flex;gap:12px;align-items:flex-start;margin-bottom:18px}
.info-row .ic{
  width:38px;height:38px;flex:0 0 38px;border-radius:10px;background:var(--orange-light);
  display:flex;align-items:center;justify-content:center;font-size:17px;
}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-grid .full{grid-column:1/-1}
.form-grid input,.form-grid select,.form-grid textarea{
  width:100%;padding:11px 14px;border:1.5px solid var(--line);border-radius:10px;
  font-size:14px;font-family:inherit;background:var(--surface);
}
.form-grid textarea{resize:vertical}
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{outline:none;border-color:var(--maroon)}
.form-grid label{display:block;font-size:12px;font-weight:700;color:var(--ink-soft);margin-bottom:6px}
.map-embed{border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);height:220px}
.map-embed iframe{width:100%;height:100%;border:0}
.faq-item{border-bottom:1px solid var(--line);padding:14px 0}
.faq-item summary{font-weight:700;cursor:pointer;font-size:14.5px}
.faq-item p{margin:8px 0 0}

/* ---------- Responsive ---------- */
@media (max-width:900px){
  .hero-grid{grid-template-columns:1fr}
  .grid-4{grid-template-columns:repeat(2,1fr)}
  .grid-3{grid-template-columns:1fr 1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .pay-grid{grid-template-columns:1fr !important}
  .contact-grid{grid-template-columns:1fr}
  .team-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .nav-links{
    position:absolute;top:100%;left:0;right:0;background:var(--surface);
    flex-direction:column;align-items:flex-start;padding:14px 20px;gap:14px;
    border-bottom:1px solid var(--line);display:none;box-shadow:var(--shadow);
  }
  .nav-links.open{display:flex}
  .hamburger{display:block}
  .nav-cta{flex-direction:column;align-items:stretch;width:100%;margin-left:0;padding-left:0;border-left:none;border-top:1px solid var(--line);padding-top:14px}
  .nav-cta .btn{width:100%}
  .h1{font-size:30px}
  .grid-4{grid-template-columns:1fr}
  .grid-3{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}
  .team-grid{grid-template-columns:1fr}
  .top-bar .container{font-size:11px}
}

/* ===== Hero photo slideshow (replaces old flat hero) ===== */
.hero-slideshow{position:relative;height:600px;overflow:hidden;background:var(--maroon-dark)}
.hero-track{display:flex;height:100%;transition:transform .7s ease}
.hero-slide{min-width:100%;height:100%;position:relative;background-size:cover;background-position:center}
.hero-overlay{position:absolute;inset:0;background:rgba(20,8,10,.55)}
.hero-slide-content{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:16px;color:#fff;max-width:640px}
.hero-slide-content .badge{background:var(--orange);color:#fff;border:none}
.hero-slide-content .h1{color:#fff}
.hero-btn-outline{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.5)}
.hero-btn-outline:hover{background:rgba(255,255,255,.22)}
.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.3);border:none;color:#fff;width:44px;height:44px;border-radius:50%;cursor:pointer;font-size:22px;display:flex;align-items:center;justify-content:center;z-index:3;transition:background .2s}
.hero-arrow:hover{background:rgba(0,0,0,.5)}
.hero-arrow.prev{left:20px}
.hero-arrow.next{right:20px}
.hero-dots{position:absolute;bottom:20px;left:0;right:0;display:flex;justify-content:center;gap:10px;z-index:3}
.hero-dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.45);border:none;cursor:pointer;padding:0;transition:background .2s,transform .2s}
.hero-dot.active{background:var(--gold);transform:scale(1.3)}
@media(max-width:768px){.hero-slideshow{height:520px}.hero-slide-content .h1{font-size:30px}}
@media(max-width:480px){.hero-slideshow{height:460px}}
