*{box-sizing:border-box;margin:0;padding:0}:root{--lil:#efdcff;--lil2:#d9b8f5;--rose:#d9608f;--rose2:#f7c6d6;--leaf:#5e9c6d;--ink:#4a3a5c;--bg:#fdf8ff}
html{scroll-behavior:smooth}body{font-family:Nunito,sans-serif;color:var(--ink);background:var(--bg);line-height:1.65;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit}
h1,h2,h3{font-family:'Playfair Display',serif;font-weight:500;line-height:1.15}em{color:var(--rose);font-style:italic}.script{font-family:'Dancing Script',cursive;color:var(--rose);font-size:1.6rem;line-height:1}
.nav{position:fixed;top:.8rem;left:50%;transform:translateX(-50%);width:calc(100% - 1.6rem);max-width:1100px;display:flex;align-items:center;justify-content:space-between;padding:.45rem .5rem .45rem .5rem;background:rgba(255,255,255,.82);backdrop-filter:blur(14px);border-radius:999px;box-shadow:0 10px 30px -12px rgba(120,70,150,.35);z-index:50}
.brand{display:flex;align-items:center;gap:.5rem;text-decoration:none;font-family:'Playfair Display',serif}.brand img{width:40px;height:40px;border-radius:50%}.brand b{color:var(--rose);font-weight:600}.nav nav{display:none;gap:1.5rem;font-weight:600;font-size:.92rem}.nav nav a{text-decoration:none}
.pbtn{display:inline-block;background:var(--rose);color:#fff;text-decoration:none;font-weight:700;padding:.6rem 1.2rem;border-radius:999px;transition:.35s;box-shadow:0 8px 20px -8px var(--rose)}.pbtn:hover{transform:translateY(-2px) scale(1.02)}.pbtn.big{padding:.95rem 1.6rem}.pbtn.soft{background:#fff;color:var(--rose);box-shadow:inset 0 0 0 2px var(--rose2)}
.split{position:relative;min-height:100vh;display:grid;gap:2.5rem;padding:6.5rem 1.3rem 3rem;background:linear-gradient(160deg,var(--lil) 0%,var(--bg) 55%,#fff0f5 100%);overflow:hidden;align-items:center}
.petal{position:absolute;opacity:.55;pointer-events:none;will-change:transform}
.sl h1{font-size:clamp(2.4rem,7.5vw,4.4rem);margin:.6rem 0 1rem}.sl>p{max-width:30rem}.rate{display:inline-block;margin:1.2rem 0;background:#fff;padding:.4rem 1rem;border-radius:999px;font-weight:700;font-size:.9rem}.rate span{color:#f2b01e}.cta{display:flex;flex-wrap:wrap;gap:.7rem}
.sr{position:relative;max-width:460px;width:100%;margin:auto;aspect-ratio:1/1.05}.arch{border-radius:999px 999px 28px 28px;overflow:hidden;box-shadow:0 30px 60px -25px rgba(120,60,140,.5);border:8px solid #fff}.sr .arch{position:absolute;left:0;top:0;width:68%;height:92%}.arch img{width:100%;height:100%;object-fit:cover}
.circ{position:absolute;right:0;bottom:0;width:46%;aspect-ratio:1;border-radius:50%;overflow:hidden;border:8px solid #fff;box-shadow:0 20px 40px -18px rgba(120,60,140,.5)}.circ img{width:100%;height:100%;object-fit:cover}
.seal{position:absolute;right:4%;top:2%;width:32%;border-radius:50%;border:5px solid #fff;animation:spin 30s linear infinite;box-shadow:0 10px 30px -10px rgba(0,0,0,.25)}@keyframes spin{to{transform:rotate(360deg)}}
.tags{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:center;padding:1.4rem 1rem;background:#fff}.tags span{border:1.5px solid var(--lil2);padding:.4rem 1rem;border-radius:999px;font-weight:600;font-size:.88rem}
.h{text-align:center;max-width:640px;margin:0 auto 2.2rem}.h h2{font-size:clamp(1.9rem,5vw,2.8rem);margin-top:.4rem}.note{font-size:.88rem;opacity:.75;margin-top:.6rem}
.svc{padding:4.5rem 1.2rem;background:radial-gradient(circle at 10% 20%,#fff0f5,transparent 50%),radial-gradient(circle at 90% 80%,var(--lil),transparent 50%)}
.pills{max-width:900px;margin:auto;display:grid;gap:.9rem}.pill{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:#fff;border-radius:999px;padding:1rem 1rem 1rem 1.8rem;box-shadow:0 10px 30px -18px rgba(120,60,140,.5);transition:.4s}.pill:hover{transform:translateX(6px);box-shadow:0 14px 34px -14px rgba(217,96,143,.45)}
.pill h3{font-size:1.15rem}.pill p{font-size:.88rem;opacity:.75}.pp{flex:none;width:86px;height:86px;border-radius:50%;background:linear-gradient(135deg,var(--rose2),var(--lil2));display:grid;place-content:center;text-align:center;font-family:'Playfair Display',serif;font-size:1.4rem;line-height:1}.pp small,.pp em{font-family:Nunito;font-size:.6rem;font-style:normal;text-transform:uppercase;letter-spacing:.08em;color:var(--ink)}
.love{padding:4.5rem 0;background:var(--lil)}.track{overflow-x:auto;scroll-snap-type:x mandatory;padding:0 1.2rem 1rem;scrollbar-width:none}.track::-webkit-scrollbar{display:none}.belt{display:flex;gap:1rem;width:max-content;animation:belt 50s linear infinite}.track:hover .belt{animation-play-state:paused}@keyframes belt{to{transform:translateX(-50%)}}
.tq{width:min(78vw,360px);background:#fff;border-radius:32px 32px 32px 6px;padding:1.6rem;scroll-snap-align:start;box-shadow:0 14px 30px -18px rgba(120,60,140,.5)}.tq blockquote{font-family:'Playfair Display',serif;font-style:italic;font-size:1.05rem;margin:.5rem 0}.tq figcaption{font-size:.78rem;opacity:.6}.st{color:#f2b01e}
.bk{display:grid;gap:2rem;padding:4.5rem 1.2rem;max-width:1100px;margin:auto;align-items:center}.bk-art{display:none}.arch.tall{height:560px}.bk-r h2{font-size:clamp(1.9rem,5vw,2.6rem);margin:.3rem 0 1.4rem}
.widget{background:#fff;border-radius:32px;padding:1.5rem;display:grid;gap:1rem;box-shadow:0 30px 60px -30px rgba(120,60,140,.6)}.w-top{display:flex;justify-content:space-between;align-items:center}.demo{background:var(--leaf);color:#fff;font-size:.7rem;font-weight:800;padding:.2rem .7rem;border-radius:999px;letter-spacing:.1em}
label{display:grid;gap:.3rem;font-weight:700;font-size:.85rem}select,input{font:inherit;padding:.8rem 1.1rem;border-radius:999px;border:1.5px solid var(--lil2);background:var(--bg);color:var(--ink)}.w-month{display:flex;justify-content:space-between;align-items:center;font-family:'Playfair Display',serif;font-size:1.1rem}.arw{width:34px;height:34px;border-radius:50%;border:0;background:var(--lil);cursor:pointer}
.days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.days button{font:inherit;font-weight:700;border:0;background:var(--bg);border-radius:999px;padding:.55rem 0;cursor:pointer;color:var(--ink)}.days small{display:block;font-size:.62rem;font-weight:600;opacity:.7}.slots{display:flex;flex-wrap:wrap;gap:.45rem}.slots button{font:inherit;font-weight:700;border:1.5px solid var(--lil2);background:#fff;border-radius:999px;padding:.45rem .95rem;cursor:pointer;color:var(--ink)}
.on{background:var(--rose)!important;color:#fff!important;border-color:var(--rose)!important}button:disabled{opacity:.35;text-decoration:line-through}.wbtn{font:inherit;font-weight:800;background:linear-gradient(90deg,var(--rose),#b77bd8);color:#fff;border:0;border-radius:999px;padding:1rem;cursor:pointer}.wbtn.done{background:var(--leaf)}.w-note{text-align:center;font-size:.8rem;opacity:.65}
.ribbon{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;padding:0 1.2rem;max-width:1100px;margin:auto}.ri{border-radius:999px 999px 24px 24px;overflow:hidden;aspect-ratio:3/4}.ri:nth-child(2){border-radius:24px;transform:translateY(24px)}.ri img{width:100%;height:100%;object-fit:cover;transition:transform 1s}.ri:hover img{transform:scale(1.07)}.stock{text-align:center;font-size:.8rem;opacity:.6;margin:2.4rem 1rem 0}
.visit{max-width:1000px;margin:3.5rem auto;padding:2.2rem 1.6rem;background:linear-gradient(135deg,#fff,var(--lil));border-radius:40px;display:grid;gap:1.8rem;width:calc(100% - 2.4rem)}.visit h2{font-size:1.6rem;margin:.5rem 0}.visit .pbtn{margin-top:1.2rem}.hrs{list-style:none;background:#fff;border-radius:28px;padding:1.2rem 1.5rem}.hrs li{display:flex;gap:.5rem;padding:.4rem 0}.hrs i{flex:1;border-bottom:2px dotted var(--lil2);transform:translateY(-6px)}
footer{text-align:center;padding:1.5rem 1rem 6rem;font-size:.9rem}.small{font-size:.78rem;opacity:.75}.callfab{position:fixed;bottom:1rem;right:1rem;width:58px;height:58px;border-radius:50%;background:var(--rose);display:grid;place-items:center;text-decoration:none;font-size:1.4rem;box-shadow:0 10px 25px -8px var(--rose);z-index:50}
.reveal{opacity:0;transform:translateY(20px) scale(.97);transition:opacity 1.1s ease,transform 1.1s cubic-bezier(.2,.8,.2,1)}.reveal.in{opacity:1;transform:none}
@media(min-width:900px){.nav nav{display:flex}.split{grid-template-columns:1.05fr 1fr;padding:7rem 4rem 4rem}.pills{grid-template-columns:1fr 1fr}.bk{grid-template-columns:.9fr 1.1fr;gap:4rem}.bk-art{display:block}.visit{grid-template-columns:1.2fr 1fr;padding:3rem}.callfab{display:none}}
@media(prefers-reduced-motion:reduce){*{animation:none!important}.reveal{opacity:1;transform:none}}
html,body{overflow-x:clip;max-width:100%}@media(max-width:899px){.bk-in,.bi,.bk,.split,.hero,.first,.cats{grid-template-columns:minmax(0,1fr)}}.widget,.widget *{min-width:0}