@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#24191b;background:#fbf4f4;font-synthesis:none;--red:#ad2034;--soft:#fae5e8;--muted:#706367}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #ac2035;outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.5}button{color:inherit}header{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1180px;margin:auto;padding:24px 30px}.brand{font-family:Manrope,sans-serif;font-size:24px;font-weight:800;letter-spacing:-1px;line-height:1}.brand b{color:var(--red)}.brand small{display:block;font:500 11px 'DM Sans',sans-serif;letter-spacing:2.4px;margin-top:8px}.badge{background:white;border:1px solid #ecdadd;border-radius:30px;padding:8px 13px;font-size:13px}.shell{max-width:1120px;margin:10px auto 140px;display:grid;grid-template-columns:290px 1fr;gap:34px;padding:0 24px}.side{position:sticky;top:22px;align-self:start}.side .visual{height:245px;border-radius:28px;overflow:hidden;background:#edd8dc}.visual img{width:100%;height:100%;object-fit:cover}.caption{font-size:12px;color:var(--muted);margin:8px}.side h2{font:700 25px Manrope;letter-spacing:-1px}.side p{color:var(--muted);font-size:15px;line-height:1.6}.stepnav{display:flex;flex-wrap:wrap;gap:7px}.stepnav button{background:#fff;border:1px solid #ead7db;border-radius:20px;padding:8px 12px;font-size:13px}.stepnav button.current{background:var(--red);color:white}.content{min-width:0}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:12px;font-weight:700;color:var(--red)}h1{font:800 clamp(28px,4vw,39px)/1.14 Manrope,sans-serif;letter-spacing:-1.3px;margin:14px 0}p.lead{color:var(--muted);line-height:1.55;margin:0 0 24px}progress{width:100%;height:5px;border:0;border-radius:8px;accent-color:var(--red);margin:12px 0 24px}progress::-webkit-progress-bar{background:#ecdde0;border-radius:8px}progress::-webkit-progress-value{background:var(--red);border-radius:8px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.choice{position:relative;text-align:left;border:1px solid #eadade;background:#ffffffc9;border-radius:22px;padding:20px;box-shadow:0 6px 20px #52203104;min-height:120px;transition:transform .18s,border-color .18s,background .18s;overflow:hidden}.choice:hover{transform:translateY(-2px);border-color:#cf8290}.choice.selected{border:2px solid var(--red);padding:19px;background:#fff3f4}.choice strong{display:block;font-size:17px;line-height:1.3;padding-right:14px}.choice small{display:block;color:var(--muted);font-size:14px;line-height:1.4;margin:8px 0}.price{display:block;color:var(--red);font-weight:700;margin-top:15px;font-size:16px}.tick{position:absolute;right:12px;top:12px;border-radius:50%;background:var(--red);color:#fff;font-size:12px;width:20px;height:20px;text-align:center;line-height:20px}.choice img{width:100%;height:135px;object-fit:contain;border-radius:12px;margin:0 0 14px;background:#fff}.choice.service{padding:0;overflow:hidden}.choice.service.selected{padding:0}.service img{object-fit:cover;height:200px;border-radius:0;margin:0}.service .inside{padding:22px}.choice svg{width:100%;height:140px;display:block;margin-bottom:10px}.swatch{height:65px;border-radius:12px;border:1px solid #0001;margin-bottom:16px}.notice{padding:15px 17px;border:1px solid #e2c6a5;background:#fff8eb;border-radius:16px;font-size:14px;line-height:1.55;margin:18px 0}.note{font-size:14px;color:var(--muted);line-height:1.55}.primary,.secondary{border:0;border-radius:16px;padding:14px 22px;font-weight:700;min-height:48px}.primary{background:var(--red);color:white}.secondary{background:white;border:1px solid #e7d5d9}.actions{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.totalbar{position:fixed;z-index:10;bottom:0;left:0;right:0;background:#fffefef2;backdrop-filter:blur(18px);border-top:1px solid #eadadd;padding:16px max(24px,calc((100vw - 1072px)/2));display:flex;justify-content:space-between;align-items:center;gap:14px;box-shadow:0 -10px 35px #42132208}.totalbar span{font-size:13px;color:var(--muted)}.totalbar strong{display:block;font:800 29px Manrope;letter-spacing:-1px}.totalbar small{display:block;font-size:12px;color:#8c4c22}.iconbutton{border:1px solid #e9d9dc;background:#fff;border-radius:14px;padding:10px 13px}.topline{display:flex;justify-content:space-between;align-items:center;gap:12px}.summaryrow{display:flex;align-items:center;justify-content:space-between;gap:14px;background:white;border-bottom:1px solid #f2e4e7;padding:16px;border-radius:12px;margin-bottom:5px}.summaryrow strong{display:block;font-size:14px}.summaryrow span{display:block;font-size:15px;line-height:1.4;margin-top:5px}.summaryrow button{border:0;background:#faedf0;border-radius:10px;color:var(--red);padding:10px}.form{background:#fff;border-radius:22px;padding:22px;margin:20px 0}.form label{display:block;font-size:15px;margin:14px 0 7px}.form input,.form textarea,.editor input,.editor select{width:100%;border:1px solid #ddcbd0;border-radius:10px;padding:12px;background:#fff;color:#251b1e}.form textarea{min-height:100px;resize:vertical}.photos{display:flex;gap:10px;flex-wrap:wrap}.photos figure{margin:0;position:relative}.photos img{width:100px;height:90px;object-fit:cover;border-radius:12px}.photos button{position:absolute;top:2px;right:2px;background:white;border:0;border-radius:20px}.toast{position:fixed;top:18px;left:50%;transform:translateX(-50%);z-index:40;background:#261c20;color:#fff;border-radius:14px;padding:15px 22px;max-width:90vw;box-shadow:0 10px 40px #0002}.editor{background:white;border-radius:20px;padding:20px}.editorrow{display:grid;grid-template-columns:1fr 95px;gap:8px;padding:12px 0;border-bottom:1px solid #eadade}.editorrow small{grid-column:1/-1;color:var(--muted)}details{margin:15px 0}summary{cursor:pointer;line-height:1.5}.group{grid-column:1/-1;margin:12px 0 0;font-size:16px}.empty{padding:25px;background:#fff;border-radius:20px}.footlinks{display:flex;gap:12px;margin-top:25px;flex-wrap:wrap}.footlinks button{background:none;border:0;padding:4px;color:var(--muted);font-size:14px;text-decoration:underline}@media(max-width:760px){header{padding:20px}.brand{font-size:21px}.badge{font-size:12px}.shell{display:block;margin:6px auto 140px;padding:0 18px;max-width:560px}.side{display:none}h1{font-size:31px}.grid{gap:10px}.choice{padding:16px;border-radius:19px}.choice.selected{padding:15px}.choice strong{font-size:16px}.choice small{font-size:14px}.choice img{height:110px}.service img{height:145px}.service .inside{padding:17px}.grid.services{grid-template-columns:1fr}.service{display:grid;grid-template-columns:40% 60%;align-items:stretch}.service img{height:100%;min-height:185px;margin:0}.totalbar{padding:12px 18px calc(12px + env(safe-area-inset-bottom))}.totalbar strong{font-size:26px}.totalbar .primary{padding:14px 18px}.topline .eyebrow{letter-spacing:1px}.choice svg{height:125px}.summaryrow{padding:13px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}@media print{header,.side,.totalbar,.actions,.footlinks,button,.form{display:none!important}.shell{display:block;margin:0;padding:0}.summaryrow{break-inside:avoid}body{background:white}}
