:root{--ink:#14213D;--ink-soft:#57626F;--paper:#FFFFFF;--paper-soft:#F5F7F8;--line:#E4E8EA;--teal:#0E7C7B;--teal-dark:#0B6362;--teal-soft:#E6F2F1;--font-display:"Instrument Sans", sans-serif;--font-body:"Inter", sans-serif;--radius:12px;--shadow:0 10px 28px rgba(20,33,61,.07)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--ink);background:var(--paper);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{max-width:1140px;margin:0 auto;padding:0 28px}h1,h2,h3{font-family:var(--font-display);font-weight:600;letter-spacing:-.015em;color:var(--ink)}.eyebrow{font-family:var(--font-body);font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-dark)}button{font-family:inherit;cursor:pointer}:focus-visible{outline:2.5px solid var(--teal);outline-offset:3px}header.site{position:sticky;top:0;z-index:50;background:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}nav{display:flex;align-items:center;justify-content:space-between;padding:18px 28px;max-width:1140px;margin:0 auto}.logo{font-family:var(--font-display);font-size:20px;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:9px}.logo .mark{width:26px;height:26px;border-radius:7px;background:var(--teal);display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;font-weight:700}.nav-links{display:flex;gap:26px;align-items:center}.nav-links a{font-size:14px;font-weight:500;color:var(--ink-soft);transition:color .15s;background:none;border:none;cursor:pointer}.nav-links a:hover{color:var(--ink)}.nav-cta{background:var(--teal);color:#fff;padding:11px 22px;border-radius:9px;font-size:14px;font-weight:600;border:none;transition:background .15s}.nav-cta:hover{background:var(--teal-dark)}.nav-phone{font-size:14.5px;font-weight:700;color:var(--ink);white-space:nowrap}.nav-phone:hover{color:var(--teal-dark)}.nav-toggle{display:none;background:none;border:none;font-size:24px;color:var(--ink);cursor:pointer}.nav-mobile{display:none;flex-direction:column;gap:2px;border-top:1px solid var(--line);background:var(--paper)}.nav-mobile.open{display:flex}.nav-mobile a{padding:14px 28px;font-size:15px;font-weight:500;color:var(--ink-soft);border-bottom:1px solid var(--line);background:none;border-left:none;border-right:none;text-align:left;cursor:pointer}.hero{padding:76px 0 60px}.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}.hero-badge{display:inline-flex;align-items:center;gap:8px;background:var(--teal-soft);color:var(--teal-dark);font-size:12.5px;font-weight:600;padding:7px 14px;border-radius:100px;margin-bottom:22px}.hero-badge .dot{width:6px;height:6px;border-radius:50%;background:var(--teal);display:inline-block}.hero h1{font-size:clamp(30px,3.8vw,46px);line-height:1.16;margin-bottom:20px}.hero h1 .accent{color:var(--teal)}.hero p.lede{font-size:16.5px;color:var(--ink-soft);max-width:470px;margin-bottom:28px}.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:34px}.btn-primary{background:var(--teal);color:#fff;padding:14px 26px;border-radius:9px;font-weight:600;font-size:14.5px;border:none;transition:background .15s,transform .15s}.btn-primary:hover{background:var(--teal-dark);transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--ink);padding:14px 24px;border-radius:9px;font-weight:600;font-size:14.5px;border:1.5px solid var(--line);transition:border-color .15s}.btn-ghost:hover{border-color:var(--ink)}.hero-trust{display:flex;gap:22px;flex-wrap:wrap;font-size:12.5px;color:var(--ink-soft);font-weight:500}.hero-trust span{display:flex;align-items:center;gap:7px}.check{color:var(--teal);font-weight:700}.booking-card{background:var(--paper);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:26px;max-width:400px;margin-left:auto}.booking-card .bc-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.booking-card .bc-head h4{font-size:12.5px;font-weight:700;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em}.live-pill{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--teal-dark);font-weight:600}.live-pill .dot{width:6px;height:6px;border-radius:50%;background:var(--teal);animation:pulse 1.8s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.bc-service{background:var(--paper-soft);border:1px solid var(--line);border-radius:10px;padding:14px 16px;display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.bc-service .name{font-size:14px;font-weight:600;color:var(--ink)}.bc-service .dur{font-size:12px;color:var(--ink-soft);margin-top:2px}.bc-service .price{font-size:15px;font-weight:700;color:var(--teal-dark)}.bc-label{font-size:12px;font-weight:600;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px}.bc-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:20px}.bc-slot{border:1.5px solid var(--line);border-radius:8px;padding:10px 6px;text-align:center;font-size:12.5px;font-weight:600;color:var(--ink-soft);background:none;cursor:default}.bc-slot.active{border-color:var(--teal);background:var(--teal-soft);color:var(--teal-dark)}.bc-confirm{width:100%;background:var(--ink);color:#fff;border:none;padding:13px;border-radius:9px;font-weight:600;font-size:14px}.bc-foot{display:flex;align-items:center;gap:8px;margin-top:14px;font-size:12px;color:var(--ink-soft)}.trust-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper-soft);padding:24px 0}.trust-strip .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:18px;font-size:13px;color:var(--ink-soft);font-weight:600}.trust-strip .wrap span{display:flex;align-items:center;gap:8px}section{padding:88px 0}.section-head{max-width:610px;margin-bottom:48px}.section-head h2{font-size:clamp(26px,3.2vw,36px);margin-top:10px}.section-head p{color:var(--ink-soft);font-size:16px;margin-top:14px}.intro-text{max-width:760px}.intro-text h2{font-size:clamp(26px,3.2vw,34px);margin:10px 0 18px}.intro-text p{color:var(--ink-soft);font-size:16px;margin-bottom:16px}.expertise-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.expertise-list span{font-size:13px;font-weight:600;color:var(--teal-dark);background:var(--teal-soft);padding:8px 15px;border-radius:8px}.approach-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.approach-num{width:38px;height:38px;border-radius:50%;border:1.5px solid var(--teal);color:var(--teal-dark);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:600;font-size:15px;margin-bottom:16px}.approach-card h3{font-size:17px;margin-bottom:8px}.approach-card p{font-size:13.5px;color:var(--ink-soft)}.practitioners{background:var(--paper-soft)}.prac-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.prac-card{display:flex;flex-direction:column}.prac-photo{aspect-ratio:4/5;border-radius:var(--radius);background:var(--paper);display:flex;align-items:center;justify-content:center;color:var(--ink-soft);font-size:13.5px;text-align:center;padding:20px;border:1px solid var(--line);margin-bottom:20px}.prac-card h3{font-size:20px;margin-bottom:6px}.prac-role{font-size:13px;color:var(--teal-dark);font-weight:600;margin-bottom:12px}.prac-card p{font-size:14px;color:var(--ink-soft);margin-bottom:16px}.credentials{display:flex;flex-wrap:wrap;gap:9px}.credentials span{font-size:12px;font-weight:600;background:var(--teal-soft);color:var(--teal-dark);padding:7px 13px;border-radius:8px}.services-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:18px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}.service-row .s-name{font-size:16px;font-weight:600;font-family:var(--font-display)}.service-row .s-tag{display:inline-block;margin-top:6px;font-size:11.5px;font-weight:600;color:var(--teal-dark);background:var(--teal-soft);padding:3px 10px;border-radius:100px}.service-row .s-dur{font-size:13.5px;color:var(--ink-soft)}.service-row .s-price{font-size:16px;font-weight:700;color:var(--ink)}.service-row .btn-book{background:var(--paper);color:var(--teal-dark);padding:10px 20px;border-radius:8px;font-weight:600;font-size:13.5px;border:1.5px solid var(--teal);white-space:nowrap;transition:background .15s,color .15s}.service-row .btn-book:hover{background:var(--teal);color:#fff}.service-row.highlight .s-price{color:var(--teal-dark)}.functional{background:var(--paper-soft)}.functional .wrap{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.ft-list{display:flex;flex-direction:column;gap:14px;margin-top:20px}.ft-item{display:flex;gap:12px;align-items:flex-start;font-size:14.5px;color:var(--ink-soft)}.ft-item .dot{width:6px;height:6px;border-radius:50%;background:var(--teal);margin-top:8px;flex-shrink:0}.ft-visual{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:32px;box-shadow:var(--shadow)}.ft-visual .eyebrow{margin-bottom:14px;display:block}.ft-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px dashed var(--line);font-size:14px}.ft-row:last-child{border-bottom:none}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.step .num{width:38px;height:38px;border-radius:50%;border:1.5px solid var(--teal);color:var(--teal-dark);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:600;font-size:15px;margin-bottom:16px}.step h3{font-size:18px;margin-bottom:9px}.step p{color:var(--ink-soft);font-size:14px}.res-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.res-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:box-shadow .18s}.res-card:hover{box-shadow:var(--shadow)}.res-thumb{aspect-ratio:16/10;background:var(--teal-soft)}.res-body{padding:20px}.res-body .eyebrow{margin-bottom:8px}.res-body h3{font-size:16px;margin-bottom:8px}.res-body p{font-size:13.5px;color:var(--ink-soft)}.faq-list{max-width:760px}.faq-item{border-bottom:1px solid var(--line)}.faq-q{width:100%;text-align:left;background:none;border:none;padding:21px 0;display:flex;justify-content:space-between;align-items:center;font-size:16px;font-weight:600;color:var(--ink)}.faq-q .plus{font-size:20px;color:var(--teal);transition:transform .2s;font-weight:400;display:inline-block}.faq-item.open .faq-q .plus{transform:rotate(45deg)}.faq-a{max-height:0;overflow:hidden;transition:max-height .25s ease}.faq-a p{color:var(--ink-soft);font-size:14.5px;padding-bottom:21px;max-width:640px}.cta-banner{background:var(--ink);color:#fff;text-align:center;padding:76px 0}.cta-banner h2{color:#fff;font-size:clamp(24px,3.4vw,34px);margin-bottom:14px}.cta-banner p{opacity:.75;margin-bottom:28px;font-size:15.5px}.cta-banner .btn-primary{background:var(--teal)}.cta-banner .btn-primary:hover{background:var(--teal-dark)}footer{background:var(--paper);color:var(--ink-soft);padding:52px 0 26px;font-size:14px;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;margin-bottom:36px}footer h4{color:var(--ink);font-size:13.5px;margin-bottom:14px;font-weight:700}footer ul{list-style:none}footer li{margin-bottom:9px}footer a:hover{color:var(--ink)}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:12.5px}#chat-toggle{position:fixed;bottom:26px;right:26px;z-index:80;width:58px;height:58px;border-radius:50%;background:var(--teal);color:#fff;border:none;box-shadow:0 10px 24px #0e7c7b59;display:flex;align-items:center;justify-content:center;font-size:22px;transition:transform .18s,background .18s}#chat-toggle:hover{transform:scale(1.06);background:var(--teal-dark)}#chat-panel{position:fixed;bottom:96px;right:26px;z-index:80;width:360px;max-width:calc(100vw - 40px);height:480px;max-height:calc(100vh - 150px);background:var(--paper);border-radius:16px;box-shadow:0 24px 56px #14213d38;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);opacity:0;transform:translateY(16px) scale(.98);pointer-events:none;transition:opacity .18s,transform .18s}#chat-panel.open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.chat-head{background:var(--ink);color:#fff;padding:16px 18px;display:flex;align-items:center;gap:10px}.chat-head .avatar{width:34px;height:34px;border-radius:9px;background:var(--teal);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700}.chat-head div h5{font-size:14px;font-weight:600}.chat-head div span{font-size:12px;opacity:.7;display:flex;align-items:center;gap:5px}.chat-head div span:before{content:"";width:6px;height:6px;border-radius:50%;background:#5fd08a;display:inline-block}.chat-body{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;background:var(--paper-soft)}.msg{max-width:82%;padding:10px 14px;border-radius:12px;font-size:13.5px;line-height:1.5}.msg.bot{background:var(--paper);border:1px solid var(--line);align-self:flex-start;border-bottom-left-radius:3px}.msg.user{background:var(--ink);color:#fff;align-self:flex-end;border-bottom-right-radius:3px}.chat-input{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line);background:var(--paper)}.chat-input input{flex:1;border:1px solid var(--line);border-radius:9px;padding:10px 14px;font-size:13.5px;font-family:inherit;background:var(--paper-soft)}.chat-input input:focus{outline:none;border-color:var(--teal)}.chat-input button{background:var(--teal);color:#fff;border:none;width:38px;height:38px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0}@media (max-width:900px){.nav-links{display:none}.nav-toggle{display:block}.hero .wrap{grid-template-columns:1fr}.booking-card{max-width:100%;margin:0}.approach-grid{grid-template-columns:1fr 1fr}.prac-grid,.functional .wrap{grid-template-columns:1fr}.service-row{grid-template-columns:1fr;gap:8px}.service-row .btn-book{justify-self:flex-start}.steps{grid-template-columns:1fr;gap:32px}.res-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}#chat-panel{right:16px;bottom:88px}}@media (prefers-reduced-motion: reduce){*{transition:none!important;scroll-behavior:auto!important;animation:none!important}}
