:root{color-scheme:light;--paper:#fffcfa;--ink:#46312f;--muted:#816661;--rose:#a86d76;--rose-dark:#8a4e59;--line:#ead5cf;--blush:#f6e9e5;--pad:32px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);font-size:16px;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:#f0e4df;background-image:radial-gradient(ellipse at 12% 10%,#fbf5ef 0,transparent 44%),radial-gradient(ellipse at 95% 70%,#e8d2ce 0,transparent 50%);min-height:100vh;line-height:1.55}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{display:block;max-width:100%}button,a{-webkit-tap-highlight-color:transparent}button:disabled{cursor:default}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--rose-dark);outline-offset:5px}button:focus-visible{border-radius:5px}.icon{width:24px;height:24px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:12px;left:12px;z-index:30;transform:translateY(-160%);padding:12px 20px;background:var(--paper);border:2px solid var(--rose-dark);border-radius:8px}.skip-link:focus{transform:none}
.bio{width:calc(100% - 48px);max-width:580px;margin:36px auto 48px;background:var(--paper);border:1px solid #ead8d2;border-radius:26px;box-shadow:0 18px 80px #754a4110;overflow:hidden}.section-pad{padding-inline:var(--pad)}.cover{height:224px;overflow:hidden;position:relative;background:#d5b8a4}.cover:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#472b301a,transparent 65%)}.cover img{width:100%;height:100%;object-fit:cover;object-position:70% 48%}.identity{padding:0 var(--pad) 23px;text-align:center;position:relative}.logo-plaque{position:relative;width:min(100%,316px);margin:-40px auto 16px;background:var(--paper);padding:12px 18px 10px;border-radius:18px 18px 6px 6px;box-shadow:0 -2px 20px #72534309}.logo-window{position:relative;width:100%;max-width:280px;aspect-ratio:280/94;margin:auto;overflow:hidden;mix-blend-mode:multiply}.logo-window img{position:absolute;width:189.286%;max-width:none;height:auto;top:-235.1%;left:-45%}.location-label{font-size:.75rem;font-weight:500;letter-spacing:.16em;margin:0;color:var(--muted)}.tagline{font-family:Georgia,"Times New Roman",serif;font-size:2.5rem;font-weight:400;line-height:1.13;letter-spacing:-.045em;margin:17px 0 0}em{font-weight:400;color:var(--rose-dark)}
.quick-links{display:grid;gap:10px}.button{min-height:56px;padding:14px 18px;display:flex;align-items:center;justify-content:center;gap:11px;border:1px solid transparent;border-radius:12px;font-size:.875rem;font-weight:600;letter-spacing:.035em;text-align:center;line-height:1.4;transition:background .2s,box-shadow .2s,transform .2s}.button span{min-width:0;overflow-wrap:anywhere}.button .icon{width:22px;height:22px}.button-primary{color:#fffdfa;background:linear-gradient(110deg,#894b57,#a0646a 56%,#8e515c);border-color:#a56a73;box-shadow:0 5px 14px #9b5a641c,inset 0 1px #ffffff23}.button-secondary{background:#fffcfa;border-color:var(--line);color:#714c4b}.button-secondary .icon{color:var(--rose-dark)}.link-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.link-pair .button{padding:13px 10px;font-size:.875rem;letter-spacing:.03em}.link-pair .icon{width:21px;height:21px}
.services{margin-top:44px;scroll-margin-top:24px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:21px}.eyebrow{font-size:.75rem;font-weight:500;letter-spacing:.17em;color:var(--rose-dark);margin:0 0 5px}h2{font:400 1.875rem/1.2 Georgia,"Times New Roman",serif;letter-spacing:-.03em;margin:0}.service-count{flex-shrink:0;font-size:.875rem;letter-spacing:.09em;color:var(--rose-dark);font-variant-numeric:tabular-nums;padding-top:20px}.service-count span{color:var(--muted);font-size:.75rem}.carousel{display:flex;gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--pad);scrollbar-width:none;padding:1px var(--pad) 5px;position:relative;-webkit-overflow-scrolling:touch}.carousel::-webkit-scrollbar{display:none}.service-card{flex:0 0 min(72%,300px);min-width:0;scroll-snap-align:start;background:#fffefd;border:1px solid var(--line);border-radius:15px;overflow:hidden}.service-photo{height:226px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:linear-gradient(125deg,#f2ded8,#faf1eb 51%,#edd4d1);color:#956971;font-size:.875rem}.service-photo:before{content:"";position:absolute;inset:17px;border:1px solid #c894984d;border-radius:9px}.service-card:nth-child(even) .service-photo{background:linear-gradient(145deg,#f8eee7,#eddbd4 67%,#f4e5e0)}.placeholder-icon{width:30px;height:30px;stroke-width:1.15}.service-photo img{width:100%;height:100%;object-fit:cover}.service-photo.has-photo:before{display:none}.service-caption{flex-wrap:wrap;padding:13px 18px 16px;display:flex;justify-content:space-between;align-items:center;gap:8px}.service-caption>div{min-width:0;max-width:100%}.service-caption h3{overflow-wrap:anywhere}.card-number{font-size:.75rem;letter-spacing:.1em;color:var(--muted)}h3{font:400 1.5rem/1.2 Georgia,"Times New Roman",serif;margin:1px 0 0;letter-spacing:-.025em}.service-book{font-size:.875rem;color:var(--rose-dark);text-underline-offset:4px;text-decoration:underline;text-decoration-color:#c9959d;min-height:44px;display:inline-flex;align-items:center;flex-shrink:0}.carousel-controls{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:10px}.carousel-controls[hidden]{display:none}.carousel-step{background:transparent;border:0;padding:10px 0;min-height:44px;font-size:.875rem;color:var(--rose-dark)}.carousel-step:disabled{color:#ac9994}.carousel-dots{display:flex;align-items:center;justify-content:center;gap:0}.carousel-dots button{width:28px;height:44px;padding:0;border:0;background:none;display:flex;justify-content:center;align-items:center}.carousel-dots button:before{content:"";width:5px;height:5px;border-radius:10px;background:#ddc3be;transition:width .2s,background .2s}.carousel-dots button[aria-current=true]:before{width:20px;background:var(--rose)}
.gallery-section{margin-top:34px}.instagram-mini{color:var(--rose-dark);display:grid;place-items:center;width:44px;height:44px}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.gallery-item{position:relative;aspect-ratio:3/4.4;overflow:hidden;border-radius:11px;background:var(--blush)}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.gallery-item span{position:absolute;bottom:0;left:0;right:0;padding:30px 8px 11px;color:#fff;font-size:.75rem;background:linear-gradient(transparent,#241714ad);text-align:center;line-height:1.3}.visit{margin-top:34px}.visit-inner{display:flex;gap:16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:25px}.location-icon{display:grid;place-items:center;flex-shrink:0;width:43px;height:43px;border:1px solid #ddc0b9;border-radius:50%;color:var(--rose-dark);background:#f8efea}.visit h2{font-size:1.4375rem;margin:1px 0 9px}.visit address{font-style:normal;color:var(--muted);font-size:.9375rem;line-height:1.65}.text-link{display:inline-flex;align-items:center;min-height:40px;font-size:.875rem;color:var(--rose-dark);text-decoration:underline;text-underline-offset:4px;text-decoration-color:#c9959d}
.closing{text-align:center;padding-top:32px;padding-bottom:28px;background:linear-gradient(180deg,transparent,#faefea)}.closing-line{width:40px;height:1px;background:linear-gradient(90deg,#dec1b6,#aa6974,#dec1b6);margin:0 auto 19px}.closing h2{font-size:2rem;line-height:1.22;margin:0 0 23px}.footer{display:flex;align-items:center;flex-direction:column;gap:4px;padding:15px 20px 30px;background:#faefea;color:var(--muted);font-size:.75rem}.footer>span:first-child{letter-spacing:.15em;font-size:.75rem}.footer>span:nth-child(2){font-size:.8125rem}.floating-whatsapp{position:fixed;z-index:10;right:max(24px,env(safe-area-inset-right));bottom:calc(24px + env(safe-area-inset-bottom));width:60px;height:60px;display:grid;place-items:center;border-radius:50%;color:#fffaf6;background:linear-gradient(135deg,#b37b81,#8f535f);border:1px solid #cf9f9e;box-shadow:0 6px 22px #72464f38;transition:transform .2s}.floating-whatsapp>.icon{width:32px;height:32px;stroke-width:1.5}.floating-label{position:absolute;right:73px;white-space:nowrap;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:9px 13px;font-size:.875rem;opacity:0;visibility:hidden;transform:translateX(5px);transition:.2s;pointer-events:none}.floating-whatsapp:focus-visible .floating-label{opacity:1;visibility:visible;transform:none}.lightbox{max-width:calc(100vw - 28px);max-height:calc(100dvh - 28px);padding:0;border:0;border-radius:15px;background:#2b2222;color:var(--paper);overflow:auto;box-shadow:0 20px 80px #0006}.lightbox::backdrop{background:#1d1515e8}.lightbox>img{max-height:calc(100dvh - 145px);width:auto;max-width:100%;margin:auto;object-fit:contain}.lightbox-close{display:flex;align-items:center;justify-content:flex-end;gap:6px;width:100%;min-height:48px;background:#2b2222;border:0;color:#fff;padding:10px 16px;font-size:.875rem}.lightbox-caption{max-width:540px;text-align:center;margin:0;padding:13px 18px;font-size:.875rem}.lightbox-close:focus-visible{outline-color:#f0c2ca;outline-offset:-5px}body.modal-open{overflow:hidden}
@media(hover:hover){.button-primary:hover{box-shadow:0 7px 20px #9b5a6433;transform:translateY(-1px)}.button-secondary:hover{background:#f8ede8;border-color:#c8999e}.service-book:hover,.text-link:hover{color:#63343e;text-decoration-color:currentColor}.gallery-item:hover img{transform:scale(1.035)}.floating-whatsapp:hover{transform:translateY(-3px)}.floating-whatsapp:hover .floating-label{opacity:1;visibility:visible;transform:none}.carousel-step:not(:disabled):hover{text-decoration:underline;text-underline-offset:4px}.carousel-dots button:hover:before{background:var(--rose-dark)}}
@media(min-width:1100px){.floating-whatsapp{right:max(28px,calc((100vw - 580px)/2 - 84px))}}
@media(max-width:600px){:root{--pad:24px}.bio{width:100%;margin:0;border:0;border-radius:0;box-shadow:none}.cover{height:194px}.cover img{object-position:76% 45%}.logo-plaque{margin-top:-34px;margin-bottom:12px;width:min(100%,294px);padding:10px 17px 7px}.identity{padding-bottom:23px}.location-label{font-size:.75rem;letter-spacing:.115em}.tagline{font-size:2.25rem;margin-top:15px}.quick-links{gap:10px}.button{min-height:55px}.services{margin-top:37px}.service-card{flex-basis:78%;max-width:300px}.service-photo{height:216px}.section-heading{margin-bottom:18px}.gallery-section{margin-top:28px}.gallery{gap:8px}.gallery-item span{font-size:.75rem}.visit-inner{gap:12px}.closing{padding-top:29px}.footer{padding-bottom:99px}.floating-whatsapp{width:56px;height:56px;right:18px;bottom:calc(18px + env(safe-area-inset-bottom))}}
@media(max-width:359px){:root{--pad:18px}.location-label{letter-spacing:.055em}.tagline{font-size:2.05rem}.button{font-size:.875rem;gap:8px;padding-inline:10px}.link-pair .button{font-size:.875rem;gap:7px}.carousel-dots button{width:23px}.carousel-step{font-size:.875rem}.service-caption{padding-inline:13px;gap:6px}h3{font-size:1.375rem}.service-book{font-size:.875rem}.visit h2{font-size:1.25rem}.visit address{font-size:.875rem}.closing h2{font-size:1.75rem}.gallery-item span{padding-inline:4px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.creator-credit{width:100%;margin-top:20px;padding-top:19px;border-top:1px solid var(--line);text-align:center;font-size:.875rem}.creator-credit p{margin:0}.creator-credit a{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;max-width:100%;color:var(--rose-dark);font-size:.875rem;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#c9959d}.creator-credit .icon{width:19px;height:19px}

.service-photo.has-photo{height:auto;aspect-ratio:1/1;overflow:hidden}.service-photo.has-photo img{width:100%;height:100%;object-fit:contain}
