:root{
  --primary:#D62828;
  --primary-dark:#A31E1E;
  --secondary:#F4A261;
  --accent:#2A9D8F;
  --bg:#FFF8F0;
  --ink:#333333;
  --gold:#C9973B;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg);
  color:var(--ink);
  font-family:'Inter',sans-serif;
  overflow-x:hidden;
}
h1,h2,h3,h4,.font-display{font-family:'Poppins',sans-serif;}
@media (prefers-reduced-motion: reduce){
  *{animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important; scroll-behavior:auto !important;}
}

/* Pattachitra-inspired scalloped divider — the site's signature motif */
.scallop-divider{
  width:100%; height:28px; line-height:0;
}
.scallop-divider svg{width:100%;height:100%;display:block;}

.thali-badge{
  position:relative;
  width:clamp(220px,26vw,320px);
  aspect-ratio:1/1;
}
.thali-ring{
  position:absolute; inset:0; border-radius:50%;
  background: conic-gradient(from 0deg, var(--gold), var(--secondary), var(--primary), var(--gold));
  animation: spin-slow 14s linear infinite;
  padding:6px;
}
.thali-ring-inner{
  width:100%; height:100%; border-radius:50%;
  background:var(--bg);
  display:flex; align-items:center; justify-content:center;
}
@keyframes spin-slow{ to{ transform:rotate(360deg);} }

.steam{
  position:absolute; bottom:60%; opacity:0; filter:blur(1px);
}
.steam path{stroke:#ffffffcc; stroke-width:3; fill:none; stroke-linecap:round;}

.card-hover{ transition: transform .35s ease, box-shadow .35s ease; }
.card-hover:hover{ transform: translateY(-8px); box-shadow: 0 20px 40px -12px rgba(214,40,40,.25); }

.glass{
  background: rgba(255,255,255,0.55);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,0.4);
}

.menu-tab.active{
  background:var(--primary); color:#fff;
}

.testimonials-section{
  background: linear-gradient(135deg, #fff8f0 0%, #ffe8d6 100%) !important;
}

.testimonial-card{
  background: #ffffff !important;
  color: #333333 !important;
  border: 1px solid #f1d0b3 !important;
  box-shadow: 0 20px 45px -20px rgba(0,0,0,0.18) !important;
}

.testimonial-card .rating{ color: var(--secondary) !important; }
.testimonial-card .quote{ color: #333333 !important; }
.testimonial-card .author{ color: var(--primary) !important; }
.testimonial-card .meta{ color: var(--accent) !important; }

.reveal{ opacity:0; transform:translateY(30px); }

.whatsapp-float{
  position:fixed; bottom:22px; right:22px; z-index:50;
  width:58px; height:58px; border-radius:50%;
  background:#25D366; display:flex; align-items:center; justify-content:center;
  box-shadow:0 10px 25px rgba(0,0,0,.25);
  animation: pulse-wa 2.4s ease-in-out infinite;
}
@keyframes pulse-wa{ 0%,100%{ box-shadow:0 0 0 0 rgba(37,211,102,.5);} 50%{ box-shadow:0 0 0 12px rgba(37,211,102,0);} }

.call-float{
  position:fixed; bottom:22px; right:92px; z-index:50;
  width:52px; height:52px; border-radius:50%;
  background:var(--primary); display:flex; align-items:center; justify-content:center;
  box-shadow:0 10px 25px rgba(0,0,0,.25);
}

.lightbox{ position:fixed; inset:0; background:rgba(20,10,5,.92); z-index:100; display:none; align-items:center; justify-content:center; }
.lightbox.open{ display:flex; }

::-webkit-scrollbar{ width:10px; }
::-webkit-scrollbar-thumb{ background:var(--secondary); border-radius:10px; }
