@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700&family=Inter:wght@300;400;600;700&display=swap";*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.6;color:#2a1810;background-color:#faf8f5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{min-height:100vh;display:flex;flex-direction:column}.container{max-width:1200px;margin:0 auto;padding:0 20px}@media (min-width: 1440px){.container{max-width:1400px}}h1,h2,h3,h4{font-family:Playfair Display,serif;font-weight:700;line-height:1.2}h1{font-size:clamp(2.5rem,5vw,4rem)}@media (min-width: 768px){h1{font-size:clamp(3rem,6vw,5rem)}}h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:1.5rem}h3{font-size:clamp(1.25rem,3vw,1.75rem);margin-bottom:1rem}p{margin-bottom:1rem}a{color:#8b2635;text-decoration:none;transition:opacity .2s ease}a:hover{opacity:.8}.nav-desktop{position:fixed;top:0;left:0;right:0;z-index:100;background:transparent;transition:all .3s ease}@media (max-width: 768px){.nav-desktop{display:none}}.nav-desktop.scrolled{background:white;box-shadow:0 2px 10px #0000000d}.nav-desktop.scrolled .nav-container{padding:.75rem 0}.nav-desktop .nav-container{display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:0 auto;padding:1.5rem 20px;transition:padding .3s ease}.nav-desktop .nav-logo{height:50px;width:auto}.nav-desktop .nav-links{display:flex;list-style:none;gap:2rem}.nav-desktop .nav-links a{color:#2a1810;font-weight:500;position:relative;padding-bottom:2px}.nav-desktop .nav-links a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:#8b2635;transition:width .3s ease}.nav-desktop .nav-links a:hover:after{width:100%}.nav-desktop .nav-cta{background:#8b2635;color:#fff;padding:.75rem 1.5rem;border-radius:4px;font-weight:600}.nav-desktop .nav-cta:hover{background:rgb(98.9491525424,27.0508474576,37.7288135593);opacity:1}.nav-mobile{position:fixed;bottom:20px;right:20px;z-index:101}@media (min-width: 768px){.nav-mobile{display:none}}.nav-mobile .nav-toggle{width:56px;height:56px;background:#8b2635;border:none;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;box-shadow:0 4px 15px #0003}.nav-mobile .nav-toggle span{width:24px;height:2px;background:white;transition:all .3s ease}.nav-mobile .nav-toggle:active{transform:scale(.95)}.nav-sheet{position:fixed;bottom:0;left:0;right:0;background:white;border-radius:20px 20px 0 0;box-shadow:0 -4px 20px #0000001a;padding:2rem;z-index:102;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.nav-sheet .nav-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:2rem;color:#8b8680;cursor:pointer}.nav-sheet ul{list-style:none;margin:2rem 0}.nav-sheet ul li{border-bottom:1px solid rgb(212.037037037,210.1851851852,207.962962963)}.nav-sheet ul li a{display:block;padding:1rem 0;color:#2a1810;font-size:1.125rem;font-weight:500}.nav-sheet .nav-sheet-contact{display:flex;gap:1rem}.nav-sheet .nav-sheet-contact a{flex:1;text-align:center;padding:1rem;border-radius:4px;font-weight:600}.nav-sheet .nav-sheet-contact a.btn-primary{background:#8b2635;color:#fff}.nav-sheet .nav-sheet-contact a.btn-secondary{border:2px solid #8b2635;color:#8b2635}.hero{height:100vh;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.hero .hero-media{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1}.hero .hero-media:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to bottom,rgba(0,0,0,.3),rgba(0,0,0,.5))}.hero .hero-media .hero-image,.hero .hero-media video{width:100%;height:100%;object-fit:cover}.hero .hero-content{text-align:center;color:#fff;z-index:1;animation:fadeIn 1s ease}.hero .hero-content h1{margin-bottom:1rem;text-shadow:2px 2px 10px rgba(0,0,0,.5)}.hero .hero-content .tagline{font-size:clamp(1rem,2vw,1.5rem);font-weight:300;letter-spacing:2px;text-transform:uppercase;opacity:.95}.hero .scroll-indicator{position:absolute;bottom:30px;left:50%;transform:translate(-50%);width:30px;height:50px;display:flex;align-items:center;justify-content:center;animation:bounce 2s infinite}.hero .scroll-indicator span{display:block;width:20px;height:20px;border-right:2px solid white;border-bottom:2px solid white;transform:rotate(45deg);opacity:.8}@keyframes bounce{0%,20%,50%,80%,to{transform:translate(-50%) translateY(0)}40%{transform:translate(-50%) translateY(-10px)}60%{transform:translate(-50%) translateY(-5px)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}section{padding:80px 0}@media (max-width: 768px){section{padding:60px 0}}section h2{text-align:center;color:#2a1810;margin-bottom:3rem}section .subtitle{text-align:center;font-size:1.25rem;color:#8b8680;margin-top:-2rem;margin-bottom:3rem}section .section-note{text-align:center;color:#8b8680;font-style:italic;margin-bottom:2rem}.page-content{padding-top:100px;min-height:calc(100vh - 200px)}@media (max-width: 768px){.page-content{padding-top:20px}}.intro{padding:80px 0;background:#faf8f5}.intro .lead{font-size:1.25rem;line-height:1.8;text-align:center;max-width:900px;margin:0 auto 3rem;color:#2a1810}.intro .service-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.intro .service-overview .service-card-link{text-decoration:none}.intro .service-overview .service-card-link .service-preview{background:white;padding:2rem;border-radius:8px;box-shadow:0 2px 10px #0000000d;transition:all .3s ease;text-align:center;height:100%;display:flex;flex-direction:column;align-items:center}.intro .service-overview .service-card-link .service-preview:hover{transform:translateY(-5px);box-shadow:0 5px 20px #0000001a}.intro .service-overview .service-card-link .service-preview .service-logo{height:60px;width:auto;margin-bottom:1rem}.intro .service-overview .service-card-link .service-preview h3{color:#2a1810;margin-bottom:1rem}.intro .service-overview .service-card-link .service-preview p{color:#8b8680;margin:0}.therapy-page{padding:40px 0}.therapy-page .therapy-header{text-align:center;margin-bottom:3rem}.therapy-page .therapy-header .therapy-logo{height:80px;width:auto;margin-bottom:1.5rem}@media (max-width: 768px){.therapy-page .therapy-header .therapy-logo{height:60px;margin-bottom:1rem}}.therapy-page .therapy-header h1{color:#2a1810;margin-bottom:.5rem;font-size:clamp(2rem,5vw,3rem);line-height:1.2}@media (max-width: 768px){.therapy-page .therapy-header h1{font-size:1.5rem;margin-bottom:1rem;line-height:1.3;padding:0 10px}}.therapy-page .therapy-header .subtitle{font-size:1.25rem;color:#8b8680;margin-bottom:1.5rem;line-height:1.4;margin-top:0}@media (max-width: 768px){.therapy-page .therapy-header .subtitle{font-size:.95rem;margin-bottom:1rem;margin-top:.5rem;padding:0 10px}}.therapy-page .therapy-header .therapy-website-link{display:inline-block;background:#8b2635;color:#fff;padding:.75rem 2rem;border-radius:4px;font-weight:600;transition:all .3s ease}.therapy-page .therapy-header .therapy-website-link:hover{background:rgb(98.9491525424,27.0508474576,37.7288135593);transform:translateY(-2px)}.lessons-page{padding:40px 0}.lessons-page h1{text-align:center;color:#2a1810;margin-bottom:3rem}.lessons-page .lesson-images{margin-top:3rem;text-align:center}.lessons-page .lesson-images img{max-width:100%;height:auto;border-radius:8px}.programs-page{padding:40px 0}.programs-page h1{text-align:center;color:#2a1810;margin-bottom:1rem}.programs-page .programs-separator{width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;margin-top:3rem;margin-bottom:3rem;height:300px;overflow:hidden}@media (max-width: 768px){.programs-page .programs-separator{height:200px;margin-top:2rem;margin-bottom:2rem}}.programs-page .programs-separator .separator-banner{width:100%;height:100%;object-fit:cover;object-position:center}.programs-page .program-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem;margin-top:3rem}.programs-page .program-images img{width:100%;height:300px;object-fit:cover;border-radius:8px}.events-page{padding:40px 0}.events-page h1{text-align:center;color:#2a1810;margin-bottom:1rem}.boarding-page{padding:40px 0}.boarding-page h1{text-align:center;color:#2a1810;margin-bottom:1rem}.boarding-page h2{color:#8b2635;margin-bottom:2rem;font-size:1.75rem}.boarding-page h3{color:#2a1810;margin-bottom:1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:700;text-transform:uppercase;font-size:.875rem;letter-spacing:1px}.contact-page{padding:40px 0}@media (max-width: 768px){.contact-page{padding:15px 0}}.contact-page h1{text-align:center;color:#2a1810;margin-bottom:2rem;font-size:clamp(1.75rem,5vw,3.5rem)}@media (max-width: 768px){.contact-page h1{margin-bottom:1.5rem}}.contact-page .desktop-only{display:block}@media (max-width: 768px){.contact-page .desktop-only{display:none}}.contact-page .contact-compact{display:none;background:white;border-radius:8px;padding:1rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #0000000d}@media (max-width: 768px){.contact-page .contact-compact{display:block}}.contact-page .contact-compact .compact-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.75rem;font-size:.9rem}.contact-page .contact-compact .compact-row .compact-item{flex:1;min-width:150px}.contact-page .contact-compact .compact-row .compact-item strong{color:#8b2635;margin-right:.25rem}.contact-page .contact-compact .compact-row .compact-item .facebook-link{color:#1877f2;font-weight:500}.contact-page .contact-compact .compact-row .compact-item .partner-link{color:#8b2635;font-weight:500}.contact-page .contact-compact .compact-row .compact-item .separator{margin:0 .5rem;color:#8b8680}.contact-page .contact-compact .compact-contact{border-top:1px solid #f0f0f0;padding-top:.75rem}.contact-page .contact-compact .compact-contact .reveal-contact{display:inline-flex;align-items:center;gap:.4rem;background:none;border:1px solid #8b8680;border-radius:20px;padding:.3rem .8rem;font-size:.85rem;color:#2a1810;cursor:pointer;transition:all .2s ease}.contact-page .contact-compact .compact-contact .reveal-contact .icon{font-size:1rem;opacity:.8}.contact-page .contact-compact .compact-contact .reveal-contact .text{font-weight:500}.contact-page .contact-compact .compact-contact .reveal-contact:hover{border-color:#8b2635;background:rgba(139,38,53,.05)}.contact-page .contact-compact .compact-contact .reveal-contact:active{transform:scale(.98)}.contact-page .contact-compact .compact-contact .protected-inline{display:flex;flex-wrap:wrap;gap:.25rem;font-size:.9rem}.contact-page .contact-compact .compact-contact .protected-inline a{color:#8b2635;font-weight:500}.contact-page .contact-compact .compact-contact .protected-inline a:hover{text-decoration:underline}.contact-page .contact-compact .compact-contact .protected-inline .separator{margin:0 .25rem;color:#8b8680}.contact-page .contact-header{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;max-width:1000px;margin:0 auto 3rem}@media (max-width: 768px){.contact-page .contact-header{display:none}}.contact-page .contact-header .location-info,.contact-page .contact-header .partner-info,.contact-page .contact-header .direct-contact{text-align:center}@media (max-width: 768px){.contact-page .contact-header .location-info,.contact-page .contact-header .partner-info,.contact-page .contact-header .direct-contact{padding:1rem 0}}.contact-page .contact-header .location-info h3,.contact-page .contact-header .partner-info h3,.contact-page .contact-header .direct-contact h3{color:#8b2635;margin-bottom:1rem;font-size:1.25rem}@media (max-width: 768px){.contact-page .contact-header .location-info h3,.contact-page .contact-header .partner-info h3,.contact-page .contact-header .direct-contact h3{font-size:1.1rem;margin-bottom:.75rem}}.contact-page .contact-header .location-info .address,.contact-page .contact-header .partner-info .address,.contact-page .contact-header .direct-contact .address{font-size:1rem;line-height:1.6;color:#2a1810;margin-bottom:.75rem}@media (max-width: 768px){.contact-page .contact-header .location-info .address,.contact-page .contact-header .partner-info .address,.contact-page .contact-header .direct-contact .address{font-size:.95rem;line-height:1.4}}.contact-page .contact-header .location-info .social-links,.contact-page .contact-header .partner-info .social-links,.contact-page .contact-header .direct-contact .social-links{margin-top:.75rem}.contact-page .contact-header .location-info .social-links .facebook-link,.contact-page .contact-header .partner-info .social-links .facebook-link,.contact-page .contact-header .direct-contact .social-links .facebook-link{color:#1877f2;font-size:.95rem;font-weight:500}.contact-page .contact-header .location-info .social-links .facebook-link:hover,.contact-page .contact-header .partner-info .social-links .facebook-link:hover,.contact-page .contact-header .direct-contact .social-links .facebook-link:hover{text-decoration:underline}.contact-page .contact-header .direct-contact .visual-captcha{display:flex;flex-direction:column;align-items:center;padding:1rem 0}.contact-page .contact-header .direct-contact .visual-captcha .envelope-button{background:linear-gradient(135deg,#f8f8f8 0%,#e8e8e8 100%);border:2px solid #ddd;border-radius:50%;width:80px;height:80px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;padding:0}.contact-page .contact-header .direct-contact .visual-captcha .envelope-button .envelope-icon{font-size:2rem;margin-bottom:.25rem}.contact-page .contact-header .direct-contact .visual-captcha .envelope-button .hint-text{font-size:.7rem;color:#8b8680;font-weight:500}.contact-page .contact-header .direct-contact .visual-captcha .envelope-button:hover{transform:scale(1.05);border-color:#8b2635;background:linear-gradient(135deg,#fff 0%,#f0f0f0 100%);box-shadow:0 4px 12px #0000001a}.contact-page .contact-header .direct-contact .visual-captcha .envelope-button:hover .hint-text{color:#8b2635}.contact-page .contact-header .direct-contact .visual-captcha .envelope-button:active{transform:scale(.98)}.contact-page .contact-header .direct-contact .protected-info .contact-item{margin-bottom:.75rem;line-height:1.4}@media (max-width: 768px){.contact-page .contact-header .direct-contact .protected-info .contact-item{margin-bottom:.6rem;line-height:1.3}}.contact-page .contact-header .direct-contact .protected-info .contact-item strong{color:#2a1810;font-size:.95rem}@media (max-width: 768px){.contact-page .contact-header .direct-contact .protected-info .contact-item strong{font-size:.9rem}}.contact-page .contact-header .direct-contact .protected-info .contact-item a{color:#8b2635;font-size:.9rem}@media (max-width: 768px){.contact-page .contact-header .direct-contact .protected-info .contact-item a{font-size:.85rem}}.contact-page .contact-header .direct-contact .protected-info .contact-item a:hover{text-decoration:underline}.contact-page .website-link-button{display:inline-block;background:#8b2635;color:#fff;padding:.6rem 1.5rem;border-radius:6px;font-weight:600;font-size:.95rem;transition:all .3s ease}@media (max-width: 768px){.contact-page .website-link-button{padding:.5rem 1.25rem;font-size:.9rem}}.contact-page .website-link-button:hover{background:rgb(98.9491525424,27.0508474576,37.7288135593);transform:translateY(-2px);box-shadow:0 4px 12px #8b26354d}.contact-page .staff-section{margin-top:3rem}@media (max-width: 768px){.contact-page .staff-section{margin-top:0}}.contact-page .staff-section h2{text-align:center;color:#2a1810;margin-bottom:2.5rem;font-size:clamp(1.75rem,4vw,2.5rem)}@media (max-width: 768px){.contact-page .staff-section h2{margin-bottom:1.25rem;font-size:1.5rem}}.contact-page .staff-section .staff-member{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-bottom:4rem;align-items:start}@media (max-width: 768px){.contact-page .staff-section .staff-member{grid-template-columns:1fr;gap:1.5rem;margin-bottom:2.5rem}}@media (min-width: 768px){.contact-page .staff-section .staff-member.reverse .staff-images{order:2}.contact-page .staff-section .staff-member.reverse .staff-content{order:1}}.contact-page .staff-section .staff-member .staff-images .main-image{width:100%;aspect-ratio:4/3;overflow:hidden;border-radius:12px;margin-bottom:1rem;background:#f5f5f5}.contact-page .staff-section .staff-member .staff-images .main-image img{width:100%;height:100%;object-fit:cover}.contact-page .staff-section .staff-member .staff-images .image-thumbnails{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.contact-page .staff-section .staff-member .staff-images .image-thumbnails .thumbnail{aspect-ratio:1;overflow:hidden;border-radius:8px;border:2px solid transparent;cursor:pointer;transition:all .3s ease;background:none;padding:0}.contact-page .staff-section .staff-member .staff-images .image-thumbnails .thumbnail.active{border-color:#8b2635}.contact-page .staff-section .staff-member .staff-images .image-thumbnails .thumbnail:hover:not(.active){border-color:#8b8680}.contact-page .staff-section .staff-member .staff-images .image-thumbnails .thumbnail img{width:100%;height:100%;object-fit:cover}.contact-page .staff-section .staff-member .staff-header-mobile{display:none;margin-bottom:1rem}@media (max-width: 768px){.contact-page .staff-section .staff-member .staff-header-mobile{display:block}}.contact-page .staff-section .staff-member .staff-header-mobile h3{color:#2a1810;font-size:1.5rem;margin-bottom:.25rem}.contact-page .staff-section .staff-member .staff-header-mobile .staff-title{color:#8b2635;font-size:1rem;font-weight:600}.contact-page .staff-section .staff-member .staff-content .staff-header-desktop{display:block}@media (max-width: 768px){.contact-page .staff-section .staff-member .staff-content .staff-header-desktop{display:none}}.contact-page .staff-section .staff-member .staff-content .staff-header-desktop h3{color:#2a1810;font-size:2rem;margin-bottom:.5rem}.contact-page .staff-section .staff-member .staff-content .staff-header-desktop .staff-title{color:#8b2635;font-size:1.25rem;font-weight:600;margin-bottom:1.5rem}.contact-page .staff-section .staff-member .staff-content .staff-bio p{color:#2a1810;line-height:1.8;font-size:1.05rem;margin-bottom:1rem}.contact-page .staff-section .staff-member .staff-content .staff-bio p:last-child{margin-bottom:0}.contact-page .staff-section .staff-coming-soon{background:linear-gradient(135deg,#f5f5f5 0%,#e8e8e8 100%);padding:3rem;border-radius:12px;text-align:center;margin-top:3rem}.contact-page .staff-section .staff-coming-soon h3{color:#2a1810;font-size:1.75rem;margin-bottom:1rem}.contact-page .staff-section .staff-coming-soon .coming-soon-text{color:#8b8680;font-size:1.1rem;font-style:italic}.contact-page .booking-section{margin-top:4rem;padding-top:3rem;border-top:2px solid #f0f0f0}.contact-page .booking-section h2{text-align:center;color:#2a1810;margin-bottom:2.5rem;font-size:clamp(1.75rem,4vw,2.5rem)}.contact-page .booking-section .booking-form{max-width:700px;margin:0 auto;background:white;padding:2.5rem;border-radius:12px;box-shadow:0 4px 20px #00000014}@media (max-width: 768px){.contact-page .booking-section .booking-form{padding:1.5rem}}.contact-page .booking-section .booking-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}@media (max-width: 768px){.contact-page .booking-section .booking-form .form-row{grid-template-columns:1fr;gap:1rem}}.contact-page .booking-section .booking-form .form-group{margin-bottom:1.5rem}.contact-page .booking-section .booking-form .form-group:last-of-type{margin-bottom:0}.contact-page .booking-section .booking-form .form-group label{display:block;color:#2a1810;font-weight:600;margin-bottom:.5rem;font-size:.95rem}.contact-page .booking-section .booking-form .form-group input,.contact-page .booking-section .booking-form .form-group select,.contact-page .booking-section .booking-form .form-group textarea{width:100%;padding:.75rem 1rem;border:1px solid #ddd;border-radius:6px;font-size:1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;transition:all .2s ease;background:white}.contact-page .booking-section .booking-form .form-group input:focus,.contact-page .booking-section .booking-form .form-group select:focus,.contact-page .booking-section .booking-form .form-group textarea:focus{outline:none;border-color:#8b2635;box-shadow:0 0 0 3px #8b26351a}.contact-page .booking-section .booking-form .form-group input::placeholder,.contact-page .booking-section .booking-form .form-group select::placeholder,.contact-page .booking-section .booking-form .form-group textarea::placeholder{color:#999}.contact-page .booking-section .booking-form .form-group select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:1.25em;padding-right:2.5rem}.contact-page .booking-section .booking-form .form-group textarea{resize:vertical;min-height:100px}.contact-page .booking-section .booking-form .form-footer{margin-top:2rem;display:flex;justify-content:space-between;align-items:center}@media (max-width: 768px){.contact-page .booking-section .booking-form .form-footer{flex-direction:column;gap:1rem}}.contact-page .booking-section .booking-form .form-footer .form-note{color:#8b8680;font-size:.9rem;margin:0}.contact-page .booking-section .booking-form .form-footer .submit-btn{background:#ccc;color:#fff;padding:.85rem 2rem;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:not-allowed;opacity:.6;transition:all .3s ease}.contact-page .booking-section .booking-form .form-footer .submit-btn:not(:disabled){background:#8b2635;cursor:pointer;opacity:1}.contact-page .booking-section .booking-form .form-footer .submit-btn:not(:disabled):hover{background:rgb(98.9491525424,27.0508474576,37.7288135593);transform:translateY(-2px);box-shadow:0 4px 12px #8b26354d}.therapy,.therapy-page{background:white}.therapy .insurance-badge,.therapy-page .insurance-badge{text-align:center;margin-bottom:2rem}.therapy .insurance-badge span,.therapy-page .insurance-badge span{background:#4CAF50;color:#fff;padding:.5rem 1.5rem;border-radius:25px;font-weight:600;display:inline-block}.therapy .services-grid,.therapy-page .services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-bottom:3rem}.therapy .services-grid .service-card,.therapy-page .services-grid .service-card{background:#faf8f5;padding:2rem;border-radius:8px}.therapy .services-grid .service-card h3,.therapy-page .services-grid .service-card h3{color:#8b2635;margin-bottom:1rem;font-size:1.25rem}.therapy .services-grid .service-card ul,.therapy-page .services-grid .service-card ul{list-style:none}.therapy .services-grid .service-card ul li,.therapy-page .services-grid .service-card ul li{padding-left:1.5rem;position:relative;margin-bottom:.75rem;line-height:1.5}.therapy .services-grid .service-card ul li:before,.therapy-page .services-grid .service-card ul li:before{content:"•";position:absolute;left:0;color:#8b2635}.therapy .equipment-showcase,.therapy-page .equipment-showcase{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:3rem}.therapy .equipment-showcase img,.therapy-page .equipment-showcase img{width:100%;height:200px;object-fit:cover;border-radius:8px}.therapy .contact-therapy,.therapy-page .contact-therapy{text-align:center;background:#faf8f5;padding:2rem;border-radius:8px}.therapy .contact-therapy p,.therapy-page .contact-therapy p{margin-bottom:.5rem}.lessons .lesson-tabs,.lessons-page .lesson-tabs{display:flex;justify-content:center;gap:1rem;margin-bottom:3rem}.lessons .lesson-tabs .tab,.lessons-page .lesson-tabs .tab{background:transparent;border:2px solid #8b2635;color:#8b2635;padding:.75rem 2rem;border-radius:4px;font-weight:600;cursor:pointer;transition:all .3s ease}.lessons .lesson-tabs .tab.active,.lessons .lesson-tabs .tab:hover,.lessons-page .lesson-tabs .tab.active,.lessons-page .lesson-tabs .tab:hover{background:#8b2635;color:#fff}.lessons .requirement-note,.lessons-page .requirement-note{text-align:center;color:#8b8680;font-style:italic;margin-bottom:2rem}.lessons .lesson-grid,.lessons-page .lesson-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.lessons .lesson-grid .lesson-card,.lessons-page .lesson-grid .lesson-card{background:white;padding:2rem;border-radius:8px;box-shadow:0 2px 10px #0000000d}.lessons .lesson-grid .lesson-card h3,.lessons-page .lesson-grid .lesson-card h3{color:#2a1810;margin-bottom:.5rem}.lessons .lesson-grid .lesson-card .price,.lessons-page .lesson-grid .lesson-card .price{color:#8b2635;font-size:1.25rem;font-weight:700;margin-bottom:1rem}.lessons .lesson-grid .lesson-card ul,.lessons-page .lesson-grid .lesson-card ul{list-style:none}.lessons .lesson-grid .lesson-card ul li,.lessons-page .lesson-grid .lesson-card ul li{padding-left:1.5rem;position:relative;margin-bottom:.5rem}.lessons .lesson-grid .lesson-card ul li:before,.lessons-page .lesson-grid .lesson-card ul li:before{content:"→";position:absolute;left:0;color:#8b2635}.programs,.programs-page{background:white}.programs .age-badge,.programs-page .age-badge{background:#8b2635;color:#fff;padding:.25rem .75rem;border-radius:15px;font-size:.875rem;display:inline-block;margin-bottom:.5rem}.programs .new-badge,.programs-page .new-badge{position:absolute;top:1rem;right:1rem;background:#4CAF50;color:#fff;padding:.25rem .75rem;border-radius:4px;font-weight:600;font-size:.75rem}.programs .program-cards,.programs-page .program-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;margin-bottom:3rem}.programs .program-cards .program-card,.programs-page .program-cards .program-card{background:#faf8f5;padding:2rem;border-radius:8px;position:relative}.programs .program-cards .program-card h3,.programs-page .program-cards .program-card h3{color:#2a1810;margin-bottom:.5rem}.programs .program-cards .program-card .price,.programs-page .program-cards .program-card .price{color:#8b2635;font-weight:700;margin-bottom:1rem}.programs .new-programs,.programs-page .new-programs{margin-top:3rem}.programs .new-programs h3,.programs-page .new-programs h3{text-align:center;margin-bottom:1rem}.programs .new-programs .availability-note,.programs-page .new-programs .availability-note{text-align:center;color:#8b8680;font-style:italic;margin-bottom:2rem}.events .coming-soon-badge,.events-page .coming-soon-badge{text-align:center;margin-bottom:1rem}.events .coming-soon-badge:before,.events-page .coming-soon-badge:before{content:"";display:inline-block;width:10px;height:10px;background:#4CAF50;border-radius:50%;margin-right:.5rem;animation:pulse 2s infinite}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.events .event-cards,.events-page .event-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;margin-bottom:2rem}.events .event-cards .event-card,.events-page .event-cards .event-card{background:white;border-radius:8px;overflow:hidden;box-shadow:0 2px 10px #0000000d}.events .event-cards .event-card .image-container,.events-page .event-cards .event-card .image-container{position:relative;width:100%;height:250px;overflow:hidden}.events .event-cards .event-card .image-container img,.events-page .event-cards .event-card .image-container img{width:100%;height:100%;object-fit:cover}.events .event-cards .event-card .image-container .coming-soon-overlay,.events-page .event-cards .event-card .image-container .coming-soon-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center}.events .event-cards .event-card .image-container .coming-soon-overlay span,.events-page .event-cards .event-card .image-container .coming-soon-overlay span{color:#fff;font-size:1.5rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;padding:.75rem 1.5rem;border:3px solid white;border-radius:4px}.events .event-cards .event-card h3,.events .event-cards .event-card .price,.events .event-cards .event-card ul,.events-page .event-cards .event-card h3,.events-page .event-cards .event-card .price,.events-page .event-cards .event-card ul{padding:0 1.5rem}.events .event-cards .event-card h3,.events-page .event-cards .event-card h3{margin-top:1.5rem;color:#2a1810}.events .event-cards .event-card .price,.events-page .event-cards .event-card .price{color:#8b2635;font-weight:700;margin-bottom:1rem}.events .event-cards .event-card ul,.events-page .event-cards .event-card ul{list-style:none;padding-bottom:1.5rem}.events .event-cards .event-card ul li,.events-page .event-cards .event-card ul li{margin-bottom:.5rem}.events .event-note,.events-page .event-note{text-align:center;background:rgb(232.7796610169,173.7203389831,182.4915254237);padding:1rem;border-radius:4px;color:#2a1810}.boarding,.boarding-page{background:white}.boarding .exclusive-badge,.boarding-page .exclusive-badge{text-align:center;color:#8b2635;font-weight:700;font-size:1.125rem;text-transform:uppercase;letter-spacing:2px;margin-bottom:2rem}.boarding .exclusive-badge:before,.boarding .exclusive-badge:after,.boarding-page .exclusive-badge:before,.boarding-page .exclusive-badge:after{content:"—";margin:0 1rem;opacity:.5}.boarding .boarding-content,.boarding-page .boarding-content{display:grid;grid-template-columns:1fr;gap:3rem}@media (min-width: 1024px){.boarding .boarding-content,.boarding-page .boarding-content{grid-template-columns:1fr 1fr}}.boarding .boarding-info h3,.boarding-page .boarding-info h3{color:#8b2635;margin-bottom:2rem;font-size:1.75rem}.boarding .boarding-info h4,.boarding-page .boarding-info h4{color:#2a1810;margin-bottom:1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:700;text-transform:uppercase;font-size:.875rem;letter-spacing:1px}.boarding .boarding-info ul,.boarding-page .boarding-info ul{list-style:none;margin-bottom:2rem}.boarding .boarding-info ul li,.boarding-page .boarding-info ul li{padding-left:1.5rem;position:relative;margin-bottom:.5rem}.boarding .boarding-info ul li:before,.boarding-page .boarding-info ul li:before{content:"✓";position:absolute;left:0;color:#8b2635}.boarding .boarding-gallery,.boarding-page .boarding-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.boarding .boarding-gallery img,.boarding-page .boarding-gallery img{width:100%;height:150px;object-fit:cover;border-radius:8px}@media (min-width: 768px){.boarding .boarding-gallery img,.boarding-page .boarding-gallery img{height:200px}}.contact{background:#faf8f5}.contact .contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:800px;margin:0 auto}.contact .contact-card{background:white;padding:2rem;border-radius:8px;box-shadow:0 2px 10px #0000000d}.contact .contact-card h3{color:#8b2635;margin-bottom:1.5rem;font-size:1.5rem}.contact .contact-card .contact-info p{margin-bottom:.75rem}.contact .contact-card .contact-info strong{color:#2a1810;font-weight:700}.contact .contact-card .contact-info a{color:#8b2635}.contact .contact-card .contact-info a:hover{text-decoration:underline}.cta-sticky{position:fixed;bottom:20px;right:20px;background:#8b2635;color:#fff;padding:1rem 2rem;border-radius:50px;font-weight:600;box-shadow:0 4px 15px #0003;z-index:99;transition:transform .3s ease}@media (max-width: 768px){.cta-sticky{display:none}}.cta-sticky:hover{transform:translateY(-2px);opacity:1}.cta-sticky span{color:#fff}footer{background:#2a1810;color:#fffc;text-align:center;padding:2rem 20px;margin-top:auto}footer p{margin:0;font-size:.875rem}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media print{.nav-desktop,.nav-mobile,.cta-sticky{display:none}}a.active{font-weight:700}
