@import"https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800&family=Playfair+Display:wght@700;800&display=swap";:root{font-family:Nunito,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-width:320px}a{text-decoration:none;color:inherit}.page{min-height:100vh;color:#4b1230;background:radial-gradient(circle at 8% 6%,#ffe0f1 0,transparent 35%),radial-gradient(circle at 88% 0%,#ffd2e8 0,transparent 28%),linear-gradient(150deg,#fff8fd,#fff 52%,#fff4fb)}.section{width:min(1120px,92%);margin:0 auto}.topbar{padding:1.4rem 0 .6rem;display:flex;align-items:center;justify-content:space-between}.brand{font-family:Playfair Display,serif;font-size:1.9rem;font-weight:700;letter-spacing:.02em;color:#a41255}.launch-pill{padding:.5rem 1rem;border-radius:999px;background:#ffd4e8;color:#8f0f4f;font-weight:700;font-size:.85rem;border:1px solid #fbb0d2}.hero{padding:2.4rem 0 4rem;display:grid;grid-template-columns:1fr minmax(320px,460px);gap:3rem;align-items:center}.hero-content h1{margin:.3rem 0 1rem;font-family:Playfair Display,serif;font-size:clamp(2.1rem,5.2vw,3.8rem);line-height:1.08;color:#8b0f4c}.hero-content p{margin:0;color:#6f3450;font-size:1.03rem;max-width:58ch}.eyebrow{margin:0;text-transform:uppercase;letter-spacing:.11em;font-weight:800;color:#b31963;font-size:.78rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:1.8rem}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.78rem 1.25rem;font-weight:700;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{color:#fff;background:linear-gradient(130deg,#f41f84,#ca1467);box-shadow:0 12px 24px -12px #b319639e}.btn-secondary{color:#9a1355;background:#fff0f8;border:1px solid #f8b5d5}.btn-ghost{color:#9a1355;background:#fff;border:1px dashed #ec5da1}.quick-points{margin:1.6rem 0 0;padding:0;list-style:none;display:grid;gap:.55rem}.quick-points li{color:#6a304b;background:#ffffffe6;border:1px solid #ffd1e8;border-radius:.7rem;padding:.55rem .8rem}.hero-visual{position:relative;min-height:420px}.hero-main{width:100%;height:420px;object-fit:cover;object-position:center 18%;border-radius:1.5rem;border:4px solid #fff;box-shadow:0 30px 60px -35px #58183680}.hero-float{position:absolute;width:145px;height:145px;object-fit:cover;border-radius:1rem;border:4px solid #fff;box-shadow:0 24px 40px -30px #581836b3}.float-a{left:-12%;top:12%;animation:bob 4s ease-in-out infinite}.float-b{right:-8%;bottom:8%;animation:bob 4.8s ease-in-out infinite}.services,.gallery,.notice{padding:1.6rem 0 4rem}.section-title h2{margin:.5rem 0 0;font-family:Playfair Display,serif;font-size:clamp(1.6rem,3.2vw,2.4rem);color:#8f0f50}.service-grid{margin-top:1.5rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem}.service-card{background:#fff;border:1px solid #f8bdd9;border-radius:1.15rem;padding:1.2rem;box-shadow:0 25px 40px -35px #80224ba6;transition:transform .22s ease,border-color .22s ease}.service-card:hover{transform:translateY(-5px);border-color:#ec5da1}.service-card h3{margin:0;color:#9e1558;font-size:1.2rem}.service-card p{margin:.65rem 0 .9rem;color:#683049}.service-card ul{margin:0;padding-left:1rem;color:#7b3453;display:grid;gap:.35rem}.gallery-grid{margin-top:1.5rem;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem}.gallery-card{margin:0;border-radius:1.05rem;overflow:hidden;border:2px solid #fff;box-shadow:0 24px 46px -35px #80224bad;background:#fff}.gallery-card img{width:100%;height:250px;object-fit:cover;display:block;transition:transform .45s ease}.gallery-card:hover img{transform:scale(1.06)}.notice-box{background:linear-gradient(145deg,#fff,#ffe8f4);border:1px solid #f8b7d8;border-radius:1.4rem;padding:2rem;box-shadow:0 32px 60px -48px #80224bb8;text-align:center}.notice-box h2{margin:.5rem 0 1rem;font-family:Playfair Display,serif;color:#8f0f50;font-size:clamp(1.7rem,3.4vw,2.4rem)}.notice-box p{margin:0;color:#6a304b}.notice-form{margin:1.4rem auto 0;max-width:540px;display:flex;gap:.7rem}.notice-form input{flex:1;border:1px solid #f1a7cc;border-radius:.85rem;padding:.85rem 1rem;background:#fff;font:inherit;color:#5f2842}.notice-form input:focus{outline:2px solid #ec5da1;outline-offset:2px}.notice-form button{border:0;border-radius:.85rem;padding:.85rem 1.2rem;background:#de2e81;color:#fff;font-weight:700;font-family:inherit;cursor:pointer;transition:background-color .18s ease,transform .18s ease}.notice-form button:hover{background:#bf1f68;transform:translateY(-1px)}.notice-toast{margin:.95rem auto 0;max-width:640px;padding:.8rem 1rem;border-radius:.9rem;color:#7a2850;font-weight:700;border:1px solid #f59ac8;background:linear-gradient(130deg,#ffe8f4,#fff);box-shadow:0 12px 24px -20px #80224b99;animation:toast-pop .32s ease both}.notice-help{margin-top:.85rem;font-size:.95rem}.notice-links{margin-top:.95rem;display:flex;flex-wrap:wrap;justify-content:center;gap:.65rem}.contact-link{color:#9e1558;background:#fff;border:1px solid #f3a9cc;border-radius:999px;padding:.45rem .8rem;font-weight:700;transition:transform .18s ease,border-color .18s ease}.contact-link:hover{transform:translateY(-1px);border-color:#e23b8b}.footer{padding:0 0 2.2rem;text-align:center;color:#8f3c60}.footer-links{margin-top:.65rem;display:flex;flex-wrap:wrap;justify-content:center;gap:.9rem}.footer-links a{color:#a41255;font-weight:700}.reveal{animation:rise .9s ease both}.service-card:nth-child(2),.gallery-card:nth-child(2){animation-delay:80ms}.service-card:nth-child(3),.gallery-card:nth-child(3){animation-delay:.16s}.gallery-card:nth-child(4){animation-delay:.24s}@keyframes rise{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes toast-pop{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:1024px){.hero{grid-template-columns:1fr;gap:2rem}.hero-visual{max-width:520px}.service-grid,.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.topbar{flex-wrap:wrap;gap:.6rem}.brand{font-size:1.55rem}.hero{padding-top:1.6rem}.hero-main{height:300px;object-position:center 12%}.hero-float{width:112px;height:112px}.float-a{left:0;top:-14px}.float-b{right:0;bottom:-18px}.service-grid,.gallery-grid{grid-template-columns:1fr}.notice-box{padding:1.4rem}.notice-form{flex-direction:column}}
