*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--teal: #08708a;--teal-dark: #032b2f;--teal-medium: #065a6e;--cream: #d0d3c5;--cream-light: #e8eae0;--white: #f9f9f7;--text-dark: #1a1a1a;--text-body: #333;--red-logo: #8b1a1a;--shadow: 0 2px 8px rgba(0,0,0,.12)}html{scroll-behavior:smooth}body{font-family:Lato,sans-serif;color:var(--text-body);line-height:1.7;background:var(--white)}h1,h2,h3,h4{font-family:Roboto Slab,serif;color:var(--teal-dark);line-height:1.3}a{color:var(--teal);text-decoration:none;transition:color .2s}a:hover{color:var(--teal-medium)}img{max-width:100%;height:auto;display:block}.notice-banner{background:var(--teal);color:#fff;text-align:center;padding:.6rem 1rem;font-size:.9rem;font-weight:700;letter-spacing:.02em}.site-header{background:var(--white);border-bottom:1px solid var(--cream);position:sticky;top:0;z-index:100}.header-inner{max-width:1100px;margin:0 auto;padding:.8rem 1.5rem;display:flex;align-items:center;justify-content:space-between}.logo-link{display:flex;align-items:center}.logo-link img{height:90px;width:auto}.main-nav{display:flex;align-items:center}.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:.5rem}.nav-toggle span{display:block;width:24px;height:2px;background:var(--teal-dark);margin:5px 0;transition:.3s}.nav-links{display:flex;gap:2rem;list-style:none}.nav-links a{font-family:Open Sans,sans-serif;font-size:.95rem;font-weight:600;color:var(--teal-dark);text-transform:uppercase;letter-spacing:.05em;padding:.3rem 0;border-bottom:2px solid transparent;transition:border-color .2s,color .2s}.nav-links a:hover,.nav-links a.active{color:var(--teal);border-bottom-color:var(--teal)}.hero{position:relative;min-height:500px;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;overflow:hidden}.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;z-index:0}.hero-bg:after{content:"";position:absolute;inset:0;background:#032b2f99}.hero-content{position:relative;z-index:1;max-width:700px;padding:3rem 1.5rem}.hero h1{font-size:2.5rem;color:#fff;margin-bottom:.5rem}.hero .subtitle{font-size:1.4rem;font-style:italic;margin-bottom:1.2rem;opacity:.95}.hero p{font-size:1.1rem;margin-bottom:1rem;line-height:1.8}.hero ul{list-style:none;margin-bottom:1.5rem}.hero ul li{font-size:1.05rem;padding:.2rem 0}.hero ul li:before{content:"✓";margin-right:.5rem;color:var(--cream)}.page-hero{min-height:300px}.page-hero h1{font-size:2.2rem}.btn{display:inline-block;padding:.85rem 2rem;font-family:Open Sans,sans-serif;font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;border:none;border-radius:4px;cursor:pointer;transition:background .2s,transform .1s}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--teal);color:#fff}.btn-primary:hover{background:var(--teal-medium);color:#fff}.btn-outline{background:transparent;color:#fff;border:2px solid white}.btn-outline:hover{background:#fff;color:var(--teal-dark)}.section{padding:4rem 1.5rem}.section-inner{max-width:900px;margin:0 auto}.section-title{text-align:center;font-size:2rem;margin-bottom:2.5rem}.section-alt{background:var(--cream-light)}.section-dark{background:var(--teal-dark);color:var(--cream-light)}.section-dark h2,.section-dark h3{color:#fff}.therapist-badge{text-align:center;padding:1.5rem;font-family:Roboto Slab,serif;font-size:1.1rem;color:var(--teal-dark);background:var(--cream-light);border-top:1px solid var(--cream);border-bottom:1px solid var(--cream)}.service-card{background:#fff;border-radius:8px;padding:2rem;margin-bottom:2rem;box-shadow:var(--shadow)}.service-card h3{font-size:1.4rem;margin-bottom:1rem;color:var(--teal)}.service-card p{margin-bottom:.8rem}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.price-card{background:#fff;border-radius:8px;padding:2rem;text-align:center;box-shadow:var(--shadow);border-top:4px solid var(--teal)}.price-card h3{font-size:1.3rem;color:var(--teal-dark);margin-bottom:.5rem}.price-card .price{font-size:2.2rem;font-family:Roboto Slab,serif;color:var(--teal);margin-bottom:.5rem}.price-card .detail{font-size:.95rem;color:#666}.gift-note{text-align:center;font-size:1.1rem;font-weight:700;color:var(--teal);margin-top:1rem}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem}.testimonial{background:#fff;border-radius:8px;padding:1.8rem;box-shadow:var(--shadow);border-left:4px solid var(--teal)}.testimonial .stars{color:#e8a731;font-size:1.1rem;margin-bottom:.8rem}.testimonial blockquote{font-style:italic;margin-bottom:1rem;line-height:1.7;color:var(--text-body)}.testimonial .attribution{font-weight:700;color:var(--teal-dark);font-size:.95rem}.about-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:3rem;align-items:start}.about-photo{border-radius:8px;box-shadow:var(--shadow)}.about-text h2{margin-bottom:.3rem}.about-text .license{font-size:.95rem;color:var(--teal);margin-bottom:1rem}.about-text .sub{font-size:1.2rem;color:var(--teal-medium);margin-bottom:1.5rem}.about-text p{margin-bottom:1.2rem}.booking-content{text-align:center}.booking-content .phone-number{font-size:2rem;font-family:Roboto Slab,serif;color:var(--teal);margin:1.5rem 0}.booking-content .phone-number a{color:var(--teal)}.policy-section{max-width:700px;margin:0 auto;text-align:left}.policy-section h3{margin-bottom:1rem;color:var(--teal)}.policy-section ul{margin-left:1.5rem;margin-bottom:1.5rem}.policy-section li{margin-bottom:.5rem}.location-info{margin-top:2rem;padding:1.5rem;background:var(--cream-light);border-radius:8px;text-align:center}.location-info h3{color:var(--teal-dark);margin-bottom:.5rem}.site-footer{background:var(--teal-dark);color:var(--cream);text-align:center;padding:2.5rem 1.5rem}.footer-contact{font-size:1rem;margin-bottom:.5rem}.footer-contact a{color:var(--cream)}.footer-contact a:hover{color:#fff}.footer-service-area{font-size:.9rem;margin-top:.8rem;opacity:.85}.footer-links{margin-top:1rem}.footer-links a{color:var(--cream);font-size:.85rem;opacity:.7}.footer-links a:hover{opacity:1}.prose h2{font-size:1.4rem;margin-top:2rem;margin-bottom:.8rem}.prose p{margin-bottom:1rem}.image-divider{height:300px;background-size:cover;background-position:center;background-attachment:fixed;position:relative}.image-divider:after{content:"";position:absolute;inset:0;background:#032b2f4d}@media(max-width:768px){.nav-toggle{display:block}.nav-links{display:none;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:var(--white);padding:1rem 1.5rem;gap:0;border-bottom:1px solid var(--cream);box-shadow:var(--shadow)}.nav-links.open{display:flex}.nav-links li{padding:.6rem 0;border-bottom:1px solid var(--cream-light)}.nav-links li:last-child{border-bottom:none}.hero{min-height:400px}.hero h1{font-size:1.8rem}.hero .subtitle{font-size:1.1rem}.page-hero{min-height:220px}.page-hero h1{font-size:1.7rem}.section{padding:2.5rem 1.2rem}.section-title{font-size:1.6rem}.about-grid{grid-template-columns:1fr}.about-photo{max-width:350px;margin:0 auto}.testimonials-grid,.pricing-grid{grid-template-columns:1fr}.image-divider{background-attachment:scroll;height:200px}}@media(max-width:480px){.hero h1,.booking-content .phone-number{font-size:1.5rem}}
