/* ELEGANT — सेरिफ़, सेंटर, मेन्यू लिस्ट */
:root { --fh: 'Rozha One', 'Martel', serif; --fb: 'Martel', 'Hind', serif; --r: 2px; }
body { background: color-mix(in srgb, var(--bg) 70%, #FBF7EF); line-height: 1.75; }
.hd { position: relative; background: transparent; border-bottom: 1px solid color-mix(in srgb, var(--p) 25%, transparent); }
.hd-in { flex-direction: column; text-align: center; gap: 4px; padding: 22px 0 12px; }
.crest .logo { width: 54px; height: 54px; border-radius: 50%; border: 2px solid var(--p); }
.crest .logo-txt { background: transparent; color: var(--p); }
.name { font: 400 clamp(1.7rem, 5vw, 2.3rem)/1.1 var(--fh); color: var(--ink); text-decoration: none; }
.since { font-size: .85rem; color: var(--muted); }
.hd-nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 22px; margin-top: 10px; font-size: .95rem; }
.hd-nav a { color: var(--ink); text-decoration: none; border-bottom: 1px solid transparent; }
.hd-nav a:hover { border-color: var(--p); }
.hero { text-align: center; padding: 64px 0 56px; }
.orn { display: block; color: var(--a); letter-spacing: 8px; margin-bottom: 16px; }
.hero h1 { font-weight: 400; font-size: clamp(2.2rem, 6.5vw, 3.8rem); color: var(--p); }
.lede { font-size: 1.1rem; color: var(--muted); max-width: 46ch; margin: 0 auto 26px; font-style: italic; }
.btn { border-radius: 0; letter-spacing: .02em; }
.btn-line { color: var(--p); padding-inline: 34px; }
.btn-line:hover { background: var(--p); color: #fff; }
.btn-p { background: var(--p); }
.ttl { text-align: center; font-weight: 400; }
.ttl::after { content: ''; display: block; width: 60px; height: 2px; background: var(--a); margin: 14px auto 0; }
.menu { list-style: none; padding: 0; margin: 28px 0; display: grid; gap: 4px 48px; }
@media (min-width: 760px) { .menu { grid-template-columns: 1fr 1fr; } }
.menu li { display: flex; align-items: baseline; gap: 10px; padding: 12px 0; }
.m-n { display: flex; align-items: center; gap: 10px; font-weight: 700; }
.m-ic { font-size: 1.3rem; }
.m-dots { flex: 1; border-bottom: 2px dotted color-mix(in srgb, var(--ink) 30%, transparent); transform: translateY(-4px); }
.m-p { color: var(--p); font-weight: 700; white-space: nowrap; }
.pts { text-align: center; color: var(--muted); font-size: .95rem; }
.sec h2 { text-align: center; font-weight: 400; }
.s-rev .revs blockquote { background: transparent; border: 0; border-top: 2px solid var(--a); border-radius: 0; text-align: center; font-style: italic; font-size: 1.05rem; }
.gal-i { border-radius: 999px 999px 4px 4px; aspect-ratio: 3/4; }
.form { margin-inline: auto; }
.s-book .form, .s-map .map, .s-emi .emi { margin-inline: auto; }
.map { text-align: center; align-items: center; border-style: solid; border-width: 1px; }
.pay-box, .app-box { border-radius: 2px; background: transparent; border: 1px solid color-mix(in srgb, var(--p) 30%, transparent); }
.foot { background: var(--p); }
