/* ============================================================
   ARUVI BAR — aruvibar.com
   Palette drawn from the house itself: kumkum maroon, jaggery
   gold, silk, curry leaf. Display: Marcellus. Body: Newsreader.
   ============================================================ */
:root{
  --night:#150a11;        /* monsoon night — page ground */
  --kumkum:#4a0d26;       /* brand maroon — panels */
  --kumkum-deep:#2e0817;
  --jaggery:#c9973f;      /* gold accent */
  --jaggery-soft:#e0b96a;
  --silk:#f0e6d8;         /* primary text */
  --silk-dim:#c9b8a6;     /* secondary text */
  --leaf:#7da368;         /* curry-leaf green — veg/vegan tags */
  --chilli:#c4502e;       /* spicy tag */
  --hairline:rgba(201,151,63,.28);
  --display:'Marcellus',Georgia,serif;
  --body:'Newsreader',Georgia,serif;
  --measure:64ch;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
}
body{
  background:var(--night);color:var(--silk);
  font-family:var(--body);font-size:1.0625rem;line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--jaggery-soft);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--silk)}
:focus-visible{outline:2px solid var(--jaggery);outline-offset:3px}

h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.15;color:var(--silk)}
h1{font-size:clamp(2.2rem,5.5vw,4rem);letter-spacing:.01em}
h2{font-size:clamp(1.6rem,3.4vw,2.4rem);margin-bottom:.6em}
h3{font-size:1.3rem;margin-bottom:.35em}
p{max-width:var(--measure)}

.eyebrow{
  display:block;font-size:.78rem;letter-spacing:.28em;text-transform:uppercase;
  color:var(--jaggery);margin-bottom:1rem;font-family:var(--body);
}
.wrap{max-width:1080px;margin:0 auto;padding:0 1.25rem}
section{padding:4.5rem 0}
.lede{font-size:1.2rem;color:var(--silk-dim)}

/* --- Header / nav ------------------------------------------- */
.topbar{
  background:var(--kumkum);color:var(--silk);text-align:center;
  font-size:.92rem;padding:.5rem 1rem;border-bottom:1px solid var(--hairline);
}
.topbar a{color:var(--jaggery-soft)}
header.site{
  position:sticky;top:0;z-index:50;background:rgba(21,10,17,.94);
  backdrop-filter:blur(6px);border-bottom:1px solid var(--hairline);
}
.nav{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding:.85rem 1.25rem;max-width:1080px;margin:0 auto}
.brand{font-family:var(--display);font-size:1.35rem;letter-spacing:.06em;color:var(--silk);text-decoration:none}
.brand .ta{color:var(--jaggery);font-size:.5em;letter-spacing:.28em;margin-left:.55rem;vertical-align:middle}
.nav nav{display:flex;gap:1.1rem;flex-wrap:wrap;margin-left:auto;align-items:center}
.nav nav a{font-size:.95rem;text-decoration:none;color:var(--silk-dim)}
.nav nav a[aria-current="page"],.nav nav a:hover{color:var(--silk)}
.btn{
  display:inline-block;background:var(--jaggery);color:#1c1008;font-weight:600;
  padding:.55rem 1.15rem;border-radius:2px;text-decoration:none;font-size:.95rem;
}
.btn:hover{background:var(--jaggery-soft);color:#1c1008}
.btn.ghost{background:transparent;color:var(--jaggery-soft);border:1px solid var(--hairline)}
.btn.ghost:hover{border-color:var(--jaggery);color:var(--silk)}

/* --- Waterfall signature ------------------------------------ */
.falls{position:relative;overflow:hidden}
.falls-strands{position:absolute;inset:0;pointer-events:none;opacity:.5}
.strand{stroke:var(--jaggery);stroke-width:1;opacity:.35}
@keyframes fall{from{transform:translateY(-18%)}to{transform:translateY(18%)}}
.falls-strands g{animation:fall 9s linear infinite alternate}
.falls-strands g:nth-child(2){animation-duration:13s}
.falls-strands g:nth-child(3){animation-duration:11s}

.divider{display:flex;justify-content:center;gap:10px;margin:0 auto;padding:0 0 3.2rem;height:46px}
.divider span{width:1px;background:linear-gradient(var(--jaggery),transparent);display:block}
.divider span:nth-child(1){height:22px}.divider span:nth-child(2){height:34px}
.divider span:nth-child(3){height:46px}.divider span:nth-child(4){height:34px}
.divider span:nth-child(5){height:22px}

/* --- Hero ---------------------------------------------------- */
.hero{padding:5.5rem 0 4.5rem;text-align:center;background:
  radial-gradient(ellipse 80% 60% at 50% 0%,rgba(74,13,38,.55),transparent 70%),var(--night)}
.hero .ta-glyph{
  font-size:clamp(3.4rem,10vw,7rem);color:var(--jaggery);display:block;
  font-family:var(--display);line-height:1;margin-bottom:.5rem;
}
.hero p.tag{color:var(--silk-dim);font-size:1.15rem;margin:1.1rem auto 0}
.hero .cta-row{margin-top:2rem;display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
.answer{
  max-width:46rem;margin:2.4rem auto 0;padding:1.4rem 1.6rem;text-align:left;
  border:1px solid var(--hairline);background:rgba(74,13,38,.25);
}
.answer p{font-size:1.05rem}

/* --- Menu lists ---------------------------------------------- */
.menu-section{max-width:760px;margin:0 auto}
.menu-item{display:flex;align-items:baseline;gap:.6rem;padding:1.05rem 0;border-bottom:1px solid rgba(201,151,63,.14)}
.menu-item .name{font-family:var(--display);font-size:1.15rem;white-space:nowrap}
.menu-item .dots{flex:1;border-bottom:1px dotted rgba(201,151,63,.4);transform:translateY(-4px)}
.menu-item .price{font-family:var(--display);color:var(--jaggery-soft);white-space:nowrap}
.menu-item .desc{flex-basis:100%;color:var(--silk-dim);font-size:.98rem;margin-top:.15rem}
.menu-item{flex-wrap:wrap}
.tag-pill{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;padding:.1rem .5rem;border-radius:2px;vertical-align:middle}
.tag-pill.veg{border:1px solid var(--leaf);color:var(--leaf)}
.tag-pill.spicy{border:1px solid var(--chilli);color:#e0764f}
.tag-pill.star{border:1px solid var(--jaggery);color:var(--jaggery-soft)}

/* --- Tables (AEO) -------------------------------------------- */
table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:1rem}
caption{text-align:left;color:var(--silk-dim);font-size:.9rem;padding-bottom:.5rem}
th,td{padding:.7rem .8rem;text-align:left;border-bottom:1px solid rgba(201,151,63,.18)}
th{font-family:var(--display);font-weight:400;color:var(--jaggery-soft);letter-spacing:.04em}
tbody tr:hover{background:rgba(74,13,38,.3)}

/* --- Cards / grid -------------------------------------------- */
.grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{border:1px solid var(--hairline);padding:1.6rem;background:rgba(46,8,23,.35)}
.card h3{color:var(--jaggery-soft)}
.card p{font-size:.98rem;color:var(--silk-dim)}
figure.photo{margin:2rem 0}
figure.photo img{width:100%;border:1px solid var(--hairline)}
figcaption{font-size:.85rem;color:var(--silk-dim);margin-top:.5rem}

/* --- FAQ ------------------------------------------------------ */
.faq details{border-bottom:1px solid rgba(201,151,63,.18);padding:1rem 0}
.faq summary{cursor:pointer;font-family:var(--display);font-size:1.15rem;list-style:none;display:flex;justify-content:space-between;gap:1rem}
.faq summary::after{content:"+";color:var(--jaggery)}
.faq details[open] summary::after{content:"–"}
.faq details p{margin-top:.7rem;color:var(--silk-dim)}

/* --- Quote / review ------------------------------------------ */
blockquote{border-left:2px solid var(--jaggery);padding-left:1.4rem;margin:2rem 0;font-size:1.15rem;font-style:italic;max-width:var(--measure)}
blockquote cite{display:block;margin-top:.6rem;font-style:normal;font-size:.9rem;color:var(--silk-dim)}

/* --- Map facade ---------------------------------------------- */
.map-facade{position:relative;border:1px solid var(--hairline);background:var(--kumkum-deep);min-height:320px;display:flex;align-items:center;justify-content:center;text-align:center;padding:2rem}
.map-facade iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* --- Footer --------------------------------------------------- */
footer.site{border-top:1px solid var(--hairline);background:var(--kumkum-deep);padding:3.5rem 0 2rem;margin-top:2rem;font-size:.96rem}
footer .cols{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
footer h3{font-size:1.05rem;color:var(--jaggery-soft);margin-bottom:.8rem}
footer ul{list-style:none}
footer li{margin:.4rem 0}
footer address{font-style:normal;color:var(--silk-dim)}
.fineprint{margin-top:2.5rem;padding-top:1.2rem;border-top:1px solid rgba(201,151,63,.14);color:var(--silk-dim);font-size:.85rem;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}

@media (max-width:640px){
  .nav{gap:.6rem}
  .nav nav{gap:.8rem;font-size:.9rem;width:100%;justify-content:flex-start}
  section{padding:3.2rem 0}
  .menu-item .name{white-space:normal}
}
