*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#f5f0e7;color:#403f33;font-family:'Yu Gothic','Hiragino Kaku Gothic ProN',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%;height:auto}figure{margin:0}a:focus-visible,button:focus-visible{outline:2px solid #a5794b;outline-offset:5px}::selection{background:#75816a;color:white}.backdrop{position:fixed;inset:0;z-index:-1;background:linear-gradient(90deg,#161d16a8,#24271910),url('salon.jpg') center/cover}.header{position:fixed;inset:0 0 auto;z-index:30;padding:24px 5%;display:flex;align-items:center;justify-content:space-between;color:#fff;transition:background .3s,padding .3s}.header.scrolled,.header.open{background:#303c30f5;padding-top:14px;padding-bottom:14px}.wordmark{display:flex;flex-direction:column;font-family:Georgia,'Times New Roman',serif;font-size:39px;letter-spacing:.14em;line-height:1.1}.wordmark span{font-size:10px;letter-spacing:.22em;margin-bottom:5px}nav{display:flex;gap:29px;align-items:center;font-size:11px}nav .nav-reserve{border:1px solid #ffffff70;padding:14px 20px}.menu-toggle{display:none}.eyebrow{font-family:Arial,sans-serif;font-size:10px;font-weight:600;letter-spacing:.21em}.hero{position:relative;min-height:780px;height:100svh;max-height:1100px;display:flex;align-items:center;padding:150px 9% 100px;color:#fff}.hero h1{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:clamp(42px,4.5vw,70px);font-weight:500;line-height:1.7;letter-spacing:.12em;margin:30px 0}.hero p{font-size:15px;line-height:2.3;letter-spacing:.1em}.line-link{display:inline-flex;align-items:center;justify-content:space-between;gap:65px;min-height:48px;font-size:12px;border-bottom:1px solid #b39668;padding:8px 0;margin-top:20px}.hero-foot{position:absolute;bottom:30px;left:5%;right:5%;display:flex;align-items:center;gap:25px;font-size:10px;letter-spacing:.1em}.hero-foot a{margin-left:auto;font-family:Arial;font-size:9px;letter-spacing:.2em}.concept{padding:105px 8% 115px;background:#f5f0e7;box-shadow:0 -10px 45px #15201725,0 16px 40px #15201725}.section-label{display:flex;align-items:center;gap:35px;font-size:10px;color:#8b7251;margin-bottom:65px}.concept-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:9%;align-items:center}h2{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-weight:500;letter-spacing:.09em}.concept h2{font-size:36px;line-height:1.9;margin:0 0 30px}.concept p{font-size:14px;line-height:2.5;margin:24px 0}.signature{display:block;font-family:Georgia,serif;font-size:21px;font-style:italic;color:#8e795a;margin-top:38px}.concept-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:55% center;box-shadow:18px 20px 0 #e4e4d7}.concept-photo figcaption{font-size:10px;text-align:right;margin-top:35px;color:#868271}.atmosphere{padding:85px 8%;background:#e4e8dc;display:grid;grid-template-columns:1.25fr 1fr;gap:9%;align-items:center}.atmosphere-photo img{width:100%;aspect-ratio:3/2;object-fit:cover;box-shadow:0 15px 35px #22351d23}.atmosphere h2{font-size:30px;line-height:1.9;margin:25px 0}.atmosphere p{font-size:14px;line-height:2.4}.breathing{min-height:370px;padding:90px 8%;display:flex;justify-content:center;text-align:center;align-items:center;color:#fff}.breathing p{font-family:'Yu Mincho',serif;font-size:31px;letter-spacing:.13em;line-height:2;margin:23px 0 0}.gallery{padding:100px 6%;background:#f8f5ee;box-shadow:0 -12px 35px #15201725}.section-head{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:50px}.section-head .eyebrow{color:#8c7250}.section-head h2{font-size:37px;line-height:1.8;margin:23px 0 0}.section-head p{font-size:12px;line-height:2.1;margin:0}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.photo{border:0;padding:0;background:#e1dfd2;cursor:zoom-in;overflow:hidden;box-shadow:0 10px 24px #2331181c}.photo-wide{grid-column:span 2;grid-row:span 2}.photo img{width:100%;height:100%;aspect-ratio:3/2;object-fit:cover;transition:transform .5s}.photo:hover img{transform:scale(1.025)}.photo-wide img{aspect-ratio:auto}.instagram-note{display:flex;justify-content:space-between;gap:30px;align-items:center;padding-top:45px}.instagram-note p{font-size:13px;line-height:2;margin-bottom:0}.instagram-note .line-link{font-family:Arial;font-size:12px}.menu-section{background:#e7e8dc;padding:85px 8%;display:grid;grid-template-columns:1.2fr 1fr;gap:8%;align-items:center}.menu-section .section-head{margin:0}.menu-section h2{font-size:30px}.menu-content p{font-size:14px;line-height:2.2}.menu-list{margin:0}.menu-list>div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #bfc5b4;padding:20px 0;font-size:14px}.menu-list dd{margin:0}.access{padding:100px 8%;background:#f5f0e7}.access-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:9%;align-items:start}.shop-details h3{font-family:Georgia,serif;font-size:45px;letter-spacing:.13em;font-weight:normal;margin:8px 0 25px}.shop-details h3 small{font-size:11px;letter-spacing:.15em;display:block;margin-bottom:6px}dl{margin:0}.shop-details dl>div{padding:20px 0;border-bottom:1px solid #d6d6c6;display:grid;grid-template-columns:90px 1fr;gap:20px;font-size:13px;line-height:2}.shop-details dt{font-size:11px;color:#7c7967}.shop-details dd{margin:0}.access-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:55% center}.access-photo figcaption{font-size:10px;color:#827d68;margin-top:15px}.reservation{text-align:center;background:#344333;color:#f6f1e6;padding:90px 8% 80px}.reservation h2{font-size:37px;line-height:1.8;margin:25px 0}.reservation>p{font-size:13px;line-height:2.2}.reservation-actions{display:grid;grid-template-columns:1.1fr 1fr;gap:25px;max-width:800px;margin:40px auto 27px}.reservation-actions>a{padding:23px 28px;text-align:left;border:1px solid #b8c0a6;transition:background .25s}.reservation-actions>a:hover{background:#ffffff10}.reservation-actions small{font-size:10px;display:block;margin-bottom:13px}.reservation-actions span{display:flex;align-items:center;justify-content:space-between;font-family:Georgia,serif;font-size:27px;letter-spacing:.05em}.reservation-actions b{font-weight:normal;font-size:18px}.reservation .hours{font-size:10px;color:#d1d8c5}footer{background:#293628;color:#e3e7d8;padding:40px 6%;display:flex;align-items:center;justify-content:space-between;gap:30px}footer .wordmark{font-size:33px}footer>div{display:flex;gap:30px;align-items:center;font-size:10px}footer small{font-size:9px}.mobile-booking{display:none}.lightbox{position:fixed;inset:0;max-width:none;max-height:none;width:100%;height:100%;border:0;background:#1b251cf5;color:white;padding:70px 5% 40px}.lightbox::backdrop{background:#0009}.lightbox-close{position:absolute;top:20px;right:5%;padding:10px 18px;color:white;border:1px solid #ffffff80;background:transparent;cursor:pointer;font-size:12px}.lightbox-inner{height:100%;display:flex;flex-direction:column;gap:20px;align-items:center;justify-content:center}.lightbox img{max-width:100%;max-height:85%;object-fit:contain}.lightbox p{font-size:12px;line-height:1.8}.reveal.pending{opacity:0;transform:translateY(20px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}.gallery-content .wp-block-gallery{gap:20px}.gallery-content .wp-block-gallery img{object-fit:cover}.gallery-content .wp-block-image img{height:auto;max-width:100%}
@media(max-width:1050px){nav{gap:18px;font-size:10px}.concept-grid,.access-grid{gap:6%}.concept h2{font-size:30px}.concept p{font-size:13px}.atmosphere{gap:6%}.atmosphere h2{font-size:27px}.section-head h2{font-size:31px}}
@media(max-width:700px){html{scroll-padding-top:85px}body{padding-bottom:56px}.backdrop{background-image:linear-gradient(90deg,#152018ab,#15201850),url('salon.jpg');background-position:62% center}.header{padding:20px 6%}.wordmark{font-size:32px}.wordmark span{font-size:8px}.menu-toggle{display:block;color:#fff;border:1px solid #ffffff80;background:transparent;font-size:10px;letter-spacing:.1em;padding:12px;cursor:pointer}nav{display:none;position:absolute;top:100%;left:0;right:0;padding:20px 7% 30px;background:#303c30fa;flex-direction:column;align-items:stretch;gap:0;font-size:12px}.header.open nav{display:flex}nav a{padding:17px 0;border-bottom:1px solid #ffffff30}nav .nav-reserve{margin-top:20px;padding:17px}.hero{min-height:690px;height:94svh;max-height:950px;padding:130px 7% 110px}.hero h1{font-size:clamp(33px,8.5vw,49px);line-height:1.9;letter-spacing:.07em}.hero p{font-size:13px}.hero .eyebrow{font-size:9px;letter-spacing:.14em}.hero-foot{left:7%;right:7%;font-size:9px;gap:12px;flex-wrap:wrap;bottom:28px}.hero-foot>span:first-child{display:none}.hero-foot a{font-size:8px}.concept{padding:65px 7% 75px}.section-label{margin-bottom:35px;gap:22px;font-size:9px}.concept-grid{grid-template-columns:1fr;gap:40px}.concept h2{font-size:28px;line-height:1.9}.concept p{font-size:14px;line-height:2.3}.signature{font-size:20px}.concept-photo{margin-right:12px}.concept-photo img{aspect-ratio:4/3;box-shadow:12px 14px 0 #e4e4d7}.concept-photo figcaption{margin-top:27px;font-size:10px}.atmosphere{padding:65px 7%;grid-template-columns:1fr;gap:35px}.atmosphere h2{font-size:28px}.atmosphere p{font-size:14px}.atmosphere-copy{padding-left:5%}.breathing{min-height:290px;padding:65px 7%}.breathing p{font-size:23px;letter-spacing:.08em}.gallery,.access{padding:70px 7%}.section-head{display:block;margin-bottom:35px}.section-head h2{font-size:30px}.section-head p{margin-top:24px;font-size:12px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.photo-wide{grid-column:span 2;grid-row:auto}.photo-wide img{aspect-ratio:3/2}.photo img{aspect-ratio:1}.instagram-note{display:block;padding-top:35px}.instagram-note .line-link{width:100%}.menu-section{display:block;padding:60px 7%}.menu-section h2{font-size:26px}.menu-content{margin-top:28px}.menu-content p{font-size:13px}.access-grid{grid-template-columns:1fr;gap:40px}.shop-details dl>div{grid-template-columns:75px 1fr;gap:12px;font-size:13px}.access-photo img{aspect-ratio:4/3}.reservation{padding:65px 7%}.reservation h2{font-size:27px;letter-spacing:.04em}.reservation-actions{grid-template-columns:1fr;gap:15px;margin-top:30px}.reservation-actions>a{padding:22px}.reservation-actions span{font-size:27px}.reservation .hours{font-size:10px;line-height:2}footer{padding:32px 7%;align-items:start}footer>div{display:flex;flex-direction:column;gap:15px;align-items:flex-end;font-size:9px}footer .wordmark{font-size:29px}.mobile-booking{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:25;height:56px;box-shadow:0 -3px 18px #15201725;background:#f5f0e7}.mobile-booking a{display:flex;align-items:center;justify-content:center;font-size:12px;letter-spacing:.05em}.mobile-booking a:first-child{background:#344333;color:#fff}.lightbox{padding-left:5%;padding-right:5%}.lightbox p{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.reveal.pending{opacity:1;transform:none}}
