:root{--ivory:#faf6ee;--paper:#fff;--ink:#4a4643;--ink2:#2b2826;--gold:#b08d4a;--bindi:#b0100a;--green:#2f4a3a;--earth:#7a5638;--line:#e6dcc8;--r:14px;
--serif:"Cormorant Garamond","Playfair Display",Georgia,"Times New Roman","Noto Serif Devanagari","Kohinoor Devanagari",serif;
--sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans Devanagari",sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:76px}
body{margin:0;background:var(--ivory);color:var(--ink);font:400 1rem/1.7 var(--sans)}
img,svg{max-width:100%;height:auto;display:block}
h1,h2,h3{font-family:var(--serif);color:var(--ink2);line-height:1.15;margin:0 0 .5em;font-weight:600}
h1{font-size:clamp(2.4rem,7vw,4.6rem)}h2{font-size:clamp(1.9rem,4.5vw,3rem)}h3{font-size:1.4rem}
p{margin:0 0 1em}a{color:inherit}
.wrap{width:min(1120px,100% - 2rem);margin-inline:auto}
section{padding:clamp(3.5rem,8vw,6.5rem) 0}
.eyebrow{font:600 .75rem/1 var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem;display:block}
.center{text-align:center}.lead{font-size:1.15rem;max-width:62ch}.center .lead{margin-inline:auto}
.skip{position:absolute;left:-999px;top:0;background:var(--ink2);color:#fff;padding:.6rem 1rem;z-index:99}.skip:focus{left:0}
/* header */
.hdr{position:sticky;top:0;z-index:50;background:rgba(250,246,238,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.hdr .wrap{display:flex;align-items:center;justify-content:space-between;height:68px}
.brand img{height:50px;width:auto}
.nav{display:flex;align-items:center;gap:1.6rem}
.nav a{text-decoration:none;font-size:.85rem;letter-spacing:.06em}.nav a:hover{color:var(--bindi)}
.burger{display:none;background:none;border:1px solid var(--line);border-radius:8px;width:44px;height:44px;cursor:pointer}
.burger span{display:block;width:20px;height:2px;background:var(--ink2);margin:4px auto;transition:.25s}
.btn{display:inline-block;background:var(--bindi);color:#fff!important;text-decoration:none;border:0;border-radius:999px;padding:.85rem 1.8rem;font:600 .82rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:.2s}
.btn:hover{background:#8f0d08;transform:translateY(-1px)}.btn:disabled{background:#aaa;cursor:not-allowed;transform:none}
.btn.ghost{background:transparent;color:var(--ink2)!important;border:1px solid var(--ink2)}.btn.ghost:hover{background:var(--ink2);color:#fff!important}
.nav .btn{padding:.7rem 1.2rem}
/* hero */
.hero{padding-top:clamp(2.5rem,6vw,5rem);background:radial-gradient(900px 500px at 85% 20%,#f1e4c6 0,transparent 70%),var(--ivory)}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center}
.hi{font-family:var(--serif);font-size:clamp(1.5rem,3.5vw,2.1rem);color:var(--bindi);margin-bottom:.4rem}
.hero .tag{font-family:var(--serif);font-style:italic;font-size:1.5rem;margin:1rem 0 2rem}
.hero .acts{display:flex;gap:1rem;flex-wrap:wrap}
.jar{background:linear-gradient(160deg,#fff,#f4ead2);border:1px solid var(--line);border-radius:50% 50% var(--r) var(--r)/38% 38% var(--r) var(--r);padding:2.2rem;max-width:400px;margin-inline:auto;box-shadow:0 30px 60px -30px rgba(74,70,67,.35)}
/* cards */
.grid{display:grid;gap:1.4rem}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:1.6rem}
.soon{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.2rem;font-family:var(--serif);font-size:1.25rem}
.soon small{font:600 .62rem var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--gold);border:1px solid var(--gold);border-radius:99px;padding:.25rem .6rem}
.alt{background:#f3ecdc}.dark{background:var(--ink2);color:#e8e1d2}.dark h2,.dark h3{color:#fff}.dark .eyebrow{color:#d4b06a}
/* process */
.steps{list-style:none;padding:0;margin:2.5rem 0 0;display:grid;grid-template-columns:repeat(7,1fr);gap:.8rem;counter-reset:s}
.steps li{text-align:center;position:relative;padding:0 .2rem}
.steps svg{width:64px;height:64px;margin:0 auto .7rem;stroke:#d4b06a;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.steps b{display:block;font:600 .7rem var(--sans);letter-spacing:.18em;color:#d4b06a}
.steps span{font-family:var(--serif);font-size:1.15rem;color:#fff}
.steps li:not(:last-child)::after{content:"";position:absolute;top:32px;left:calc(50% + 40px);width:calc(100% - 80px);border-top:1px dashed #8a7a55}
/* pre-book */
.pack{display:flex;flex-direction:column;gap:.5rem}
.pack .sz{font-family:var(--serif);font-size:1.9rem;font-weight:600;color:var(--ink2)}
.pack .reg{text-decoration:line-through;color:#8b8580}.pack .off{color:var(--green);font-weight:600;font-size:.85rem}
.pack .price{font-family:var(--serif);font-size:2rem;color:var(--bindi);font-weight:700}
.pack .left{font-size:.8rem;font-weight:600;color:var(--earth)}
.pack .btn{margin-top:.6rem;text-align:center}
.formbox{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:clamp(1.2rem,4vw,2.4rem);margin-top:2.5rem}
.frm{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.frm .full{grid-column:1/-1}
label{display:block;font-size:.8rem;font-weight:600;margin-bottom:.3rem}
input,select,textarea{width:100%;font:inherit;padding:.75rem .9rem;border:1px solid #cfc3aa;border-radius:10px;background:#fffdf8;color:var(--ink2)}
input:focus,select:focus,textarea:focus,summary:focus-visible,.btn:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.sum{background:#f7f0e0;border:1px dashed var(--gold);border-radius:10px;padding:1rem 1.2rem;font-size:.95rem}
.sum strong{color:var(--bindi)}.err{color:var(--bindi);font-size:.78rem;min-height:1em}
.hp{position:absolute;left:-9999px}.msg{padding:1rem;border-radius:10px;margin-top:1rem;display:none}.msg.ok{background:#e6f0e8;color:var(--green);display:block}.msg.bad{background:#fbe9e7;color:var(--bindi);display:block}
/* faq/footer */
details{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:1rem 1.2rem;margin-bottom:.8rem}
summary{cursor:pointer;font-weight:600;list-style:none}summary::after{content:"+";float:right;color:var(--gold);font-size:1.3rem;line-height:1}details[open] summary::after{content:"–"}
details p{margin:.8rem 0 0}
.ftr{background:var(--ink2);color:#cfc7b6;padding:3rem 0 2rem;font-size:.9rem}.ftr img{height:70px;width:auto;filter:brightness(0) invert(1);opacity:.9;margin-bottom:1rem}
.ftr .grid{grid-template-columns:2fr 1fr 1fr}.ftr a{display:block;text-decoration:none;padding:.15rem 0}.ftr a:hover{color:#fff}
.ftr .cp{border-top:1px solid #4a4643;margin-top:2rem;padding-top:1.2rem;font-size:.8rem}
/* responsive */
@media(max-width:960px){.g4{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:1fr 1fr}.steps{grid-template-columns:repeat(4,1fr);row-gap:2rem}.steps li::after{display:none}}
@media(max-width:820px){.burger{display:block}
.nav{position:absolute;top:68px;left:0;right:0;background:var(--ivory);flex-direction:column;align-items:stretch;gap:0;padding:.5rem 1rem 1.2rem;border-bottom:1px solid var(--line);display:none}
.nav.open{display:flex}.nav a{padding:.9rem .4rem;border-bottom:1px solid var(--line)}.nav .btn{margin-top:1rem;text-align:center;border:0}
.hero .wrap{grid-template-columns:1fr;text-align:center}.hero .acts{justify-content:center}.jar{order:-1;max-width:260px}}
@media(max-width:600px){.g3,.g4,.frm,.ftr .grid{grid-template-columns:1fr}.steps{grid-template-columns:repeat(2,1fr)}.btn{width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* utility classes (replace inline styles for strict CSP) */
.s1{margin-top:2.5rem}
.s2{margin-top:1rem;text-align:left}
.s3{margin-top:3rem}
.s4{margin-top:1.5rem}
.s5{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:2.5rem}
.s6{font-size:.78rem;margin:1rem 0 0}
.s7{max-width:220px;letter-spacing:6px;font-size:1.4rem}
.s8{margin-top:1rem}
.s9{max-width:820px}
