
:root{
 --ink:#1d211d; --muted:#6d685f; --paper:#f8f3e8; --paper2:#efe6d5;
 --deep:#273b31; --deep2:#17271f; --red:#8f4d3d; --gold:#a78a58;
 --line:rgba(29,33,29,.14); --white:#fffdf7; --shadow:0 18px 46px rgba(31,37,31,.11);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.65}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.13;background-image:radial-gradient(rgba(40,45,39,.2) .65px,transparent .65px);background-size:9px 9px;z-index:-1}
a{text-decoration:none;color:inherit}.wrap{width:min(1180px,calc(100% - 36px));margin:auto}
header{position:sticky;top:0;z-index:50;background:rgba(248,243,232,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:13px;font-family:Georgia,"Times New Roman",serif;font-size:1.08rem;font-weight:700;line-height:1.15}.brand-logo{width:50px;height:50px;object-fit:contain;border-radius:9px}.brand small{display:block;font-family:Inter,system-ui,sans-serif;color:var(--muted);font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;font-weight:600;margin-top:4px}
.links{display:flex;gap:18px;align-items:center;font-size:.91rem}.langs{display:flex;gap:5px}.langs a{padding:5px 8px;border-radius:7px}.langs a.active{background:var(--paper2);font-weight:800}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border:1px solid var(--line);border-radius:10px;background:var(--white);font-weight:800;transition:.18s}.btn:hover{transform:translateY(-1px);box-shadow:0 9px 20px rgba(30,36,30,.10)}.btn.primary{background:var(--deep);border-color:var(--deep);color:#fff}.btn.review{border-color:rgba(143,77,61,.32);color:var(--red)}
.hero{position:relative;overflow:hidden;background:linear-gradient(130deg,#f9f4e9 0%,#efe3ce 72%,#e4d4ba 100%);border-bottom:1px solid var(--line)}.hero:after{content:"治";position:absolute;right:-3vw;bottom:-14vw;font-family:serif;font-size:min(48vw,600px);color:rgba(39,59,49,.045);line-height:1}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.18fr .82fr;gap:52px;align-items:center;padding:92px 0 82px}
.eyebrow{font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:var(--red);font-weight:900}.section-head{display:flex;align-items:center;gap:14px;margin-bottom:8px}.section-head:before{content:"";width:42px;height:2px;background:var(--red)}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.08;margin-top:0}h1{font-size:clamp(3rem,6vw,5.65rem);font-weight:500;letter-spacing:-.025em;margin:14px 0 22px;max-width:850px}h2{font-size:clamp(2.15rem,4vw,3.55rem);font-weight:600;letter-spacing:-.018em;margin:0 0 17px;color:var(--deep2)}h3{font-size:1.35rem;color:var(--deep2)}.lead{font-size:1.15rem;color:var(--muted);max-width:740px}.actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:28px}
.therapy-panel{background:rgba(255,253,247,.78);border:1px solid rgba(39,59,49,.15);border-radius:22px;padding:34px;box-shadow:var(--shadow);position:relative;overflow:hidden}.therapy-panel:before{content:"";position:absolute;width:240px;height:240px;border:1px solid rgba(167,138,88,.15);border-radius:50%;right:-110px;top:-105px}.therapy-panel img{width:88px;height:88px;object-fit:contain;border-radius:12px;margin-bottom:18px}.therapy-panel h3{font-size:1.7rem;margin-bottom:10px}.therapy-list{list-style:none;padding:0;margin:18px 0 0}.therapy-list li{padding:10px 0;border-top:1px solid var(--line);display:flex;gap:10px;align-items:flex-start}.therapy-list li:before{content:"•";color:var(--red);font-weight:900}
section{padding:86px 0}.intro{max-width:790px;margin-bottom:38px}.intro p{color:var(--muted);font-size:1.03rem}.notice{border-left:3px solid var(--gold);padding:12px 16px;background:rgba(255,253,247,.72);color:var(--muted);margin:24px 0 0;border-radius:0 12px 12px 0}
.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.service-card{background:rgba(255,253,247,.86);border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:0 7px 24px rgba(36,40,35,.045);position:relative;overflow:hidden}.service-card:after{content:"";position:absolute;width:110px;height:110px;border:1px solid rgba(39,59,49,.07);border-radius:50%;right:-60px;top:-60px}.service-top{display:flex;gap:16px;align-items:center;margin-bottom:13px}.service-icon{width:54px;height:54px;border-radius:50%;background:#eee4d2;border:1px solid rgba(39,59,49,.13);display:grid;place-items:center;color:var(--deep);font-family:Georgia,serif;font-size:1.55rem;flex:0 0 auto}.service-card h3{margin:0}.service-card p{color:var(--muted);margin:0}.service-card strong{color:var(--deep2)}.service-meta{font-size:.75rem;letter-spacing:.11em;text-transform:uppercase;color:var(--red);font-weight:800;margin-top:13px}
.process{background:#eee5d5;border-block:1px solid var(--line)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.process-card{padding:26px;border-left:1px solid rgba(39,59,49,.22)}.process-num{font-family:Georgia,serif;color:var(--red);font-size:2.2rem;line-height:1}.process-card p{color:var(--muted)}
.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:12px}.gallery img{width:100%;height:330px;object-fit:cover;border-radius:15px;border:1px solid var(--line);box-shadow:0 8px 28px rgba(36,40,35,.07);display:block}.gallery img:nth-child(1){grid-column:span 4}.gallery img:nth-child(2){grid-column:span 8}.gallery img:nth-child(3){grid-column:span 4}.gallery img:nth-child(4){grid-column:span 4}.gallery img:nth-child(5){grid-column:span 4}
.local{background:#f0e7d7;border-block:1px solid var(--line)}.split{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start}.map{width:100%;height:430px;border:0;border-radius:18px;box-shadow:var(--shadow)}.local p{color:var(--muted)}
.faq{display:grid;grid-template-columns:1fr 1fr;gap:12px}.faq details{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:17px 19px}.faq summary{font-weight:800;color:var(--deep);cursor:pointer}.faq p{color:var(--muted);margin:9px 0 0}
.contact-card{background:var(--deep2);color:white;border-radius:20px;padding:34px}.contact-card h2{color:white}.contact-card p{color:rgba(255,255,255,.74)}.contact-card .btn{background:#fff;color:var(--deep2)}.hours{display:grid;grid-template-columns:1fr auto;gap:7px 20px;margin-top:22px}.hours span{padding:7px 0;border-bottom:1px solid rgba(255,255,255,.13)}
footer{background:#17271f;color:rgba(255,255,255,.73);padding:34px 0}.footer-grid{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.footer-brand{display:flex;align-items:center;gap:12px}.footer-brand img{width:52px;height:52px;border-radius:8px}.footer-brand strong{color:#fff;font-family:Georgia,serif}.small{font-size:.87rem;color:var(--muted)}
@media(max-width:900px){.hero-grid,.split{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr}.process-grid{grid-template-columns:1fr}.process-card{border-left:0;border-top:1px solid rgba(39,59,49,.18)}.links>a:not(.btn){display:none}.gallery img{grid-column:span 6!important}.hero-grid{padding:68px 0}}
@media(max-width:620px){.wrap{width:min(100% - 22px,1180px)}nav{min-height:70px}.brand-text{display:none}.brand-logo{width:44px;height:44px}.links{gap:6px}.links .btn{padding:10px 12px;font-size:.82rem}.hero-grid{padding:54px 0}.therapy-panel{padding:25px}section{padding:62px 0}.gallery{grid-template-columns:1fr}.gallery img{grid-column:auto!important;height:260px}.faq{grid-template-columns:1fr}.actions{flex-direction:column}.actions .btn{width:100%}}

/* V8 mobile Maps fix */
.map{display:block;max-width:100%;min-width:0}
.split>*{min-width:0}
@media(max-width:900px){
  .local .split{gap:28px}
  .map{height:360px;width:100%;max-width:100%;border-radius:16px}
}
@media(max-width:620px){
  .local{overflow:hidden}
  .local .split{width:100%;gap:22px}
  .map{height:300px;width:100%;max-width:100%;border-radius:14px;box-shadow:0 10px 28px rgba(28,46,37,.14)}
}
