/* ===== Base ===== */
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  font-family: 'Outfit', sans-serif;
  color: #505050;
  background-color: #FCFAF7;
  font-size: 16px;
  line-height: 26px;
  margin: 0;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
h1,h2,h3,h4,h5,h6 { font-family: 'Marcellus', serif; color:#1c1c1c; font-weight:400; line-height:1.3; margin:0 0 15px; }
h1 { font-size:48px; } h2 { font-size:36px; } h3 { font-size:30px; }
h4 { font-size:24px; } h5 { font-size:20px; } h6 { font-size:18px; }
a { color: inherit; text-decoration: none; transition-duration:200ms; }
img { max-width:100%; height:auto; }
.container { max-width:1220px; margin:0 auto; padding:0 15px; }

/* ===== Buttons ===== */
.vs-btn {
  display:inline-flex; align-items:center; justify-content:center; text-align:center;
  background-color:#1c1c1c; color:#fff; font-family:'Outfit',sans-serif; font-weight:800;
  font-size:14px; line-height:1; padding:16px 32px; border-radius:8px; position:relative;
  z-index:1; overflow:hidden; text-transform:uppercase; letter-spacing:1.5px; gap:10px;
  border:none; cursor:pointer; transition:all ease .4s;
}
.vs-btn:before,.vs-btn:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:#aa771c;transform:scale(0);z-index:-1;border-radius:inherit;transform-origin:right bottom;transition:opacity .4s,visibility .4s,transform .4s;}
.vs-btn:before{transform-origin:left top;}
.vs-btn:hover{color:#fff;}
.vs-btn:hover:before,.vs-btn:hover:after{transform:scale(1);opacity:1;visibility:visible;}
.vs-btn.style5{font-size:15px;font-weight:750;border-radius:8px;padding:22px 50px;background:#D4AF37;color:#111330;min-height:60px;}
.vs-btn.style5:before,.vs-btn.style5:after{background:#0C5460;}

.sec-title{font-family:'Marcellus',serif;font-size:40px;color:#1c1c1c;margin-bottom:30px;line-height:1.2;}
.sec-subtitle{display:block;font-family:'Outfit',sans-serif;font-size:13px;font-weight:900;color:#D4AF37;text-transform:uppercase;letter-spacing:3px;margin-bottom:15px;}

/* ===== Heritage Card ===== */
.card-heritage{background:#fff;border:1px solid rgba(138,28,20,.08);position:relative;transition:all .3s cubic-bezier(.25,.8,.25,1);border-radius:20px;overflow:hidden;}
.card-heritage:before{content:'';position:absolute;top:5px;left:5px;right:5px;bottom:5px;border:1px solid rgba(224,90,23,0);transition:all .35s cubic-bezier(.25,.8,.25,1);pointer-events:none;z-index:10;border-radius:15px;}
.card-heritage:hover{transform:translateY(-6px);box-shadow:0 16px 32px rgba(138,28,20,.08);border-color:rgba(224,90,23,.25);}
.card-heritage:hover:before{border-color:rgba(212,175,55,.3);}

/* ===== Jaali patterns ===== */
.bg-jaali{background-color:#FCFAF7;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 60 60'%3E%3Cpath d='M30 0 L60 30 L30 60 L0 30 Z M30 10 L50 30 L30 50 L10 30 Z M0 0 L15 0 L0 15 Z M60 0 L45 0 L60 15 Z M60 60 L45 60 L60 45 Z M0 60 L15 60 L0 45 Z' fill='%23D4AF37' fill-opacity='0.025' fill-rule='evenodd'/%3E%3C/svg%3E");}
.bg-jaali-dark{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 60 60'%3E%3Cpath d='M30 0 L60 30 L30 60 L0 30 Z M30 10 L50 30 L30 50 L10 30 Z M0 0 L15 0 L0 15 Z M60 0 L45 0 L60 15 Z M60 60 L45 60 L60 45 Z M0 60 L15 60 L0 45 Z' fill='%23FFFFFF' fill-opacity='0.02' fill-rule='evenodd'/%3E%3C/svg%3E");}

/* ===== Gold logo shine ===== */
.logo-gold-shine{background:linear-gradient(90deg,#8a6421 0%,#d4af37 25%,#aa771c 50%,#d4af37 75%,#8a6421 100%);background-size:200% auto;color:transparent;-webkit-background-clip:text;background-clip:text;animation:goldShine 12s linear infinite;}
@keyframes goldShine{0%{background-position:-200% center;}100%{background-position:200% center;}}

/* ===== Gold button ===== */
.btn-gold{background:linear-gradient(135deg,#F3E5AB 0%,#D4AF37 50%,#AA771C 100%);color:#111330;font-weight:700;text-shadow:0 .5px .5px rgba(255,255,255,.4);box-shadow:0 4px 15px rgba(212,175,55,.25),inset 0 1px 0 rgba(255,255,255,.3);border:1px solid rgba(212,175,55,.4);position:relative;overflow:hidden;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;text-decoration:none;}
.btn-gold:hover{background:linear-gradient(135deg,#D4AF37 0%,#AA771C 50%,#8A6421 100%);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.4);box-shadow:0 6px 20px rgba(212,175,55,.45);border-color:rgba(212,175,55,.6);}

/* ===== Animations ===== */
@keyframes goldPulse{0%{box-shadow:0 0 0 0 rgba(212,175,55,.4);}70%{box-shadow:0 0 0 12px rgba(212,175,55,0);}100%{box-shadow:0 0 0 0 rgba(212,175,55,0);}}
.glow-gold{box-shadow:0 0 0 0 rgba(212,175,55,.4);animation:goldPulse 2.5s infinite;}
@keyframes spinSlow{from{transform:rotate(0);}to{transform:rotate(360deg);}}
.animate-spin-slow{animation:spinSlow 50s linear infinite;}
@keyframes borderSpin{0%{transform:rotate(0);}100%{transform:rotate(360deg);}}
.animate-border-spin{animation:borderSpin 3s linear infinite;}
@keyframes lineSweep{0%{left:-25%;}100%{left:125%;}}
.animate-line-sweep{animation:lineSweep 3.5s cubic-bezier(.4,0,.2,1) infinite;}
@keyframes buttonShine{0%{transform:translateX(-150%) skewX(-25deg);}40%{transform:translateX(200%) skewX(-25deg);}100%{transform:translateX(200%) skewX(-25deg);}}
.animate-btn-shine{animation:buttonShine 4s cubic-bezier(.4,0,.2,1) infinite;}

.scrollbar-hide::-webkit-scrollbar{display:none;}
.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none;}

/* ===== Header (fixed pill) ===== */
.site-header{position:fixed;top:8px;left:50%;transform:translateX(-50%);z-index:300;width:95%;max-width:1320px;}
.site-header .pill{background:rgba(255,255,255,.2);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 8px 32px rgba(0,0,0,.12);border:1px solid rgba(255,255,255,.4);border-radius:9999px;padding:6px 16px;}

/* ===== Rajput divider ===== */
.rajput-divider{display:block;width:100%;line-height:0;}

/* ===== Slider arrows ===== */
.carousel-wrap{position:relative;}
.carousel-arrow{position:absolute;top:38%;transform:translateY(-50%);z-index:20;width:44px;height:44px;border-radius:9999px;background:#fff;border:1px solid rgba(212,175,55,.4);box-shadow:0 4px 15px rgba(0,0,0,.08);display:flex;align-items:center;justify-content:center;color:#aa771c;cursor:pointer;transition:all .3s;font-size:20px;}
.carousel-arrow:hover{background:#D4AF37;color:#fff;}
.carousel-arrow.left{left:-10px;}
.carousel-arrow.right{right:-10px;}

/* line clamp */
.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}

/* sticky header spacer (hero/banners handle their own top offset) */

/* form inputs */
.field{width:100%;background:#fff;border:1px solid #e5e0d8;border-radius:10px;padding:14px 16px;font-family:'Outfit',sans-serif;font-size:15px;color:#1c1c1c;outline:none;transition:border-color .2s;}
.field:focus{border-color:#D4AF37;box-shadow:0 0 0 1px rgba(212,175,55,.4);}
.label{font-weight:700;font-size:13px;color:#111330;margin-bottom:6px;display:block;text-transform:uppercase;letter-spacing:.5px;}

/* ===== Responsive header tweaks ===== */
@media (max-width:1023px){
  .desktop-nav{display:none;}
}
@media (min-width:1024px){
  .mobile-actions{display:none;}
}
