:root{--ink:#34261f;--ink-soft:#6b5a50;--ivory:#f7f3ed;--paper:#fcfaf7;--clay:#a65f48;--clay-dark:#874733;--sand:#d9cabb;--sage:#7b8270;--white:#fff;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--shadow:0 24px 70px rgba(52,38,31,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}body.menu-open,body.modal-open{overflow:hidden}img{display:block;width:100%}a{color:inherit;text-decoration:none}button{font:inherit}.shell{width:min(1180px,calc(100% - 48px));margin-inline:auto}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:200;background:var(--ink);color:#fff;padding:.8rem 1rem}.skip-link:focus{top:1rem}.eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 24px;color:var(--clay-dark);font-size:.72rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.eyebrow:before{content:'';width:32px;height:1px;background:currentColor}.eyebrow.light{color:#d6b5a7}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:500;line-height:1.04;letter-spacing:-.035em}h2{font-size:clamp(2.7rem,5.3vw,5rem);margin-bottom:30px}h1 em,h2 em{color:var(--clay);font-weight:500}.section{padding:clamp(90px,11vw,150px) 0}.button{display:inline-flex;align-items:center;justify-content:center;gap:32px;min-height:58px;padding:0 28px;border:1px solid var(--clay);background:var(--clay);color:#fff;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:.25s ease}.button:hover{background:var(--clay-dark);border-color:var(--clay-dark);transform:translateY(-2px)}.button-small{min-height:44px;padding:0 20px;gap:18px;font-size:.7rem}.button-light{background:var(--ivory);border-color:var(--ivory);color:var(--ink)}.button-light:hover{background:#fff;border-color:#fff}.text-link{display:inline-flex;align-items:center;gap:20px;padding:16px 0;border-bottom:1px solid var(--ink);font-size:.79rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;transition:.2s}.text-link:hover{color:var(--clay);border-color:var(--clay)}
.site-header{position:fixed;z-index:100;inset:0 0 auto;transition:.3s}.site-header.scrolled{background:rgba(252,250,247,.94);box-shadow:0 8px 30px rgba(52,38,31,.07);backdrop-filter:blur(14px)}.nav-wrap{height:96px;display:flex;align-items:center;justify-content:space-between;gap:32px;transition:.3s}.scrolled .nav-wrap{height:76px}.brand{display:flex;flex-direction:column;line-height:1}.brand span{font-family:var(--serif);font-size:1.45rem;letter-spacing:-.02em}.brand small{margin-top:8px;color:var(--clay-dark);font-size:.55rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase}.desktop-nav{display:flex;align-items:center;gap:35px;margin-left:auto}.desktop-nav a{position:relative;font-size:.71rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.desktop-nav a:after{content:'';position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--clay);transition:.25s}.desktop-nav a:hover:after{right:0}.menu-toggle{display:none;border:0;background:transparent;width:42px;height:42px;padding:10px;cursor:pointer}.menu-toggle span{display:block;height:1px;background:var(--ink);margin:7px 0;transition:.25s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-nav{position:fixed;inset:76px 0 0;background:var(--ivory);padding:50px 24px;flex-direction:column;align-items:center;gap:25px}.mobile-nav:not([hidden]){display:flex}.mobile-nav>a:not(.button){font-family:var(--serif);font-size:2rem}
.hero{position:relative;min-height:820px;height:100svh;max-height:1000px;overflow:hidden;background:var(--ivory)}.hero-media{position:absolute;inset:0 0 0 45%;overflow:hidden}.hero-media img{height:100%;object-fit:cover;object-position:48% center}.hero-wash{position:absolute;inset:0;background:linear-gradient(90deg,var(--ivory) 0%,var(--ivory) 43%,rgba(247,243,237,.87) 51%,rgba(247,243,237,.08) 74%)}.hero-inner{height:100%;display:flex;align-items:center;position:relative}.hero-copy{width:min(650px,58%);padding-top:70px}.hero h1{font-size:clamp(3.6rem,6.4vw,7rem);margin:0 0 30px}.hero-lead{max-width:520px;color:var(--ink-soft);font-size:1.06rem;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:34px;margin-top:40px}.hero-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:65px;padding-top:24px;border-top:1px solid rgba(52,38,31,.16)}.hero-proof div{display:flex;flex-direction:column}.hero-proof strong{font-family:var(--serif);font-size:1rem;font-weight:600}.hero-proof span{color:var(--ink-soft);font-size:.72rem}.hero-side-note{position:absolute;right:24px;bottom:120px;margin:0;color:#fff;font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;writing-mode:vertical-rl;transform:rotate(180deg);text-shadow:0 1px 8px rgba(0,0,0,.2)}
.intro{background:var(--paper)}.intro-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:clamp(65px,10vw,140px);align-items:center}.portrait-wrap{position:relative;padding:0 0 72px 38px}.portrait-wrap:before{content:'';position:absolute;left:0;top:45px;width:72%;height:82%;background:#e8ddd2}.portrait-shape{position:relative;height:690px;overflow:hidden;border-radius:50% 50% 5px 5px}.portrait-shape img{height:100%;object-fit:cover;object-position:center 20%}.portrait-card{position:absolute;right:-30px;bottom:0;width:230px;padding:25px;background:var(--ink);color:#fff;box-shadow:var(--shadow)}.portrait-card{display:flex;align-items:center;gap:18px}.portrait-card p{margin:0;line-height:1.35;font-family:var(--serif);font-size:1rem}.portrait-mark{display:grid;place-items:center;width:50px;height:50px;flex:0 0 50px;border:1px solid #a98f7e;border-radius:50%;font-family:var(--serif);font-size:.8rem}.intro-copy>p:not(.eyebrow){max-width:580px;color:var(--ink-soft)}.intro-lead{color:var(--ink)!important;font-family:var(--serif);font-size:1.35rem;line-height:1.55}.credentials{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:45px;padding-top:30px;border-top:1px solid var(--sand)}.credentials>div{display:flex;gap:16px}.credentials span{color:var(--clay);font-family:var(--serif);font-size:.9rem}.credentials p{font-size:.8rem!important;line-height:1.55}.credentials strong{display:block;color:var(--ink);font-size:.83rem;text-transform:uppercase;letter-spacing:.06em}
.treatments{background:var(--ink);color:var(--ivory)}.section-heading{display:grid;grid-template-columns:1.4fr .6fr;gap:70px;align-items:end;margin-bottom:70px}.section-heading h2{margin:0}.section-heading h2 em{color:#d6b5a7}.section-heading>p{color:#c8bbb2;max-width:390px;margin:0 0 7px}.featured-services{border-top:1px solid rgba(255,255,255,.17)}.service-row{display:grid;grid-template-columns:80px 1fr 1.15fr 54px;gap:35px;align-items:center;min-height:150px;border-bottom:1px solid rgba(255,255,255,.17);cursor:pointer;transition:.3s}.service-row:hover{padding-inline:16px;background:rgba(255,255,255,.035)}.service-number{color:#a99385;font-family:var(--serif);font-size:.82rem}.service-row h3{margin:0;font-family:var(--serif);font-size:clamp(1.6rem,2.7vw,2.5rem);font-weight:500}.service-row p{margin:0;color:#bfb1a8;font-size:.9rem}.service-arrow{display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(255,255,255,.3);border-radius:50%;font-size:1.1rem;transition:.25s}.service-row:hover .service-arrow{background:var(--clay);border-color:var(--clay);transform:rotate(45deg)}.section-action{display:flex;justify-content:center;margin-top:55px}
.experience{background:var(--ivory)}.experience-header{max-width:760px;margin-bottom:70px}.experience-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--sand);border-bottom:1px solid var(--sand)}.experience-step{position:relative;padding:40px 34px 42px;border-right:1px solid var(--sand)}.experience-step:last-child{border:0}.experience-step>span{position:absolute;right:20px;top:18px;color:#b2a397;font-family:var(--serif);font-size:.75rem}.line-icon{height:55px;color:var(--clay);font-family:var(--serif);font-size:2rem}.experience-step h3{font-family:var(--serif);font-size:1.4rem;font-weight:600}.experience-step p{margin:0;color:var(--ink-soft);font-size:.86rem}
.testimonial{background:#c8ac9e;padding-block:120px}.testimonial-inner{display:flex;flex-direction:column;align-items:center;text-align:center}.testimonial .eyebrow{color:var(--ink)}.quote-mark{height:75px;font-family:var(--serif);font-size:7rem;line-height:1;color:rgba(52,38,31,.25)}blockquote{max-width:900px;margin:10px auto 34px;font-family:var(--serif);font-size:clamp(2rem,4vw,3.6rem);line-height:1.25;letter-spacing:-.025em}.quote-author{font-size:.74rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.quote-author span{font-weight:400;color:#69554a}.quote-controls{display:flex;align-items:center;gap:24px;margin-top:25px}.quote-controls button{width:42px;height:42px;border:1px solid rgba(52,38,31,.35);border-radius:50%;background:transparent;cursor:pointer;transition:.2s}.quote-controls button:hover{background:var(--ink);color:#fff}.quote-controls span{font-size:.65rem;letter-spacing:.1em}
.booking{background:var(--clay-dark);color:#fff}.booking-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(60px,9vw,130px);align-items:center}.booking-copy h2 em{color:#e0c2b5}.booking-copy>p:not(.eyebrow){max-width:470px;color:#e5d5ce;margin-bottom:38px}.booking-contact{display:flex;gap:45px;margin-top:52px}.booking-contact p{margin:0}.booking-contact small{display:block;color:#d9b8a9;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase}.booking-contact a{font-family:var(--serif);font-size:1.05rem}.location-card{background:var(--paper);color:var(--ink);box-shadow:var(--shadow)}.map-wrap{height:390px;overflow:hidden}.map-wrap iframe{width:100%;height:100%;border:0;filter:saturate(.45) sepia(.15)}.location-details{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:27px 30px}.location-details small{font-size:.62rem;color:var(--clay-dark);font-weight:600;letter-spacing:.14em;text-transform:uppercase}.location-details h3{font-family:var(--serif);font-size:1.25rem;margin:5px 0 2px}.location-details p{margin:0;color:var(--ink-soft);font-size:.8rem}.location-details>a{display:grid;place-items:center;width:50px;height:50px;flex:0 0 50px;border:1px solid var(--sand);border-radius:50%}
.footer{background:var(--paper);padding:70px 0 25px}.footer-main{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end;gap:30px;padding-bottom:55px}.brand-footer span{font-size:2rem}.footer-main>p{max-width:300px;margin:0;color:var(--ink-soft);font-size:.85rem}.footer-links{display:flex;justify-content:flex-end;gap:25px;font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.footer-bottom{display:flex;justify-content:space-between;padding-top:24px;border-top:1px solid var(--sand);color:#8a7b72;font-size:.65rem;letter-spacing:.06em;text-transform:uppercase}.footer-bottom p{margin:0}.whatsapp-float{position:fixed;z-index:90;right:22px;bottom:22px;display:flex;align-items:center;gap:16px;padding:12px 13px 12px 18px;border-radius:30px;background:#235d43;color:#fff;box-shadow:0 10px 35px rgba(0,0,0,.2);font-size:.67rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;transition:.25s}.whatsapp-float:hover{transform:translateY(-3px)}.whatsapp-float b{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:rgba(255,255,255,.15)}
.service-modal{width:min(880px,calc(100% - 32px));max-height:90vh;padding:0;border:0;background:var(--paper);color:var(--ink);box-shadow:0 30px 100px rgba(0,0,0,.35)}.service-modal::backdrop{background:rgba(33,24,20,.72);backdrop-filter:blur(5px)}.modal-close{position:absolute;z-index:2;right:17px;top:17px;width:42px;height:42px;border:0;border-radius:50%;background:rgba(247,243,237,.93);font-size:1.7rem;cursor:pointer}.modal-grid{display:grid;grid-template-columns:.9fr 1.1fr;min-height:560px}.modal-image{height:100%;object-fit:cover}.modal-copy{padding:60px 50px}.modal-copy .eyebrow{margin-bottom:18px}.modal-copy h2{font-size:3rem;margin-bottom:20px}.modal-copy>p{color:var(--ink-soft)}.modal-copy h4{margin:30px 0 12px;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}.modal-copy ul{list-style:none;padding:0;margin:0 0 30px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.modal-copy li{font-size:.79rem}.modal-copy li:before{content:'—';margin-right:8px;color:var(--clay)}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*{transition-duration:.01ms!important}}
@media(max-width:900px){.desktop-nav,.desktop-cta{display:none}.menu-toggle{display:block}.nav-wrap,.scrolled .nav-wrap{height:76px}.hero{height:auto;min-height:850px}.hero-media{inset:0}.hero-media img{object-position:62% center}.hero-wash{background:linear-gradient(90deg,rgba(247,243,237,.97) 0%,rgba(247,243,237,.9) 55%,rgba(247,243,237,.3) 100%)}.hero-copy{width:83%;padding-top:100px}.hero-proof{grid-template-columns:1fr 1fr}.hero-proof div:last-child{display:none}.intro-grid,.booking-grid{grid-template-columns:1fr;gap:70px}.portrait-wrap{width:min(600px,90%)}.section-heading{grid-template-columns:1fr}.experience-grid{grid-template-columns:1fr 1fr}.experience-step:nth-child(2){border-right:0}.experience-step:nth-child(-n+2){border-bottom:1px solid var(--sand)}.footer-main{grid-template-columns:1fr 1fr}.footer-links{grid-column:1/-1;justify-content:flex-start}.modal-grid{grid-template-columns:1fr}.modal-image{height:280px}.modal-copy{padding:38px}.modal-copy h2{font-size:2.4rem}}
@media(max-width:620px){.shell{width:min(100% - 32px,1180px)}.section{padding:82px 0}.brand span{font-size:1.25rem}.hero{min-height:790px}.hero-copy{width:100%;padding-top:92px}.hero h1{font-size:3.5rem}.hero-lead{max-width:92%;font-size:.94rem}.hero-actions{align-items:stretch;flex-direction:column;gap:8px;margin-top:30px}.hero-actions .button{width:100%}.hero-actions .text-link{align-self:flex-start}.hero-proof{margin-top:36px}.hero-side-note{display:none}.intro-grid{gap:55px}.portrait-wrap{width:100%;padding-left:20px}.portrait-shape{height:510px}.portrait-card{right:-8px;width:210px}.credentials{grid-template-columns:1fr}.section-heading{gap:25px;margin-bottom:45px}.service-row{grid-template-columns:42px 1fr 42px;gap:12px;min-height:120px}.service-row p{display:none}.service-arrow{width:38px;height:38px}.experience-grid{grid-template-columns:1fr}.experience-step{border-right:0;border-bottom:1px solid var(--sand)!important;padding-inline:18px}.experience-step:last-child{border-bottom:0!important}.testimonial{padding-block:82px}blockquote{font-size:2rem}.booking-contact{flex-direction:column;gap:18px}.map-wrap{height:300px}.location-details{padding:22px}.footer-main{grid-template-columns:1fr}.footer-links{flex-wrap:wrap}.footer-bottom{flex-direction:column;gap:8px}.whatsapp-float span{display:none}.whatsapp-float{padding:12px}.modal-grid{display:block}.modal-image{height:220px}.modal-copy{padding:32px 24px}.modal-copy h2{font-size:2.1rem}.modal-copy ul{grid-template-columns:1fr}}

/* Premium conversion pass */
:root{
  --night:#211714;
  --wine:#5f2f2d;
  --rose:#b56b55;
  --gold:#d9b979;
  --champagne:#f8efe4;
  --mist:#efe7df;
  --glass:rgba(255,255,255,.58);
  --scroll-y:0px;
  --mx:0;
  --my:0;
}
html,body{overflow-x:hidden}
body{background:#fffaf4}
.site-header.scrolled{background:rgba(255,250,244,.82);border-bottom:1px solid rgba(95,47,45,.1)}
.button{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--rose),var(--wine));border:0;box-shadow:0 18px 38px rgba(95,47,45,.22)}
.button:before{content:'';position:absolute;inset:-1px;transform:translateX(-115%) skewX(-18deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);transition:.7s}
.button:hover:before{transform:translateX(115%) skewX(-18deg)}
.button:hover{box-shadow:0 24px 48px rgba(95,47,45,.28)}
.button-light{background:linear-gradient(135deg,#fff,var(--champagne));color:var(--night);box-shadow:0 18px 40px rgba(0,0,0,.16)}
.hero{background:#f6eee6;isolation:isolate}
.hero:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 23% 19%,rgba(217,185,121,.22),transparent 34%),linear-gradient(180deg,rgba(255,255,255,.62),transparent 48%);z-index:1;pointer-events:none}
.hero:after{content:'';position:absolute;left:0;right:0;bottom:0;height:190px;background:linear-gradient(0deg,#fffaf4,rgba(255,250,244,0));z-index:2;pointer-events:none}
.hero-media{transform:translate3d(calc(var(--mx)*-18px),calc(var(--my)*-10px + var(--scroll-y)*.04),0) scale(1.035);transition:transform .2s ease-out}
.hero-media img{filter:saturate(.9) contrast(1.04)}
.hero-wash{z-index:1;background:linear-gradient(90deg,#fbf5ee 0%,#fbf5ee 39%,rgba(251,245,238,.86) 52%,rgba(251,245,238,.16) 82%)}
.hero-inner{z-index:3}
.hero-copy{position:relative}
.hero h1{max-width:760px;text-wrap:balance;text-shadow:0 1px 0 rgba(255,255,255,.35)}
.hero h1 em{background:linear-gradient(90deg,var(--rose),var(--wine));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-lead{font-size:1.12rem}
.hero-conversion{display:flex;align-items:center;gap:13px;width:min(500px,100%);margin-top:24px;padding:14px 16px;border:1px solid rgba(181,107,85,.22);background:rgba(255,255,255,.47);backdrop-filter:blur(12px);box-shadow:0 16px 45px rgba(95,47,45,.08)}
.hero-conversion p{margin:0;color:#57443c;font-size:.82rem;line-height:1.45}
.pulse-dot{position:relative;width:10px;height:10px;flex:0 0 10px;border-radius:50%;background:#2e6b4d}
.pulse-dot:after{content:'';position:absolute;inset:-7px;border-radius:50%;border:1px solid rgba(46,107,77,.42);animation:pulse 1.8s infinite}
.hero-proof div{padding:18px 16px;background:rgba(255,255,255,.38);border:1px solid rgba(95,47,45,.08);backdrop-filter:blur(10px)}
.luxury-strip{overflow:hidden;background:var(--night);color:#f4dfc8;border-top:1px solid rgba(217,185,121,.25);border-bottom:1px solid rgba(217,185,121,.25)}
.strip-track{display:flex;width:max-content;gap:34px;align-items:center;padding:17px 0;animation:marquee 26s linear infinite}
.strip-track span{display:flex;align-items:center;gap:34px;font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap}
.strip-track span:after{content:'✦';color:var(--gold);font-size:.76rem}
.intro{background:linear-gradient(180deg,#fffaf4,#f3ebe2)}
.portrait-shape{box-shadow:0 30px 80px rgba(95,47,45,.14)}
.portrait-shape img{transition:transform 1s ease}
.portrait-wrap:hover .portrait-shape img{transform:scale(1.04)}
.treatments{position:relative;overflow:hidden;background:linear-gradient(135deg,#1e1412 0%,#3b201d 52%,#6c372e 100%)}
.treatments:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(180deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(180deg,transparent,black 18%,black 82%,transparent);opacity:.55;pointer-events:none}
.treatments .shell{position:relative;z-index:1}
.service-filter{display:flex;flex-wrap:wrap;gap:12px;margin:-36px 0 44px}
.service-filter span{padding:10px 15px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.06);color:#f2daca;font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.featured-services{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;border:0}
.service-card{position:relative;min-height:520px;overflow:hidden;background:#2a1b18;color:#fff;cursor:pointer;box-shadow:0 25px 70px rgba(0,0,0,.22);transition:transform .35s ease,box-shadow .35s ease;transition-delay:var(--delay)}
.service-card:before{content:'';position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.12) 38%,rgba(20,12,10,.9));pointer-events:none}
.service-card:after{content:'';position:absolute;inset:14px;z-index:3;border:1px solid rgba(255,255,255,.19);opacity:.55;pointer-events:none;transition:.35s}
.service-card:hover{transform:translateY(-10px);box-shadow:0 35px 90px rgba(0,0,0,.34)}
.service-card:hover:after{inset:20px;opacity:.9}
.service-image{position:absolute;inset:0}
.service-image img{height:100%;object-fit:cover;transition:transform 1s ease,filter .35s ease;filter:saturate(.86) contrast(1.03)}
.service-card:hover .service-image img{transform:scale(1.08);filter:saturate(1.03) contrast(1.08)}
.service-card .service-number{position:absolute;top:24px;left:24px;z-index:4;display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(255,255,255,.35);border-radius:50%;color:#fff;background:rgba(0,0,0,.18);backdrop-filter:blur(10px)}
.service-card-copy{position:absolute;left:0;right:0;bottom:0;z-index:4;padding:34px}
.service-tag{display:inline-flex;margin-bottom:16px;color:#f2caa8;font-size:.68rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.service-card h3{margin:0 0 14px;font-family:var(--serif);font-size:clamp(1.85rem,2.8vw,3rem);font-weight:500;line-height:1.03;text-wrap:balance}
.service-card p{margin:0;color:#eadbd2;font-size:.9rem;line-height:1.6}
.service-card-link{display:inline-flex;align-items:center;gap:13px;margin-top:22px;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.service-card-link b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.16);transition:.25s}
.service-card:hover .service-card-link b{background:var(--rose);transform:rotate(45deg)}
.experience-step{background:rgba(255,255,255,.38);transition:background .25s ease,transform .25s ease}
.experience-step:hover{background:#fff;transform:translateY(-6px)}
.testimonial{background:linear-gradient(135deg,#c8ac9e,#edd9c9)}
.whatsapp-float{animation:floatCta 3.8s ease-in-out infinite;background:linear-gradient(135deg,#246143,#123b2a)}
.reveal{transition-delay:var(--delay,0ms)}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes pulse{0%{transform:scale(.75);opacity:.9}100%{transform:scale(1.7);opacity:0}}
@keyframes floatCta{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@media(max-width:1000px){
  .featured-services{grid-template-columns:repeat(2,1fr)}
  .service-card{min-height:470px}
}
@media(max-width:900px){
  .hero-media{transform:scale(1.03)}
  .hero-wash{background:linear-gradient(90deg,rgba(251,245,238,.97) 0%,rgba(251,245,238,.92) 63%,rgba(251,245,238,.45) 100%)}
}
@media(max-width:620px){
  .hero .shell{width:calc(100% - 32px)}
  .hero{min-height:790px;height:auto}
  .hero-copy{width:100%;max-width:calc(100vw - 32px);padding-top:112px}
  .hero h1{font-size:clamp(2.38rem,10.7vw,2.82rem);line-height:1.02;letter-spacing:-.025em;max-width:calc(100vw - 32px);overflow-wrap:normal}
  .hero h1 br{display:block}
  .hero h1 em{display:block;max-width:340px;font-size:.86em}
  .hero-lead{max-width:340px;font-size:.84rem;line-height:1.65;overflow-wrap:break-word}
  .hero-conversion{width:100%;max-width:340px;margin-top:18px;padding:12px 13px}
  .hero-conversion p{min-width:0;font-size:.72rem}
  .hero-proof{grid-template-columns:1fr 1fr;gap:10px}
  .hero-proof div{padding:14px 12px}
  .strip-track{animation-duration:18s}
  .featured-services{grid-template-columns:1fr;gap:18px}
  .service-filter{margin:-22px 0 34px;overflow-x:auto;flex-wrap:nowrap;padding-bottom:6px}
  .service-filter span{flex:0 0 auto}
  .service-card{min-height:430px}
  .service-card-copy{padding:26px}
  .service-card h3{font-size:2.25rem}
}
@media (prefers-reduced-motion:reduce){
  .strip-track,.whatsapp-float,.pulse-dot:after{animation:none}
  .hero-media{transform:none}
}

/* Feminine blush and gold refinement */
:root{
  --ink:#332326;
  --ink-soft:#735d62;
  --ivory:#fff7f8;
  --paper:#fffafb;
  --clay:#c8748c;
  --clay-dark:#8f3f58;
  --sand:#ead3da;
  --night:#4f2734;
  --wine:#8f3f58;
  --rose:#d989a0;
  --gold:#caa45b;
  --champagne:#fff3df;
  --mist:#f9e8ee;
  --shadow:0 24px 70px rgba(143,63,88,.14);
}
body{background:linear-gradient(180deg,#fffafb 0%,#fff5f8 46%,#fffafb 100%);color:var(--ink)}
.site-header.scrolled{background:rgba(255,250,251,.9);border-bottom:1px solid rgba(202,164,91,.18);box-shadow:0 16px 45px rgba(143,63,88,.08)}
.brand small,.eyebrow,.desktop-nav a:hover,.text-link:hover{color:var(--wine)}
.desktop-nav a:after{background:linear-gradient(90deg,var(--rose),var(--gold))}
.button{background:linear-gradient(135deg,#d989a0 0%,#b75f7a 52%,#8f3f58 100%);box-shadow:0 18px 42px rgba(183,95,122,.24)}
.button:hover{background:linear-gradient(135deg,#e499ae,#9f4b66);box-shadow:0 26px 55px rgba(183,95,122,.3)}
.button-light{background:linear-gradient(135deg,#fff,#fff1f5 58%,#ffe9c3);color:var(--wine);border:1px solid rgba(202,164,91,.22)}
.text-link{border-color:rgba(51,35,38,.38)}
.hero{background:linear-gradient(115deg,#fff8fa 0%,#fff2f6 44%,#f8e4eb 100%)}
.hero:before{background:radial-gradient(circle at 18% 20%,rgba(255,218,232,.75),transparent 28%),radial-gradient(circle at 68% 12%,rgba(202,164,91,.18),transparent 22%),linear-gradient(180deg,rgba(255,255,255,.54),transparent 58%)}
.hero:after{height:260px;background:linear-gradient(0deg,#fffafb 0%,rgba(255,250,251,.9) 28%,rgba(255,250,251,0) 100%)}
.hero-media{inset:0 0 0 44%;opacity:.72}
.hero-media:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,250,251,.48),rgba(255,250,251,.08) 45%,rgba(255,250,251,.18))}
.hero-media img{filter:saturate(.72) contrast(1.02) brightness(1.09)}
.hero-wash{background:linear-gradient(90deg,#fffafb 0%,rgba(255,250,251,.98) 31%,rgba(255,250,251,.82) 48%,rgba(255,250,251,.42) 66%,rgba(255,250,251,.08) 100%)}
.hero h1{color:#332326}
.hero h1 em{background:linear-gradient(90deg,#d989a0,#9f4b66 56%,#caa45b);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-lead{color:#6c555b}
.hero-conversion{border-color:rgba(202,164,91,.28);background:rgba(255,255,255,.66);box-shadow:0 18px 50px rgba(143,63,88,.1)}
.hero-conversion p{overflow-wrap:anywhere}
.pulse-dot{background:#b75f7a}
.pulse-dot:after{border-color:rgba(183,95,122,.32)}
.hero-proof{border-top-color:rgba(202,164,91,.24)}
.hero-proof div{background:rgba(255,255,255,.62);border:1px solid rgba(202,164,91,.18);box-shadow:0 16px 35px rgba(143,63,88,.07)}
.hero-side-note{color:#fff;text-shadow:0 2px 16px rgba(79,39,52,.35)}
.luxury-strip{background:linear-gradient(90deg,#fff5f8,#f8e2ea,#fff2db);color:#7f3b52;border-color:rgba(202,164,91,.28)}
.strip-track span:after{color:var(--gold)}
.intro{background:linear-gradient(180deg,#fffafb 0%,#fff5f8 55%,#fffafb 100%)}
.intro-grid{align-items:center}
.portrait-wrap{padding:34px}
.portrait-wrap:before{left:0;top:0;width:76%;height:72%;border-radius:34px;background:linear-gradient(135deg,#fce8ef,#fff4db);box-shadow:inset 0 0 0 1px rgba(202,164,91,.18)}
.portrait-shape{height:620px;border-radius:34px;box-shadow:0 34px 90px rgba(143,63,88,.16);border:1px solid rgba(202,164,91,.24);background:#fff;transform:rotate(-1.2deg)}
.portrait-shape img{height:100%;object-fit:cover;object-position:center center;filter:saturate(.86) brightness(1.04)}
.portrait-card{right:0;bottom:18px;background:linear-gradient(135deg,#fff,#fff0f4);color:var(--wine);border:1px solid rgba(202,164,91,.28);box-shadow:0 24px 60px rgba(143,63,88,.16)}
.portrait-mark{border-color:rgba(202,164,91,.5);color:var(--gold)}
.credentials{border-top-color:rgba(202,164,91,.24)}
.credentials span,.credentials strong{color:var(--wine)}
.treatments{background:linear-gradient(180deg,#fffafb 0%,#fff2f6 55%,#fff8ed 100%);color:var(--ink)}
.treatments:before{background:radial-gradient(circle at 15% 18%,rgba(217,137,160,.16),transparent 28%),radial-gradient(circle at 84% 12%,rgba(202,164,91,.13),transparent 24%);opacity:1;mask-image:none}
.section-heading h2 em{color:var(--rose)}
.section-heading>p{color:#846a70}
.eyebrow.light{color:var(--wine)}
.service-filter span{background:rgba(255,255,255,.72);border-color:rgba(202,164,91,.26);color:#8f3f58;box-shadow:0 12px 30px rgba(143,63,88,.07)}
.service-card{background:#fff;color:var(--ink);box-shadow:0 28px 70px rgba(143,63,88,.12);border:1px solid rgba(202,164,91,.18)}
.service-card:before{background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,246,249,.08) 36%,rgba(255,248,250,.94) 100%)}
.service-card:after{border-color:rgba(202,164,91,.3)}
.service-card .service-number{background:rgba(255,255,255,.74);border-color:rgba(202,164,91,.38);color:var(--wine)}
.service-tag{color:#b75f7a}
.service-card p{color:#735d62}
.service-card-link{color:var(--wine)}
.service-card-link b{background:rgba(202,164,91,.18);color:#8f3f58}
.service-card:hover .service-card-link b{background:linear-gradient(135deg,#d989a0,#caa45b);color:#fff}
.experience{background:linear-gradient(180deg,#fffafb,#fff3f6)}
.experience-step{background:rgba(255,255,255,.58);border-color:rgba(202,164,91,.2)}
.experience-grid{border-color:rgba(202,164,91,.22)}
.testimonial{background:linear-gradient(135deg,#ffe4ed 0%,#fff4db 100%)}
.booking{background:linear-gradient(135deg,#8f3f58 0%,#b75f7a 48%,#d989a0 100%)}
.booking-copy h2 em{color:#ffe6bc}
.location-card{border:1px solid rgba(202,164,91,.24)}
.footer{background:#fffafb}
@media(max-width:900px){
  .hero-media{inset:0;opacity:.38;transform:scale(1.02)}
  .hero-wash{background:linear-gradient(90deg,rgba(255,250,251,.98) 0%,rgba(255,250,251,.94) 58%,rgba(255,250,251,.72) 100%)}
  .portrait-wrap{width:min(600px,100%);padding:20px}
}
@media(max-width:620px){
  .hero{min-height:780px}
  .hero .shell{width:calc(100% - 32px);overflow:hidden}
  .hero-copy{padding-top:104px}
  .hero h1{font-size:clamp(2.28rem,10.2vw,2.72rem);max-width:100%;text-wrap:balance}
  .hero h1 em{max-width:310px}
  .hero-actions .button{min-width:0}
  .hero-conversion{max-width:100%;overflow:hidden}
  .hero-conversion p{font-size:.7rem;line-height:1.38}
  .luxury-strip{margin-top:-1px}
  .strip-track{padding:14px 0}
  .portrait-wrap{padding:12px 0 56px}
  .portrait-wrap:before{left:16px;top:20px;width:68%;height:62%;border-radius:24px}
  .portrait-shape{height:430px;border-radius:26px;transform:none}
  .portrait-shape img{object-position:center center}
  .portrait-card{right:12px;bottom:16px;width:205px}
  .section-heading h2{font-size:2.65rem}
  .treatments{padding-top:92px}
}

/* Blush + soft cocoa balance */
:root{
  --ink:#38282a;
  --ink-soft:#745f5d;
  --ivory:#fff8f6;
  --paper:#fffaf8;
  --clay:#cc7894;
  --clay-dark:#9a5462;
  --sand:#e7d2c6;
  --night:#6b4a40;
  --wine:#9a5462;
  --rose:#d986a2;
  --gold:#caa66a;
  --cocoa:#8b6659;
  --cocoa-soft:#ead8cf;
  --cocoa-light:#f5e9e3;
  --shadow:0 24px 70px rgba(139,102,89,.14);
}
body{background:linear-gradient(180deg,#fffaf8 0%,#f8ebe6 48%,#fffaf8 100%)}
.site-header.scrolled{background:rgba(255,250,248,.92);border-bottom:1px solid rgba(139,102,89,.16)}
.brand span,.desktop-nav a,.hero h1,.intro-copy h2,.section-heading h2,.experience-header h2,.booking-copy h2{color:#38282a}
.brand small,.eyebrow,.eyebrow.light,.service-tag,.credentials span,.credentials strong{color:var(--rose)}
.button{background:linear-gradient(135deg,#dc8aaa 0%,#c66f8c 58%,#a85868 100%);box-shadow:0 18px 42px rgba(198,111,140,.26)}
.button:hover{background:linear-gradient(135deg,#e497b4,#ad5d73);box-shadow:0 26px 55px rgba(198,111,140,.32)}
.text-link{border-color:rgba(56,40,42,.42)}
.hero{background:linear-gradient(115deg,#fffaf8 0%,#f9ece8 46%,#ead8cf 100%)}
.hero:before{background:radial-gradient(circle at 18% 18%,rgba(217,134,162,.22),transparent 27%),radial-gradient(circle at 78% 14%,rgba(202,166,106,.16),transparent 24%),linear-gradient(180deg,rgba(255,255,255,.48),transparent 60%)}
.hero:after{height:280px;background:linear-gradient(0deg,#fffaf8 0%,rgba(255,250,248,.94) 25%,rgba(255,250,248,.54) 58%,rgba(255,250,248,0) 100%)}
.hero-media{opacity:.5}
.hero-media:after{background:linear-gradient(90deg,rgba(255,250,248,.7) 0%,rgba(255,250,248,.36) 42%,rgba(245,233,227,.18) 100%)}
.hero-media img{filter:saturate(.62) contrast(.98) brightness(1.1)}
.hero-wash{background:linear-gradient(90deg,#fffaf8 0%,rgba(255,250,248,.98) 29%,rgba(255,250,248,.78) 47%,rgba(245,233,227,.44) 68%,rgba(245,233,227,.08) 100%)}
.hero h1 em,h2 em{background:linear-gradient(90deg,#d986a2 0%,#c87993 52%,#caa66a 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-lead{color:#6f5a59}
.hero-conversion{background:rgba(255,250,248,.76);border-color:rgba(139,102,89,.18);box-shadow:0 18px 48px rgba(139,102,89,.1)}
.hero-proof div{background:rgba(255,250,248,.7);border-color:rgba(139,102,89,.15)}
.luxury-strip{background:linear-gradient(90deg,#f5e9e3,#ffeef4,#f2ded4);color:#8f5360}
.intro{background:linear-gradient(180deg,#fffaf8 0%,#f5e9e3 58%,#fffaf8 100%)}
.portrait-wrap:before{background:linear-gradient(135deg,#f3ddd4,#fff0f5 65%,#fff3dc)}
.portrait-shape{border-radius:28px;background:#fff;border-color:rgba(139,102,89,.18);box-shadow:0 32px 85px rgba(139,102,89,.16)}
.portrait-card{background:linear-gradient(135deg,#fffaf8,#f5e9e3);color:var(--cocoa);border-color:rgba(202,166,106,.3)}
.treatments{background:linear-gradient(180deg,#fffaf8 0%,#f8ece8 46%,#f3ddd4 100%);color:var(--ink)}
.treatments:before{background:radial-gradient(circle at 10% 10%,rgba(217,134,162,.16),transparent 26%),radial-gradient(circle at 92% 7%,rgba(139,102,89,.12),transparent 24%)}
.section-heading>p{color:#765f5d}
.service-filter span{background:#fffaf8;border-color:rgba(139,102,89,.16);color:#9a5462}
.featured-services{align-items:stretch}
.service-card{display:flex;flex-direction:column;min-height:0;overflow:hidden;background:#fffaf8;color:var(--ink);border:1px solid rgba(139,102,89,.16);box-shadow:0 24px 64px rgba(139,102,89,.12)}
.service-card:before,.service-card:after{display:none}
.service-card:hover{transform:translateY(-8px);box-shadow:0 34px 82px rgba(139,102,89,.18)}
.service-image{position:relative;inset:auto;height:260px;overflow:hidden;background:#ead8cf}
.service-image:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,0),rgba(56,40,42,.06))}
.service-image img{height:100%;object-fit:cover;filter:saturate(.82) brightness(1.03);transition:transform 1s ease,filter .35s ease}
.service-card:hover .service-image img{transform:scale(1.06);filter:saturate(.96) brightness(1.05)}
.service-card .service-number{top:18px;left:18px;background:#fffaf8;border-color:rgba(202,166,106,.42);color:#a85868}
.service-card-copy{position:relative;left:auto;right:auto;bottom:auto;z-index:1;display:flex;flex:1;flex-direction:column;padding:30px 28px 28px;background:linear-gradient(180deg,#fffaf8,#f6e8e2)}
.service-card h3{color:#38282a;font-size:clamp(1.7rem,2.35vw,2.55rem)}
.service-card p{color:#745f5d}
.service-card-link{margin-top:auto;padding-top:24px;color:#9a5462}
.service-card-link b{background:rgba(217,134,162,.15);color:#9a5462}
.experience{background:linear-gradient(180deg,#fffaf8,#f5e9e3)}
.experience-step{background:rgba(255,250,248,.72);border-color:rgba(139,102,89,.16)}
.testimonial{background:linear-gradient(135deg,#f3ddd4 0%,#fff0f5 52%,#fff3dc 100%)}
.booking{background:linear-gradient(135deg,#8b6659 0%,#a85868 48%,#d986a2 100%)}
.whatsapp-float{background:linear-gradient(135deg,#326747,#1d4d36)}
@media(max-width:1000px){
  .service-image{height:240px}
}
@media(max-width:620px){
  .hero-media{opacity:.24}
  .hero-wash{background:linear-gradient(90deg,rgba(255,250,248,.99) 0%,rgba(255,250,248,.96) 62%,rgba(245,233,227,.8) 100%)}
  .hero h1{font-size:clamp(2.32rem,10.5vw,2.82rem)}
  .hero h1 em{max-width:320px}
  .service-card{border-radius:0}
  .service-image{height:235px}
  .service-card-copy{padding:25px 24px 26px}
  .service-card h3{font-size:2.05rem}
}

/* Final glamour pass: cocoa contrast, elegant pink, cinematic motion */
:root{
  --ink:#342527;
  --ink-soft:#6f5a58;
  --paper:#fffaf7;
  --ivory:#fff5f4;
  --rose:#c96f8d;
  --rose-soft:#e7a4b8;
  --rose-deep:#9f5363;
  --gold:#d2ad68;
  --gold-soft:#f4deb0;
  --cocoa:#806052;
  --cocoa-deep:#4d342f;
  --cocoa-light:#f2e4dc;
  --mist:#fff0f3;
  --shadow:0 28px 80px rgba(80,52,47,.13);
}
body{background:linear-gradient(180deg,#fffaf7,#f5e7df 52%,#fffaf7);color:var(--ink)}
.custom-cursor,.custom-cursor a,.custom-cursor button,.custom-cursor [role="button"]{cursor:none}
.cursor-glow,.cursor-dot{position:fixed;left:0;top:0;z-index:9999;pointer-events:none;opacity:0;will-change:transform}
.cursor-glow{width:88px;height:88px;margin:-44px 0 0 -44px;border-radius:50%;background:radial-gradient(circle,rgba(231,164,184,.32),rgba(210,173,104,.18) 38%,transparent 68%);mix-blend-mode:multiply;transition:opacity .25s ease,scale .25s ease}
.cursor-dot{width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:linear-gradient(135deg,var(--rose),var(--gold));box-shadow:0 0 0 6px rgba(201,111,141,.12);transition:opacity .2s ease,scale .2s ease}
.custom-cursor .cursor-glow,.custom-cursor .cursor-dot{opacity:1}
.cursor-hover .cursor-glow{scale:1.55}
.cursor-hover .cursor-dot{scale:.72}
.touch-pop{opacity:1!important;animation:touchSpark .7s ease-out}
.site-header.scrolled{background:rgba(255,250,247,.88);backdrop-filter:blur(18px)}
.brand small,.eyebrow,.eyebrow.light{color:var(--rose-deep)}
.button{background:linear-gradient(135deg,var(--rose-soft),var(--rose) 48%,var(--rose-deep));box-shadow:0 20px 48px rgba(159,83,99,.24)}
.button:hover{box-shadow:0 26px 62px rgba(159,83,99,.32)}
.hero{background:linear-gradient(115deg,#fffaf7 0%,#f8eae5 45%,#ead8cf 100%)}
.hero:before{background:linear-gradient(130deg,rgba(255,255,255,.76),rgba(255,255,255,0) 62%),repeating-linear-gradient(115deg,rgba(210,173,104,.08) 0 1px,transparent 1px 18px)}
.hero-media{opacity:.56}
.hero-media img{filter:saturate(.68) contrast(.98) brightness(1.12)}
.hero-wash{background:linear-gradient(90deg,#fffaf7 0%,rgba(255,250,247,.98) 30%,rgba(255,250,247,.8) 48%,rgba(242,228,220,.38) 70%,rgba(242,228,220,.08) 100%)}
.hero h1 em,h2 em{background:linear-gradient(90deg,var(--rose),#b86f7d 46%,var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-conversion{background:rgba(255,250,247,.72);border-color:rgba(210,173,104,.24)}
.hero-proof div{background:rgba(255,250,247,.66);border-color:rgba(128,96,82,.15)}
.luxury-strip{background:linear-gradient(90deg,#4d342f,#7f5a50,#f2d7e1,#f4deb0);color:#fff8ef}
.strip-track span:after{color:#fff0bf}
.intro{background:linear-gradient(180deg,#fffaf7,#f4e6de 58%,#fffaf7)}
.portrait-wrap:before{background:linear-gradient(135deg,#ead8cf,#fff0f3 62%,#f4deb0)}
.portrait-shape{border-radius:30px;box-shadow:0 34px 86px rgba(80,52,47,.16)}
.treatments{background:linear-gradient(135deg,#49312d 0%,#6f4d45 42%,#a75d70 100%);color:#fff8f4}
.treatments:before{background:linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(180deg,rgba(255,255,255,.05) 1px,transparent 1px),radial-gradient(ellipse at 15% 10%,rgba(244,222,176,.22),transparent 30%);background-size:76px 76px,76px 76px,auto;opacity:.9}
.section-heading h2,.treatments .section-heading h2{color:#fff8f4}
.section-heading h2 em{background:linear-gradient(90deg,#f6bfd0,#f4deb0);-webkit-background-clip:text;background-clip:text;color:transparent}
.section-heading>p{color:#f0d9d2}
.service-filter span{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.22);color:#fff3eb;backdrop-filter:blur(10px)}
.featured-services{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.service-card{position:relative;display:block;min-height:540px;overflow:hidden;background:#3f2926;color:#fff;border:1px solid rgba(244,222,176,.18);box-shadow:0 32px 90px rgba(34,20,18,.26);isolation:isolate}
.service-card:before{display:block;content:'';position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,rgba(40,24,22,.03),rgba(40,24,22,.16) 34%,rgba(38,21,20,.92) 100%);pointer-events:none}
.service-card:after{display:block;content:'';position:absolute;inset:14px;z-index:3;border:1px solid rgba(244,222,176,.25);opacity:.72;pointer-events:none;transition:.35s ease}
.service-card:hover{transform:translateY(-12px);box-shadow:0 42px 105px rgba(34,20,18,.34)}
.service-card:hover:after{inset:22px;opacity:1}
.service-image{position:absolute;inset:0;height:auto;background:#3f2926}
.service-image:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(54,34,31,.22) 45%,rgba(42,24,23,.85))}
.service-image img{height:100%;object-fit:cover;filter:saturate(.82) contrast(1.02) brightness(.96);transition:transform 1.15s ease,filter .35s ease}
.service-card:hover .service-image img{transform:scale(1.08);filter:saturate(.98) contrast(1.05) brightness(1.02)}
.service-card .service-number{position:absolute;top:24px;left:24px;z-index:4;background:rgba(255,250,247,.88);border-color:rgba(244,222,176,.5);color:var(--rose-deep);box-shadow:0 14px 34px rgba(34,20,18,.18)}
.service-card-copy{position:absolute;left:0;right:0;bottom:0;z-index:4;display:block;padding:36px 34px 34px;background:transparent}
.service-tag{color:#f4b2c5;text-shadow:0 2px 12px rgba(0,0,0,.28)}
.service-card h3{color:#fff8f4;font-size:clamp(1.9rem,2.9vw,3rem);text-shadow:0 2px 18px rgba(0,0,0,.24)}
.service-card p{color:#f3ded7}
.service-card-link{display:inline-flex;margin-top:22px;padding-top:0;color:#fff8f4}
.service-card-link b{background:rgba(255,255,255,.16);color:#fff}
.service-card:hover .service-card-link b{background:linear-gradient(135deg,var(--rose),var(--gold))}
.experience{background:linear-gradient(180deg,#fffaf7,#f2e4dc)}
.testimonial{background:linear-gradient(135deg,#ead8cf 0%,#fff0f3 58%,#f4deb0 100%)}
.booking{background:linear-gradient(135deg,#6f4d45 0%,#9f5363 52%,#c96f8d 100%)}
.booking .field-row input,.booking .field-row select{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.32);color:#fff}
.booking .field-row input::placeholder{color:rgba(255,255,255,.66)}
.location-card{background:#fffaf7;border:1px solid rgba(210,173,104,.28);box-shadow:0 32px 80px rgba(80,52,47,.16)}
.whatsapp-float{background:linear-gradient(135deg,#2f6c4b,#1f4f37)}
@keyframes touchSpark{0%{scale:.2;opacity:.9}100%{scale:1.75;opacity:0}}
@media(max-width:1000px){
  .featured-services{grid-template-columns:repeat(2,1fr)}
  .service-card{min-height:500px}
}
@media(max-width:620px){
  .cursor-glow{width:120px;height:120px;margin:-60px 0 0 -60px;mix-blend-mode:normal}
  .cursor-dot{display:none}
  .hero-media{opacity:.28}
  .hero h1{font-size:clamp(2.42rem,10.8vw,2.9rem)}
  .featured-services{grid-template-columns:1fr}
  .service-card{min-height:455px}
  .service-card-copy{padding:30px 26px 28px}
  .service-card h3{font-size:2.28rem}
  .service-card p{font-size:.88rem}
  .booking{background:linear-gradient(180deg,#6f4d45,#a75d70)}
}

/* Light polish: readable buttons, stable cursor, no heavy dark blocks */
.button,.button:visited,.booking .button,.booking .button:visited,.button-light,.button-light:visited{
  color:#fff!important;
}
.button-light{
  background:linear-gradient(135deg,var(--rose-soft),var(--rose) 54%,var(--rose-deep));
}
.button span,.button b,.button-light span,.button-light b{color:#fff!important}
.cursor-glow{
  width:62px;height:62px;margin:-31px 0 0 -31px;
  background:radial-gradient(circle,rgba(231,164,184,.28),rgba(210,173,104,.14) 42%,transparent 70%);
  mix-blend-mode:normal;
}
.cursor-dot{
  width:8px;height:8px;margin:-4px 0 0 -4px;
  box-shadow:0 0 0 5px rgba(201,111,141,.1);
}
.cursor-hover .cursor-glow{scale:1.08}
.cursor-hover .cursor-dot{scale:1}
.treatments{
  background:linear-gradient(180deg,#fffaf7 0%,#f6e7df 52%,#fff3f5 100%);
  color:var(--ink);
}
.treatments:before{
  background:radial-gradient(circle at 12% 10%,rgba(201,111,141,.13),transparent 26%),radial-gradient(circle at 86% 5%,rgba(210,173,104,.16),transparent 24%),linear-gradient(90deg,rgba(128,96,82,.06) 1px,transparent 1px),linear-gradient(180deg,rgba(128,96,82,.05) 1px,transparent 1px);
  background-size:auto,auto,76px 76px,76px 76px;
  opacity:1;
}
.treatments .section-heading h2,.section-heading h2{
  color:var(--ink);
}
.section-heading h2 em{
  background:linear-gradient(90deg,var(--rose),#bc7280 48%,var(--gold));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.section-heading>p{
  color:#6f5a58;
}
.service-filter span{
  background:rgba(255,250,247,.75);
  border-color:rgba(128,96,82,.18);
  color:#8d5660;
  box-shadow:0 12px 30px rgba(80,52,47,.07);
}
.booking{
  background:linear-gradient(135deg,#fffaf7 0%,#f2e4dc 48%,#fff0f3 100%);
  color:var(--ink);
}
.booking-copy h2,.booking-copy h2 em{
  color:var(--ink);
}
.booking-copy h2 em{
  background:linear-gradient(90deg,var(--rose),var(--gold));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.booking-copy>p:not(.eyebrow){
  color:#6f5a58;
}
.booking .field-row input,.booking .field-row select{
  background:rgba(255,255,255,.74);
  border-color:rgba(128,96,82,.24);
  color:var(--ink);
}
.booking .field-row input::placeholder{color:#9a817c}
.booking-form label span,.form-note{color:#8b6659}
.booking-contact small{color:#9f5363}
.booking-contact a{color:var(--ink)}
.whatsapp-float span,.whatsapp-float b{color:#fff!important}
@media(max-width:620px){
  .cursor-glow{width:96px;height:96px;margin:-48px 0 0 -48px}
  .booking{background:linear-gradient(180deg,#fffaf7,#f2e4dc)}
}

/* Surgical bug fix: keep the previous glamour backgrounds, only improve readability */
.button,.button:visited,.button-light,.button-light:visited,.booking .button,.booking .button:visited{
  color:#fff!important;
}
.button span,.button b,.button-light span,.button-light b{color:#fff!important}
.button-light{
  background:linear-gradient(135deg,var(--rose-soft),var(--rose) 48%,var(--rose-deep))!important;
  border-color:transparent!important;
}
.custom-cursor,.custom-cursor a,.custom-cursor button,.custom-cursor [role="button"]{cursor:auto}
.cursor-glow{
  width:54px;height:54px;margin:-27px 0 0 -27px;
  opacity:.45;
  mix-blend-mode:normal;
}
.cursor-dot{display:none}
.cursor-hover .cursor-glow{scale:1}
.hero{
  height:auto;
  min-height:930px;
  padding-bottom:92px;
}
.hero-copy{padding-top:132px}
.hero-proof{margin-top:48px}
.luxury-strip{
  position:relative;
  z-index:6;
  margin-top:0;
}
.treatments{
  background:linear-gradient(135deg,#49312d 0%,#6f4d45 42%,#a75d70 100%);
  color:#fff8f4;
}
.treatments:before{
  background:linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(180deg,rgba(255,255,255,.05) 1px,transparent 1px),radial-gradient(ellipse at 15% 10%,rgba(244,222,176,.22),transparent 30%);
  background-size:76px 76px,76px 76px,auto;
  opacity:.9;
}
.treatments .section-heading h2{color:#fff8f4}
.treatments .section-heading>p{color:#f0d9d2}
.treatments .service-filter span{
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.22);
  color:#fff3eb;
  box-shadow:none;
}
.booking{
  background:linear-gradient(135deg,#6f4d45 0%,#9f5363 52%,#c96f8d 100%);
  color:#fff;
}
.booking-copy h2{color:#fff8f4}
.booking-copy>p:not(.eyebrow){color:#f4dfdc}
.booking .field-row input,.booking .field-row select{
  background:rgba(255,255,255,.1);
  border-color:rgba(255,255,255,.32);
  color:#fff;
}
.booking .field-row input::placeholder{color:rgba(255,255,255,.66)}
.booking-form label span,.form-note{color:rgba(255,255,255,.74)}
@media(max-width:900px){
  .hero{min-height:850px;padding-bottom:64px}
  .hero-copy{padding-top:112px}
}
@media(max-width:620px){
  .hero{min-height:800px;padding-bottom:56px}
  .hero-copy{padding-top:104px}
  .hero-proof{margin-top:34px}
  .booking{background:linear-gradient(180deg,#6f4d45,#a75d70)}
}

/* Cross-platform icons and touch feedback (iOS + Android) */
.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}
.ui-icon,.line-icon svg{display:block;width:1.2em;height:1.2em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.line-icon{display:flex;align-items:center}
.line-icon svg{width:42px;height:42px;stroke-width:1.25}
.button span,.text-link span{display:inline-flex;align-items:center;justify-content:center}
.quote-controls button{display:grid;place-items:center;padding:0}
.quote-controls .ui-icon{width:19px;height:19px}
.location-details>a{display:grid;place-items:center}
.location-details>a .ui-icon{width:21px;height:21px}
.whatsapp-float b .ui-icon{width:18px;height:18px}
.cursor-glow{opacity:0}
.touch-pop{opacity:1!important;animation:touchSparkMobile .58s cubic-bezier(.2,.7,.3,1) both}
@keyframes touchSparkMobile{
  0%{transform:scale(.18);opacity:.88}
  55%{opacity:.48}
  100%{transform:scale(1.45);opacity:0}
}
@media (hover:none) and (pointer:coarse){
  .cursor-glow{display:block;width:72px;height:72px;margin:-36px 0 0 -36px;background:radial-gradient(circle,rgba(231,164,184,.42),rgba(210,173,104,.2) 42%,transparent 72%);mix-blend-mode:normal}
  .button:active,.service-card:active,.quote-controls button:active,.whatsapp-float:active{transform:scale(.97)}
  .service-card:active .service-card-link b{background:linear-gradient(135deg,var(--rose),var(--gold))}
  .service-card:active .service-image img{transform:scale(1.035)}
}
@media (prefers-reduced-motion:reduce){
  .touch-pop{animation-duration:.01ms}
}
