:root{
  --plum:#2B1029;--plum-2:#4A1838;--rani:#B5174B;--rani-d:#8E0F3A;--marigold:#F4A51C;--marigold-d:#D9860A;
  --haldi:#FFE3A3;--blush:#FFF5F2;--paper:#FFFFFF;--mehendi:#4A6B2F;--line:#EED9D5;--muted:#7A5C6E;
  --display:'Rozha One','Tiro Devanagari Hindi',Georgia,serif;--body:'Mukta',system-ui,-apple-system,'Segoe UI',sans-serif;
  --r-lg:22px;--r-md:14px;--r-sm:10px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--body);font-size:17px;line-height:1.6;color:var(--plum);background:var(--blush)}
img{max-width:100%}
a{color:var(--rani)}
h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.12;margin:0 0 .4em;letter-spacing:.005em}
h2{font-size:clamp(30px,4.2vw,44px)}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
:focus-visible{outline:3px solid var(--marigold);outline-offset:2px;border-radius:4px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:11px 22px;font:600 16px/1.2 var(--body);text-decoration:none;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s}
.btn:active{transform:translateY(1px)}
.btn-lg{padding:15px 28px;font-size:18px}
.btn-gold{background:var(--marigold);color:var(--plum);box-shadow:0 6px 0 var(--marigold-d)}
.btn-gold:hover{background:#FFB83A}
.btn-gold:active{box-shadow:0 3px 0 var(--marigold-d);transform:translateY(3px)}
.btn-rani{background:var(--rani);color:#fff}
.btn-rani:hover{background:var(--rani-d)}
.btn-ghost{background:transparent;color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.55)}
.btn-ghost:hover{box-shadow:inset 0 0 0 2px #fff}
.btn-line{background:#fff;color:var(--plum);box-shadow:inset 0 0 0 1.5px var(--line)}
.btn-line:hover{box-shadow:inset 0 0 0 1.5px var(--rani)}
.btn[disabled]{opacity:.55;pointer-events:none}

/* announce + nav */
.announce{background:var(--plum);color:var(--haldi);text-align:center;font-size:14px;padding:7px 12px}
.nav{position:sticky;top:0;z-index:50;background:rgba(255,245,242,.94);backdrop-filter:saturate(1.4) blur(8px);-webkit-backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid transparent;transition:border-color .2s}
.nav.scrolled{border-bottom-color:var(--line)}
.home .nav{background:var(--rani-d);border-bottom-color:rgba(255,255,255,.08)}
.home .nav.scrolled{background:rgba(142,15,58,.96)}
.nav-in{display:flex;align-items:center;gap:22px;height:68px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--plum);margin-right:auto}
.home .logo{color:#fff}
.logo-mark{width:40px;height:40px;border-radius:50%;background:var(--rani);color:var(--marigold);display:grid;place-items:center;flex-shrink:0;box-shadow:inset 0 0 0 2px var(--marigold)}
.home .logo-mark{background:var(--plum)}
.logo-mark svg{width:28px;height:28px}
.logo-mark b{font:400 22px/1 'Tiro Devanagari Hindi',serif}
.logo-mark img{width:28px;height:28px;object-fit:contain}
.logo-txt{font:400 23px/1 var(--display);display:flex;flex-direction:column}
.logo-txt small{font:500 12px/1.4 var(--body);opacity:.75;margin-top:2px}
.nav-links{display:flex;gap:22px}
.nav-links a{color:inherit;text-decoration:none;font-weight:500;font-size:16px}
.home .nav-links a{color:#fff}
.nav-links a:hover{color:var(--marigold)}
.nav-cta{padding:9px 18px;box-shadow:0 4px 0 var(--marigold-d)}
.nav-toggle{display:none;background:none;border:0;width:40px;height:40px;cursor:pointer;padding:9px}
.nav-toggle span{display:block;height:2px;background:currentColor;margin:6px 0;border-radius:2px}
.home .nav-toggle{color:#fff}
@media (max-width:860px){
  .nav-links{position:absolute;left:0;right:0;top:68px;background:var(--paper);flex-direction:column;gap:0;padding:8px 20px 16px;box-shadow:0 12px 24px rgba(43,16,41,.12);display:none}
  .nav.open .nav-links{display:flex}
  .nav-links a,.home .nav-links a{color:var(--plum);padding:12px 0;border-bottom:1px solid var(--line)}
  .nav-toggle{display:block}
  .nav-cta{display:none}
}

/* hero */
.hero{position:relative;overflow:hidden;color:#fff;background:radial-gradient(900px 520px at 78% 30%,#D02A62 0%,rgba(208,42,98,0) 70%),linear-gradient(160deg,var(--rani-d) 0%,#5E0D33 55%,var(--plum) 100%);padding:120px 0 80px}
.hero-toran{position:absolute;left:0;top:0;pointer-events:none}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center}
.hero h1{font-size:clamp(40px,6vw,70px);color:#fff;margin-bottom:.3em}
.hero-sub{font-size:clamp(17px,1.6vw,20px);max-width:34em;opacity:.92;margin:0 0 28px}
.hero-cta{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:28px}
.hero-points{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px 10px}
.hero-points li{font-size:15px;padding:5px 14px;border-radius:999px;background:rgba(255,255,255,.1);box-shadow:inset 0 0 0 1px rgba(255,227,163,.35);color:var(--haldi)}
.hero-stack{position:relative;height:560px}
.hs-card{position:absolute;width:330px;left:50%;top:10px;margin-left:-165px;border-radius:6px;background:#fff;box-shadow:0 30px 60px rgba(20,0,15,.45);transition:transform .5s cubic-bezier(.2,.8,.2,1),opacity .4s}
.hs-0{transform:translate(-120px,40px) rotate(-9deg) scale(.86);opacity:.9}
.hs-2{transform:translate(120px,40px) rotate(9deg) scale(.86);opacity:.9}
.hs-1{z-index:2}
.hero-stack.swap .hs-1{transform:translateY(16px) scale(.97);opacity:.0}
.hero-stack.swap .hs-0,.hero-stack.swap .hs-2{opacity:.4}
.hs-name{position:absolute;left:0;right:0;bottom:-6px;text-align:center;font:400 22px var(--display);color:var(--haldi);margin:0}
@media (max-width:960px){
  .hero{padding:110px 0 50px}
  .hero-grid{grid-template-columns:1fr}
  .hero-stack{height:440px}
  .hs-card{width:260px;margin-left:-130px}
  .hs-0{transform:translate(-90px,36px) rotate(-9deg) scale(.84)}
  .hs-2{transform:translate(90px,36px) rotate(9deg) scale(.84)}
}
@media (max-width:420px){.hs-card{width:220px;margin-left:-110px}.hero-stack{height:380px}}

/* sections */
.sec{padding:84px 0}
.sec-head{max-width:640px;margin:0 0 30px}
.sec-head p{color:var(--muted);margin:0;font-size:18px}

/* gallery */
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.chip{border:0;background:#fff;color:var(--plum);padding:8px 18px;border-radius:999px;font:500 16px var(--body);cursor:pointer;box-shadow:inset 0 0 0 1.5px var(--line)}
.chip.on{background:var(--plum);color:#fff;box-shadow:none}
.tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:26px 22px}
.tcard{display:block;text-decoration:none;color:var(--plum)}
.tthumb{background:#fff;border-radius:4px;box-shadow:0 1px 0 var(--line),0 12px 28px rgba(43,16,41,.12);transition:transform .2s ease,box-shadow .2s ease;min-height:120px}
.tcard:hover .tthumb{transform:translateY(-4px);box-shadow:0 1px 0 var(--line),0 20px 36px rgba(43,16,41,.18)}
.tmeta{display:flex;align-items:center;gap:8px;margin-top:12px}
.tname{font:400 20px/1.2 var(--display)}
.tag-prem,.tag-pop{font-size:12px;font-weight:600;padding:2px 9px;border-radius:999px}
.tag-prem{background:var(--plum);color:var(--haldi)}
.tag-pop{background:var(--haldi);color:#7A4A00}
.tuse{font-size:15px;color:var(--rani);font-weight:600}

/* steps */
.steps{background:var(--paper)}
.step-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:34px;counter-reset:s}
.step-list li{counter-increment:s;position:relative;padding-top:64px}
.step-list li:before{content:counter(s);position:absolute;left:0;top:0;width:50px;height:50px;border-radius:50%;background:var(--haldi);color:var(--rani-d);font:400 28px/50px var(--display);text-align:center}
.step-list li:not(:last-child):after{content:'';position:absolute;left:62px;right:-20px;top:25px;border-top:2px dashed var(--line)}
.step-list b{display:block;font:400 24px/1.2 var(--display);margin-bottom:6px}
.step-list span{color:var(--muted)}
@media (max-width:760px){.step-list{grid-template-columns:1fr;gap:26px}.step-list li:after{display:none}}

/* customise */
.custom-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.feat{margin:6px 0 26px}
.feat div{padding:14px 0;border-bottom:1px solid var(--line)}
.feat dt{font-weight:700;font-size:18px}
.feat dd{margin:2px 0 0;color:var(--muted)}
.demo{display:flex;flex-direction:column;align-items:center;gap:18px}
.demo-page{width:min(400px,100%);background:#fff;border-radius:4px;box-shadow:0 26px 50px rgba(43,16,41,.18)}
.demo-swatches{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.sw{width:38px;height:38px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1.5px var(--line);cursor:pointer;padding:0}
.sw.on{box-shadow:0 0 0 2.5px var(--plum)}
@media (max-width:860px){.custom-grid{grid-template-columns:1fr;gap:34px}}

/* fields */
.fieldsec{background:var(--paper)}
.fcols{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:26px 34px}
.fcol h3{font-size:22px;margin-bottom:6px}
.fcol h3 span{font:400 16px 'Tiro Devanagari Hindi',serif;color:var(--muted);margin-left:6px}
.fcol p{margin:0;color:var(--muted)}

/* price */
.price{background:linear-gradient(180deg,var(--blush),#FFE9E2)}
.price-in{display:flex;justify-content:center}
.price-card{background:var(--plum);color:#fff;border-radius:var(--r-lg);padding:40px 36px;max-width:520px;width:100%;text-align:center;position:relative;overflow:hidden}
.price-card:before{content:'';position:absolute;inset:10px;border:1px solid rgba(244,165,28,.35);border-radius:16px;pointer-events:none}
.price-card h2{color:#fff;font-size:30px}
.amt{margin:6px 0 18px;display:flex;align-items:baseline;justify-content:center;gap:12px}
.amt s{opacity:.55;font-size:24px}
.amt b{font:400 64px/1 var(--display);color:var(--marigold)}
.price-card ul{list-style:none;padding:0;margin:0 0 26px;text-align:left;display:inline-block}
.price-card li{padding:5px 0 5px 28px;position:relative}
.price-card li:before{content:'';position:absolute;left:4px;top:13px;width:12px;height:7px;border-left:2.5px solid var(--marigold);border-bottom:2.5px solid var(--marigold);transform:rotate(-45deg)}
.price-card small{display:block;margin-top:18px;opacity:.7;font-size:14px}

/* reviews */
.rgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}
.rgrid figure{margin:0;padding:24px 0 0;border-top:3px solid var(--marigold)}
.rgrid blockquote{margin:0 0 12px;font-size:19px;line-height:1.5}
.rgrid figcaption{font-weight:700}
.rgrid figcaption span{font-weight:400;color:var(--muted)}

/* faq */
.faq{background:var(--paper)}
.faq-in{max-width:780px}
.faq details{border-bottom:1px solid var(--line);padding:4px 0}
.faq summary{cursor:pointer;list-style:none;font-weight:600;font-size:19px;padding:14px 36px 14px 0;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:'+';position:absolute;right:4px;top:8px;font-size:28px;color:var(--rani);font-weight:400}
.faq details[open] summary:after{content:'\2212'}
.faq details p{margin:0 0 16px;color:var(--muted)}

/* end cta */
.cta-end{position:relative;overflow:hidden;background:linear-gradient(160deg,var(--rani-d),var(--plum));color:#fff;text-align:center;padding:150px 0 90px}
.cta-toran{position:absolute;left:0;top:0}
.cta-end h2{color:#fff}
.cta-end p{opacity:.85;margin:0 0 26px;font-size:19px}

/* footer */
.foot{background:var(--plum);color:rgba(255,255,255,.78);padding:46px 0 26px;font-size:15px}
.foot-in{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:26px}
.foot b{font:400 24px var(--display);color:#fff}
.foot p{margin:4px 0 0}
.foot a{color:rgba(255,255,255,.85);text-decoration:none;display:block;padding:3px 0}
.foot a:hover{color:var(--marigold)}
.foot-copy{margin-top:30px;padding-top:18px;border-top:1px solid rgba(255,255,255,.12);font-size:13px;opacity:.7}
@media (max-width:760px){.foot-in{grid-template-columns:1fr}}
.wa-float{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));width:56px;height:56px;border-radius:50%;background:#25D366;display:grid;place-items:center;box-shadow:0 10px 24px rgba(0,0,0,.25);z-index:60}

/* content pages */
.page{padding:60px 0 80px}
.page-box{max-width:780px;background:#fff;border-radius:var(--r-md);padding:36px;box-shadow:0 1px 0 var(--line)}
.page-box h1{font-size:38px}

@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
