@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2) format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2) format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-400-normal-B-1hWBU7.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-400-normal-B7YtguxJ.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-400-italic-Dc_OZ8oc.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-400-italic-BLh7T8o8.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-500-normal-BsRWmXhO.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-500-normal-zIXX3Q-H.woff) format("woff")}:root{--paper:#f7f5f2;--white:#fffdfb;--sand:#e7ded3;--sand-dark:#b9a48e;--ink:#27221e;--muted:#756b62;--line:#ded8d1;--serif:"Cormorant Garamond",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--width:1320px;--gutter:clamp(24px,5vw,72px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:400 15px/1.65 var(--sans);overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}img{display:block;max-width:100%}h1,h2,h3,p,dl{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.02}h2{font-size:clamp(46px,5.2vw,76px);letter-spacing:-.04em}h3{font-size:clamp(30px,2.6vw,40px);letter-spacing:-.025em}em{font-weight:400;color:#967960}p{max-width:65ch}button{border:0;background:none;color:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #8a6f56;outline-offset:4px}[hidden]{display:none!important}.skip-link{position:fixed;top:-80px;left:20px;z-index:100;padding:10px 18px;background:var(--ink);color:#fff}.skip-link:focus{top:12px}.header{position:sticky;top:0;z-index:30;background:#fffdfbf5;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.header-inner{max-width:var(--width);height:95px;margin:auto;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{width:156px;flex:0 0 auto}.brand img{width:100%;height:82px;object-fit:contain}.header nav{display:flex;align-items:center;gap:clamp(20px,2.8vw,40px);font-size:13px}.header nav a{padding:12px 0;white-space:nowrap;position:relative}.header nav a:after{content:"";position:absolute;bottom:8px;left:0;width:100%;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .2s}.header nav a:hover:after,.header nav a[aria-current]:after{transform:scaleX(1)}.header-actions{display:flex;align-items:center;gap:12px}.menu-button{display:none}.button{--magnetic-x:0px;--magnetic-y:0px;position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;width:max-content;min-height:56px;padding:16px 30px;background:linear-gradient(135deg,#c2b09d,#af967e 55%,#a68b72);background-size:180% 180%;color:#211c18;border:1px solid rgba(82,61,43,.18);border-radius:999px;box-shadow:0 9px 24px #4a362626,inset 0 1px #ffffff57;font-size:14px;font-weight:500;letter-spacing:.015em;line-height:1.25;transform:translate3d(var(--magnetic-x),var(--magnetic-y),0);transition:transform .34s cubic-bezier(.22,1,.36,1),background-position .35s ease,box-shadow .35s ease,border-color .35s ease}.button:before{content:"";position:absolute;z-index:-1;inset:-55% -20%;background:linear-gradient(110deg,transparent 36%,rgba(255,255,255,.26) 49%,transparent 62%);transform:translate(-65%) rotate(4deg);transition:transform .6s cubic-bezier(.22,1,.36,1)}.button:hover{background-position:100% 100%;border-color:#523d2b47;box-shadow:0 14px 30px #4a362636,inset 0 1px #ffffff6b}.button:hover:before{transform:translate(65%) rotate(4deg)}.button:active{box-shadow:0 6px 16px #4a36262e,inset 0 1px #ffffff47}.button.is-magnetic{transition-duration:.1s,.35s,.35s,.35s;will-change:transform}.button-small{min-height:44px;padding:11px 21px;font-size:12px}.hero{max-width:var(--width);margin:auto;display:grid;grid-template-columns:49% 51%;min-height:620px;background:#e9e1d8}.hero-content{padding:clamp(70px,8.2vw,125px) clamp(32px,5vw,72px) 75px;display:flex;align-items:flex-start;flex-direction:column;justify-content:center}.eyebrow{font-size:11px;font-weight:500;letter-spacing:.19em;line-height:1.4;color:#8c7767}.hero h1{font-size:clamp(67px,7vw,105px);line-height:.91;letter-spacing:-.055em;max-width:650px;margin:28px 0 24px}.hero h1 em{display:block;color:var(--ink);font-style:italic}.hero-subline{font-size:11px;font-weight:500;letter-spacing:.22em}.hero-subline span{color:#9a8776;margin:0 6px}.hero-description{font-size:15px;line-height:1.7;max-width:420px;color:#5b5149;margin:25px 0 30px}.hero-image{position:relative;min-height:620px;overflow:hidden}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:52% 50%;position:absolute;inset:0}.info-bar{max-width:var(--width);min-height:110px;margin:auto;padding:20px var(--gutter);display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:35px;background:var(--white);border-bottom:1px solid var(--line)}.info-item{display:flex;gap:18px;align-items:flex-start}.info-item+.info-item{border-left:1px solid var(--line);padding-left:35px}.info-icon{font-size:27px;font-weight:400;line-height:1.1;color:#8a7766}.info-item p{font-size:12px;line-height:1.55}.info-item strong{font-weight:500}.info-signature{font:italic 28px var(--serif);white-space:nowrap;color:#8b7766;transform:rotate(-4deg)}.section{max-width:var(--width);margin:auto;padding:110px var(--gutter)}.section-intro{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:45px}.section-intro h2{max-width:650px;margin-top:17px}.section-intro>p{max-width:315px;color:var(--muted);font-size:14px;line-height:1.8;margin-bottom:5px}.services{background:var(--paper)}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.service-card{background:var(--white)}.service-card img{width:100%;height:340px;object-fit:cover;object-position:center 46%}.service-card:nth-child(2) img{object-position:center 38%}.service-card>div{padding:25px 26px 30px}.service-card span{font-size:10px;letter-spacing:.18em;color:#9c8573}.service-card h3{font-size:35px;margin:10px 0}.service-card p{font-size:13px;line-height:1.7;color:var(--muted)}.section-end{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--line);margin-top:38px;padding-top:25px}.section-end p{font-size:13px;color:var(--muted)}.text-link{display:inline-flex;gap:20px;align-items:center;border-bottom:1px solid #a48d76;padding:4px 0;font-size:13px;font-weight:500;white-space:nowrap}.text-link span{font-size:17px}.salon{display:grid;grid-template-columns:1.12fr .88fr;align-items:center;gap:clamp(55px,8vw,125px);background:#eee8e1}.salon-image{overflow:hidden}.salon-image img{width:100%;height:480px;object-fit:cover}.salon-copy h2{margin:20px 0 25px}.salon-copy>p:not(.eyebrow){color:#60564e;margin-bottom:32px;max-width:420px}.about{display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:clamp(65px,10vw,150px);background:var(--white)}.about-copy{max-width:500px}.about-copy h2{margin:19px 0 30px}.about-copy>p:not(.eyebrow){color:var(--muted);margin:0 0 18px}.about-copy .button{margin-top:21px}.about-image{max-height:600px;overflow:hidden}.about-image img{width:100%;height:600px;object-fit:cover;object-position:center 35%}.inspiration{background:var(--paper)}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.gallery-item{padding:0;text-align:left;background:var(--white);overflow:hidden}.gallery-item img{width:100%;height:255px;object-fit:cover;transition:transform .3s}.gallery-item:hover img{transform:scale(1.035)}.gallery-item>span{display:flex;justify-content:space-between;padding:16px 18px;font-size:13px}.instagram-link{margin-top:32px}.booking{background:#e9e1d8}.booking-intro{text-align:center;display:flex;flex-direction:column;align-items:center;margin-bottom:35px}.booking-intro h2{margin:15px 0}.booking-intro>p:last-child{font-size:14px;color:var(--muted)}.booking-card{background:var(--white);display:grid;grid-template-columns:.8fr 1.2fr;max-width:950px;margin:0 auto;border:1px solid var(--line)}.booking-service,.booking-calendar{padding:40px}.booking-service{border-right:1px solid var(--line)}.booking-service h3,.booking-calendar h3{font-size:31px;margin-bottom:22px}.booking-service label,.booking-details label{display:block;font-size:12px;font-weight:500;margin:20px 0 8px}.booking-service select,.booking-details input,.booking-details textarea{width:100%;min-height:45px;background:var(--paper);border:1px solid var(--line);border-radius:3px;padding:10px 12px;color:var(--ink)}.booking-service p{font-size:12px;color:var(--muted);margin-top:22px}.booking-contact a{font-weight:500;text-decoration:underline;text-underline-offset:3px;color:var(--ink)}.calendar-top{display:flex;justify-content:space-between;gap:15px;align-items:center}.calendar-top h3{margin:0}.week-controls{display:flex;gap:5px}.week-controls button{width:35px;height:35px;border:1px solid var(--line);border-radius:50%}.week-controls button:hover{background:var(--paper)}#week-title{margin:13px 0 18px;font-size:12px;color:var(--muted)}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-day{min-height:70px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--paper);border:1px solid transparent;border-radius:3px;line-height:1.25}.calendar-day small{font-size:10px}.calendar-day strong{font-size:19px;font-weight:500}.calendar-day span{font-size:9px}.calendar-day.selected{border-color:#a68b72}.availability-notice{border-top:1px solid var(--line);padding:20px 0;margin:20px 0 0}.availability-notice strong{font-size:13px;font-weight:500}.availability-notice p{font-size:12px;color:var(--muted);margin-top:5px}.booking-calendar>.button{margin-top:13px}.booking-footnote{text-align:center;font-size:12px;color:var(--muted);margin:18px auto 0}.booking.booking-simple .booking-card{display:block;max-width:600px}.booking.booking-simple .booking-service,.booking.booking-simple .calendar-top,.booking.booking-simple #week-title,.booking.booking-simple #week-grid,.booking.booking-simple #slot-options{display:none}.booking.booking-simple .booking-calendar{padding:33px 38px;text-align:center}.booking.booking-simple .availability-notice{border:0;margin:0;padding:0}.booking.booking-simple .booking-calendar>.button{margin-top:24px}.booking-details{max-width:950px;margin:20px auto 0;background:var(--white);padding:35px}.booking-details h3{font-size:32px}.booking-details #selected-summary{font-size:13px;color:var(--muted);margin-top:10px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px 20px}.booking-details textarea{min-height:100px}.booking-details .check-label{display:flex;gap:10px;align-items:flex-start;font-weight:400}.check-label input{width:auto;min-height:0;margin-top:5px}.booking-details .button{margin-top:15px}#slot-options{display:flex;flex-wrap:wrap;gap:8px}#slot-options button{padding:7px 13px;border:1px solid var(--line);border-radius:3px}#slot-options button[aria-pressed=true]{background:var(--ink);color:#fff}.testimonial{max-width:var(--width);margin:auto;padding:85px var(--gutter);text-align:center;background:var(--white);display:flex;flex-direction:column;align-items:center}.testimonial blockquote{font:400 clamp(31px,3.4vw,48px)/1.18 var(--serif);max-width:770px;margin:24px auto 14px}.testimonial>p{font-size:12px;color:var(--muted);margin-bottom:18px}.contact{background:var(--white)}.contact-heading{margin-bottom:45px}.contact-heading h2{margin-top:16px}.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px;border-top:1px solid var(--line);padding-top:35px}.contact-grid>div+div{border-left:1px solid var(--line);padding-left:45px}.contact-grid h3{font-size:29px;margin-bottom:17px}.contact-grid p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:15px}.contact-grid .phone{display:block;font-family:var(--serif);font-size:29px;margin-top:22px}.hours{font-size:13px;margin-bottom:10px}.hours div{display:flex;justify-content:space-between;gap:15px;padding:7px 0;border-bottom:1px solid var(--line)}.hours dd{margin:0;white-space:nowrap}.contact-grid small{font-size:11px;color:var(--muted)}.footer{background:#e6ded4}.footer-inner{max-width:var(--width);margin:auto;padding:45px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:25px}.footer .brand{width:145px}.footer p{font:italic 28px var(--serif);color:#806b59}.footer-inner>div{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:18px;font-size:12px}.footer button{padding:0;font-size:12px}.footer small{color:var(--muted)}dialog{max-width:min(90vw,800px);max-height:90vh;padding:30px;background:var(--white);border:1px solid var(--line);box-shadow:0 20px 70px #241b1766;color:var(--ink)}dialog::backdrop{background:#1b1713a8}dialog h2{font-size:45px;margin:0 40px 20px 0}dialog p{margin:0 0 15px}dialog a{text-decoration:underline}#lightbox{padding:12px;max-width:min(90vw,950px)}#lightbox img{max-height:75vh;max-width:100%;object-fit:contain}#lightbox p{padding:7px 10px 0;margin:0;font-size:12px}.dialog-close{position:absolute;right:10px;top:10px;width:36px;height:36px;background:var(--white);border-radius:50%;font-size:25px;line-height:1;z-index:1}.noscript-note{padding:20px;text-align:center}@media(max-width:1000px){.header nav{gap:17px}.header-inner{gap:18px}.brand{width:135px}.header-booking{padding:10px 12px}.hero{min-height:560px}.hero-content{padding:65px 38px}.hero h1{font-size:clamp(62px,7vw,80px)}.hero-image{min-height:560px}.info-signature{display:none}.info-bar{grid-template-columns:1fr 1fr}.section{padding:85px var(--gutter)}.service-card img{height:300px}.salon,.about{gap:55px}}@media(max-width:760px){html{scroll-padding-top:76px}.header-inner{height:76px;padding:0 20px}.brand{width:123px}.brand img{height:68px}.menu-button{display:flex;width:42px;height:42px;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:4px}.menu-button span{display:block;width:19px;height:1px;background:var(--ink)}.header nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--white);border-bottom:1px solid var(--line);padding:15px 24px 25px;box-shadow:0 15px 25px #30251b16}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:1px}.header nav a{font-size:16px;padding:10px 0}.header nav a:after{bottom:7px}.header-booking{min-height:42px;font-size:11px}.hero{display:flex;flex-direction:column;min-height:0}.hero-content{padding:65px 28px 58px}.hero h1{font-size:clamp(66px,13vw,90px);max-width:550px;margin:20px 0}.hero-description{margin:20px 0 26px}.hero-image{min-height:440px;height:58vw;max-height:590px}.info-bar{grid-template-columns:1fr 1fr;padding:20px 28px;gap:15px}.info-item{gap:10px}.info-item+.info-item{padding-left:18px}.info-item p{font-size:11px}.info-icon{font-size:22px}.section{padding:75px 28px}.section-intro{display:block;margin-bottom:30px}.section-intro>p{margin-top:22px}.service-grid{gap:12px}.service-card img{height:230px}.service-card>div{padding:19px}.service-card h3{font-size:27px}.service-card p{font-size:12px}.salon,.about{grid-template-columns:1fr;gap:35px}.salon-image img{height:380px}.salon-copy h2{margin-bottom:18px}.about-copy{order:2}.about-image{order:1;max-height:500px}.about-image img{height:500px}.gallery{gap:12px}.gallery-item img{height:190px}.booking-card{grid-template-columns:1fr}.booking-service{border-right:0;border-bottom:1px solid var(--line)}.contact-grid{gap:25px}.contact-grid>div+div{padding-left:25px}.footer-inner{flex-wrap:wrap}.footer-inner>div{width:100%;justify-content:flex-start}}@media(max-width:540px){.header-booking{display:none}.hero-content{padding:55px 24px 48px}.hero h1{font-size:clamp(61px,14vw,78px)}.hero-image{height:480px;min-height:0}.hero-image img{object-position:53% 50%}.hero-button,.about-copy .button,.booking-calendar>.button,.booking-details .button{width:100%;max-width:380px;min-height:54px}.info-bar{grid-template-columns:1fr;padding:23px 24px;gap:15px}.info-item+.info-item{border-left:0;border-top:1px solid var(--line);padding:15px 0 0}.info-item p{font-size:12px}.section{padding:68px 24px}.section-intro h2{font-size:53px}.service-grid{grid-template-columns:1fr;gap:22px}.service-card img{height:320px}.service-card>div{padding:20px 23px 24px}.service-card h3{font-size:34px}.section-end{display:block}.section-end .text-link{margin-top:12px}.salon-image img{height:310px}.about-image img{height:410px}.gallery{grid-template-columns:1fr 1fr}.gallery-item:nth-child(3){display:none}.gallery-item img{height:180px}.booking-intro h2{font-size:60px}.booking-service,.booking-calendar{padding:25px}.booking.booking-simple .booking-calendar{padding:30px 25px}.week-grid{gap:2px}.calendar-day{min-height:60px}.calendar-day span{font-size:8px}.contact-grid{grid-template-columns:1fr;gap:22px}.contact-grid>div+div{border-left:0;border-top:1px solid var(--line);padding:22px 0 0}.contact-heading{margin-bottom:30px}.footer-inner{display:block;padding:35px 24px}.footer p{margin:15px 0}.footer-inner>div{display:flex;gap:15px}}@media(hover:none),(pointer:coarse){.button{transform:none}.button:before{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.button{transform:none}.button:before{display:none}}main>section[id],#main{scroll-margin-top:113px}@media(max-width:760px){main>section[id],#main{scroll-margin-top:94px}}
