:root{--cream:#f8f4eb;--ink:#413f30;--olive:#595c3e;--muted:#726f60;--line:#ddd5c5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 Arial,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #927438;outline-offset:5px}header{max-width:1400px;margin:auto;padding:27px 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font:42px Georgia,serif;line-height:1}.brand span{display:block;font:10px Arial,sans-serif;letter-spacing:2.8px;margin-top:10px}nav{display:flex;align-items:center;gap:32px;font-size:13px}.button{display:inline-block;background:var(--olive);color:white;padding:15px 25px;font-size:13px;border:1px solid var(--olive);transition:background .2s}.button:hover{background:#41452c}.small{padding:11px 20px}.hero{max-width:1400px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;gap:6%;padding:55px 6% 65px;align-items:center}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;margin:0 0 23px}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.06;letter-spacing:-2px;margin:0}h1{font-size:clamp(55px,6.4vw,92px)}em{font-weight:400;color:var(--olive)}.intro{max-width:370px;color:var(--muted);font-size:15px;margin:26px 0}.actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap}.text-link{font-size:13px;border-bottom:1px solid var(--ink);padding-bottom:6px}.fine{font-size:11px;color:var(--muted);margin-top:35px}.hero-image{position:relative}.hero-image img{width:100%;height:580px;object-fit:cover;border-radius:170px 170px 0 0;display:block}.image-label{position:absolute;bottom:22px;left:22px;background:var(--cream);font-size:9px;letter-spacing:2px;padding:10px 15px}.ribbon{background:#ece8da;border-block:1px solid var(--line);padding:22px 6%;display:flex;justify-content:space-around;gap:15px;font:21px Georgia,serif}.ribbon i{color:#9e8b5c}.services,.visit{max-width:1400px;margin:auto;padding:85px 6%}.section-heading{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:45px}h2{font-size:clamp(40px,4.3vw,62px)}.section-heading>p{font-size:14px;color:var(--muted)}.menus{display:grid;grid-template-columns:1fr 1fr;gap:9%}h3{font:24px Georgia,serif;margin:0 0 25px}dl{margin:0}dl>div{display:flex;justify-content:space-between;gap:15px;padding:14px 0;border-bottom:1px solid var(--line);font-size:14px}dd{margin:0;white-space:nowrap}.appointment-note{padding:24px;background:#eee8db;margin-top:25px}.appointment-note .eyebrow{margin-bottom:8px}.appointment-note p{margin:0 0 12px}.appointment-note a{font-size:12px;text-decoration:underline}.salon{background:#ece8dd;padding:60px 6%;display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.salon>img{width:100%;height:470px;object-fit:cover}.salon>div{max-width:460px}.salon p:not(.eyebrow){font-size:14px;color:var(--muted);margin:24px 0}.visit{display:grid;grid-template-columns:1fr 1fr;gap:9%}.visit p{color:var(--muted);font-size:14px}.contact-title{margin-top:35px}.phone{font:30px Georgia,serif}footer{border-top:1px solid var(--line);padding:35px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap}footer p,footer>a:not(.brand),footer small{font-size:11px;color:var(--muted)}.booking-page{max-width:850px;min-height:65vh;margin:auto;padding:70px 6%}.booking-page h1{font-size:60px}.booking-page p{max-width:600px}.booking-box{padding:30px;background:#eee8db;margin:30px 0}.back{font-size:13px}.booking-box h2{font-size:30px;letter-spacing:-.5px}@media(max-width:700px){header{padding:20px 6%}nav{gap:14px}nav>a:not(.button){display:none}.brand{font-size:34px}.hero{grid-template-columns:1fr;padding-top:35px;gap:30px}.hero-image img{height:420px}.hero h1{font-size:65px}.ribbon{font-size:16px;flex-wrap:wrap}.ribbon span:last-child,.ribbon i:last-of-type{display:none}.services,.visit{padding-block:55px}.section-heading{display:block}.section-heading>p{margin-top:25px}.menus,.salon,.visit{grid-template-columns:1fr;gap:35px}.salon{padding-block:40px}.salon>img{height:360px}.booking-page h1{font-size:48px}footer{align-items:start}footer small{width:100%}}
