:root{--paper:#f7f5ef;--ink:#243c32;--muted:#6f756d;--line:#d9dcd2;--serif:'Playfair Display',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:14px}button,a,input,select{ -webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b27a45;outline-offset:4px}.demo{background:#e9ece3;text-align:center;padding:8px;font-size:10px;letter-spacing:1.5px}header{height:112px;max-width:1440px;margin:auto;padding:0 6%;display:flex;align-items:center;justify-content:space-between}.logo{font:48px var(--serif);letter-spacing:-3px;line-height:1}.logo span{display:block;font:8px 'DM Sans',sans-serif;letter-spacing:3px;margin-top:12px}nav{display:flex;gap:35px;font-size:12px}nav a:hover{color:#9e744e}.button{border:1px solid var(--ink);background:var(--ink);color:white;padding:18px 25px;display:inline-flex;align-items:center;justify-content:center;gap:35px;font-size:12px}.button:hover{background:#385245}.button span{font-size:19px}.button.small{padding:12px 19px;gap:22px}.hero{max-width:1440px;display:grid;grid-template-columns:1.04fr 1fr;margin:15px auto 0;padding:0 6% 55px;gap:35px}.hero-copy{padding:47px 0 15px}.eyebrow{font-size:9px;font-weight:600;letter-spacing:2.2px;display:flex;align-items:center;gap:9px}.eyebrow i{width:6px;height:6px;background:#839079;border-radius:50%}h1{font:clamp(48px,5.2vw,77px)/1.09 var(--serif);letter-spacing:-2.8px;margin:30px 0}em{font-weight:400;color:#75806c}h1 em{white-space:nowrap}.intro{font-size:13px;line-height:1.9;color:var(--muted);margin:26px 0 30px}.hero-note{display:flex;gap:12px;align-items:center;font-size:10px;color:var(--muted);margin-top:27px}.hero-note span{font-size:24px}.hero-image{position:relative;min-height:570px;overflow:hidden;background:#948a72}.hero-image>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center 40%;filter:brightness(.8) saturate(.65)}.image-caption{position:absolute;bottom:25px;left:25px;right:25px;display:flex;justify-content:space-between;color:#fff;font-size:8px;letter-spacing:1.6px}.floating{position:absolute;bottom:75px;left:30px;color:white;font:28px/1.35 var(--serif)}.floating em{color:#e5ddca}.ribbon{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-evenly;padding:22px 4%;font-size:9px;letter-spacing:2px}.ribbon b{font-size:21px;font-weight:400;color:#87917c}.services,.experience{max-width:1440px;padding:85px 6%;margin:auto}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:38px}h2{font:44px/1.2 var(--serif);letter-spacing:-1.5px;margin:15px 0}.section-heading>p{color:var(--muted);line-height:1.9;font-size:12px;margin-bottom:20px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.service-grid article{padding:32px;border-right:1px solid var(--line)}.service-grid article:last-child{border:0}.number{font-size:8px;letter-spacing:1.7px;color:var(--muted)}h3{font:26px var(--serif);letter-spacing:-.5px;margin:25px 0 13px}.service-grid p,.values p{font-size:12px;color:var(--muted);line-height:1.9;max-width:290px}.service-bottom{border-top:1px solid var(--line);padding-top:24px;margin-top:30px;display:flex;justify-content:space-between;align-items:center;font-size:11px}.service-bottom strong{font-size:18px;font-weight:500}.service-bottom small{display:block;color:var(--muted);font-size:10px;margin-top:6px}.service-bottom .service-book{border:1px solid var(--line);background:transparent;border-radius:50%;width:40px;height:40px;font-size:20px;color:var(--ink)}.service-bottom .service-book:hover{background:var(--ink);color:white}.maison{display:grid;grid-template-columns:1fr 1fr;background:#eeeee6}.salon-img{min-height:510px}.salon-img img{width:100%;height:100%;max-height:550px;object-fit:cover;filter:saturate(.55)}.maison-copy{padding:70px 14% 60px 12%;align-self:center}.maison-copy>p:not(.eyebrow){font-size:12px;line-height:1.95;color:var(--muted)}.text-link{display:inline-flex;gap:35px;margin-top:20px;padding-bottom:9px;border-bottom:1px solid var(--ink);font-size:11px}.experience>h2,.experience>.eyebrow{justify-content:center;text-align:center}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:70px;margin-top:50px}.values article{border-top:1px solid var(--line);padding-top:20px}.values article>span{font:14px var(--serif);color:#859079}.values h3{font-size:23px}.cta{text-align:center;background:var(--ink);color:#f4f1e8;padding:65px 20px}.cta>span{font-size:8px;letter-spacing:2px}.cta h2{font-size:48px;margin:25px 0}.cta em{color:#bbc4a8}.light{background:#f1efe4;color:var(--ink);border:0}.light:hover{background:#dedfcf}.cta>p{font-size:10px;color:#b8c1b5;margin-top:20px}footer{padding:40px 6%;display:flex;align-items:center;justify-content:space-between}footer .logo{font-size:35px}footer p{font:italic 18px var(--serif);color:var(--muted)}footer>span{font-size:9px;color:var(--muted)}dialog{border:0;padding:36px;width:min(580px,94vw);max-height:92vh;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#16251dcc;backdrop-filter:blur(5px)}dialog h2{font-size:34px}.close{position:absolute;right:15px;top:10px;border:0;background:transparent;font-size:28px;color:var(--ink)}.notice{font-size:11px;line-height:1.6;color:#71735e;background:#e9eadf;padding:12px}.steps{display:flex;justify-content:space-between;padding:20px 0;margin-bottom:15px;font-size:10px;border-bottom:1px solid var(--line);color:var(--muted)}.steps .active{font-weight:700;color:var(--ink)}.choice{display:flex;border:1px solid var(--line);padding:16px;gap:12px;margin:10px 0;cursor:pointer;align-items:center}.choice:has(input:checked){border-color:var(--ink);background:#e8ecdf}.choice span{flex:1}.choice small{display:block;color:var(--muted);margin-top:5px}input,select{font:inherit;color:var(--ink);accent-color:var(--ink)}.field{display:block;font-size:12px;margin:16px 0}.field>input,.field>select{display:block;width:100%;padding:13px;background:white;border:1px solid var(--line);margin-top:8px}.times{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.times .choice{margin:0;padding:12px;font-size:12px}.form-actions{display:flex;justify-content:space-between;margin-top:24px}.back{background:none;border:0;color:var(--ink)}.summary{background:#e9ecdf;padding:16px;line-height:1.8;font-size:12px}.success{text-align:center;padding:20px 0}.success>b{font-size:35px}.success p{line-height:1.8;font-size:13px}.check{display:flex;gap:8px;align-items:start;font-size:11px;line-height:1.6}@media(min-width:1500px){.hero-image{min-height:620px}}@media(max-width:850px){header{padding:20px 5%;height:100px}nav{gap:18px}h1{font-size:50px}.hero{padding:0 5% 40px;gap:20px}.hero-image{min-height:510px}.hero-copy{padding-top:35px}.intro br{display:none}.service-grid article{padding:22px}h3{font-size:23px}.maison-copy{padding:40px 9%}.values{gap:30px}}@media(max-width:600px){header nav{display:none}.logo{font-size:38px}header .button{font-size:10px;padding:11px;gap:10px}.hero{display:flex;flex-direction:column;padding:0 6% 30px;gap:30px}.hero-copy{padding-top:18px}h1{font-size:54px;margin:24px 0}.hero-image{min-height:430px}.hero-note{margin-top:20px}.ribbon{flex-wrap:wrap;gap:17px;font-size:7px}.ribbon b:last-of-type{display:none}.services,.experience{padding:55px 6%}.section-heading{display:block}.section-heading>p{margin-top:23px}h2{font-size:36px}.service-grid{grid-template-columns:1fr}.service-grid article{border-right:0;border-bottom:1px solid var(--line);padding:28px}.maison{grid-template-columns:1fr}.salon-img{min-height:320px;height:320px}.maison-copy{padding:35px 7% 45px}.values{grid-template-columns:1fr;gap:23px;margin-top:35px}.values p{max-width:none}.values h3{margin-top:12px}.cta h2{font-size:37px}footer{flex-wrap:wrap;gap:25px}footer>span{width:100%}footer p{font-size:15px}dialog{padding:27px 20px}.steps{font-size:9px}.times{grid-template-columns:repeat(2,1fr)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.service-book{display:inline-flex;align-items:center;justify-content:center}.booking-info{font-size:12px;line-height:1.8;color:var(--muted);max-width:700px;margin:0 0 24px}
