/* Beauty By Pryncess — a self-contained, responsive static website.
   Colors, typography, and spacing can be edited here. No web-font dependency. */
:root{--plum:#482135;--plum-dark:#321825;--cream:#faf6f0;--paper:#fffdf9;--rose:#e7cbc5;--rose-light:#f1e3dc;--gold:#80592f;--ink:#352a30;--muted:#6b5b62;--line:#dfd2ca;--serif:'GFS Didot','Bodoni MT','Didot','Times New Roman',serif;--sans:'Lato',-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;--max:1240px;--radius:4px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}img{max-width:100%;display:block;height:auto}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}button::-moz-focus-inner{border:0}::selection{background:var(--rose);color:var(--plum)}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;color:var(--plum);line-height:1.06;letter-spacing:-.035em}h1{font-size:clamp(54px,5.6vw,85px)}h2{font-size:clamp(38px,4vw,58px)}h3{font-size:31px}h1 em,h2 em{font-weight:400}p+p{margin-top:18px}p{color:var(--muted)}address{font-style:normal}strong{font-weight:600}svg{flex-shrink:0}.icon{width:21px;height:21px;vertical-align:middle;flex-shrink:0}.container{width:min(var(--max),calc(100% - 96px));margin-inline:auto}.section{padding:100px 0}.eyebrow,.label{font-size:11px;letter-spacing:.19em;line-height:1.6;text-transform:uppercase;font-weight:700;color:var(--gold)}.eyebrow{margin-bottom:20px}.button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:11px;padding:14px 22px;border:1px solid transparent;border-radius:var(--radius);font-size:14px;font-weight:600;letter-spacing:.01em;line-height:1.5;transition:background .2s,border-color .2s,transform .2s;white-space:normal;text-align:center}.button .icon{width:19px;height:19px}.button-primary{background:var(--plum);color:var(--cream)}.button-primary:hover{background:var(--plum-dark);transform:translateY(-2px)}.button-secondary{background:transparent;border-color:var(--line);color:var(--plum)}.button-secondary:hover{border-color:var(--plum);background:var(--paper)}.text-link{display:inline-flex;align-items:center;gap:12px;color:var(--plum);font-size:14px;font-weight:600;line-height:1.5;min-height:40px;padding:6px 0;border:0;background:transparent;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}.text-link .icon{width:18px;height:18px;transition:transform .2s}.text-link:hover .icon{transform:translateX(3px)}.sr-only{position:absolute;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:-100px;left:20px;z-index:100;background:var(--plum);color:white;padding:12px 20px}.skip-link:focus{top:10px}.js-only{display:none}.has-js .js-only{display:flex}[hidden]{display:none!important}
/* Header */
.announcement{background:var(--plum);color:var(--cream);font-size:11px;letter-spacing:.055em;line-height:34px}.announcement .container{display:flex;justify-content:space-between;gap:24px}.announcement a:hover{text-decoration:underline}.site-header{position:sticky;top:0;z-index:40;background:rgba(250,246,240,.98);border-bottom:1px solid rgba(223,210,202,.75)}.header-inner{height:98px;display:flex;align-items:center;gap:30px}.brand{flex-shrink:0}.brand img{width:210px;height:auto}.main-nav{display:flex;gap:25px;align-items:center;margin-left:auto}.main-nav a{font-size:13px;position:relative;padding:13px 0;color:var(--muted);white-space:nowrap}.main-nav a:hover,.main-nav a[aria-current]{color:var(--plum)}.main-nav a[aria-current]:after{content:'';position:absolute;left:0;right:0;bottom:8px;height:1px;background:var(--gold)}.header-cta{min-height:44px;font-size:12px;padding:11px 17px}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);width:44px;height:44px;align-items:center;justify-content:center;color:var(--plum);border-radius:3px}.mobile-booking{display:none}
/* Home hero */
.hero{padding:66px 0 60px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.hero-copy{padding-bottom:17px}.hero-copy>.eyebrow{display:flex;gap:12px;align-items:center}.hero-copy>.eyebrow:before{content:'';display:block;height:1px;width:30px;background:var(--gold)}.hero h1{font-size:clamp(76px,7vw,105px);letter-spacing:-.052em;line-height:1.0}.hero h1 em{color:#825064}.hero-intro{font-size:17px;max-width:407px;margin-top:27px;line-height:1.8}.hero-actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin-top:32px}.owner-line{display:flex;gap:13px;align-items:center;margin-top:38px;padding-top:23px;border-top:1px solid var(--line);font-size:11px;color:var(--muted);line-height:1.9;max-width:405px;letter-spacing:.015em}.owner-line strong{color:var(--plum);font-weight:500}.owner-initials{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:100%;background:var(--rose-light);color:var(--plum);font-family:var(--serif);font-size:20px;flex-shrink:0}.hero-art{height:556px;position:relative}.hero-main-photo{position:absolute;width:78%;height:490px;right:16px;top:0;overflow:hidden;border-radius:235px 235px 5px 5px}.hero-main-photo img{width:100%;height:100%;object-fit:cover;object-position:52% center}.hero-backdrop{position:absolute;width:77%;height:470px;right:-7px;top:22px;background:var(--rose-light);border-radius:250px 250px 8px 8px}.hero-inset-photo{position:absolute;width:42%;height:244px;left:0;bottom:0;border:8px solid var(--cream);border-radius:130px 130px 5px 5px;overflow:hidden;box-shadow:0 10px 30px #48213516}.hero-inset-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}.hero-sparkle{position:absolute;left:0;top:33px;color:var(--gold);transform:rotate(15deg)}.hero-sparkle .icon{width:59px;height:59px;stroke-width:.8}.hero-side-note{position:absolute;left:10px;top:132px;font-size:9px;line-height:1.9;color:var(--plum);letter-spacing:.18em;writing-mode:vertical-rl}.hero-seal{position:absolute;right:20px;bottom:0;width:106px;height:106px;border-radius:50%;background:var(--cream);border:1px solid var(--gold);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0}.hero-seal img{height:48px;width:48px}.hero-seal span{color:var(--plum);font-size:8px;letter-spacing:.13em;text-align:center;line-height:1.7}.service-ribbon{background:var(--plum);color:var(--cream);padding:21px 0}.service-ribbon .container{display:flex;justify-content:space-between;align-items:center;gap:20px}.service-ribbon span{font-size:10px;letter-spacing:.17em;white-space:nowrap}.service-ribbon .icon{width:17px;height:17px;stroke-width:1;color:#d6b780}
/* Reusable content sections */
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:43px}.section-heading>div:last-child{max-width:310px}.section-heading>p{max-width:330px}.section-heading .text-link{margin-top:13px}.section-heading h2{font-size:50px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.service-image{display:block;position:relative;overflow:hidden;border-radius:4px;aspect-ratio:1.17}.service-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.service-image:hover img{transform:scale(1.045)}.image-arrow{position:absolute;bottom:15px;right:15px;display:flex;width:40px;height:40px;align-items:center;justify-content:center;background:var(--cream);color:var(--plum);border-radius:50%;box-shadow:0 2px 10px #48213512}.card-title{display:flex;gap:13px;align-items:center;margin-top:22px}.service-number{font-size:10px;letter-spacing:.12em;color:var(--gold);padding-top:4px}.card-title h3{font-size:27px;letter-spacing:-.025em}.service-card p{font-size:14px;line-height:1.85;margin-top:15px}.service-card>.text-link{margin-top:14px}.spa-note{display:flex;align-items:center;gap:17px;border-top:1px solid var(--line);padding-top:25px;margin-top:38px;font-size:13px}.spa-note>.icon{color:var(--gold);width:23px;height:23px}.spa-note a{display:flex;align-items:center;gap:8px;margin-left:auto;white-space:nowrap;color:var(--plum)}.spa-note a:hover{text-decoration:underline}.brand-story{background:var(--plum);color:var(--cream);padding:83px 0;position:relative;overflow:hidden}.brand-story h2{color:var(--cream);font-size:74px}.brand-story .eyebrow{color:#dbc39e}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.story-grid>div:first-child{position:relative}.story-grid p{color:#e6d8de;font-size:15px}.story-grid .story-lead{font-family:var(--serif);color:var(--cream);font-size:31px;line-height:1.3;letter-spacing:-.02em;margin:8px 0 25px}.story-crown{position:absolute;right:10px;bottom:0;opacity:.6}.story-grid .light-link{color:var(--cream);margin-top:25px}.mood-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.mood-tile:nth-child(even){padding-top:34px}.mood-tile>div{aspect-ratio:.88;overflow:hidden;border-radius:140px 140px 3px 3px}.mood-tile img{width:100%;height:100%;object-fit:cover;transition:transform .55s}.mood-tile:hover img{transform:scale(1.04)}.mood-tile>span{display:flex;justify-content:space-between;align-items:center;font-size:12px;margin-top:15px;color:var(--plum);gap:8px}.mood-tile>span .icon{width:15px;height:15px}.start-conversation{background:var(--rose-light)}.conversation-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:100px;align-items:center}.conversation-grid>div>p:not(.eyebrow){max-width:490px;margin-top:23px}.conversation-grid h2{font-size:53px}.three-steps{margin:28px 0 31px}.three-steps>div{display:flex;gap:20px;padding:15px 0;border-bottom:1px solid #d3bcb2}.three-steps>div>span{padding-top:3px;flex-shrink:0;color:var(--gold);font-size:11px;letter-spacing:.15em}.three-steps p{font-size:14px;line-height:1.9}.three-steps strong{color:var(--plum)}.contact-feature{padding:38px 32px;background:var(--cream);border:1px solid #d7c0b4;text-align:center;border-radius:230px 230px 4px 4px;position:relative}.contact-feature>img{margin:0 auto 10px}.contact-feature .eyebrow{font-size:10px;margin-bottom:14px}.contact-feature h3{font-size:52px;letter-spacing:-.04em}.feature-phone{display:block;font-size:25px;color:var(--plum);margin:20px 0 23px;letter-spacing:.025em}.feature-location{display:flex;align-items:flex-start;gap:11px;justify-content:center;border-top:1px solid var(--line);padding-top:25px;margin-top:30px;font-size:13px;color:var(--muted)}.feature-location .icon{width:18px;height:18px;margin-top:3px;color:var(--gold)}.contact-feature .text-link{font-size:12px;margin-top:12px}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.faq-grid>div:first-child>.text-link{margin-top:23px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;font-size:15px;font-weight:600;line-height:1.7;padding:23px 0;display:flex;align-items:center;justify-content:space-between;gap:25px;color:var(--plum)}summary::-webkit-details-marker{display:none}summary .icon{width:18px;height:18px;transition:transform .25s}details[open] summary .icon{transform:rotate(45deg)}.faq-answer{padding:0 25px 25px 0;font-size:14px;line-height:1.9}.faq-answer a{text-decoration:underline}.closing-cta{background:var(--rose-light);padding:68px 0}.closing-cta>.container{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.closing-cta h2{font-size:60px}.closing-cta p:not(.eyebrow){max-width:350px;margin-bottom:23px}.closing-cta .text-link{display:flex;max-width:max-content;margin-top:15px}
/* Internal pages */
.breadcrumb{display:flex;gap:11px;align-items:center;font-size:10px;color:var(--muted);padding-top:28px;letter-spacing:.03em}.breadcrumb a:hover{text-decoration:underline}.breadcrumb span[aria-hidden]{color:var(--gold)}.page-intro{display:grid;grid-template-columns:1.5fr 1fr;gap:70px;align-items:end;padding-top:46px;padding-bottom:55px}.page-intro>.eyebrow{grid-column:1/-1}.page-intro>p{max-width:390px;font-size:16px;padding-bottom:6px}.page-intro h1{font-size:clamp(57px,5.5vw,78px);letter-spacing:-.045em}.service-jump{display:flex;justify-content:space-between;gap:18px;padding:21px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:70px;flex-wrap:wrap}.service-jump a{display:flex;align-items:center;gap:15px;font-size:13px;color:var(--plum)}.service-jump a .icon{width:15px;height:15px}.service-jump a:hover{text-decoration:underline}.service-details{padding-bottom:25px}.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;margin-bottom:90px;scroll-margin-top:120px}.service-detail:nth-child(even) .service-detail-image{order:2}.service-detail-image{aspect-ratio:1.04;background:var(--rose-light);border-radius:3px;overflow:hidden}.service-detail-image>img{width:100%;height:100%;object-fit:cover}.service-detail-copy h2{font-size:49px;line-height:1.1}.service-detail-copy>p:not(.eyebrow){margin-top:24px;font-size:15px;line-height:1.9}.service-options{list-style:none;padding:0;margin:23px 0 29px;font-size:13px;color:var(--plum)}.service-options li{display:flex;gap:12px;align-items:center;padding:7px 0}.service-options .icon{width:15px;height:15px;color:var(--gold)}.spa-art{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;background:radial-gradient(ellipse at 15% 10%,#fff8ed 0,transparent 65%),var(--rose-light)}.spa-art p{font:53px/1.07 var(--serif);color:var(--plum);margin-top:15px;letter-spacing:-.04em}.spa-art>span{font-size:10px;letter-spacing:.25em;color:var(--gold);margin-top:24px}.service-consult{background:var(--plum);padding:58px 0}.service-consult>.container{display:flex;gap:70px;justify-content:space-between;align-items:center}.service-consult .eyebrow{color:#d6b780}.service-consult h2{color:var(--cream);font-size:44px}.service-consult p:not(.eyebrow){color:#e6d8de;max-width:670px;margin-top:20px}.service-consult .button{background:var(--cream);color:var(--plum);white-space:nowrap}.about-grid{display:grid;grid-template-columns:1fr 1.08fr;gap:80px;align-items:center;padding-bottom:100px}.about-brand-panel{background:var(--rose-light);padding:58px 27px;min-height:525px;border-radius:260px 260px 4px 4px;display:flex;align-items:center;justify-content:center}.about-brand-panel img{max-width:94%;height:auto}.about-copy h2{font-size:43px}.about-copy>p:not(.eyebrow){margin-top:23px;font-size:15px;line-height:1.9}.about-copy .button{margin-top:28px}.values-section{background:var(--paper)}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.values-grid article{border-top:1px solid var(--line);padding-top:23px}.values-grid article>span{font-size:10px;letter-spacing:.15em;color:var(--gold);display:block;margin-bottom:21px}.values-grid h3{font-size:34px;margin-bottom:18px}.values-grid p{font-size:14px;line-height:1.9}.about-location{text-align:center;padding:90px 0}.about-location>div{display:flex;align-items:center;justify-content:center;gap:9px;font-size:10px;letter-spacing:.2em;color:var(--gold);margin-bottom:24px}.about-location h2{font-size:60px}.about-location>p{margin:24px 0 16px;font-size:16px}.lookbook-section{padding-bottom:100px}.lookbook-filters{gap:12px;margin-bottom:40px;flex-wrap:wrap}.lookbook-filters button{background:transparent;border:1px solid var(--line);border-radius:30px;color:var(--plum);font-size:12px;padding:10px 20px;min-height:43px}.lookbook-filters button[aria-pressed=true]{background:var(--plum);color:var(--cream);border-color:var(--plum)}.lookbook-filters button:hover{border-color:var(--plum)}.lookbook-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 26px}.lookbook-open{display:block;position:relative;aspect-ratio:.92;overflow:hidden;border-radius:3px}.lookbook-open img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.lookbook-open:hover img{transform:scale(1.035)}.lookbook-item figcaption{display:flex;flex-direction:column;gap:3px;padding-top:16px}.lookbook-item figcaption>span:first-child{font:25px/1.3 var(--serif);color:var(--plum);letter-spacing:-.02em}.lookbook-category{font-size:9px;letter-spacing:.16em;color:var(--gold)}.lookbook-note{background:var(--rose-light);border-radius:200px 200px 3px 3px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px 28px 35px;min-height:410px}.lookbook-note h2{font-size:40px;margin-top:3px}.lookbook-note p{font-size:13px;margin-top:21px;max-width:240px}.lookbook-note .text-link{margin-top:16px}.gallery-dialog{padding:16px;background:var(--cream);max-width:min(640px,92vw);max-height:92dvh;width:fit-content;border:0;border-radius:5px;overflow:auto;box-shadow:0 20px 80px #0005}.gallery-dialog>img{max-height:70dvh;width:auto;max-width:100%;object-fit:contain}.gallery-dialog .dialog-close{background:var(--cream);top:25px;right:25px;box-shadow:0 3px 15px #0002}.gallery-controls{display:flex;align-items:center;justify-content:space-between;padding-top:12px;gap:10px}.gallery-controls button{display:flex;justify-content:center;align-items:center;border:1px solid var(--line);background:transparent;color:var(--plum);width:44px;height:44px;border-radius:50%;flex-shrink:0}.gallery-controls p{color:var(--plum);font-size:14px;text-align:center}
/* Booking */
.booking-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:90px;padding-bottom:95px;align-items:start;scroll-margin-top:130px}.booking-copy{padding-top:28px}.booking-copy h2{font-size:68px}.booking-copy>p:not(.eyebrow){margin-top:23px;max-width:425px;line-height:1.9}.booking-phone{display:block;color:var(--plum);font-size:32px;letter-spacing:.02em;line-height:1.3;margin:29px 0 19px}.booking-copy>.button{margin-bottom:31px}.booking-detail{display:flex;gap:17px;padding:26px 0;border-top:1px solid var(--line)}.booking-detail>.icon{margin-top:5px;color:var(--gold);width:22px;height:22px}.booking-detail h3{font:600 14px/1.6 var(--sans);letter-spacing:0;margin-bottom:7px}.booking-detail address,.booking-detail p{font-size:14px;color:var(--muted)}.booking-detail .text-link{font-size:12px;margin-top:10px}.desktop-qr{display:flex;gap:17px;align-items:center;margin-top:10px}.desktop-qr p{font-size:12px;line-height:1.8}.desktop-qr p strong{color:var(--plum)}.appointment-card{background:var(--paper);border:1px solid var(--line);padding:35px;border-radius:7px;box-shadow:0 12px 32px #48213506}.step-pill{display:inline-block;font-size:9px;letter-spacing:.15em;background:var(--rose-light);color:var(--plum);padding:6px 10px;border-radius:20px;margin-bottom:18px}.form-heading h2{font-size:37px}.form-heading p{font-size:14px;margin-top:14px;max-width:385px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px;margin:26px 0}.full-width{grid-column:1/-1}fieldset{border:0;padding:0;margin:0;min-width:0}label{display:block;font-size:12px;color:var(--plum);font-weight:600;margin-bottom:9px}.optional{font-weight:400;color:var(--muted);font-size:10px}input,select,textarea{display:block;width:100%;max-width:100%;border:1px solid #d5c7be;border-radius:3px;background:var(--cream);color:var(--ink);padding:12px 13px;font-size:14px;line-height:1.6;min-height:47px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#75656d;opacity:1}select{padding-right:25px}input[type=date]{min-width:0}input:focus,select:focus,textarea:focus{border-color:var(--plum)}.form-prepare{width:100%}.small-note{font-size:11px;line-height:1.9;color:var(--muted);margin-top:17px}.noscript-note{font-size:14px;margin-top:20px;padding:14px;background:var(--rose-light)}.noscript-note a{text-decoration:underline}.prepared-message{margin-top:26px;padding-top:27px;border-top:1px solid var(--line)}.prepared-message h3{font-size:30px;margin-bottom:18px}.prepared-message textarea{font-size:13px;line-height:1.8;background:var(--cream)}.prepared-actions{display:flex;gap:10px;margin-top:15px;flex-wrap:wrap}.prepared-actions .button{font-size:12px;padding:12px 15px}.status{font-size:12px;color:var(--plum);min-height:0}.status:not(:empty){margin-top:14px}.visit-address-band{background:var(--rose-light);padding:65px 0}.visit-address-band>.container{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px}.visit-address-band h2{font-size:56px}.visit-address-band address{font-size:20px;color:var(--plum);margin-bottom:24px}.visit-address-band .button{border-color:#b8998b}.visit-address-band .text-link{margin-left:24px}
/* Dialogs */
dialog::backdrop{background:rgba(33,16,25,.68);backdrop-filter:blur(4px)}.text-dialog{padding:0;border:1px solid var(--line);border-radius:8px;background:var(--cream);color:var(--ink);width:min(570px,calc(100vw - 30px));max-height:90dvh;box-shadow:0 25px 100px #0004}.dialog-content{padding:39px}.dialog-close{position:absolute;right:13px;top:13px;display:flex;align-items:center;justify-content:center;width:37px;height:37px;background:transparent;border:1px solid var(--line);border-radius:50%;color:var(--plum);z-index:2}.dialog-content .eyebrow{font-size:9px;padding-right:16px}.dialog-content h2{font-size:40px;margin-bottom:18px}.dialog-content>p{font-size:14px}.qr-row{display:flex;gap:25px;align-items:center;margin:25px 0}.qr-row .label{font-size:9px}.dialog-number{font-size:23px;color:var(--plum);margin-top:5px!important;white-space:nowrap}.qr-row .text-link{font-size:12px}.dialog-content textarea{font-size:13px}.dialog-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:19px}.dialog-actions .button{font-size:12px;padding:11px 14px}.dialog-content>.small-note{font-size:11px}.dialog-content>.status{font-size:12px}
/* Footer and miscellaneous */
.site-footer{background:var(--plum-dark);color:#e7dbe1;padding:60px 0 0}.footer-main{display:grid;grid-template-columns:1.25fr 1fr 1.1fr 1fr;gap:38px;padding-bottom:48px}.footer-brand img{width:220px;height:auto}.footer-brand .footer-slogan{font-family:var(--serif);font-size:23px;color:var(--cream);line-height:1.4;margin:14px 0}.footer-brand p{font-size:11px;color:#cdbbc4;line-height:1.9}.footer-main h2{font:600 10px/1.6 var(--sans);letter-spacing:.11em;color:var(--cream);text-transform:uppercase;margin:9px 0 22px}.footer-main>div:not(:first-child)>a{display:flex;align-items:center;gap:7px;font-size:12px;margin:9px 0;color:#dfd1d8;line-height:1.8}.footer-main>div>a:hover{text-decoration:underline;text-underline-offset:5px}.footer-main .icon{width:14px;height:14px}.footer-main address,.footer-main>div>p{font-size:12px;color:#cdbbc4;line-height:1.9}.footer-main>div>.footer-phone{font-size:21px;color:var(--cream);letter-spacing:.02em}.footer-directions{margin-top:17px!important}.footer-bottom{display:flex;align-items:center;gap:28px;padding:22px 0;border-top:1px solid #634453;color:#cdbbc4;font-size:10px;line-height:1.8}.site-credit{margin-left:auto;color:var(--cream)}.footer-bottom a:hover{text-decoration:underline}.privacy-content{max-width:800px;padding-top:48px;padding-bottom:90px}.privacy-content h1{font-size:75px}.privacy-date{font-size:12px;margin:23px 0 38px}.privacy-content h2{font-size:30px;margin:34px 0 18px}.privacy-content p{font-size:15px;line-height:1.95}.privacy-content p a{text-decoration:underline}.privacy-content>.text-link{margin-top:28px}.not-found{padding:100px 0 120px;max-width:950px}.not-found p:not(.eyebrow){margin-top:25px}.not-found h1{font-size:80px}
/* Tablet */
@media(min-width:1500px){.hero{padding-top:80px;padding-bottom:75px}}
@media(max-width:1160px){.container{width:calc(100% - 64px)}.header-inner{gap:20px;height:90px}.brand img{width:185px}.main-nav{gap:18px}.main-nav a{font-size:12px}.header-cta{font-size:11px;padding:10px 14px}.hero-grid{gap:20px}.hero h1{font-size:83px}.hero-art{height:500px}.hero-main-photo{height:446px;right:12px}.hero-backdrop{height:430px;right:-3px}.hero-inset-photo{height:210px}.hero-side-note{left:4px}.hero-seal{width:91px;height:91px;right:15px}.hero-seal img{height:38px;width:38px}.hero-seal span{font-size:7px}.hero-actions{gap:20px}.hero-actions .button{font-size:12px;padding:13px 16px}.hero-actions .text-link{font-size:12px}.service-ribbon span{font-size:8px}.services-grid{gap:23px}.card-title h3{font-size:25px}.story-grid,.conversation-grid,.faq-grid,.closing-cta>.container{gap:60px}.story-crown{width:70px;right:-12px}.conversation-grid h2{font-size:46px}.contact-feature{padding:35px 25px}.contact-feature .button{font-size:12px}.service-detail,.about-grid,.booking-grid{gap:55px}.service-detail-copy h2{font-size:43px}.about-copy h2{font-size:37px}.about-brand-panel{min-height:460px}.booking-copy h2{font-size:60px}.appointment-card{padding:28px}.form-grid{gap:20px 12px}.footer-main{gap:25px}.footer-main h2{font-size:9px}.footer-brand img{width:185px}.footer-main>div>.footer-phone{font-size:18px}.page-intro{gap:40px}.lookbook-grid{gap:33px 22px}.lookbook-note h2{font-size:34px}.lookbook-note{padding:28px 18px;min-height:0}}
@media(max-width:920px){.header-cta{display:none}.main-nav{margin-left:auto}.hero h1{font-size:72px}.hero-intro{font-size:15px}.hero-art{height:475px}.hero-main-photo{height:419px;width:80%;right:9px}.hero-backdrop{height:410px;width:80%}.hero-inset-photo{height:190px;width:46%;left:-6px}.hero-sparkle .icon{width:44px;height:44px}.hero-side-note{font-size:8px;left:0}.hero-actions{gap:12px;align-items:flex-start;flex-direction:column;margin-top:24px}.owner-line{font-size:10px;margin-top:22px;padding-top:18px;gap:9px}.owner-initials{width:36px;height:36px;font-size:17px}.section{padding:75px 0}.section-heading{gap:35px}.section-heading h2{font-size:42px}.section-heading>div:last-child{max-width:230px}.section-heading>div:last-child p{font-size:14px}.card-title{gap:9px}.card-title h3{font-size:22px}.service-card p{font-size:13px}.spa-note{font-size:11px;gap:10px}.brand-story h2{font-size:64px}.story-grid{gap:48px}.story-grid .story-lead{font-size:28px}.story-crown{position:static;margin-top:22px}.story-grid p{font-size:14px}.mood-grid{gap:14px}.mood-tile>span{font-size:10px}.mood-tile>span .icon{width:13px;height:13px}.conversation-grid{gap:40px;grid-template-columns:1.1fr .9fr}.conversation-grid h2{font-size:40px}.conversation-grid>div>p:not(.eyebrow){font-size:14px}.contact-feature{padding:30px 18px}.contact-feature h3{font-size:45px}.feature-phone{font-size:23px}.contact-feature .button{font-size:11px;padding:12px 11px}.feature-location{font-size:11px;gap:6px}.three-steps p{font-size:13px}.three-steps>div{gap:13px}.faq-grid{gap:45px}.faq-grid h2{font-size:43px}summary{font-size:13px}.page-intro{grid-template-columns:1.4fr 1fr;gap:30px}.page-intro h1{font-size:57px}.page-intro>p{font-size:14px}.service-jump{gap:12px}.service-jump a{font-size:11px;gap:8px}.service-detail{gap:40px;margin-bottom:68px}.service-detail-copy h2{font-size:36px}.service-detail-copy>p:not(.eyebrow){font-size:14px}.service-options{font-size:12px}.service-detail-copy .button{font-size:12px}.spa-art p{font-size:44px}.service-consult>.container{gap:40px}.service-consult p:not(.eyebrow){font-size:14px}.service-consult h2{font-size:39px}.closing-cta>.container{gap:45px}.closing-cta h2{font-size:49px}.closing-cta p:not(.eyebrow){font-size:14px}.closing-cta .button{font-size:12px}.about-grid{gap:38px}.about-copy h2{font-size:34px}.about-copy>p:not(.eyebrow){font-size:14px}.about-brand-panel{min-height:420px}.values-grid{gap:25px}.values-grid h3{font-size:29px}.values-grid p{font-size:13px}.lookbook-grid{gap:29px 19px}.lookbook-item figcaption>span:first-child{font-size:22px}.lookbook-note h2{font-size:30px}.lookbook-note p{font-size:12px;margin-top:15px}.lookbook-note>img{width:63px;height:63px}.lookbook-note .text-link{font-size:11px}.booking-grid{gap:35px;grid-template-columns:1fr 1.2fr}.booking-copy h2{font-size:56px}.booking-copy>p:not(.eyebrow){font-size:14px}.booking-phone{font-size:26px}.booking-copy .button{font-size:12px}.appointment-card{padding:22px}.form-heading h2{font-size:32px}.form-grid{grid-template-columns:1fr;gap:18px}.desktop-qr{gap:10px}.desktop-qr>img{width:86px;height:86px}.desktop-qr p{font-size:11px}.visit-address-band>.container{gap:50px}.visit-address-band h2{font-size:47px}.visit-address-band address{font-size:17px}.visit-address-band .text-link{display:flex;margin:15px 0 0;max-width:max-content}.footer-main{grid-template-columns:1fr 1fr;gap:35px 70px}.footer-main h2{margin-top:6px}.footer-main>div>.footer-phone{font-size:22px}}
/* Mobile */
@media(max-width:680px){html{scroll-padding-top:95px}.container{width:calc(100% - 40px)}.announcement{font-size:9px;line-height:31px}.announcement .container{justify-content:center}.announcement .container>span{display:none}.header-inner{height:auto;min-height:79px;flex-wrap:wrap;gap:0;padding:7px 0}.brand img{width:177px}.has-js .menu-toggle{display:flex;margin-left:auto}.main-nav{flex-basis:100%;margin:8px 0 4px;justify-content:space-between;gap:12px;flex-wrap:wrap}.main-nav a{padding:9px 0;font-size:12px}.has-js .main-nav{display:none}.has-js .main-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid var(--line);padding:9px 0}.has-js .main-nav.is-open a{padding:12px 5px;font-size:14px}.main-nav a[aria-current]:after{display:none}.main-nav a[aria-current]{font-weight:700}.hero{padding:35px 0 36px}.hero-grid{grid-template-columns:1fr;gap:29px}.hero-copy{padding:0}.hero-copy>.eyebrow{font-size:9px;letter-spacing:.17em;margin-bottom:17px}.hero h1{font-size:clamp(62px,16vw,96px);line-height:1;letter-spacing:-.04em}.hero-intro{font-size:15px;line-height:1.8;max-width:420px;margin-top:20px}.hero-actions{flex-direction:row;align-items:center;gap:12px 21px;margin-top:23px}.hero-actions .button{font-size:12px;min-height:49px;padding:12px 15px}.hero-actions .text-link{font-size:12px}.owner-line{margin-top:23px;max-width:none;font-size:10px;padding-top:18px;gap:12px;line-height:1.9}.owner-initials{width:37px;height:37px}.hero-art{height:440px;max-width:490px;width:100%;margin:0 auto}.hero-main-photo{width:79%;height:388px;right:9px}.hero-backdrop{width:78%;height:380px;right:-4px;top:18px}.hero-inset-photo{left:0;width:43%;height:200px;border-width:6px}.hero-sparkle{left:8px;top:15px}.hero-sparkle .icon{width:44px;height:44px}.hero-side-note{left:10px;top:105px;font-size:8px}.hero-seal{width:86px;height:86px;bottom:6px;right:17px}.hero-seal img{height:37px;width:37px}.service-ribbon{padding:17px 0}.service-ribbon .container{justify-content:center;gap:13px;flex-wrap:wrap}.service-ribbon span{font-size:8px;letter-spacing:.12em}.service-ribbon .icon{width:13px;height:13px}.service-ribbon .icon:nth-of-type(3),.service-ribbon span:last-child{display:none}.section{padding:57px 0}.section-heading{display:block;margin-bottom:28px}.section-heading h2{font-size:39px}.eyebrow{font-size:9px;margin-bottom:15px;letter-spacing:.18em}.section-heading>div:last-child{max-width:100%}.section-heading>div:last-child:not(:first-child){margin-top:18px}.section-heading>p{margin-top:20px;font-size:14px}.section-heading>.text-link{margin-top:20px}.services-grid{grid-template-columns:1fr;gap:37px}.service-image{aspect-ratio:1.35}.service-card p{font-size:14px;line-height:1.85;margin-top:12px}.card-title h3{font-size:30px}.card-title{margin-top:20px;gap:13px}.service-card>.text-link{margin-top:13px}.spa-note{flex-wrap:wrap;align-items:flex-start;font-size:12px;gap:10px;padding-top:23px;margin-top:32px}.spa-note>p{flex:1}.spa-note>a{margin-left:33px;flex-basis:calc(100% - 33px);font-size:12px}.brand-story{padding:55px 0}.story-grid{grid-template-columns:1fr;gap:23px}.brand-story h2{font-size:66px}.story-crown{position:absolute;right:20px;bottom:8px;width:74px;height:74px;margin:0}.story-grid .story-lead{font-size:29px;line-height:1.3;margin:5px 0 23px}.story-grid p{font-size:14px;line-height:1.9}.story-grid .light-link{margin-top:20px;font-size:13px}.mood-grid{grid-template-columns:1fr 1fr;gap:24px 14px}.mood-tile:nth-child(even){padding-top:26px}.mood-tile>span{font-size:11px;gap:4px;margin-top:11px}.mood-tile>div{aspect-ratio:.89}.conversation-grid{grid-template-columns:1fr;gap:42px}.conversation-grid h2{font-size:43px}.conversation-grid>div>p:not(.eyebrow){margin-top:21px}.three-steps{margin:22px 0 25px}.three-steps>div{padding:14px 0;gap:16px}.three-steps p{font-size:13px}.conversation-grid>div>.button{font-size:13px;width:100%}.contact-feature{padding:35px 27px 30px;max-width:410px;width:100%;margin:auto;border-radius:240px 240px 4px 4px}.contact-feature h3{font-size:53px}.contact-feature .button{font-size:13px;padding:13px 17px}.feature-phone{font-size:27px}.feature-location{font-size:13px}.contact-feature .text-link{font-size:13px}.faq-grid{grid-template-columns:1fr;gap:28px}.faq-grid h2{font-size:43px}.faq-grid>div:first-child>.text-link{margin-top:16px}summary{font-size:14px;padding:22px 0;gap:18px}.faq-answer{font-size:13px;padding-right:13px}.closing-cta{padding:54px 0}.closing-cta>.container{grid-template-columns:1fr;gap:25px}.closing-cta h2{font-size:53px}.closing-cta .button{font-size:13px}.closing-cta p:not(.eyebrow){margin-bottom:20px}.closing-cta .text-link{font-size:12px}.breadcrumb{padding-top:22px;font-size:10px}.page-intro{grid-template-columns:1fr;gap:23px;padding-top:32px;padding-bottom:34px}.page-intro h1{font-size:clamp(48px,12vw,70px);letter-spacing:-.035em}.page-intro>p{font-size:14px;max-width:100%;line-height:1.9}.service-jump{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-bottom:34px;padding:10px 0}.service-jump a{font-size:11px;padding:11px 8px 11px 0;gap:6px}.service-jump a .icon{width:13px;height:13px}.service-detail{grid-template-columns:1fr;gap:25px;margin-bottom:49px}.service-detail:nth-child(even) .service-detail-image{order:0}.service-detail-image{aspect-ratio:1.2}.service-detail-copy h2{font-size:42px}.service-detail-copy>p:not(.eyebrow){margin-top:19px;line-height:1.9}.service-options{margin:18px 0 24px;font-size:13px}.service-detail-copy .button{font-size:13px}.spa-art p{font-size:45px;margin-top:8px}.spa-art>img{width:88px;height:88px}.spa-art>span{margin-top:19px;font-size:9px}.service-details{padding-bottom:5px}.service-consult{padding:44px 0}.service-consult>.container{display:block}.service-consult h2{font-size:40px}.service-consult .button{margin-top:25px}.about-grid{grid-template-columns:1fr;gap:34px;padding-bottom:54px}.about-brand-panel{min-height:0;padding:32px 30px;max-width:440px;width:100%;margin:auto}.about-brand-panel img{max-width:100%}.about-copy h2{font-size:41px}.about-copy>p:not(.eyebrow){font-size:14px;margin-top:20px}.about-copy .button{margin-top:25px}.values-grid{grid-template-columns:1fr;gap:29px}.values-grid article{padding-top:20px}.values-grid article>span{margin-bottom:17px}.values-grid h3{font-size:33px;margin-bottom:15px}.values-grid p{font-size:14px}.about-location{padding:56px 0}.about-location h2{font-size:51px}.about-location>div{font-size:9px}.about-location>p{font-size:14px}.lookbook-section{padding-bottom:57px}.lookbook-filters{gap:8px;margin-bottom:27px}.lookbook-filters button{font-size:11px;padding:9px 13px;min-height:41px}.lookbook-grid{grid-template-columns:1fr 1fr;gap:26px 14px}.lookbook-item figcaption{padding-top:12px;gap:5px}.lookbook-item figcaption>span:first-child{font-size:21px;line-height:1.15}.lookbook-category{font-size:7px;letter-spacing:.12em}.lookbook-open{aspect-ratio:.86}.lookbook-note{padding:19px 13px;min-height:280px}.lookbook-note h2{font-size:29px}.lookbook-note p{font-size:10px;line-height:1.8;margin-top:13px}.lookbook-note>img{width:55px;height:55px}.lookbook-note .text-link{font-size:10px;gap:5px;margin-top:12px}.lookbook-note .text-link .icon{width:15px;height:15px}.booking-grid{grid-template-columns:1fr;gap:34px;padding-bottom:55px}.booking-copy{padding-top:0}.booking-copy h2{font-size:56px}.booking-copy>p:not(.eyebrow){font-size:14px;margin-top:20px}.booking-phone{font-size:29px;margin:23px 0 18px}.booking-copy>.button{font-size:13px;margin-bottom:26px}.booking-detail{padding:21px 0;gap:14px}.booking-detail h3{font-size:13px}.booking-detail address,.booking-detail p{font-size:13px}.desktop-qr{display:none}.appointment-card{padding:25px 21px}.form-heading h2{font-size:36px}.form-heading p{font-size:13px}.form-grid{grid-template-columns:1fr;gap:21px;margin:24px 0}input,select,textarea{font-size:16px;padding:12px;min-height:48px}label{font-size:12px}.optional{font-size:11px}.prepared-message textarea{font-size:14px}.prepared-actions{gap:10px}.prepared-actions>.button{flex:1 1 auto;min-height:48px;font-size:12px}.small-note{font-size:11px}.visit-address-band{padding:48px 0}.visit-address-band>.container{grid-template-columns:1fr;gap:27px}.visit-address-band h2{font-size:48px}.visit-address-band address{font-size:17px}.visit-address-band .text-link{display:inline-flex;margin-left:17px;font-size:12px}.visit-address-band .button{font-size:12px}.dialog-content{padding:39px 23px 25px}.dialog-content h2{font-size:36px}.dialog-content>p{font-size:13px}.dialog-content .eyebrow{font-size:8px;padding-right:17px}.qr-row{gap:13px;margin:23px 0}.qr-row>img{width:100px;height:100px}.dialog-number{font-size:21px}.dialog-actions{flex-direction:column}.dialog-actions .button{font-size:13px}.gallery-dialog{padding:10px;max-width:94vw}.gallery-dialog .dialog-close{top:17px;right:17px}.gallery-controls p{font-size:12px}.gallery-controls button{width:40px;height:40px}.site-footer{padding-top:42px;padding-bottom:calc(70px + env(safe-area-inset-bottom))}.footer-main{grid-template-columns:1fr 1fr;gap:32px 24px;padding-bottom:30px}.footer-brand{grid-column:1/-1}.footer-brand img{width:218px}.footer-brand .footer-slogan{font-size:25px}.footer-main h2{font-size:9px;letter-spacing:.1em;margin-bottom:17px}.footer-main>div:not(:first-child)>a{font-size:11px}.footer-main address,.footer-main>div>p{font-size:11px}.footer-main>div>.footer-phone{font-size:20px}.footer-main>div:last-child{grid-column:1/-1}.footer-main>div:last-child h2{margin-bottom:8px}.footer-main>div:last-child>p br{display:none}.footer-bottom{flex-wrap:wrap;justify-content:space-between;gap:13px;font-size:9px;padding:20px 0 16px}.site-credit{margin:0;flex-basis:100%;font-size:10px}.mobile-booking{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:38;border-top:1px solid #bba08e;background:var(--cream);padding:9px 16px calc(9px + env(safe-area-inset-bottom));gap:11px;box-shadow:0 -4px 22px #48213509}.mobile-booking>a{display:flex;justify-content:center;align-items:center;gap:9px;font-size:12px;font-weight:600;min-height:43px;flex:1;padding:8px 11px;color:var(--plum)}.mobile-booking .mobile-text{background:var(--plum);color:var(--cream);border-radius:3px;flex:1.55}.mobile-booking .icon{width:18px;height:18px}.privacy-content{padding-top:34px;padding-bottom:58px}.privacy-content h1{font-size:61px}.privacy-content h2{font-size:28px}.privacy-content p{font-size:14px}.privacy-content .privacy-date{font-size:11px}.not-found{padding:65px 0 90px}.not-found h1{font-size:53px}}
@media(max-width:370px){.container{width:calc(100% - 32px)}.hero h1{font-size:60px}.hero-actions{gap:9px;align-items:flex-start;flex-direction:column}.hero-art{height:365px}.hero-main-photo{height:323px}.hero-backdrop{height:310px}.hero-inset-photo{height:168px}.hero-seal{width:77px;height:77px;right:8px}.hero-seal span{font-size:6px}.service-ribbon .container{gap:9px}.service-ribbon span{font-size:7px}.section-heading h2{font-size:36px}.mood-tile>span{font-size:10px}.story-crown{right:4px;width:59px}.brand-story h2{font-size:59px}.lookbook-grid{grid-template-columns:1fr}.lookbook-open{aspect-ratio:1}.lookbook-note{min-height:330px}.lookbook-note h2{font-size:39px}.lookbook-note p{font-size:13px;max-width:240px}.lookbook-note .text-link{font-size:12px}.lookbook-category{font-size:9px}.lookbook-item figcaption>span:first-child{font-size:26px}.visit-address-band .text-link{display:flex;margin-left:0}.qr-row{gap:8px}.qr-row>img{width:83px;height:83px}.dialog-number{font-size:19px}.dialog-content{padding-inline:20px}.footer-main{gap:27px 16px}.footer-main h2{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{.announcement,.site-header,.mobile-booking,.site-footer,.dialog,.button,.lookbook-filters{display:none!important}body{background:#fff;color:#000}.container{width:100%}.section{padding:25px 0}.hero-art{max-height:360px}.hero-grid{grid-template-columns:1fr 1fr}.brand-story,.start-conversation,.closing-cta,.visit-address-band{background:#fff;color:#000}.brand-story h2,.brand-story p{color:#000}.booking-grid{grid-template-columns:1fr}.appointment-card{display:none}a{text-decoration:underline}img{break-inside:avoid}.page-intro{padding:20px 0}}
