:root{--bg:#1c1412;--panel:#2a1d19;--gold:#d9b77b;--light:#f8ecdc;--muted:#c5b4a6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--light);font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;line-height:1.85}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}.header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:12px max(4vw,20px);background:rgba(24,16,14,.97);border-bottom:1px solid #634b35}.brand{display:flex;align-items:center;gap:12px;color:#efd2a0}.brand .moon{font-size:42px;line-height:1}.brand small,.brand b{display:block}.brand small{font-family:Georgia,serif;font-size:10px;letter-spacing:.18em}.brand b{font-family:serif;font-size:22px;font-weight:500}.header nav{display:flex;align-items:center;gap:28px;font-size:13px}.header nav a:hover{color:var(--gold)}.navline{padding:9px 18px;border:1px solid var(--gold);border-radius:30px;color:var(--gold)!important}#menuToggle{display:none;background:none;color:var(--gold);border:0;font-size:26px}.hero{min-height:660px;display:grid;grid-template-columns:54% 46%;background:radial-gradient(circle at 18% 15%,#50332a 0%,#211714 60%)}.heroText{text-align:center;padding:75px 28px 70px;align-self:center}.overline,.eyebrow{font-size:11px;letter-spacing:.28em;color:var(--gold)}.cat{font-size:48px;color:var(--gold);line-height:1}.cat span{font-size:14px}.new{font:italic 35px Georgia,serif;color:var(--gold);margin:8px 0 -12px}.hero h1{font:normal clamp(34px,4.1vw,64px) serif;letter-spacing:.1em;color:#f7d7a1;margin-bottom:0}.heroEnglish{font:12px Georgia,serif;letter-spacing:.34em;color:var(--gold)}.goldline{height:1px;width:110px;background:var(--gold);margin:24px auto}.hero h2{font:normal clamp(24px,2.4vw,34px)/1.6 serif;letter-spacing:.08em}.lead{color:var(--muted);font-size:14px}.heroBtns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:30px}.btn{display:inline-block;padding:13px 25px;border-radius:4px;font-weight:bold;font-size:14px;text-align:center;transition:opacity .2s}.btn:hover{opacity:.83}.gold{background:var(--gold);color:#241914}.green{background:#169b54;color:white}.outline{border:1px solid var(--gold);color:var(--gold)}.heroPhoto{position:relative;overflow:hidden;min-height:580px}.heroPhoto img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;filter:brightness(.85)}.heroPhoto:before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#211714 0%,transparent 35%)}.photoLabel{position:absolute;bottom:25px;right:25px;z-index:2;font:11px Georgia,serif;letter-spacing:.18em;color:#f5d8a8}.strip{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:#38251e;border-block:1px solid #795c3c}.strip>div{text-align:center;padding:20px 12px;color:var(--gold);border-right:1px solid #654a37}.strip b{margin-left:10px}.strip small{display:block;color:#d5c5b5;font-size:11px}.section{padding:90px max(5vw,22px);text-align:center;scroll-margin-top:80px}.section h2{font:normal clamp(27px,3vw,40px)/1.6 serif;letter-spacing:.05em;margin-bottom:22px}.section .sub,.intro>p:not(.eyebrow){color:var(--muted)}.intro{background:#231915}.intro>p:not(.eyebrow){max-width:760px;margin:0 auto 35px}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1100px;margin:35px auto 0}.features article{padding:28px 20px;border:1px solid #5e4634;background:#2d201b}.features span{font-size:35px;color:var(--gold)}.features h3{font:normal 21px serif;margin:8px 0}.features p{font-size:13px;color:var(--muted);margin:0}.course{background:#1a1210}.courseGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;max-width:1240px;margin:40px auto 0;text-align:left}.priceCard{border:1px solid #6d5135;background:#291d18;padding:0 22px 18px}.cardHead{text-align:center;padding:23px 0 18px;border-bottom:1px solid #5d4535}.cardHead span{font:11px Georgia,serif;letter-spacing:.2em;color:var(--gold)}.cardHead h3{font:normal 22px serif;margin:6px 0 0}.priceRow{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:19px 0;border-bottom:1px solid #514035}.priceRow strong,.priceRow small{display:block}.priceRow strong{font-size:15px}.priceRow small{color:var(--muted);font-size:12px}.price{text-align:right;white-space:nowrap}.price em{display:block;color:#f1bd85;font-size:11px;font-style:normal}.price b{font:normal bold 24px Georgia,serif;color:#f4d4a0}.note{font-size:11px;color:#bda99b;margin-top:15px}.center{text-align:center}.centered{margin-top:24px}.therapists{background:#281b17}.therapistGrid{max-width:1200px;margin:35px auto 0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.therapistGrid article{background:#35241e;padding-bottom:16px;border:1px solid #654b38}.placeholder{height:290px;background:linear-gradient(145deg,#705347,#382820 60%,#6c5145);display:flex;align-items:center;justify-content:center;flex-direction:column;color:#c9ab89}.placeholder span{font-size:45px}.placeholder small{font:10px Georgia,serif;letter-spacing:.12em}.therapistGrid h3{font:normal 18px serif;margin:18px 0 4px}.therapistGrid p{font-size:12px;color:var(--muted)}.access{background:#1b1310}.shops{display:grid;grid-template-columns:1fr 1fr;max-width:1040px;gap:22px;margin:35px auto 0;text-align:left}.shops article{padding:34px;background:#30211b;border:1px solid #76583a}.shopTag{color:var(--gold);letter-spacing:.2em;font:12px Georgia,serif}.shops h3{font:normal 28px serif;margin:10px 0}.shops p{color:#dfd0c4;font-size:14px}.shops a{color:var(--gold);font-size:13px;text-decoration:underline}.reservation{text-align:center;padding:85px 20px;background:radial-gradient(circle,#523529,#211612 75%)}.reservation h2{font:normal 34px serif}.reservation p{color:#dfc8b6}footer{padding:30px max(5vw,22px);display:flex;align-items:center;justify-content:space-between;gap:20px;background:#120c0a;border-top:1px solid #5b422c}footer b{font:normal 23px serif;color:var(--gold)}footer small{display:block;font:10px Georgia,serif;letter-spacing:.13em;color:#ad9784}footer p{font-size:11px;color:#9d8c7e;margin:0}@media(max-width:900px){.header nav{gap:12px;font-size:11px}.hero{grid-template-columns:1fr 1fr}.heroText{padding:55px 20px}.heroPhoto{min-height:540px}.courseGrid{grid-template-columns:1fr 1fr}.therapistGrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){.header{padding:10px 16px}.brand b{font-size:17px}.brand .moon{font-size:32px}#menuToggle{display:block}.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:#211713;padding:20px;flex-direction:column;align-items:stretch;gap:12px;border-bottom:1px solid var(--gold)}.header nav.open{display:flex}.hero{display:flex;flex-direction:column}.heroText{padding:52px 18px 45px}.heroPhoto{min-height:300px}.heroPhoto:before{background:linear-gradient(0deg,#211714 0%,transparent 28%)}.strip{grid-template-columns:1fr}.strip>div{padding:13px}.section{padding:65px 18px}.features,.courseGrid,.shops{grid-template-columns:1fr}.therapistGrid{gap:10px}.placeholder{height:215px}.therapistGrid h3{font-size:15px}.reservation h2{font-size:27px}footer{display:block;text-align:center}footer p{margin-top:20px}}

/* V2: additional supplied salon image */
.featureVisual{display:grid;grid-template-columns:42% 58%;max-width:1380px;margin:0 auto;min-height:420px;border-bottom:1px solid #59402f;background:#2a1d19}.featureVisualText{padding:65px 8%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.featureVisualText h2{font:normal clamp(26px,2.8vw,39px)/1.55 serif;color:#f4dab4;margin:12px 0 18px}.featureVisualText p:not(.eyebrow){font-size:14px;color:#d6c5b7}.featureVisualText .btn{margin-top:14px}.featureVisualPhoto{position:relative;min-height:420px;overflow:hidden}.featureVisualPhoto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 38%}.featureVisualPhoto:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#2a1d19 0%,transparent 22%);pointer-events:none}@media(max-width:680px){.featureVisual{grid-template-columns:1fr}.featureVisualText{padding:38px 22px;align-items:center;text-align:center}.featureVisualPhoto{min-height:260px}.featureVisualPhoto:after{background:linear-gradient(180deg,#2a1d19 0%,transparent 22%)}}

/* V3: top image exchange */
.heroPhoto img{object-position:50% 35%;filter:brightness(.94)}
.featureVisualPhoto img{object-position:center 55%}
@media(max-width:680px){.heroPhoto{min-height:390px}.heroPhoto img{object-position:50% 32%}}

/* V4: keep the model’s face clear of the left-side vignette */
@media(min-width:681px){.heroPhoto img{object-position:12% 35% !important}.heroPhoto:before{background:linear-gradient(90deg,rgba(33,23,20,.48) 0%,rgba(33,23,20,.12) 13%,transparent 23%) !important}}
@media(max-width:680px){.heroPhoto img{object-position:50% 32% !important}}

/* V6: three store locations */
@media(min-width:901px){.shops{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1200px}.shops article{min-width:0}}
@media(min-width:701px){.strip{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){.strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V7: Three primary action buttons in requested order */
.heroBtns .btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;box-sizing:border-box}
@media(max-width:600px){.heroBtns{gap:10px}.heroBtns .btn{flex:1 1 100%;max-width:330px;margin:0}}

/* V8: four locations in requested order */
@media(min-width:701px){.strip{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(min-width:901px){.shops{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1040px}}
@media(min-width:701px) and (max-width:900px){.shops{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V9: footer partner advertisement */
.partnerBanner{background:#17100e;text-align:center;padding:20px 16px 28px;border-top:1px solid rgba(214,177,112,.18)}
.partnerBanner img{display:block;width:400px;max-width:100%;height:auto;margin:0 auto} 
