*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{cursor:pointer;font:inherit;background:0 0;border:none}table{border-collapse:collapse}:root{--bg:#f9f6f2;--white:#fff;--dark:#2c2c2c;--mauve:#8b6f82;--mauve-light:#a68b9a;--text:#2c2c2c;--text-light:#6b6161;--rule:#e0d6cc;--warm-gray:#e8e0d8;--cream:#f5f0eb;--transition:.35s ease;--font-heading:"Cormorant Garamond",Georgia,"Times New Roman",serif;--font-body:"DM Sans",-apple-system,"Segoe UI",Helvetica,Arial,sans-serif}body{font-family:var(--font-body);color:var(--text);background-color:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-top:0;font-size:16px;font-weight:400;line-height:1.7}h1,h2,h3,h4{font-family:var(--font-heading);color:var(--text);letter-spacing:.05em;font-weight:300;line-height:1.15}p{margin-bottom:0}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes heroReveal{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.divider{border:none;border-top:1px solid var(--rule);max-width:1100px;margin:0 auto}.section-rule{border:none;border-top:1px solid var(--rule);margin:0}.demo-banner{z-index:1100;background:var(--dark);color:#fff;text-align:center;font-size:14px;font-family:var(--font-body);letter-spacing:.01em;padding:11px 20px;font-weight:400;line-height:1.5;position:sticky;top:0}.demo-banner a{color:var(--mauve-light);text-underline-offset:3px;transition:color var(--transition);margin-left:8px;font-weight:500;text-decoration:underline}.demo-banner a:hover{color:#c4a8b8}.nav{z-index:1000;-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--rule);background:#f9f6f2eb;justify-content:space-between;align-items:center;height:72px;padding:0 40px;display:flex;position:sticky;top:0}.nav-logo{font-family:var(--font-heading);color:var(--mauve);letter-spacing:.08em;white-space:nowrap;font-size:28px;font-weight:400}.nav-links{align-items:center;gap:36px;display:flex}.nav-links a{font-family:var(--font-body);color:var(--text-light);letter-spacing:.08em;text-transform:uppercase;transition:color var(--transition);font-size:13px;font-weight:400}.nav-links a:hover{color:var(--mauve)}.hamburger{z-index:1001;flex-direction:column;gap:5px;padding:8px;display:none}.hamburger span{background:var(--text);width:24px;height:1.5px;transition:var(--transition);border-radius:1px;display:block}.btn-mauve{background:var(--mauve);color:#fff;font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;transition:background var(--transition),transform .2s ease;white-space:nowrap;padding:12px 32px;font-size:13px;font-weight:500;display:inline-block}.btn-mauve:hover{background:#7a5f72;transform:translateY(-1px)}.btn-mauve:active{transform:translateY(0)}.btn-cream{background:var(--cream);color:var(--dark);font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;transition:background var(--transition),transform .2s ease;padding:16px 48px;font-size:13px;font-weight:500;display:inline-block}.btn-cream:hover{background:#fff;transform:translateY(-1px)}.hero{text-align:center;background:var(--bg);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(600px 400px at 20% 80%,#8b6f820f 0%,#0000 70%),radial-gradient(500px 500px at 80% 20%,#8b6f820a 0%,#0000 70%);position:absolute;inset:0}.hero-inner{z-index:1;padding:60px 32px;animation:1s ease-out both heroReveal;position:relative}.hero-tagline{font-family:var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--mauve);margin-bottom:32px;font-size:13px;font-weight:400}.hero h1{font-family:var(--font-heading);color:var(--text);letter-spacing:.04em;margin-bottom:32px;font-size:clamp(4.5rem,3rem + 8vw,10rem);font-weight:300;line-height:.9}.hero-subtitle{font-family:var(--font-heading);color:var(--text-light);letter-spacing:.03em;margin-bottom:48px;font-size:clamp(1.2rem,1rem + 1vw,1.6rem);font-style:italic;font-weight:300}.section{padding:120px 24px;animation:.6s ease-out both fadeUp}.section-inner{max-width:960px;margin:0 auto}.section h2{font-family:var(--font-heading);text-align:center;color:var(--text);letter-spacing:.06em;margin-bottom:16px;font-size:clamp(2rem,1.5rem + 2.5vw,3.2rem);font-weight:300}.section-subtitle{text-align:center;color:var(--text-light);max-width:520px;margin:0 auto 64px;font-size:1rem;font-weight:300;line-height:1.8}.services-list{max-width:780px;margin:0 auto}.service-category{grid-template-columns:200px 1fr;align-items:start;gap:32px;padding:40px 0;display:grid}.service-category-name h3{font-family:var(--font-heading);color:var(--mauve);letter-spacing:.05em;font-size:1.5rem;font-weight:400;position:sticky;top:100px}.service-items{flex-direction:column;gap:0;display:flex}.service-item{border-bottom:1px solid #e0d6cc80;align-items:baseline;padding:14px 0;display:flex}.service-item:last-child{border-bottom:none}.service-name{color:var(--text);white-space:nowrap;font-size:15px;font-weight:400}.service-dots{border-bottom:1px dotted var(--rule);flex:1;align-self:baseline;min-width:24px;margin:0 12px;position:relative;top:-4px}.service-price{font-family:var(--font-heading);color:var(--mauve);white-space:nowrap;letter-spacing:.02em;font-size:1.1rem;font-weight:400}.team-scroll{scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none;gap:48px;margin:0 -24px;padding:20px 24px 32px;display:flex;overflow-x:auto}.team-scroll::-webkit-scrollbar{display:none}.team-member{scroll-snap-align:start;text-align:center;flex:0 0 280px}.team-photo-wrap{margin-bottom:24px;overflow:hidden}.team-photo{background:var(--warm-gray);width:280px;height:360px;color:var(--text-light);letter-spacing:.05em;justify-content:center;align-items:center;font-size:14px;font-weight:300;transition:transform .5s;display:flex}.team-member:hover .team-photo{transform:scale(1.05)}.team-member h3{font-family:var(--font-heading);color:var(--text);letter-spacing:.04em;margin-bottom:4px;font-size:1.4rem;font-weight:400}.team-role{color:var(--mauve);text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px;font-size:12px;font-weight:500}.team-bio{color:var(--text-light);font-size:14px;font-weight:300;line-height:1.7}.ba-gallery{flex-direction:column;gap:64px;display:flex}.ba-pair{width:100%;max-width:800px;margin:0 auto}.ba-images{grid-template-columns:1fr auto 1fr;align-items:stretch;gap:0;display:grid}.ba-image{justify-content:center;align-items:center;min-height:320px;display:flex;position:relative;overflow:hidden}.ba-before{background:var(--warm-gray)}.ba-after{background:linear-gradient(135deg,#d4c5cb 0%,var(--mauve-light)100%)}.ba-slide-hint{background:var(--white);z-index:2;cursor:col-resize;width:3px;position:relative}.ba-slide-hint:before{content:"";background:var(--white);border-radius:50%;width:36px;height:36px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 2px 12px #0000001f}.ba-slide-hint:after{content:"↔";color:var(--mauve);z-index:3;font-size:16px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ba-label{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--text-light);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffffd9;padding:4px 16px;font-size:11px;font-weight:500;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.ba-caption{text-align:center;font-family:var(--font-heading);color:var(--mauve);letter-spacing:.03em;padding:20px 0 0;font-size:1.1rem;font-style:italic}.booking-cta{background:var(--dark);text-align:center;padding:140px 24px;position:relative}.booking-inner{max-width:640px;margin:0 auto}.booking-eyebrow{font-family:var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--mauve-light);margin-bottom:24px;font-size:12px;font-weight:400}.booking-cta h2{font-family:var(--font-heading);color:var(--cream);letter-spacing:.06em;margin-bottom:20px;font-size:clamp(2rem,1.5rem + 2.5vw,3.2rem);font-weight:300}.booking-desc{color:#f5f0ebb3;max-width:480px;margin:0 auto 48px;font-size:1rem;font-weight:300;line-height:1.8}.section-review{background:var(--white)}.review-spotlight{text-align:center;max-width:640px;margin:64px auto 0;padding:0;position:relative}.review-spotlight:before{content:"“";font-family:var(--font-heading);color:var(--mauve);opacity:.2;margin-bottom:16px;font-size:100px;font-weight:300;line-height:.6;display:block}.review-spotlight blockquote{font-family:var(--font-heading);color:var(--text);letter-spacing:.02em;margin-bottom:32px;font-size:clamp(1.2rem,1rem + 1vw,1.7rem);font-style:italic;font-weight:300;line-height:1.8}.review-stars{color:#c9a96e;letter-spacing:4px;margin-bottom:28px;font-size:18px}.review-author{font-family:var(--font-body);color:var(--mauve);letter-spacing:.08em;text-transform:uppercase;font-size:14px;font-weight:400}.insta-grid{grid-template-columns:repeat(6,1fr);gap:8px;max-width:900px;margin:48px auto 0;display:grid}.insta-placeholder{aspect-ratio:1;background:var(--warm-gray);transition:transform var(--transition),opacity var(--transition)}.insta-placeholder:hover{opacity:.8;transform:scale(1.04)}.insta-handle{font-family:var(--font-heading);color:var(--mauve);text-align:center;letter-spacing:.04em;margin-bottom:8px;font-size:clamp(1.6rem,1.2rem + 2vw,2.4rem);font-style:italic;font-weight:300}.insta-subtitle{text-align:center;color:var(--text-light);font-size:.95rem;font-weight:300}.location-grid{grid-template-columns:1fr 1fr;align-items:start;gap:80px;margin-top:64px;display:grid}.location-grid h3{font-family:var(--font-heading);color:var(--text);letter-spacing:.05em;margin-bottom:24px;font-size:1.5rem;font-weight:400}.hours-table{width:100%}.hours-table th,.hours-table td{text-align:left;border-bottom:1px solid var(--rule);padding:14px 0;font-size:15px;font-weight:300}.hours-table th{color:var(--text);width:40%;font-weight:500}.hours-table td{color:var(--text-light)}.hours-table tr:last-child th,.hours-table tr:last-child td{border-bottom:none}.location-note{color:var(--text-light);margin-top:24px;font-size:14px;font-style:italic;font-weight:300;display:inline-block}.location-info p{color:var(--text-light);margin-bottom:8px;font-size:15px;font-weight:300;line-height:1.9}.location-address{font-family:var(--font-heading);letter-spacing:.03em;font-weight:400;color:var(--mauve)!important;font-size:1.2rem!important;line-height:1.6!important}.location-info a{color:var(--mauve);text-underline-offset:3px;transition:opacity var(--transition);text-decoration:underline}.location-info a:hover{opacity:.6}.demo-cta-bottom{background:var(--dark);text-align:center;padding:100px 24px}.demo-cta-bottom h2{font-family:var(--font-heading);color:var(--cream);letter-spacing:.06em;margin-bottom:16px;font-size:clamp(1.6rem,1.2rem + 2vw,2.4rem);font-weight:300}.demo-cta-bottom p{color:#f5f0eb99;max-width:520px;margin:0 auto 36px;font-size:15px;font-weight:300;line-height:1.8}.demo-cta-bottom .cta-buttons{flex-wrap:wrap;justify-content:center;align-items:center;gap:20px;display:flex}.btn-cream-solid{background:var(--cream);color:var(--dark);font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;transition:background var(--transition),transform .2s ease;padding:14px 36px;font-size:13px;font-weight:500;display:inline-block}.btn-cream-solid:hover{background:#fff;transform:translateY(-1px)}.link-back{color:#f5f0eb99;text-underline-offset:3px;transition:color var(--transition);padding:14px 28px;font-size:14px;text-decoration:underline}.link-back:hover{color:var(--cream)}@media (max-width:1024px){.section{padding:90px 24px}.service-category{grid-template-columns:160px 1fr;gap:24px}.team-scroll{gap:36px}.team-member{flex:0 0 240px}.team-photo{width:240px;height:320px}.location-grid{gap:48px}.ba-image{min-height:260px}.booking-cta{padding:100px 24px}}@media (max-width:768px){.demo-banner{padding:10px 16px;font-size:13px}.nav{height:64px;padding:0 20px}.nav-logo{font-size:24px}.nav-links{background:var(--bg);border-bottom:1px solid var(--rule);z-index:999;flex-direction:column;gap:16px;padding:28px 24px;display:none;position:absolute;top:64px;left:0;right:0}.nav-links.open{display:flex}.nav-links a{padding:8px 0;font-size:14px}.nav>.btn-mauve{display:none}.hamburger{display:flex}.hero{min-height:80vh}.hero-inner{padding:40px 20px}.hero h1{font-size:clamp(3rem,2rem + 6vw,5rem)}.hero-tagline{margin-bottom:24px;font-size:11px}.hero-subtitle{margin-bottom:36px}.section{padding:72px 20px}.section-subtitle{margin-bottom:48px}.service-category{grid-template-columns:1fr;gap:16px;padding:32px 0}.service-category-name h3{text-align:center;border-bottom:1px solid var(--rule);padding-bottom:8px;font-size:1.3rem;position:static}.service-name{white-space:normal;font-size:14px}.service-item{padding:12px 0}.service-price{font-size:1rem}.team-scroll{gap:28px}.team-member{flex:0 0 220px}.team-photo{width:220px;height:290px}.ba-gallery{gap:48px}.ba-images{grid-template-columns:1fr}.ba-slide-hint{width:100%;height:3px}.ba-slide-hint:before{width:28px;height:28px}.ba-slide-hint:after{content:"↕";font-size:13px}.ba-image{min-height:200px}.booking-cta{padding:80px 20px}.btn-cream{text-align:center;width:100%}.review-spotlight:before{font-size:72px}.insta-grid{grid-template-columns:repeat(3,1fr);gap:6px}.location-grid{grid-template-columns:1fr;gap:48px}.demo-cta-bottom{padding:64px 20px}}@media (max-width:480px){.hero h1{font-size:2.8rem}.hero-tagline{letter-spacing:.15em;font-size:10px}.nav{padding:0 16px}.booking-cta h2{font-size:1.6rem}.team-member{flex:0 0 200px}.team-photo{width:200px;height:260px}.ba-image{min-height:180px}}
/*# sourceMappingURL=d7c3e6a9dacebb7a.css.map*/