:root{--ink:#163039;--muted:#64747a;--cream:#f7f5ef;--white:#fff;--gold:#d8ac70;--dark:#0b292e;--line:#d8ddd9;--serif:Georgia,'Times New Roman',serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans)}button,input,select{font:inherit}button,a{transition:all .2s ease}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400}h1,h2,.treatment-feature h3{font-family:var(--serif);letter-spacing:-.045em}h2{font-size:clamp(2.9rem,5vw,5.7rem);line-height:1.06}h2 i,h1 i,.treatment-feature i{font-weight:400}.topline{height:29px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;background:#09252a;color:#d1dcda;font-size:.57rem;letter-spacing:.23em}.site-header{height:88px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--cream);position:relative;z-index:5}.brand{display:flex;align-items:center;gap:12px;font-family:var(--serif);font-size:1.38rem;letter-spacing:.035em;white-space:nowrap;line-height:1}.brand em{color:#ac8a61;font-style:normal}.brand small{display:block;font:600 .46rem var(--sans);letter-spacing:.25em;margin-top:8px}.brand-mark{font-family:var(--serif);font-size:2.35rem;color:#bd9464;line-height:.8}.site-header nav{display:flex;gap:32px;align-items:center;font-size:.76rem;font-weight:600}.site-header nav a:hover,.text-button:hover,.contact-links a:hover{color:#a37b4d}.header-actions{display:flex;gap:16px;align-items:center}.header-actions select{background:transparent;border:0;color:var(--ink);font-size:.76rem;font-weight:700;padding:8px}.button{border:0;border-radius:2px;padding:17px 28px;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.button.gold{background:var(--gold);color:#153039}.button.gold:hover{background:#edc38d;transform:translateY(-2px)}.hero{height:min(730px,75vh);min-height:570px;position:relative;color:#fff;overflow:hidden}.hero-photo,.hero-shade{position:absolute;inset:0}.hero-photo img{object-position:center 54%}.hero-shade{background:linear-gradient(90deg,rgba(6,32,37,.82),rgba(6,32,37,.45) 48%,rgba(6,32,37,.08) 100%),linear-gradient(0deg,rgba(6,32,37,.20),transparent 40%)}.hero-content{position:relative;z-index:1;max-width:770px;padding:9.8% 0 0 9%;}.eyebrow{display:inline-block;color:#9c784f;font-size:.65rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.eyebrow.light{color:#f0c797}.hero h1{font-size:clamp(4.4rem,8.5vw,8.4rem);line-height:.97;margin:25px 0 27px}.hero-content p{max-width:510px;font-size:1rem;line-height:1.85;color:#e5e8e4}.hero-actions{display:flex;align-items:center;gap:36px;margin-top:34px}.hero-link,.light-link{font-size:.77rem;font-weight:700;letter-spacing:.04em}.hero-link:hover,.light-link:hover{color:#efc692}.hero-side{position:absolute;right:4.5%;bottom:36px;z-index:1;display:flex;flex-direction:column;text-align:right;gap:8px;font-size:.59rem;letter-spacing:.22em}.trust-strip{background:#13363a;color:#ede9df;display:flex;justify-content:space-between;padding:23px 7%;gap:20px;font-size:.65rem;letter-spacing:.14em;text-transform:uppercase}.trust-strip b{color:#d5aa73;margin-right:10px}.section{padding:110px max(6.5%,calc((100vw - 1440px)/2))}.section-kicker{display:flex;align-items:center;gap:26px}.section-kicker .line{height:1px;background:#cdd5d0;flex:1}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:13%;padding-top:25px}.intro h2{margin:0}.intro-grid>div{padding-top:20px;color:var(--muted);line-height:1.9}.intro .lead{font-family:var(--serif);font-size:1.65rem;line-height:1.5;color:var(--ink)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:39px}.section-head h2{margin:18px 0 0}.section-head p{max-width:350px;color:var(--muted);line-height:1.8}.experiences{background:#ebece7}.experience-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.experience-card{background:#fff}.card-image{height:360px;position:relative;overflow:hidden}.card-image img{transition:transform .6s}.experience-card:hover .card-image img{transform:scale(1.035)}.image-tag{position:absolute;left:28px;top:28px;background:#f8f5ea;padding:10px 14px;font-size:.57rem;letter-spacing:.17em;font-weight:700}.card-copy{padding:34px 37px 37px}.card-title-row{display:flex;align-items:start;justify-content:space-between;gap:20px}.card-title-row h3{font-family:var(--serif);font-size:2rem;margin:0}.card-title-row strong{font-family:var(--serif);font-weight:400;font-size:1.7rem;white-space:nowrap}.card-copy p{color:var(--muted);line-height:1.7;min-height:54px;margin:18px 0}.card-meta{display:flex;gap:18px;font-size:.58rem;letter-spacing:.12em;color:#73817f;font-weight:700;border-bottom:1px solid var(--line);padding:0 0 26px}.text-button{display:inline-block;border:0;border-bottom:1px solid currentColor;background:none;padding:7px 0;margin-top:23px;color:#15383b;font-size:.76rem;font-weight:700}.essentials{display:flex;gap:13px;align-items:center;margin:31px 0 0;color:#51676a;font-size:.77rem}.essentials>span:first-child{color:#ad875b;font-size:1.3rem}.editorial{display:grid;grid-template-columns:1fr 1fr;background:#0e3034;color:#fff;min-height:610px}.editorial-photo{min-height:530px}.editorial-copy{padding:13% 13%;display:flex;flex-direction:column;justify-content:center}.editorial h2{margin:24px 0}.editorial p{line-height:1.9;color:#c5d3d1;max-width:490px}.light-link{margin-top:18px;align-self:start;border-bottom:1px solid #b8cec8;padding-bottom:8px}.treatments-grid{display:grid;grid-template-columns:42% 1fr;gap:6%}.treatment-feature{height:640px;position:relative;color:#fff}.treatment-feature::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,32,36,.75),transparent 68%)}.treatment-feature div{position:absolute;z-index:1;left:38px;bottom:35px}.treatment-feature h3{font-size:clamp(2.9rem,4.2vw,5.3rem);line-height:1.03;margin:18px 0 0}.treatment-list{align-self:center}.treatment-row{padding:18px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center}.treatment-row:first-child{border-top:1px solid var(--line)}.treatment-row h3{font-family:var(--serif);font-size:1.27rem;margin:0 0 5px}.treatment-row p{font-size:.68rem;color:var(--muted);margin:0}.treatment-row .price{white-space:nowrap;font-family:var(--serif);font-size:1.25rem}.treatment-row button{background:none;border:0;padding:6px 0 0;color:#a37b4d;font-size:.65rem;font-weight:700;text-decoration:underline}.offer-bar{margin-top:40px;background:#12383c;color:#fff;padding:30px 38px;display:flex;align-items:center;justify-content:space-between;gap:30px}.offer-bar small{color:#cba578;letter-spacing:.2em;font-size:.6rem}.offer-bar h3{font-family:var(--serif);font-size:1.8rem;margin:9px 0}.offer-bar p{color:#c4d0cb;font-size:.74rem;margin:0}.offer-bar>div:last-child{text-align:right;white-space:nowrap}.offer-bar strong{display:block;font-family:var(--serif);font-size:2rem;font-weight:400}.offer-bar a{display:block;margin-top:7px;font-size:.7rem;border-bottom:1px solid;padding-bottom:5px}.other-service{margin:27px 0 0;color:#5b7172;font-size:.78rem}.other-service a{text-decoration:underline;margin-left:10px}.gallery{height:530px;position:relative;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff}.gallery>img{position:absolute;inset:0}.gallery::after{content:'';position:absolute;inset:0;background:rgba(7,37,41,.42)}.gallery>div{position:relative;z-index:1}.gallery h2{margin:14px 0 27px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.contact h2{margin:20px 0 25px}.contact address{font-style:normal;color:#5d6c70;line-height:1.7}.contact-links{display:flex;gap:25px;margin-top:20px}.contact-links a{font-family:var(--serif);font-size:1.4rem}.hours{border-top:2px solid var(--ink);padding-top:22px}.hours h3{font-family:var(--serif);font-size:2rem;margin:0 0 30px}.hours-row{border-bottom:1px solid var(--line);padding:18px 0;display:flex;justify-content:space-between;gap:20px;font-size:.76rem}.hours-row strong{white-space:nowrap}.hours small{display:block;color:var(--muted);margin-top:17px;font-size:.7rem}footer{background:#0a292e;color:#dbe7e2;padding:45px 6.5%;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:.64rem}footer .brand{color:#f3efe8}footer .brand small{color:#c8d8d2}footer a{text-decoration:underline}.mobile-book{display:none}dialog{border:0;box-shadow:0 20px 80px #001a2055;padding:0;background:#f8f6ef;color:var(--ink)}dialog::backdrop{background:#061e24b8}#booking-dialog{width:min(670px,calc(100vw - 28px));max-height:calc(100vh - 28px);overflow:auto}.dialog-head{display:flex;justify-content:space-between;align-items:start;padding:28px 34px 0}.dialog-head h2{font-size:2.5rem;margin:6px 0 10px}.dialog-head button{background:none;border:0;font-size:2.1rem;color:var(--ink)}#booking-content{padding:10px 34px 35px}.booking-form{display:grid;gap:17px}.booking-form label{display:grid;gap:7px;font-size:.73rem;font-weight:700}.booking-form input,.booking-form select{width:100%;background:#fff;border:1px solid #cfd8d4;padding:12px;color:var(--ink);border-radius:2px}.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.booking-section{border-top:1px solid var(--line);padding-top:17px}.booking-section h3{font-family:var(--serif);font-size:1.38rem;margin:0 0 8px}.booking-note{font-size:.72rem;color:var(--muted);line-height:1.6}.addons-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.check-label{display:flex!important;flex-direction:row;align-items:start;gap:9px!important;font-weight:400!important;line-height:1.5}.check-label input{width:auto!important;margin-top:3px}.booking-total{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;font-size:1rem}.booking-total strong{font-family:var(--serif);font-size:1.6rem}.error{padding:12px;background:#f8e5df;color:#783b30;font-size:.76rem}.success{padding:20px;background:#e7f0e9;line-height:1.7}.success strong{display:block;font-family:var(--serif);font-size:1.8rem}.pending{padding:13px;background:#fff0db;color:#634924;font-size:.74rem;line-height:1.5}@media(max-width:1050px){.site-header nav{gap:14px}.site-header nav a{font-size:.68rem}.section{padding:80px 5%}.hero-content{padding-left:6%}.treatments-grid{gap:4%}footer{flex-wrap:wrap}}@media(max-width:750px){.topline{height:25px;font-size:.48rem}.topline span:last-child{display:none}.site-header{height:69px;padding:0 4%}.site-header nav,.header-actions .button{display:none}.brand{font-size:1.07rem}.brand-mark{font-size:1.9rem}.brand small{font-size:.39rem}.hero{min-height:600px;height:75vh;max-height:740px}.hero-photo img{object-position:59% center}.hero-shade{background:linear-gradient(90deg,rgba(6,32,37,.76),rgba(6,32,37,.2)),linear-gradient(0deg,rgba(6,32,37,.55),transparent 65%)}.hero-content{padding:0 6%;position:absolute;bottom:72px}.hero h1{font-size:clamp(4rem,15vw,6rem)}.hero-content p{font-size:.86rem}.hero-actions{gap:20px;flex-wrap:wrap}.hero-side{bottom:20px}.trust-strip{display:grid;grid-template-columns:1fr 1fr;padding:18px 6%;font-size:.52rem;gap:15px}.intro-grid,.experience-grid,.editorial,.treatments-grid,.contact{grid-template-columns:1fr}.intro-grid{gap:20px}.section-head{display:block}.section-head p{max-width:none;margin-top:20px}.card-image{height:280px}.editorial-photo{min-height:340px;height:340px}.editorial-copy{padding:65px 7%}.treatment-feature{height:440px}.treatment-list{margin-top:35px}.offer-bar{align-items:start}.gallery{height:430px}.contact{gap:60px}footer{display:grid;grid-template-columns:1fr 1fr;padding-bottom:95px}.mobile-book{display:block;position:fixed;z-index:10;bottom:14px;left:14px;width:calc(100% - 28px);box-shadow:0 6px 25px #09242b55}.hours-row{font-size:.7rem}}@media(max-width:490px){.hero h1{font-size:3.9rem}.hero-actions .button{width:100%}.hero-link{display:none}.section{padding:65px 6%}.card-copy{padding:25px}.card-title-row h3{font-size:1.65rem}.card-title-row strong{font-size:1.4rem}.offer-bar{display:block}.offer-bar>div:last-child{text-align:left;margin-top:16px}.contact-links{flex-wrap:wrap}.booking-grid,.addons-grid{grid-template-columns:1fr}.dialog-head,#booking-content{padding-left:20px;padding-right:20px}}
