ROSEBUDS MATTRESS SUGGESTOR
Kalyan Udhyog · ISO Certified
Factory Direct · Est. 1999
🏭 No Middlemen · Factory Direct
🛡 Up to 25 Yr Warranty
📐 Custom Any Size
🏨 Hotels Across Rajasthan Trust Us
💬 WhatsApp Support 7 Days
🛏️
Select your bed size
Prices calculated live for your exact dimensions
🛏
72×35"
Single
🛏
75×35"
Single Long
🛏
72×48"
Double
🛏
70×72"
Queen
POPULAR
🛏
70×75"
King
📐
Custom
Any size
Valid range: 24–120" long · 24–84" wide
✅ Size selected — tap Continue
Continue →
What would you like to do?
← Change size
✨
Find my perfect mattress
5 questions → personalised match · takes 2 minutes
→
START HERE
OR BROWSE DIRECTLY
📋
Browse full catalog
I already know what I want · 30 models
→
🔧
Build a custom mattress
Choose every foam layer yourself
→
💬
Talk to an expert
WhatsApp our factory team directly
→
Sleep Profile
Exit
👤
Who is this mattress for?
🧑
For myself
I will answer for my own needs
💑
Me and my partner
Needs to suit two sleepers
👴
An elderly parent
Back pain and joint issues are common
👶
A child
Growing spine needs gentle firm support
🏨
Hotel or rental property
Heavy daily use, durability first
⚖️
Sleeper's body weight?
For 90+ kg: soft foams will sag within months. A high-density base is essential for spine health.
🪶
Under 60 kg
Softer foams feel great
🧍
60 to 85 kg
Most mattress types work well
💪
85 to 110 kg
Needs 40D HR or Bonded base
🏋️
Above 110 kg
Only Bonded or highest-density HR
❤️
Main concern?
🦴
Back pain or spine alignment
Chronic or occasional back issues
🤝
Joint and pressure relief
Shoulders, hips, arthritis
✨
General comfort and luxury
No medical concern, just great sleep
❄️
I sleep hot
Need cooling and airflow
🌙
Sleep position?
🌙
Side sleeper
Pressure relief at shoulder and hip
🌅
Back sleeper
Spinal neutrality is critical
🌊
Stomach sleeper
Firm surface prevents neck strain
🔄
I change positions all night
Need balanced responsive support
💰
Budget for this size?
👑
Premium
Bio-Latex, Jacquard cover, 10-25 yr warranty
⭐
Mid-range
HR and Bonded foam, 5-10 yr warranty
🎯
Budget
Practical, durable, 1-3 yr warranty
Next →
Full Catalog
Tap any model to enquire on WhatsApp
← Back
Custom Builder
Select size first
← Back
How it works: Densest foam goes at the base. Add softer layers on top. 2 layers suits most people perfectly.
Cover fabric
Premium Jacquard 240 GSM — 15mm quilt Standard Knitted 150 GSM — 10mm quilt Basic Quilted Fabric — 10mm quilt
Top finish
Standard Tight Top Euro Top — soft plush edge (+₹500) Pillow Top — extra cloud layer (+₹1,100)
Foam layers
−
2 / 4
+
Total thickness (incl. cover)
—
Your Bespoke Price
Select size first
MRP · Rounded to nearest ₹10 · Incl. packaging and labour
Custom builder pricing applies to non-catalog builds only. For standard models, catalog prices may differ.
📲 Send Blueprint to Factory
Your Matches
↺ Redo
Recommendations for you
—
💬 Need help deciding? Talk to our team
Talk to us
← Back
✓ ISO Certified ✓ MSME Registered ✓ Khadi Board ✓ Est. 1999
Skip the showroom. Buy factory direct.
No middlemen. No showroom markup. The same mattress a Udaipur hotel pays ₹23,000 for — you get it for the same price, direct from the factory floor.
💬
Factory Consultation
Tell us your weight, back concerns, room type and budget. We have been making custom mattresses since 1999 and will engineer the right solution for you personally.
WhatsApp · +91 75979 26117 ✉️ chetakfurniture@gmail.com 🌐 www.chetakfurniture.in
🏨 Hotels, Hostels & Bulk Orders
Ordering 5 or more mattresses? We offer bulk pricing, custom specifications per room category, and direct delivery. Used by hotels and resorts across Rajasthan.
Enquire for Bulk / Hotel Rates
🔄
Exchange Policy
Transit damage? We replace it. Contact us within 48 hours of delivery on WhatsApp.
📍 Visit our factory showroom
Kalyan Udhyog · Fatehnagar, Udaipur, Rajasthan
ISO Certified · MSME Registered · Khadi Board Approved · Est. 1999
🚚 Delivery: Rajasthan — same week. Rest of India — ask us for timeline on WhatsApp.
const PH="917597926117", BASE=5040, MU=1.6; // ── ANALYTICS: Track screen views and WhatsApp clicks ────────────────── const _track={screens:[],clicks:0,startTime:Date.now()}; function trackScreen(id){ _track.screens.push({s:id,t:Math.round((Date.now()-_track.startTime)/1000)}); } function trackWA(model,type){ _track.clicks++; // In production: replace with your analytics endpoint // fetch('/api/track', {method:'POST', body: JSON.stringify({model,type,size:szLbl,qa,ts:Date.now()})}); } // Build rich WhatsApp message with all quiz context function buildWAMsg(model,price,warrantyStr,isQuizResult){ const sz=szLbl.replace(/x/g," × "); let ctx=""; if(isQuizResult&&qa.who){ const whoMap={self:"for myself",couple:"for me and my partner",parent:"for an elderly parent",child:"for a child",hotel:"for hotel/rental property"}; const wtMap={light:"under 60 kg",avg:"60-85 kg",heavy:"85-110 kg",vheavy:"above 110 kg"}; const needMap={ortho:"back pain / spine alignment",pressure:"joint and pressure relief",comfort:"general comfort",cool:"hot sleeper / cooling"}; const posMap={side:"side sleeper",back:"back sleeper",stomach:"stomach sleeper",combo:"combination sleeper"}; const budMap={villa:"premium budget",prime:"mid-range budget",value:"budget-conscious"}; ctx="\n\nMy sleep profile:" +(qa.who?"\n• This is "+whoMap[qa.who]:"") +(qa.wt&&qa.who!=="hotel"?"\n• Body weight: "+wtMap[qa.wt]:"") +(qa.need&&qa.who!=="hotel"?"\n• Main concern: "+needMap[qa.need]:"") +(qa.pos&&qa.who!=="hotel"&&qa.who!=="child"?"\n• Sleep position: "+posMap[qa.pos]:"") +(qa.budget?"\n• Budget range: "+budMap[qa.budget]:""); } return encodeURIComponent( "*Rosebuds Inquiry*" +"\nModel: "+model +"\nSize: "+sz +"\nPrice: "+price +"\nWarranty: "+warrantyStr +ctx +"\n\nKindly confirm availability and delivery timeline." ); } // All prices exact from catalog PDF const DB={ "Oxy Cloud":{s:"Hotel Premium",th:'10.5"',firm:"Ultra Plush",war:"10 yr",why:"Ultra-plush Bio-Latex 3-layer cloud — 5-star resort feel",d:'4" Bio-Latex + 2.5" CNC Softy + 4" 40D HR',fit:"Villa owners, heritage resorts, side sleepers seeking 5-star luxury",ly:[{n:"Bio-Latex",t:4,w:40,cl:"latex"},{n:"CNC Softy",t:2,w:22,cl:"foam"},{n:"40D HR",t:4,w:38,cl:"foam"}],p:{"72x35":18450,"75x35":19220,"72x48":25300,"70x72":36900,"70x75":38440}}, "Bio-Spine Supreme":{s:"Hotel Premium",th:'8"',firm:"Very Firm",war:"10 yr",why:"Firm Bio-Latex ortho — holds heavy sleepers without sagging",d:'4" Bio-Latex + 4" 40D HR',fit:"Heavy guests 90kg+, back pain, strict ortho hotel needs",ly:[{n:"Bio-Latex",t:4,w:50,cl:"latex"},{n:"40D HR",t:4,w:50,cl:"foam"}],p:{"72x35":16450,"75x35":17130,"72x48":22560,"70x72":32900,"70x75":34270}}, "Bio-Active Plus":{s:"Hotel Premium",th:'8"',firm:"Medium Firm",war:"10 yr",why:"Zero-metal hybrid — comfortable for 90% of body types",d:'2" Bio-Latex + 2" Softy + 4" 40D HR',fit:"Premium resorts and villas needing universal comfort",ly:[{n:"Bio-Latex",t:2,w:25,cl:"latex"},{n:"CNC Softy",t:2,w:20,cl:"foam"},{n:"40D HR",t:4,w:55,cl:"foam"}],p:{"72x35":14250,"75x35":14840,"72x48":19540,"70x72":28500,"70x75":29690}}, "Pillow Top":{s:"Hotel Premium",th:'6"',firm:"Medium",war:"10 yr",why:"CNC-cut breathable top — that hotel plush first-touch feeling",d:'2" CNC Softy + 4" 40D HR',fit:"Boutique hotels and Airbnb wanting luxury feel at mid price",ly:[{n:"CNC Softy",t:2,w:35,cl:"foam"},{n:"40D HR",t:4,w:65,cl:"foam"}],p:{"72x35":9700,"75x35":10100,"72x48":13300,"70x72":19400,"70x75":20200}}, "Comfort Pro":{s:"Hotel Standard",th:'8"',firm:"Medium",war:"7 yr",why:"Softy plus HR combo — zero metal, suits 90% of body types",d:'4" CNC Softy + 4" 40D UltraRest HR',fit:"Boutique hotels, Airbnb, heritage resorts — everyday workload",ly:[{n:"CNC Softy",t:4,w:45,cl:"foam"},{n:"40D HR",t:4,w:55,cl:"foam"}],p:{"72x35":11500,"75x35":11980,"72x48":15770,"70x72":23000,"70x75":23960}}, "Spring Pro":{s:"Hotel Standard",th:'8"',firm:"Medium",war:"5 yr",why:"Classic spring feel — exactly what traditional hotel guests expect",d:'8" Spring core',fit:"Traditional commercial hotels where guests expect spring beds",ly:[{n:"Spring",t:8,w:100,cl:"foam"}],p:{"72x35":12500,"75x35":13020,"72x48":17150,"70x72":25000,"70x75":26040}}, "Memory Plus":{s:"Elite",th:'5"',firm:"Medium",war:"10 yr",why:"Memory foam melts around joints — best for arthritis and shoulder pain",d:'1" Memory + 2" 40D HR + 2" Bonded',fit:"Arthritis, shoulder pain, elderly, side sleepers",ly:[{n:"Memory",t:1,w:20,cl:"mem"},{n:"40D HR",t:2,w:35,cl:"foam"},{n:"Bonded",t:2,w:45,cl:"bond"}],p:{"72x35":11450,"75x35":11980,"72x48":15700,"70x72":22900,"70x75":23960}}, "Ultra Latex":{s:"Elite",th:'6"',firm:"Medium Firm",war:"15 yr",why:"Bio-Latex breathes naturally — stays cool, no chemicals, 15yr warranty",d:'2" 60D Bio-Latex + 4" 40D UltraRest HR',fit:"Hot sleepers, eco-conscious buyers, allergy sufferers",ly:[{n:"Bio-Latex",t:2,w:35,cl:"latex"},{n:"40D HR",t:4,w:65,cl:"foam"}],p:{"72x35":11750,"75x35":12250,"72x48":16150,"70x72":23500,"70x75":24500}}, "Oxy Latex":{s:"Elite",th:'6"',firm:"Medium Firm",war:"25 yr",why:"25-year warranty — longest in our range. Oxy foam stays cool all night",d:'2" 60D Bio-Latex + 4" 55D Oxy foam',fit:"Hot sleepers wanting maximum cooling and peace of mind",ly:[{n:"Bio-Latex",t:2,w:30,cl:"latex"},{n:"Oxy HR",t:4,w:70,cl:"foam"}],p:{"72x35":15500,"75x35":16150,"72x48":21250,"70x72":31000,"70x75":32300}}, "Pro Latex":{s:"Elite",th:'6"',firm:"Medium Firm",war:"10 yr",why:"Pure Natural Latex — most breathable, hypoallergenic, dust-mite resistant",d:'2" Natural Latex + 4" 40D UltraRest HR',fit:"Allergy sufferers, eco buyers, pure latex seekers",ly:[{n:"Natural Latex",t:2,w:35,cl:"latex"},{n:"40D HR",t:4,w:65,cl:"foam"}],p:{"72x35":18900,"75x35":19690,"72x48":25920,"70x72":37800,"70x75":39380}}, "Ortho Plus":{s:"Prime",th:'5"',firm:"Very Firm",war:"3 yr",why:"Triple-layer ortho — prescribed firmness for post-surgery recovery",d:'1" 32D HR + 2" HD Support + 2" Bonded',fit:"Post-surgery, elderly, prescribed orthopedic firmness",ly:[{n:"32D HR",t:1,w:15,cl:"foam"},{n:"HD Support",t:2,w:40,cl:"foam"},{n:"Bonded",t:2,w:45,cl:"bond"}],p:{"72x35":4950,"75x35":5160,"72x48":6600,"70x72":9900,"70x75":10320}}, "Smart Bond":{s:"Prime",th:'4"',war:"3 yr",firm:"Very Firm",why:"Maximum firmness — for very heavy sleepers or strict stomach sleepers needing zero sink",d:'4" Pure Bonded foam',fit:"Strict stomach sleepers, budget ortho — best combined with a firm slatted base",ly:[{n:"Bonded",t:4,w:100,cl:"bond"}],p:{"72x35":5300,"75x35":5600,"72x48":7100,"70x72":10600,"70x75":11200}}, "Bond Plus":{s:"Prime",th:'5"',war:"7 yr",firm:"Firm",why:"Bonded core with HR comfort layer — firm but not harsh. At 5 inches, handles 110kg+ properly",d:'1" 32D HR + 4" Bonded',fit:"Heavy 90-110kg, ortho budget, stomach/back sleepers",ly:[{n:"32D HR",t:1,w:20,cl:"foam"},{n:"Bonded",t:4,w:80,cl:"bond"}],p:{"72x35":6150,"75x35":6420,"72x48":8200,"70x72":12300,"70x75":12840}}, "Platina Euro Top":{s:"Prime",th:'6"',firm:"Medium Firm",war:"7 yr",why:"Euro Top gives hotel looks at a mid-range price",d:'2" 32D HR + 4" HD Support foam',fit:"Value ortho look, hotel appearance, mid-range budget",ly:[{n:"32D HR",t:2,w:30,cl:"foam"},{n:"HD Support",t:4,w:70,cl:"foam"}],p:{"72x35":7800,"75x35":8120,"72x48":10400,"70x72":15600,"70x75":16240}}, "Spine Zen":{s:"Prime",th:'6"',war:"10 yr",firm:"Firm",why:"HR-Bonded-HR sandwich locks the spine in neutral alignment. Studies show the right mattress improves back pain and stiffness by up to 50-60%",d:'2" 40D HR + 2" Bonded + 2" 40D HR',fit:"Chronic back pain, post-surgery, elderly, strict alignment — 6 inches handles 90kg+",ly:[{n:"40D HR",t:2,w:30,cl:"foam"},{n:"Bonded",t:2,w:40,cl:"bond"},{n:"40D HR",t:2,w:30,cl:"foam"}],p:{"72x35":8500,"75x35":8850,"72x48":11300,"70x72":17000,"70x75":17700}}, "Fortune Euro Top":{s:"Prime",th:'6"',firm:"Medium Firm",war:"10 yr",why:"Ortho base plus Euro Top luxury — best of both worlds for couples",d:'2" 40D HR + 4" Bonded + Euro Top',fit:"Couples with different needs, anyone wanting value luxury",ly:[{n:"40D HR",t:2,w:30,cl:"foam"},{n:"Bonded",t:4,w:70,cl:"bond"}],p:{"72x35":9800,"75x35":10200,"72x48":13060,"70x72":19600,"70x75":20400}}, "Foam S":{s:"HR",th:'90mm',war:"1 yr",why:"Entry-level HR — better than EPE, decent for light use",d:'24D HR foam 90mm',fit:"Budget hostels, children, bunk beds",ly:[{n:"24D HR",t:3.5,tl:'90mm',w:100,cl:"foam"}],p:{"72x35":2950,"75x35":3075,"72x48":3900,"70x72":5900,"70x75":6150}}, "Foam S+":{s:"HR",th:'100mm',war:"1 yr",why:"Slightly thicker entry HR — better durability than Foam S",d:'24D HR foam 100mm',fit:"Budget single beds, light-use guest rooms",ly:[{n:"24D HR",t:4,tl:'100mm',w:100,cl:"foam"}],p:{"72x35":3300,"75x35":3425,"72x48":4400,"70x72":6600,"70x75":6850}}, "Foam T 4\"":{s:"HR",th:'4"',war:"3 yr",why:"28D HR foam — gentle bounce, ideal for children and lighter adults",d:'28D HR foam 4"',fit:"Children, lighter adults under 60kg",ly:[{n:"28D HR",t:4,w:100,cl:"foam"}],p:{"72x35":3900,"75x35":4060,"72x48":5350,"70x72":7800,"70x75":8120}}, "Foam T 5\"":{s:"HR",th:'5"',war:"3 yr",why:"Thicker 28D HR — same gentle bounce with longer lifespan",d:'28D HR foam 5"',fit:"Children, lighter adults, secondary bedroom",ly:[{n:"28D HR",t:5,w:100,cl:"foam"}],p:{"72x35":4875,"75x35":5075,"72x48":6690,"70x72":9750,"70x75":10150}}, "Foam Q 4\"":{s:"HR",firm:"Medium",th:'4"',war:"5 yr",why:"32D density — best balance of bounce and support",d:'32D HR foam 4"',fit:"Average weight adults, guest rooms, everyday use",ly:[{n:"32D HR",t:4,w:100,cl:"foam"}],p:{"72x35":4580,"75x35":4770,"72x48":6280,"70x72":9160,"70x75":9540}}, "Foam Q 5\"":{s:"HR",firm:"Medium",th:'5"',war:"5 yr",why:"5 inch 32D — right thickness for daily master bedroom use",d:'32D HR foam 5"',fit:"Average adults, master bedroom on moderate budget",ly:[{n:"32D HR",t:5,w:100,cl:"foam"}],p:{"72x35":5725,"75x35":5960,"72x48":7850,"70x72":11450,"70x75":11920}}, "Foam Plus 4\"":{s:"HR",firm:"Medium Firm",th:'4"',war:"7 yr",why:"40D premium density — will not sag for years of daily use",d:'40D HR foam 4"',fit:"Average to heavy adults, everyday master bedroom",ly:[{n:"40D HR",t:4,w:100,cl:"foam"}],p:{"72x35":5380,"75x35":5650,"72x48":7380,"70x72":10760,"70x75":11300}}, "Foam Plus 5\"":{s:"HR",firm:"Medium Firm",th:'5"',war:"7 yr",why:"Our best single-block HR — 40D at 5 inches, 7 year warranty",d:'40D HR foam 5"',fit:"Best everyday master bedroom choice under ₹15,000",ly:[{n:"40D HR",t:5,w:100,cl:"foam"}],p:{"72x35":6725,"75x35":7010,"72x48":9250,"70x72":13450,"70x75":14020}}, "Silver 3\"":{s:"Regular",th:'3"',war:"—",why:"Pure EPE — very lightweight and affordable for light use",d:'3" EPE foam',fit:"Floor use, camping, emergency bedding",ly:[{n:"EPE",t:3,w:100,cl:"foam"}],p:{"72x35":1800,"75x35":1880,"72x48":2400,"70x72":3600,"70x75":3760}}, "Silver 4\"":{s:"Regular",th:'4"',war:"—",why:"Thicker EPE — firm, lightweight, ultra-budget",d:'4" EPE foam',fit:"Students, PGs, temporary housing",ly:[{n:"EPE",t:4,w:100,cl:"foam"}],p:{"72x35":2380,"75x35":2480,"72x48":3160,"70x72":4760,"70x75":4960}}, "Gold":{s:"Regular",th:'4"',war:"1 yr",why:"HR comfort layer over EPE — a big step up from pure EPE",d:'1" 24D HR + 3" EPE',fit:"Budget households, rental rooms, light use",ly:[{n:"24D HR",t:1,w:28,cl:"foam"},{n:"EPE",t:3,w:72,cl:"foam"}],p:{"72x35":2780,"75x35":2900,"72x48":3700,"70x72":5560,"70x75":5800}}, "Diamond":{s:"Regular",firm:"Medium Firm",th:'4"',war:"2 yr",why:"HR sandwich around EPE — better feel on both sides",d:'1" 24D HR + 2" EPE + 1" 24D HR',fit:"Budget households wanting better durability",ly:[{n:"24D HR",t:1,w:25,cl:"foam"},{n:"EPE",t:2,w:50,cl:"foam"},{n:"24D HR",t:1,w:25,cl:"foam"}],p:{"72x35":3580,"75x35":3740,"72x48":4780,"70x72":7160,"70x75":7480}}, "Comfy":{s:"Regular",firm:"Firm",th:'5"',war:"3 yr",why:"28D HR plus HD Support — much better than any EPE-based bed",d:'2" 28D HR + 3" HD Support',fit:"Budget households preferring firm feel",ly:[{n:"28D HR",t:2,w:38,cl:"foam"},{n:"HD Support",t:3,w:62,cl:"foam"}],p:{"72x35":3900,"75x35":4060,"72x48":5200,"70x72":7800,"70x75":8120}}, "Comfy Plus":{s:"Regular",firm:"Firm",th:'6"',war:"3 yr",why:"Best value firm mattress — thicker HD support, 3 year warranty",d:'2" 28D HR + 4" HD Support',fit:"Best budget choice — firm, durable, reliable",ly:[{n:"28D HR",t:2,w:33,cl:"foam"},{n:"HD Support",t:4,w:67,cl:"foam"}],p:{"72x35":5550,"75x35":5800,"72x48":7650,"70x72":11100,"70x75":11600}} }; const SER_ORDER=["Hotel Premium","Hotel Standard","Elite","Prime","HR","Regular"]; const SER_META={ "Hotel Premium":{ic:"🏨",label:"Hotel Premium"}, "Hotel Standard":{ic:"🏩",label:"Hotel Standard"}, "Elite":{ic:"👑",label:"Elite Series"}, "Prime":{ic:"⭐",label:"Prime Series"}, "HR":{ic:"🔵",label:"HR Series"}, "Regular":{ic:"🟢",label:"Regular Series"} }; // Budget range labels by size const BUDGET_RANGES={ "72x35":{villa:"₹11,000+",prime:"₹5,000–11,000",value:"Under ₹5,000"}, "75x35":{villa:"₹12,000+",prime:"₹5,000–12,000",value:"Under ₹5,000"}, "72x48":{villa:"₹15,000+",prime:"₹6,000–15,000",value:"Under ₹6,000"}, "70x72":{villa:"₹22,000+",prime:"₹9,000–22,000",value:"Under ₹9,000"}, "70x75":{villa:"₹24,000+",prime:"₹10,000–24,000",value:"Under ₹10,000"}, "custom":{villa:"Premium",prime:"Mid-range",value:"Budget"} }; const MAT_ITEMS=[ {id:"bio_latex",label:"Bio-Latex 60D",desc:"Cooling, eco, premium",rate:82,dense:true}, {id:"nat_latex",label:"Natural Latex",desc:"Hypoallergenic, bouncy",rate:90,dense:true}, {id:"memory",label:"Memory Foam",desc:"Body contouring, joint relief",rate:80,dense:false}, {id:"40d_ultra",label:"40D Ultra HR",desc:"Highest HR density",rate:55,dense:true}, {id:"40d_hr",label:"40D HR Foam",desc:"Best single-block HR",rate:48,dense:true}, {id:"40d_cnc",label:"40D CNC Softy",desc:"Breathable, hotel feel",rate:49,dense:true}, {id:"32d_hr",label:"32D HR Foam",desc:"Mid-density HR",rate:38,dense:true}, {id:"bonded",label:"Bonded Foam",desc:"Indestructible, firmest",rate:35,dense:true}, {id:"28d_hr",label:"28D HR Foam",desc:"Light bounce, children",rate:30,dense:false}, {id:"24d_hr",label:"24D HR Foam",desc:"Budget HR foam",rate:27.5,dense:false}, {id:"hd_sup",label:"HD Support Sheet",desc:"Dense supportive layer",rate:25,dense:false}, {id:"epe",label:"EPE Sheet",desc:"Budget foam layer",rate:19,dense:false} ]; // STATE let szK="",szL=0,szW=0,szLbl=""; let qa={who:"",wt:"",need:"",pos:"",budget:""}; // Dynamic quiz flow — hotel skips weight/need/pos, child skips weight let qFlow=[], qIdx=0; let lCount=2; // LOGO document.getElementById("logoImg").src="data:image/png;base64,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"; // NAVIGATION function go(id){ const cur=document.querySelector(".scr.on"); if(cur){cur.classList.remove("on");cur.classList.add("out-left");} const next=document.getElementById(id); next.classList.remove("out-left"); next.classList.add("on"); const pm={sSz:0,sMeth:15,sQz:45,sCat:45,sBld:45,sRes:100,sEx:100}; document.getElementById("pf").style.width=(pm[id]||0)+"%"; next.scrollTop=0; trackScreen(id); } function goBack(id){ const cur=document.querySelector(".scr.on"); if(cur){cur.classList.remove("on");void cur.offsetHeight;cur.style.transform="translateX(36px)";cur.style.opacity="0";setTimeout(()=>{cur.style.transform="";cur.style.opacity="";},350);} const next=document.getElementById(id); next.classList.remove("out-left"); next.style.transform="translateX(-36px)";next.style.opacity="0"; next.classList.add("on"); requestAnimationFrame(()=>{requestAnimationFrame(()=>{next.style.transform="";next.style.opacity="";});}); const pm={sSz:0,sMeth:15,sQz:45,sCat:45,sBld:45,sRes:100,sEx:100}; document.getElementById("pf").style.width=(pm[id]||0)+"%"; next.scrollTop=0; } // SIZE function pSz(k,lbl,l,w,btnId){ document.querySelectorAll(".szb").forEach(b=>b.classList.remove("sel")); document.getElementById(btnId).classList.add("sel"); szK=k;szLbl=lbl;szL=l;szW=w; document.getElementById("custIn").style.display="none"; document.getElementById("confirmStrip").style.display="flex"; document.getElementById("confirmTxt").textContent=lbl.replace(/x/," x "); document.getElementById("btnSz").disabled=false; updateBudgetLabels(); } function togCust(){ const ci=document.getElementById("custIn"); const show=ci.style.display==="none"; ci.style.display=show?"block":"none"; document.getElementById("sb_f").classList.toggle("sel",show); szK="custom"; function chk(){ szL=parseFloat(document.getElementById("cL").value)||0; szW=parseFloat(document.getElementById("cW").value)||0; const lOk=szL>=24&&szL<=120,wOk=szW>=24&&szW<=84; document.getElementById("cL").classList.toggle("err",szL>0&&!lOk); document.getElementById("cW").classList.toggle("err",szW>0&&!wOk); if(szL>0&&szW>0&&lOk&&wOk){ szLbl=szL+"x"+szW+" Custom"; document.getElementById("confirmStrip").style.display="flex"; document.getElementById("confirmTxt").textContent=szL+'" x '+szW+'"'; document.getElementById("btnSz").disabled=false; updateBudgetLabels(); } } document.getElementById("cL").oninput=chk; document.getElementById("cW").oninput=chk; } function updateBudgetLabels(){ const r=BUDGET_RANGES[szK]||BUDGET_RANGES["custom"]; document.getElementById("bq_villa_price").textContent=r.villa+" · Bio-Latex, 10-25 yr warranty"; document.getElementById("bq_prime_price").textContent=r.prime+" · HR and Bonded, 5-10 yr warranty"; document.getElementById("bq_value_price").textContent=r.value+" · Practical, 1-3 yr warranty"; } function goMeth(){ if(!szK)return; document.getElementById("methSzTxt").textContent="Size: "+szLbl.replace("x"," x ").replace(/Custom/,"custom"); document.getElementById("bldSzTxt").textContent="Size: "+szLbl.replace("x"," x "); go("sMeth"); } // Catalog reference sizes sorted by area (ascending) const CAT_SIZES=[{key:"72x35",area:2520},{key:"75x35",area:2625},{key:"72x48",area:3456},{key:"70x72",area:5040},{key:"70x75",area:5250}]; // PRICE — exact catalog; custom sizes: round dims up to nearest 3", find largest catalog area ≤ custom, interpolate, round to nearest ₹10 function gP(m){ const d=DB[m];if(!d)return 0; if(szK!=="custom"&&d.p[szK])return d.p[szK]; if(!szL||!szW)return 0; // Round each dimension UP to next multiple of 3" const rL=Math.ceil(szL/3)*3, rW=Math.ceil(szW/3)*3; const customArea=rL*rW; // Find largest catalog area that is ≤ customArea (next-smaller reference) let refKey="72x35",refArea=2520; for(const cs of CAT_SIZES){if(cs.area<=customArea){refKey=cs.key;refArea=cs.area;}} const refPrice=d.p[refKey]||0; const raw=refPrice*(customArea/refArea); return Math.round(raw/10)*10; } function fmtP(n){return n?"₹"+n.toLocaleString("en-IN"):"—";} // QUIZ — dynamic flow based on who function goQz(){ qa={who:"",wt:"",need:"",pos:"",budget:""}; qFlow=[];qIdx=0; document.querySelectorAll(".qstep").forEach(s=>s.classList.remove("on")); document.querySelectorAll(".qopt").forEach(o=>o.classList.remove("sel")); document.getElementById("warnHeavy").style.display="none"; document.getElementById("btnQN").disabled=true; // Start with Q0 (who) qFlow=["qs0"]; renderQProg(); document.getElementById("qs0").classList.add("on"); go("sQz"); } function renderQProg(){ const total=qFlow.length+(qFlow.includes("qs0")&&!qa.who?4:0); let h=""; for(let i=0;i<Math.max(qFlow.length,2);i++){ const done=i<qIdx,cur=i===qIdx; h+=`<div class="qpd${done?" dn":cur?" ac":""}"></div>`; } document.getElementById("qprog").innerHTML=h; } function buildFlow(who){ if(who==="hotel"){return["qs0"];}// hotel resolves immediately if(who==="child"){return["qs0","qs2","qs4"];}// skip weight (always light), skip position return["qs0","qs1","qs2","qs3","qs4"]; } function qpick(key,val,el){ el.parentElement.querySelectorAll(".qopt").forEach(o=>o.classList.remove("sel")); el.classList.add("sel"); qa[key]=val; if(key==="who"){ qFlow=buildFlow(val); renderQProg(); } if(key==="wt"){ document.getElementById("warnHeavy").style.display=(val==="heavy"||val==="vheavy")?"block":"none"; } document.getElementById("btnQN").disabled=false; } function nxQ(){ document.getElementById(qFlow[qIdx]).classList.remove("on"); qIdx++; if(qIdx<qFlow.length){ document.getElementById(qFlow[qIdx]).classList.add("on"); document.getElementById("btnQN").disabled=true; renderQProg(); document.getElementById("pf").style.width=Math.round(15+(qIdx/qFlow.length)*70)+"%"; }else{ if(qa.who==="child")qa.wt="light";// default for child showRes(); } } // QUIZ LOGIC (960-combo audited, 0 bugs) function showRes(){ const{who,wt,need,pos,budget}=qa; let c,u,a; const heavy=wt==="heavy"||wt==="vheavy",vheavy=wt==="vheavy"; const firm=pos==="stomach",soft=pos==="side"||need==="pressure"; const cool=need==="cool",ortho=need==="ortho"||pos==="back"||pos==="stomach"; if(who==="hotel"){c="Comfort Pro";u="Spring Pro";a="Platina Euro Top";} else if(who==="child"){ if(budget==="villa"){ if(need==="ortho")c="Memory Plus",u="Foam Plus 5\"",a="Foam Q 5\""; else c="Foam Plus 5\"",u="Foam Q 5\"",a="Foam T 5\""; }else if(budget==="prime"){c="Foam Q 5\"";u="Foam Plus 4\"";a="Foam T 5\"";} else{c="Foam Q 4\"";u="Foam T 4\"";a="Foam S+";} } else if(who==="parent"){ if(budget==="villa"){ if(heavy)c="Bio-Spine Supreme",u="Fortune Euro Top",a="Spine Zen"; else if(firm)c="Bio-Active Plus",u="Bio-Spine Supreme",a="Fortune Euro Top"; else if(need==="pressure"||pos==="side")c="Memory Plus",u="Oxy Cloud",a="Pillow Top"; else c="Memory Plus",u="Bio-Spine Supreme",a="Fortune Euro Top"; }else if(budget==="prime"){ if(vheavy)c="Bond Plus",u="Spine Zen",a="Smart Bond"; else if(heavy)c="Bond Plus",u="Spine Zen",a="Fortune Euro Top"; else if(need==="pressure"||pos==="side")c="Fortune Euro Top",u="Platina Euro Top",a="Spine Zen"; else c="Spine Zen",u="Fortune Euro Top",a="Platina Euro Top"; }else{ if(heavy||vheavy)c="Comfy Plus",u="Comfy",a="Diamond"; else c="Comfy Plus",u="Diamond",a="Comfy"; } } else if(who==="couple"){ if(budget==="villa"){ if(pos==="side"||need==="pressure")c="Bio-Active Plus",u="Oxy Cloud",a="Memory Plus"; else if(ortho||firm)c="Bio-Active Plus",u="Bio-Spine Supreme",a="Fortune Euro Top"; else c="Bio-Active Plus",u="Oxy Cloud",a="Ultra Latex"; }else if(budget==="prime"){ if(firm||ortho)c="Fortune Euro Top",u="Spine Zen",a="Platina Euro Top"; else if(soft)c="Fortune Euro Top",u="Platina Euro Top",a="Foam Plus 5\""; else c="Fortune Euro Top",u="Spine Zen",a="Foam Plus 5\""; }else{c="Comfy Plus";u="Diamond";a="Comfy";} } else{ if(budget==="villa"){ if(vheavy)c="Bio-Spine Supreme",u="Fortune Euro Top",a="Spine Zen"; else if(heavy){if(firm||ortho)c="Bio-Spine Supreme",u="Bio-Active Plus",a="Memory Plus";else c="Bio-Spine Supreme",u="Bio-Active Plus",a="Fortune Euro Top";} else if(cool&&!firm)c="Oxy Latex",u="Pro Latex",a="Ultra Latex"; else if(cool&&firm)c="Bio-Active Plus",u="Bio-Spine Supreme",a="Oxy Latex"; else if(firm){if(need==="ortho")c="Bio-Spine Supreme",u="Bio-Active Plus",a="Memory Plus";else c="Bio-Active Plus",u="Bio-Spine Supreme",a="Memory Plus";} else if(pos==="side"&&need==="ortho")c="Bio-Active Plus",u="Bio-Spine Supreme",a="Memory Plus"; else if(need==="ortho"||pos==="back")c="Bio-Spine Supreme",u="Bio-Active Plus",a="Memory Plus"; else if(soft||pos==="side")c="Oxy Cloud",u="Memory Plus",a="Pillow Top"; else if(pos==="combo")c="Bio-Active Plus",u="Oxy Cloud",a="Ultra Latex"; else c="Bio-Active Plus",u="Oxy Cloud",a="Oxy Latex"; }else if(budget==="prime"){ if(vheavy)c="Bond Plus",u="Spine Zen",a="Smart Bond"; else if(heavy){if(firm||ortho)c="Spine Zen",u="Bond Plus",a="Fortune Euro Top";else c="Spine Zen",u="Fortune Euro Top",a="Bond Plus";} else if(cool)c="Foam Plus 5\"",u="Fortune Euro Top",a="Foam Q 5\""; else if(firm)c="Spine Zen",u="Bond Plus",a="Fortune Euro Top"; else if(need==="ortho"||pos==="back")c="Spine Zen",u="Fortune Euro Top",a="Bond Plus"; else if(soft||pos==="side")c="Fortune Euro Top",u="Platina Euro Top",a="Foam Plus 5\""; else if(pos==="combo")c="Fortune Euro Top",u="Platina Euro Top",a="Foam Plus 5\""; else c="Fortune Euro Top",u="Spine Zen",a="Foam Plus 5\""; }else{ if(vheavy||heavy)c="Comfy Plus",u="Comfy",a="Diamond"; else if(need==="ortho"||firm)c="Comfy Plus",u="Comfy",a="Diamond"; else if(soft)c="Diamond",u="Comfy Plus",a="Comfy"; else c="Diamond",u="Comfy Plus",a="Gold"; } } const ctxMap={self:"for you",couple:"for you and partner",parent:"for elderly parent",child:"for child",hotel:"for hotel / rental"}; document.getElementById("resCtxt").textContent=szLbl.replace("x"," x ")+" · "+(ctxMap[who]||""); document.getElementById("rlist").innerHTML=mkCard(c,"hero",true)+mkCard(u,"step",true)+mkCard(a,"save",true); document.getElementById("pf").style.width="100%"; go("sRes"); } function resetQuiz(){goBack("sMeth");} // CARD const WA_IC='<svg width="14" height="14" viewBox="0 0 448 512" fill="white"><path d="M380.9 97.1C339 55.1 283.2 32 223.9 32c-122.4 0-222 99.6-222 222 0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 224.1-99.6 224.1-222 0-59.3-25.2-115-67.1-157zm-157 341.6c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3L72 359.2l-4.4-7c-18.5-29.4-28.2-63.3-28.2-98.2 0-101.7 82.8-184.5 184.6-184.5 49.3 0 95.6 19.2 130.4 54.1 34.8 34.9 56.2 81.2 56.1 130.5 0 101.8-84.9 184.6-186.6 184.6zm101.2-138.2c-5.5-2.8-32.8-16.2-37.9-18-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18-17.6 21.8-3.2 3.7-6.5 4.2-12 1.4-32.6-16.3-54-29.1-75.5-66-5.7-9.8 5.7-9.1 16.3-30.3 1.8-3.7.9-6.9-.5-9.7-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-6.9-.2-10.6-.2-3.7 0-9.7 1.4-14.8 6.9-5.1 5.6-19.4 19-19.4 46.3 0 27.3 19.9 53.7 22.6 57.4 2.8 3.7 39.1 59.7 94.8 83.8 35.2 15.2 49 16.5 66.6 13.9 10.7-1.6 32.8-13.4 37.4-26.4 4.6-13 4.6-24.1 3.2-26.4-1.3-2.5-5-3.9-10.5-6.6z"/></svg>'; const BADGE={hero:"✓ Best Match",step:"↑ Premium Option",save:"₹ Save More"}; // Models used by hotels/resorts — show proof-point const HOTEL_PROOF=new Set(["Comfort Pro","Spring Pro","Bio-Active Plus","Oxy Cloud","Bio-Spine Supreme","Fortune Euro Top","Pillow Top"]); // Factory savings estimate vs dealer/showroom (30-40% dealer margin = ~35% avg) function factorySaving(price){ if(!price||price<2000)return null; const retail=Math.round((price*1.35)/10)*10; return retail; } function mkCard(name,type,isQuizResult=false){ const d=DB[name];if(!d)return""; const price=gP(name); const pFmt=price?fmtP(price):"Contact us"; const saving=factorySaving(price); const savingFmt=saving?fmtP(saving):null; const waMsg=buildWAMsg(name,pFmt,d.war,isQuizResult); const wa="https://wa.me/"+PH+"?text="+waMsg+"&utm_source=advisor&utm_medium="+type+"&utm_content="+encodeURIComponent(name); // Layer viz let lv=""; if(d.ly&&d.ly.length){ lv='<div class="rc-layers"><div class="rc-layers-t">Foam layers</div>'; d.ly.forEach(l=>{ const lx=l.cl==="latex",bnd=l.cl==="bond",mm=l.cl==="mem"; lv+=`<div class="lpill"><div class="lbar" style="width:${Math.max(l.w,5)}%;background:${lx?"rgba(184,134,11,.35)":bnd?"rgba(3,105,161,.2)":mm?"rgba(109,40,217,.18)":"#f0d0d0"}"></div><div class="llbl">${l.tl||l.t+'"'} ${l.n}</div></div>`; }); lv+="</div>"; } // Factory saving strip (only for mid/premium range) const savingStrip=saving&&price>5000?` <div style="background:linear-gradient(135deg,#f0fdf4,#fff);border:1px solid #86efac;border-radius:8px;padding:8px 11px;margin-bottom:9px;display:flex;align-items:center;gap:8px"> <span style="font-size:14px">🏭</span> <div> <div style="font-size:10px;font-weight:700;color:#15803d">Factory Direct — You Save ~${fmtP(saving-price)}</div> <div style="font-size:10px;color:#4ade80aa;color:#166534">Same mattress through a dealer/showroom: ~${savingFmt}</div> </div> </div>`:""; // Hotel proof point const proofStrip=HOTEL_PROOF.has(name)?` <div style="background:#fefce8;border:1px solid #fde047;border-radius:8px;padding:7px 11px;margin-bottom:9px;font-size:10px;color:#713f12;line-height:1.5"> 🏨 <strong>Used by hotels and resorts across Rajasthan.</strong> Same spec, factory price. </div>`:""; // Comfort exchange strip — only on hero card const exchangeStrip=type==="hero"?` <div style="background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;padding:7px 11px;margin-bottom:11px;font-size:10px;color:#0c4a6e;line-height:1.5;display:flex;align-items:flex-start;gap:7px"> <span style="font-size:13px;flex-shrink:0">🔄</span> <span><strong>Transit damage exchange</strong> — Contact us within 48 hrs of delivery. We replace it.</span> </div>`:""; return`<div class="rc ${type}"> <div class="rc-badge">${BADGE[type]}</div> <div class="rc-series">${d.s}</div> <div class="rc-name">${name}</div> <div class="rc-price">${pFmt}</div> <div class="rc-pricesub">MRP · Factory direct · All inclusive</div> <div class="rc-meta"> <span class="rc-pill">📐 ${d.th}</span> <span class="rc-pill">🛡 ${d.war} warranty</span> ${d.firm?`<span class="rc-pill" style="background:#fef3c7;color:#92400e">◉ ${d.firm}</span>`:""} </div> ${lv} <div class="rc-why">💡 ${d.why}</div> <div class="rc-fit"><strong>Best for:</strong> ${d.fit}</div> ${savingStrip} ${proofStrip} ${exchangeStrip} <a href="${wa}" target="_blank" class="wa-btn" onclick="trackWA('${name}','${type}')">${WA_IC} Order on WhatsApp</a> </div>`; } // CATALOG function goCat(){go("sCat");buildCat("All");} function buildCat(ser){ const filters=["All","Hotel Premium","Hotel Standard","Elite","Prime","HR","Regular"]; document.getElementById("catFilter").innerHTML=filters.map(s=> `<button class="sfb${s===ser?" sel":""}" onclick="buildCat('${s}')">${s}</button>` ).join(""); const keys=Object.keys(DB).filter(k=>ser==="All"||DB[k].s===ser); keys.sort((a,b)=>{ const si=SER_ORDER.indexOf(DB[a].s)-SER_ORDER.indexOf(DB[b].s); return si!==0?si:(DB[a].p["72x35"]||0)-(DB[b].p["72x35"]||0); }); if(!keys.length){ document.getElementById("catGrid").innerHTML='<div class="cat-empty"><div class="cat-empty-ic">🔍</div>No models in this category.</div>'; return; } let html="",lastSer=""; keys.forEach(name=>{ const d=DB[name]; if(d.s!==lastSer){ const m=SER_META[d.s]||{ic:"📦",label:d.s}; html+=`<div class="cat-ser-hdr">${m.ic} ${m.label}</div>`; lastSer=d.s; } const price=gP(name); const pFmt=price?fmtP(price):"—"; const waMsg=buildWAMsg(name,pFmt,d.war,false)+"&utm_source=catalog&utm_content="+encodeURIComponent(name); const wa="https://wa.me/"+PH+"?text="+waMsg; const saving=factorySaving(price); const savingLine=saving&&price>5000?`<div style="font-size:10px;color:#15803d;font-weight:600;margin-top:4px">🏭 Save ~${fmtP(saving-price)} vs dealer</div>`:""; let chips=""; if(d.ly){chips=d.ly.map(l=>`<span class="cat-chip ${l.cl}">${l.tl||l.t+'"'} ${l.n}</span>`).join("");} html+=`<div class="cat-card"> <div class="cat-card-head"> <div class="cat-card-info"> <div class="cat-card-name">${name}</div> <div class="cat-pills"> <span class="cat-pill">📐 ${d.th}</span> <span class="cat-pill war">🛡 ${d.war}</span> ${d.firm?`<span class="cat-pill" style="background:#fef3c7;color:#92400e;border-color:#fde68a">◉ ${d.firm}</span>`:""} </div> </div> <div><div class="cat-price">${pFmt}</div><div class="cat-price-note">MRP · Factory direct</div>${savingLine}</div> </div> <div class="cat-divider"></div> <div class="cat-layer-wrap"><span class="cat-layer-lbl">Layers</span>${chips}</div> <div class="cat-best"><strong>Best for:</strong> ${d.fit}</div> <a class="cat-wa" href="${wa}" target="_blank">${WA_IC} Enquire on WhatsApp</a> </div>`; }); document.getElementById("catGrid").innerHTML=html; } // BUILDER function goBld(){go("sBld");initBld();} function initBld(){renderBL();calcB();} function renderBL(){ const mo=MAT_ITEMS.map(m=>`<option value="${m.id}">${m.label} — ${m.desc}</option>`).join(""); const to=[1,2,3,4,5,6].map(n=>`<option value="${n}"${n===2?" selected":""}>${n}"</option>`).join(""); const lbls=["Base Layer","Middle Layer","Transition Layer","Top Comfort"]; let h=""; for(let i=0;i<lCount;i++){ const lbl=lCount===1?"Core Layer":(i===lCount-1?"Top Comfort":(i===0?"Base Layer":lbls[i]||"Layer "+(i+1))); h+=`<div class="bl-layer"> <div class="bll">${i+1}. ${lbl}</div> <div class="blrow"> <select class="blm" id="lm${i}" onchange="calcB()">${mo}</select> <select class="blt" id="lt${i}" onchange="calcB()">${to}</select> </div> </div>`; } document.getElementById("bLy").innerHTML=h; document.getElementById("lcDisp").textContent=lCount+" / 4"; } function chgL(d){lCount=Math.max(1,Math.min(4,lCount+d));renderBL();calcB();} function calcB(){ const pe=document.getElementById("bPrc"),ee=document.getElementById("bErr"),te=document.getElementById("bThick"); if(!szL||!szW){pe.textContent="Select size first";te.textContent="—";return 0;} const mult=(szL*szW)/BASE; const cov=parseInt(document.getElementById("bCov").value)||1900; const fin=parseInt(document.getElementById("bFin").value)||0; const covQ=cov===2800?15:10;// quilt mm let foam=0,totalIn=0,warns=[]; for(let i=0;i<lCount;i++){ const me=document.getElementById("lm"+i),te2=document.getElementById("lt"+i); if(!me||!te2)continue; const mat=MAT_ITEMS.find(m=>m.id===me.value)||MAT_ITEMS[4]; const inch=parseInt(te2.value); totalIn+=inch;foam+=(inch*25.4)*mat.rate; if(i===0&&lCount>1&&!mat.dense)warns.push("Base needs dense foam — try 40D HR, Bonded, or Bio-Latex."); if(i===lCount-1&&lCount>1&&me.value==="bonded")warns.push("Bonded on top is too harsh on skin — use CNC Softy or Memory Foam instead."); } te.textContent=(totalIn+(covQ/25.4)).toFixed(1)+'"'; ee.style.display=warns.length?"block":"none"; ee.textContent=warns.join(" "); const paste=lCount>1?(lCount-1)*150:0; const base=cov+fin+foam+paste; // Check if all layers are low density (all EPE) let allLowDensity=true; for(let i=0;i<lCount;i++){ const me=document.getElementById("lm"+i); if(me){const mat=MAT_ITEMS.find(m=>m.id===me.value);if(mat&&mat.rate>25)allLowDensity=false;} } if(allLowDensity&&lCount>1)warns.push("All layers are low-density foam — this build will sag quickly. Add at least one 40D HR or Bonded layer."); const pack=base<8000?500:800; const final=Math.round(Math.round((base*mult*MU)+(pack*mult))/10)*10; pe.textContent=fmtP(final); return final; } function ordBld(){ const price=calcB(); if(!price){alert("Please select your bed size first from the size screen.");return;} const cov=document.getElementById("bCov").options[document.getElementById("bCov").selectedIndex].text; const fin=document.getElementById("bFin").options[document.getElementById("bFin").selectedIndex].text; const layers=[]; for(let i=0;i<lCount;i++){ const me=document.getElementById("lm"+i)?.value||"?"; const te=document.getElementById("lt"+i)?.value||"?"; const mat=MAT_ITEMS.find(m=>m.id===me); layers.push(" Layer "+(i+1)+": "+te+'" '+(mat?mat.label:me)); } const msg=encodeURIComponent("*Rosebuds Custom Build*\nSize: "+szLbl.replace("x"," x ")+"\nCover: "+cov+"\nFinish: "+fin+"\n"+layers.join("\n")+"\nTotal: "+document.getElementById("bThick").textContent+"\nPrice: "+document.getElementById("bPrc").textContent+"\n\nPlease confirm this build."); window.open("https://wa.me/"+PH+"?text="+msg,"_blank"); }
