:root{--pink:#8b1957;--deep:#62123d;--fuchsia:#ba2e7b;--gold:#e5cd91;--ink:#382631;--muted:#7d6b73;--cream:#fbf7f1;--line:#e6ddd7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #cc973d;outline-offset:5px}button{color:inherit}img{display:block;max-width:100%}.skip{position:fixed;left:20px;top:-100px;padding:10px;background:white;z-index:50}.skip:focus{top:10px}.header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 5%;background:var(--cream);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px}.brand>span{font-size:15px;letter-spacing:2.1px;line-height:1.6;white-space:nowrap}.brand small{display:block;letter-spacing:1.15px;font-size:8px;color:var(--muted)}nav{display:flex;gap:28px;font-size:13px}nav a:hover{color:var(--pink)}.header-cta{font-size:13px;border-bottom:1px solid var(--pink);padding:7px 0}.header-cta span{margin-left:18px}.menu{display:none}.hero{display:grid;grid-template-columns:1.13fr 1fr;min-height:660px;background:var(--pink);color:var(--cream)}.hero-copy{padding:66px 7% 35px 9%;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:10px;letter-spacing:2.1px;font-weight:600;color:var(--pink);margin:0 0 24px}.light{color:var(--gold)}.eyebrow.light span{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--gold);margin-right:8px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.06;letter-spacing:-1.6px}h1{font-size:clamp(45px,4.8vw,76px);margin:17px 0 26px}h1 em,h2 em{font-weight:400}h1 em{color:var(--gold)}.hero-sub{font-size:20px;line-height:1.5;margin-bottom:20px}.hero-text{color:#efdbe5;max-width:380px;font-size:14px;line-height:1.8}.hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin:18px 0 42px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:17px 23px;font-size:13px;border:1px solid transparent;border-radius:3px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.gold{background:var(--gold);color:#432932}.gold:hover{background:#f0dba6}.pink{background:var(--pink);color:white}.text-link{font-size:12px;border-bottom:1px solid #ffffff50;padding:9px 0}.text-link span{margin-left:20px}.hero-bottom{width:100%;margin-top:auto;border-top:1px solid #ffffff29;padding-top:24px;display:flex;justify-content:space-between;gap:12px;font-size:9px;letter-spacing:1.3px;color:#ead3df}.hero-bottom span:last-child{font-family:Georgia,serif;font-style:italic;font-size:14px;letter-spacing:0}.hero-art{position:relative;overflow:hidden;min-width:0;background:#aa286d}.hero-art>img{width:100%;height:100%;object-fit:cover}.art-label{position:absolute;bottom:42px;right:40px;display:flex;flex-direction:column;align-items:center;gap:16px;color:var(--gold)}.art-label span{font-size:8px;letter-spacing:3px}.ribbon{display:flex;justify-content:space-around;align-items:center;padding:23px 4%;background:#f1e5e8;gap:12px;font-size:10px;letter-spacing:1.7px;color:var(--pink)}.ribbon i{font-size:20px;font-style:normal;color:#a1844b}.section{padding:90px 7%;max-width:1600px;margin:auto}h2{font-size:clamp(38px,4vw,60px);margin-bottom:25px}h2 em{color:var(--pink)}.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:34px}.section-intro{font-size:14px;color:var(--muted);padding-bottom:7px;line-height:1.8}.filters{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0 32px}.filters button{border:1px solid var(--line);background:transparent;padding:10px 20px;font-size:12px;border-radius:30px}.filters button.active{background:var(--pink);color:white;border-color:var(--pink)}.filters span{font-size:10px;margin-left:8px;opacity:.65}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 22px}.service{border:1px solid var(--line);background:#fffdf9;border-radius:5px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.service:hover{transform:translateY(-4px);box-shadow:0 10px 24px #62123d0c}.service[hidden]{display:none}.service-image{position:relative;aspect-ratio:1;overflow:hidden;background:#eae0d5}.service-image img{width:100%;height:100%;object-fit:cover}.category{position:absolute;bottom:12px;left:12px;background:#ffffffeb;color:var(--pink);font-size:8px;letter-spacing:1px;padding:5px 10px;border-radius:3px}.service-content{padding:22px;display:flex;flex-direction:column;flex:1}.service h3{font-family:Georgia,serif;font-weight:400;font-size:22px;line-height:1.25;margin-bottom:13px}.service p{font-size:12px;line-height:1.8;color:var(--muted);margin-bottom:24px}.service-more{margin-top:auto;display:flex;justify-content:space-between;width:100%;border:0;border-top:1px solid var(--line);padding:13px 0 0;background:none;text-align:left;font-size:12px;color:var(--pink)}.image-note{font-size:10px;color:var(--muted);margin:22px 0 0}.approach{display:grid;grid-template-columns:1fr 1fr;gap:12%;background:#f0e7e7;max-width:none}.approach-heading>p:not(.eyebrow){max-width:370px;color:var(--muted);font-size:14px;line-height:1.9}.dark{border-bottom-color:var(--pink);color:var(--pink);display:inline-block}.steps>div{display:grid;grid-template-columns:42px 1fr;padding:24px 0;border-bottom:1px solid #dbc9cf}.steps>div:first-child{padding-top:0}.steps span{grid-row:1/3;font-family:Georgia,serif;color:#a9798e;font-size:21px}.steps h3{font-family:Georgia,serif;font-size:25px;font-weight:400;margin-bottom:9px}.steps p{font-size:13px;color:var(--muted);margin-bottom:0;line-height:1.8}.prices{padding-bottom:60px}.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.price-card{padding:42px;background:#fffdf9;border:1px solid var(--line);border-radius:5px}.price-card h3{font-family:Georgia,serif;font-size:32px;font-weight:400;margin:0 0 14px}.amount{font-family:Georgia,serif;font-size:62px;line-height:1.2;letter-spacing:-2px;margin-bottom:20px}.amount span{font-size:34px}.price-card>p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.8;margin-bottom:30px}.price-card .button{width:100%}.outline{border-color:#b58a9f;color:var(--pink)}.featured{background:var(--pink);color:var(--cream);border-color:var(--pink);position:relative;overflow:hidden}.featured::after{content:'';position:absolute;width:250px;height:250px;border:1px solid #e5cd9126;border-radius:50%;right:-110px;top:-100px;pointer-events:none}.featured .eyebrow{color:var(--gold)}.featured>p:not(.eyebrow){color:#ead2de}.price-note{font-size:12px;color:var(--muted);margin-top:18px}.faq{padding-top:50px;display:grid;grid-template-columns:.85fr 1fr;gap:10%}.questions{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:22px 0;list-style:none;font-size:14px}summary::-webkit-details-marker{display:none}summary span{font-size:20px;font-weight:300;color:var(--pink);line-height:1}details[open] summary span{transform:rotate(45deg)}details p{font-size:13px;color:var(--muted);padding:0 26px 16px 0;line-height:1.9}.contact{background:var(--deep);color:var(--cream);padding:58px 7% 70px}.contact-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff20;margin-bottom:45px}.tiny-star{color:var(--gold);font-size:40px;margin-bottom:14px}.contact-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:10%;align-items:center}.contact h2 em{color:var(--gold)}.contact p{font-size:14px;color:#e4cbd8;line-height:1.8;margin-bottom:28px}.contact-info{border-left:1px solid #ffffff29;padding-left:55px}.label{display:block;color:var(--gold);font-size:9px;letter-spacing:1.7px;margin-bottom:14px}.phone{display:block;font-family:Georgia,serif;font-size:30px;white-space:nowrap;margin-bottom:30px}.contact-info p{font-family:Georgia,serif;font-size:23px;margin-bottom:10px}.contact-info small{font-size:11px;color:#c9aabc}footer{padding:35px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px}footer p,footer>span{font-size:10px;color:var(--muted);margin:0}footer>span{letter-spacing:.6px}dialog{max-width:540px;width:calc(100% - 32px);padding:45px;border:1px solid var(--line);border-radius:6px;background:var(--cream);color:var(--ink);max-height:90vh;overflow:auto}dialog::backdrop{background:#321422a6;backdrop-filter:blur(5px)}dialog h2{font-size:38px;letter-spacing:-1px;line-height:1.15}dialog p{font-size:14px;color:var(--muted);line-height:1.8}.dialog-note{border-top:1px solid var(--line);padding-top:17px;font-size:12px!important}.close-dialog{position:absolute;right:15px;top:10px;background:none;border:0;font-size:29px;color:var(--pink);width:35px;height:40px}.mobile-book{display:none}body:has(dialog[open]){overflow:hidden}@media(min-width:1600px){.hero-copy{padding-left:calc((100vw - 1376px)/2)}.hero{min-height:760px}}@media(max-width:1100px){nav{gap:18px}.brand>span{font-size:12px;letter-spacing:1.3px}.brand small{font-size:7px}.hero-copy{padding:48px 8%}.hero{min-height:620px}.hero-actions{gap:16px}.hero-bottom span:last-child{display:none}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.section{padding:70px 6%}.service h3{font-size:21px}.contact-info{padding-left:30px}.phone{font-size:25px}footer .brand{gap:8px}}@media(max-width:760px){html{scroll-padding-top:85px}.header{padding:15px 5%;gap:12px}.brand img{width:40px;height:40px}.brand>span{font-size:11px;letter-spacing:1.3px}.brand small{font-size:6px;letter-spacing:.7px}.header-cta{margin-left:auto;font-size:11px}.header-cta span{margin-left:6px}.menu{width:32px;height:32px;border:0;background:none;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:4px}.menu span{width:24px;height:1px;background:var(--pink)}nav{display:none;position:absolute;left:0;right:0;top:100%;padding:22px 6%;background:var(--cream);border-bottom:1px solid var(--line)}nav.open{display:flex;flex-direction:column;gap:18px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:38px 7% 28px}.eyebrow{font-size:9px;margin-bottom:19px;letter-spacing:1.6px}h1{font-size:clamp(44px,10.5vw,70px);margin:10px 0 20px}.hero-sub{font-size:18px}.hero-text{max-width:100%}.hero-actions{margin:15px 0 28px}.button{padding:16px 20px}.hero-bottom{padding-top:20px}.hero-art{height:340px}.hero-art>img{object-position:center 55%}.art-label{bottom:24px;right:25px}.art-label img{width:58px;height:58px}.ribbon{padding:17px 5%;font-size:8px;letter-spacing:1px}.ribbon span:nth-of-type(3),.ribbon span:nth-of-type(4),.ribbon i:nth-of-type(2),.ribbon i:nth-of-type(3){display:none}.section{padding:55px 6%}h2{font-size:42px}.section-top{display:block;margin-bottom:24px}.section-intro{font-size:13px;margin-bottom:20px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}.filters{gap:8px}.filters button{font-size:11px;padding:9px 13px}.service-content{padding:17px 14px}.service h3{font-size:20px;overflow-wrap:anywhere}.service p{font-size:11px;margin-bottom:17px}.category{font-size:7px;padding:4px 7px;bottom:8px;left:8px}.approach,.faq{grid-template-columns:1fr;gap:30px}.steps h3{font-size:23px}.price-grid{grid-template-columns:1fr}.price-card{padding:30px}.amount{font-size:58px}.contact{padding:40px 7% 50px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact h2{font-size:43px}.contact-top{margin-bottom:30px}.contact-info{padding:28px 0 0;border-left:0;border-top:1px solid #ffffff29}.phone{font-size:28px}footer{flex-wrap:wrap;padding:30px 6% 90px;gap:20px}footer>span{width:100%;font-size:9px}.mobile-book{display:flex;position:fixed;bottom:12px;left:5%;right:5%;background:var(--pink);color:white;border:1px solid #cf659e;box-shadow:0 4px 20px #49102a35;padding:13px 20px;border-radius:4px;z-index:15;justify-content:space-between;font-size:13px}body:has(dialog[open]) .mobile-book{display:none}dialog{padding:36px 25px}dialog h2{font-size:32px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media(max-width:360px){.header-cta{display:none}.menu{margin-left:auto}.service-grid{grid-template-columns:1fr}.hero-actions .button{width:100%}}

/* Softer rose palette and rounded controls. */
:root{--pink:#984963;--deep:#edd3db;--fuchsia:#d99aad;--gold:#ead4a1;--ink:#49313c;--muted:#7b626c;--cream:#fffaf7;--line:#ecdee2}
.header-cta{border:1px solid #d7b3bf;background:#f8ebef;border-radius:999px;padding:10px 19px;color:var(--pink)}
.hero{background:linear-gradient(120deg,#f8e8ec,#edd0da);color:var(--ink)}
.hero .light{color:var(--pink)}.hero .eyebrow.light span{background:var(--pink)}
.hero h1 em{color:var(--pink)}.hero-text{color:#775962}
.hero .text-link{color:var(--pink);border-bottom-color:#ba8497}
.hero-bottom{color:#805e6d;border-top-color:#bd8a9d55}
.hero-art{background:#f1d5de}.hero-art>img{opacity:.42;filter:saturate(.45) brightness(1.2);mix-blend-mode:luminosity}
.art-label{color:#805d4a}.art-label img{filter:brightness(.7)}
.ribbon{background:#f8e9ed}.ribbon i{color:#b89560}
.button{border-radius:999px;padding:17px 26px}.button:hover{box-shadow:0 5px 15px #98496315}
.gold{background:#efddb5;color:#51383d}.gold:hover{background:#f6e6c5}
.service{border-radius:18px}.service-image{border-radius:17px 17px 0 0}
.category{border-radius:999px;padding:5px 12px}
.service-more{border:0;border-radius:999px;background:#f6e8ed;padding:11px 16px;transition:background .2s}
.service-more:hover{background:#ecd0dc}
.approach{background:#f9edf0}.steps>div{border-bottom-color:#e5cdd6}
.price-card{border-radius:20px}.featured{background:#f0d9e1;color:var(--ink);border-color:#e6becd}
.featured .eyebrow{color:var(--pink)}.featured>p:not(.eyebrow){color:var(--muted)}.featured::after{border-color:#c390a34d}
.contact{background:linear-gradient(120deg,#f4dfe6,#ecd0da);color:var(--ink)}
.contact .light,.contact .label{color:var(--pink)}.contact h2 em{color:var(--pink)}
.contact p{color:#775962}.contact-top{border-bottom-color:#b6819655}
.contact-info{border-left-color:#b6819655}.contact-info small{color:#856572}.tiny-star{color:#b28b55}
.questions summary span{color:var(--pink)}dialog{border-radius:22px}.close-dialog{border-radius:50%}
.mobile-book{border-radius:999px;background:#984963;border-color:#ad6e85}
@media(max-width:760px){.header-cta{padding:8px 12px}.contact-info{border-top-color:#b6819655}.button{padding:16px 23px}.mobile-book{border-radius:999px}}

/* Rose CTAs and centered labels without arrow decorations. */
.gold{background:#e6b6c8;color:#49313c}.gold:hover{background:#ddb0c1}
.button,.service-more,.mobile-book{justify-content:center}
.hero .eyebrow{line-height:1.8;max-width:100%;letter-spacing:1.4px}
@media(max-width:760px){.hero .eyebrow{font-size:9px;letter-spacing:1px}}

.social-booking{margin:2px 0 28px}.social-label{display:block;font-size:11px;color:var(--muted);margin:0 0 12px}.social-links{display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap}.social-link{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:60px;color:var(--pink);font-size:9px}.social-link svg{width:47px;height:47px;padding:12px;border:1px solid #c58fa455;border-radius:50%;background:#fffaf7aa;transition:background .2s,transform .2s}.social-link:hover svg{background:#edd0dc;transform:translateY(-2px)}.hero-actions{margin-bottom:22px}.hero .social-booking{margin-bottom:28px}.contact .social-booking{margin-top:23px;margin-bottom:0}dialog .social-booking{margin-top:22px;margin-bottom:0}.social-link:focus-visible{border-radius:12px}
