/* A — quiet editorial / warm ivory */
.salon-entrance{width:min(100%,300px);margin:26px 0 5px;border:1px solid #d2c7b6;padding:7px;background:#fffdf8}
.salon-entrance img{width:100%;aspect-ratio:1.36;object-fit:cover;object-position:center 48%}
.owner-copy>p.owner-quote{font-family:var(--serif);font-size:20px;line-height:1.8;letter-spacing:.06em;margin-top:24px;color:#76664d}
.logo-opening{position:fixed;inset:0;z-index:100;background:#fff;display:grid;place-items:center;pointer-events:none;animation:opening-away .45s ease 1.3s both}
.logo-opening[hidden]{display:none}
.opening-lettering{display:flex;flex-direction:column;align-items:center;color:#54483c;line-height:1.1;animation:opening-logo .8s ease both}
.opening-lettering span{font:12px/1.4 Georgia,serif;letter-spacing:.3em;margin-left:.3em}
.opening-lettering strong{font:400 clamp(62px,9vw,104px)/1.15 Georgia,serif;letter-spacing:.045em;margin-left:.045em}
@keyframes opening-logo{from{opacity:0}to{opacity:1}}
@keyframes opening-away{from{opacity:1;visibility:visible}to{opacity:0;visibility:hidden}}
@media(prefers-reduced-motion:reduce){.logo-opening{display:none}}
:root{--paper:#f8f5ef;--ink:#4e473c;--muted:#756b5e;--gold:#a38b63;--line:#dcd3c5;--serif:"Yu Mincho","Hiragino Mincho ProN",Georgia,serif;--sans:"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.95;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--ink);outline-offset:6px}a:hover{opacity:.75}.skip-link{position:fixed;left:16px;top:-100px;z-index:50;background:white;padding:10px 20px}.skip-link:focus{top:12px}.section-shell{max-width:1160px;margin-inline:auto;padding-inline:48px}.eyebrow{font-family:Arial,sans-serif;font-size:11px;line-height:1.5;letter-spacing:.2em;color:var(--muted)}h2{font-size:34px;line-height:1.8;letter-spacing:.07em}h3{font-size:23px;line-height:1.7}.fine-print{font-size:12px;line-height:1.9;color:var(--muted)}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:11px 0;border-bottom:1px solid var(--gold);font-size:13px;letter-spacing:.04em}.text-link span{font-size:20px;line-height:1}.site-header{height:108px;padding:0 5.2%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(163,139,99,.18);position:relative;z-index:10}.brand{display:flex;align-items:center;gap:12px;line-height:1.15}.brand img{border-radius:50%}.brand small{font-family:Georgia,serif;font-size:10px;letter-spacing:.12em}.wordmark{display:block;font-family:Georgia,serif;font-size:33px;letter-spacing:.06em}.site-nav{display:flex;align-items:center;gap:34px;font-size:12px;letter-spacing:.05em}.header-book{padding:12px 25px;border:1px solid var(--gold)}.header-book span{margin-left:25px}.nav-toggle{display:none}.hero{max-width:1440px;margin:auto;position:relative;padding:65px 8% 0;display:grid;grid-template-columns:1fr 1fr;gap:0 48px}.hero-copy{padding:20px 0 34px;position:relative;z-index:2}.hero-copy .eyebrow{display:flex;align-items:center;gap:15px}.short-line{width:32px;height:1px;background:var(--gold)}h1{font-size:clamp(36px,4.2vw,62px);line-height:1.65;letter-spacing:.09em;margin:24px 0}.hero-description{font-size:14px;line-height:2.25;letter-spacing:.07em}.hero-copy .text-link{margin-top:28px}.hero-visual{position:relative;align-self:center;padding:5px 0 64px;margin-top:20px;min-width:0}.hero-photo{position:relative;z-index:1}.hero-photo img{width:100%;aspect-ratio:1.06;object-fit:cover;border-radius:48% 48% 2px 2px;filter:saturate(.78)}.hero-photo figcaption{position:absolute;right:-16px;top:40px;writing-mode:vertical-rl;transform:translateX(100%);font:italic 13px Georgia,serif;letter-spacing:.04em;color:var(--muted)}.hero-orbit{position:absolute;inset:-28px 15px 92px -24px;border:1px solid #cabcaa;border-radius:50% 50% 0 0;transform:rotate(-8deg)}.hero-note{position:absolute;right:-22px;bottom:20px;background:#eee6d9;z-index:2;padding:22px 30px;min-width:240px}.hero-note span{font-family:var(--serif);font-size:20px;letter-spacing:.1em}.hero-note small{display:block;font:9px Arial,sans-serif;letter-spacing:.12em;margin-top:10px}.hero-bottom{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:38px;padding:21px 0;font-size:11px;letter-spacing:.08em}.hero-bottom p span{margin-left:20px}.scroll-cue{font:10px Arial,sans-serif;letter-spacing:.16em}.scroll-cue span{font-size:18px;margin-left:25px}.philosophy{padding-block:140px 130px;display:grid;grid-template-columns:.9fr 1.1fr;gap:12%;position:relative}.philosophy-photo{align-self:center;width:90%;max-width:315px;position:relative}.philosophy-photo:before{content:"";position:absolute;inset:24px -24px -24px 24px;background:#ede5d8;z-index:-1}.philosophy-photo img{width:100%;aspect-ratio:.86;object-fit:cover;filter:saturate(.75)}.photo-caption{display:block;font:italic 12px Georgia,serif;letter-spacing:.04em;margin-top:14px}.philosophy-copy h2{margin:24px 0 28px}.philosophy-copy>p:not(.eyebrow){font-size:14px;line-height:2.3;margin-top:20px}.philosophy-word{position:absolute;bottom:50px;left:80px;font:italic 55px Georgia,serif;color:#b6a992;transform:rotate(-8deg);opacity:.6}.care-section{background:#eee8dd;padding-block:90px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding-bottom:44px}.section-heading h2{margin-top:16px}.section-heading>p{font-size:13px;line-height:2.1;padding-bottom:8px}.treatment{display:grid;grid-template-columns:50px 1fr 255px;align-items:center;gap:24px;padding:44px 0;border-top:1px solid #d2c7b6}.treatment-number{align-self:start;font:italic 26px Georgia,serif;color:#938269}.treatment h3{margin:10px 0 16px}.treatment-copy>p:not(.eyebrow){font-size:13px;line-height:2.1}.treatment>img{width:255px;aspect-ratio:1.2;object-fit:cover;filter:saturate(.8)}.price-list{max-width:430px;margin:22px 0 0}.price-list>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:10px}.price-list dt{font-size:13px}.price-list dt small{font-size:11px;display:inline-block;margin-left:7px}.price-list dd{margin:0;font:19px Georgia,serif;white-space:nowrap}.care-bottom{border-top:1px solid #d2c7b6;padding-top:28px;display:flex;align-items:center;justify-content:space-between;gap:26px}.care-bottom .text-link{flex-shrink:0}.touch-section{display:grid;grid-template-columns:1fr 1.15fr;gap:80px;padding-block:110px}.touch-title h2{margin-top:22px}.touch-loop{display:block;width:125px;height:125px;border:1px solid #bead92;border-radius:50%;position:relative;margin:48px 0 0 28px}.touch-loop:after{content:"";position:absolute;inset:10px -22px -10px 22px;border:1px solid #bead92;border-radius:50%}.touch-list article+article{margin-top:32px;border-top:1px solid var(--line);padding-top:28px}.touch-list article>span{font:10px Arial,sans-serif;letter-spacing:.12em;color:var(--muted)}.touch-list h3{font-size:21px;margin:8px 0 14px}.touch-list p{font-size:14px;line-height:2.1}.owner-section{background:#e8e3d9}.owner-inner{display:grid;grid-template-columns:.65fr 1.35fr;gap:80px;padding-block:78px}.owner-sign{align-self:center;justify-self:center;text-align:center}.owner-sign img{border-radius:50%;margin:0 auto 20px}.owner-sign p{font:italic 27px/1.4 Georgia,serif;color:#827762}.owner-copy h2{font-size:30px;margin:16px 0 25px}.owner-copy>p:not(.eyebrow){font-size:14px;margin-top:16px;line-height:2.2}.owner-copy .owner-name{font-size:21px;margin-top:28px}.owner-name small{display:block;font-size:10px;letter-spacing:.1em}.owner-name span{font:italic 13px Georgia,serif;letter-spacing:.06em;margin-left:20px;color:var(--muted)}.salon-section{padding-block:110px;display:grid;grid-template-columns:.9fr 1.1fr;gap:70px}.salon-heading h2{margin:20px 0 28px;font-size:30px}.salon-heading>p:not(.eyebrow){font:19px/1.8 Georgia,var(--serif)}.salon-heading .text-link{margin-top:20px}.salon-data{margin:0}.salon-data>div{display:grid;grid-template-columns:90px 1fr;gap:16px;padding:18px 0;border-bottom:1px solid var(--line);font-size:13px}.salon-data dt{color:var(--muted)}.salon-data dd{margin:0}.salon-data small{font-size:11px;color:var(--muted)}.salon-data a{text-decoration:underline;text-underline-offset:4px}.reservation{background:#ded4c3;text-align:center;padding:75px 24px 70px;position:relative}.reservation h2{margin:23px 0 18px;font-size:34px}.reservation>p:not(.eyebrow){font-size:13px}.solid-button{display:inline-flex;align-items:center;justify-content:space-between;gap:60px;background:#564c3e;color:#fff;padding:17px 30px;margin-top:29px;font-size:14px;max-width:100%}.solid-button span{font-size:20px}.booking-caption{display:block;font:10px Arial,sans-serif;letter-spacing:.1em;margin-top:14px}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:35px 5%}.footer-brand{font:30px Georgia,serif}.footer-brand small{font-size:11px;display:block;margin-top:4px}.site-footer>p,.site-footer>small{font-size:10px;color:var(--muted)}.mobile-booking,.mobile-only{display:none}
@media(min-width:1600px){.hero{padding-inline:100px}}
@media(max-width:1000px){.site-nav{gap:20px}.hero{padding-inline:6%;gap:30px}.hero-note{right:0;padding:18px 20px;min-width:210px}.hero-note span{font-size:18px}.section-shell{padding-inline:36px}.treatment{grid-template-columns:30px 1fr 210px;gap:20px}.treatment>img{width:210px}.care-bottom{flex-direction:column;align-items:flex-start}.touch-section{gap:45px}.salon-section{gap:40px}.salon-data>div{grid-template-columns:72px 1fr}.owner-inner{gap:40px}.hero-photo figcaption{right:-6px}}
@media(max-width:700px){html{scroll-padding-top:24px}body{font-size:15px;padding-bottom:68px}.section-shell{padding-inline:24px}.site-header{height:84px;padding:0 23px}.brand{gap:9px}.brand img{width:43px;height:43px}.wordmark{font-size:29px}.brand small{font-size:9px}.nav-toggle{display:flex;flex-direction:column;justify-content:center;gap:7px;width:44px;height:44px;background:transparent;border:0;padding:10px;cursor:pointer}.nav-toggle span{height:1px;width:24px;background:var(--ink);transition:transform .2s}.nav-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.nav-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.site-nav{display:none;position:absolute;top:83px;left:0;right:0;padding:20px 24px 28px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 16px 25px #4e473c12}.site-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}.site-nav a{padding:14px 12px}.site-nav .header-book{margin-top:8px}.hero{padding:35px 24px 0;display:block}.hero-copy{padding:0}.hero-copy .eyebrow{font-size:9px}.short-line{width:22px}h1{font-size:clamp(33px,8.8vw,49px);line-height:1.65;letter-spacing:.07em;margin:23px 0 17px}.hero-description{font-size:13px;line-height:2}.hero-description br:nth-of-type(2){display:none}.hero-copy .text-link{margin-top:18px;font-size:12px;gap:35px}.hero-visual{width:80%;margin:42px 2% 0 auto;padding-bottom:55px;max-width:390px}.hero-orbit{inset:-16px 9px 76px -16px}.hero-photo img{aspect-ratio:1.15}.hero-photo figcaption{font-size:11px;right:-7px;top:35px}.hero-note{left:-22%;right:auto;bottom:13px;min-width:210px;padding:17px 22px}.hero-note span{font-size:17px}.hero-note small{font-size:8px}.hero-bottom{margin-top:16px;padding-block:19px;font-size:10px}.hero-bottom p span{display:block;margin:2px 0 0}.scroll-cue{font-size:9px}.scroll-cue span{margin-left:12px}.philosophy{padding-block:75px 82px;display:flex;flex-direction:column;gap:40px}.philosophy-photo{order:2;width:65%;max-width:235px;margin-right:auto;margin-left:10px}.philosophy-photo img{aspect-ratio:1.03}.philosophy-copy{padding-left:6px}.philosophy-copy h2{font-size:29px;margin:18px 0 24px}.philosophy-copy>p:not(.eyebrow){font-size:14px;line-height:2.2;margin-top:20px}.philosophy-word{left:auto;right:22px;bottom:35px;font-size:37px}.photo-caption{font-size:10px}.care-section{padding-block:60px}.section-heading{display:block;padding-bottom:28px}.section-heading h2{font-size:29px;line-height:1.8;margin-top:17px}.section-heading>p{font-size:13px;margin-top:19px}.mobile-only{display:initial}.treatment{grid-template-columns:28px 1fr;gap:16px;padding:30px 0 35px}.treatment-number{font-size:21px}.treatment-copy{min-width:0}.treatment h3{font-size:22px;margin-top:7px}.treatment-copy>p:not(.eyebrow){font-size:13px}.treatment-copy>p br{display:none}.treatment>img{grid-column:2;width:100%;max-width:340px;aspect-ratio:1.55;margin-top:4px}.price-list{margin-top:20px}.price-list>div{gap:10px}.price-list dt{font-size:12px;line-height:1.8}.price-list dt small{display:block;margin:0}.price-list dd{font-size:18px}.care-bottom{gap:16px;padding-top:23px}.fine-print{font-size:11px}.touch-section{display:block;padding-block:65px}.touch-title h2{font-size:28px;margin-top:18px}.touch-loop{display:none}.touch-list{margin-top:35px}.touch-list h3{font-size:20px}.touch-list p{font-size:14px}.owner-inner{display:flex;flex-direction:column;padding-block:55px;gap:32px}.owner-sign{display:flex;align-items:center;gap:20px;align-self:flex-start;text-align:left}.owner-sign img{width:70px;height:70px;margin:0}.owner-sign p{font-size:22px}.owner-copy h2{font-size:26px}.owner-copy>p:not(.eyebrow){font-size:14px}.desktop-only{display:none}.salon-section{display:block;padding-block:65px}.salon-heading h2{font-size:28px}.salon-data{margin-top:30px}.salon-data>div{grid-template-columns:70px 1fr;gap:12px;font-size:12px;padding-block:17px}.salon-data small{font-size:11px}.reservation{padding:55px 24px}.reservation h2{font-size:27px;line-height:1.9}.reservation>.eyebrow{font-size:9px}.reservation>p:not(.eyebrow){font-size:12px}.solid-button{gap:35px;padding:17px 24px;font-size:13px;width:min(100%,340px)}.site-footer{flex-direction:column;text-align:center;padding:30px 20px;gap:15px}.site-footer>p{line-height:1.3}.site-footer>small{font-size:9px}.mobile-booking{display:grid;grid-template-columns:1fr 1.55fr;position:fixed;bottom:0;left:0;right:0;z-index:20;padding:8px 12px calc(8px + env(safe-area-inset-bottom));gap:8px;background:#f8f5eff5;border-top:1px solid var(--line);backdrop-filter:blur(10px)}.mobile-booking a{display:flex;align-items:center;justify-content:center;min-height:44px;font-size:12px;border:1px solid var(--gold)}.mobile-booking a:last-child{background:#564c3e;color:white;border-color:#564c3e}.mobile-booking span{margin-left:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Review adjustments: a text-led opening and an editorial image beside the story. */
.hero{display:block;max-width:1160px;padding:75px 48px 95px}
.hero-copy{max-width:760px;padding:0}
.hero-copy h1{margin-block:26px 27px}
.hero-copy .text-link{margin-top:35px}
.salon-entrance{margin-inline:auto}
@media(max-width:700px){
  .hero{padding:43px 24px 66px}
  .hero-copy h1{margin-block:23px 19px}
  .hero-copy .text-link{margin-top:24px}
  .philosophy{display:block;position:relative;padding-block:67px 82px;min-height:0}
  .philosophy-photo{position:absolute;top:276px;right:24px;left:auto;width:42%;max-width:195px;margin:0;z-index:1}
  .philosophy-photo:before{inset:15px -12px -15px 12px}
  .philosophy-photo img{aspect-ratio:.94;object-fit:cover}
  .philosophy-copy{position:relative;z-index:2}
  .philosophy-copy>p:nth-of-type(2){max-width:56%}
  .photo-caption{font-size:9px;line-height:1.4;margin-top:7px}
}
@media(max-width:360px){.philosophy-photo{top:263px;width:40%}.philosophy-copy>p:nth-of-type(2){max-width:58%}}

/* The photo shares a row with the opening paragraph on phones. */
.philosophy{display:block;position:relative;min-height:580px}
.philosophy-copy{width:54%;margin-left:auto}
.philosophy-intro>p{font-size:14px;line-height:2.3;margin:24px 0 0}
.philosophy-intro .philosophy-photo{position:absolute;left:48px;right:auto;top:172px;width:31%;max-width:315px;margin:0}
@media(max-width:1000px) and (min-width:701px){.philosophy-intro .philosophy-photo{left:36px;top:190px;width:32%}}
@media(max-width:700px){
  .philosophy{display:block;min-height:0}
  .philosophy-copy{width:100%;margin:0}
  .philosophy-intro{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:14px;align-items:start}
  .philosophy-intro>p{margin:0;font-size:14px;line-height:2.2;min-width:0}
  .philosophy-intro .philosophy-photo{position:relative;top:auto;right:auto;left:auto;width:100%;max-width:none;margin:0}
  .philosophy-intro .philosophy-photo img{aspect-ratio:.94}
  .philosophy-copy>p:nth-of-type(2){max-width:none}
}

/* A hero: a softly veiled, full-bleed floral photograph. */
.hero{
  isolation:isolate;
  max-width:none;
  min-height:650px;
  display:flex;
  align-items:center;
  padding:70px max(48px, calc((100vw - 1064px)/2));
  overflow:hidden;
  background:#eee9e1;
}
.hero::before,
.hero::after{content:"";position:absolute;inset:0;pointer-events:none}
.hero::before{
  z-index:-2;
  background:url("assets/hero-flower.png") center 46% / cover no-repeat;
  opacity:.82;
}
.hero::after{
  z-index:-1;
  background:linear-gradient(90deg,rgba(248,245,239,.66),rgba(248,245,239,.38) 57%,rgba(248,245,239,.18));
}
.hero-copy{max-width:760px;color:#403a32}
.hero-copy .eyebrow{color:#56493b}
.hero-copy .short-line{background:#8a7050}
.hero-copy h1{text-shadow:0 1px 12px rgba(255,251,245,.72)}
.hero-description{text-shadow:0 1px 8px rgba(255,251,245,.9)}
.hero-copy .text-link{border-color:#8a7050;text-shadow:0 1px 8px rgba(255,251,245,.9)}
@media(max-width:700px){
  .hero{
    min-height:calc(100svh - 84px - 68px);
    padding:58px 24px 68px;
  }
  .hero::before{background-position:center 43%;opacity:.75}
  .hero::after{background:linear-gradient(90deg,rgba(248,245,239,.72),rgba(248,245,239,.46))}
  .hero-copy{width:100%}
}
