/* FM Massage & Wellness - Complete Stylesheet */
*{margin:0;padding:0;box-sizing:border-box}
:root{--primary-sage:#8B9D83;--primary-teal:#5C8D89;--secondary-sand:#D4C5B0;--accent-lavender:#B8A9C9;--accent-rose:#D4A5A5;--cream:#F7F5F2;--light-gray:#E8E5E0;--medium-gray:#9B9B9B;--dark-charcoal:#3A3A3A;--pure-white:#FFF;--gradient-primary:linear-gradient(135deg,var(--primary-sage) 0%,var(--primary-teal) 100%);--font-heading:'Playfair Display',serif;--font-body:'Lato',sans-serif;--section-padding:80px 0;--shadow-soft:0 4px 20px rgba(0,0,0,.08);--shadow-medium:0 8px 30px rgba(0,0,0,.12);--shadow-card:0 2px 15px rgba(139,157,131,.15);--radius-small:8px;--radius-medium:12px;--radius-large:20px}
html{scroll-behavior:smooth}
body{font-family:var(--font-body);color:var(--dark-charcoal);background:var(--cream);line-height:1.7;font-size:16px}
.container{max-width:1200px;margin:0 auto;padding:0 20px}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:inherit;transition:all .3s ease}
h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;line-height:1.3;color:var(--dark-charcoal)}
h1{font-size:3.5rem;margin-bottom:1rem}
h2{font-size:2.75rem;margin-bottom:1.5rem}
h3{font-size:1.75rem;margin-bottom:1rem}
h4{font-size:1.35rem;margin-bottom:.75rem}
p{margin-bottom:1.2rem;color:var(--dark-charcoal);font-size:1.05rem}
.lead-text{font-size:1.35rem;font-weight:400;color:var(--primary-teal);line-height:1.8;margin-bottom:1.5rem}

/* Buttons */
.btn{display:inline-block;padding:14px 32px;border-radius:var(--radius-medium);font-weight:600;font-size:1rem;text-align:center;cursor:pointer;transition:all .3s ease;border:2px solid transparent;font-family:var(--font-body)}
.btn-primary{background:var(--gradient-primary);color:var(--pure-white);box-shadow:var(--shadow-soft)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-medium)}
.btn-secondary{background:var(--pure-white);color:var(--primary-teal);border:2px solid var(--primary-teal);display:inline-flex;align-items:center;gap:10px}
.btn-secondary:hover{background:var(--primary-teal);color:var(--pure-white)}
.btn-outline{background:transparent;color:var(--primary-teal);border:2px solid var(--primary-teal)}
.btn-outline:hover{background:var(--primary-teal);color:var(--pure-white)}
.btn-book{background:var(--accent-rose);color:var(--pure-white);padding:10px 24px;border-radius:var(--radius-small);font-weight:600}
.btn-book:hover{background:var(--accent-lavender);transform:translateY(-1px)}
.btn-small{padding:8px 20px;font-size:.9rem}
.btn-large{padding:16px 40px;font-size:1.1rem}
.btn-link{color:var(--primary-teal);font-weight:600;font-size:.95rem;display:inline-block;margin-top:10px}
.btn-link:hover{color:var(--accent-lavender)}

/* Section Headers */
.section-header{text-align:center;margin-bottom:60px}
.section-header h2{color:var(--primary-teal);margin-bottom:15px}
.divider{width:80px;height:3px;background:var(--gradient-primary);margin:0 auto 20px;border-radius:2px}

/* Navigation */
.navbar{background:var(--pure-white);box-shadow:var(--shadow-soft);position:sticky;top:0;z-index:1000;padding:12px 0}
.nav-wrapper{display:flex;justify-content:space-between;align-items:center}
.logo img{height:70px;width:auto}
.nav-menu{display:flex;list-style:none;align-items:center;gap:30px}
.nav-menu a{color:var(--dark-charcoal);font-weight:500;font-size:1rem;position:relative}
.nav-menu a:not(.btn-book):hover{color:var(--primary-teal)}
.nav-menu a:not(.btn-book)::after{content:'';position:absolute;bottom:-5px;left:0;width:0;height:2px;background:var(--gradient-primary);transition:width .3s ease}
.nav-menu a:not(.btn-book):hover::after{width:100%}
.nav-menu a.active{color:var(--primary-teal);font-weight:600}

/* Dropdown Menu */
.dropdown{position:relative}
.dropdown-menu{display:none;position:absolute;top:100%;left:0;background:var(--pure-white);box-shadow:var(--shadow-medium);border-radius:var(--radius-small);min-width:220px;padding:10px 0;margin-top:10px;list-style:none}
.dropdown-menu li{padding:0}
.dropdown-menu a{display:block;padding:12px 20px;color:var(--dark-charcoal);font-weight:500;transition:all .3s}
.dropdown-menu a:hover{background:var(--cream);color:var(--primary-teal);padding-left:25px}
.dropdown-menu a::after{display:none}
.dropdown:hover .dropdown-menu{display:block}

/* Mobile Menu */
.mobile-menu-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:5px}
.mobile-menu-toggle span{width:28px;height:3px;background:var(--primary-teal);border-radius:2px;transition:all .3s}

/* Hero Section */
.hero{position:relative;min-height:80vh;display:flex;align-items:center;background:var(--gradient-primary);color:var(--pure-white)}
.hero::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(139,157,131,.85) 0%,rgba(92,141,137,.85) 100%)}
.hero-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 30% 50%,rgba(184,169,201,.15) 0%,transparent 50%)}
.hero-content{position:relative;z-index:2;text-align:center;max-width:800px;margin:0 auto}
.hero h1{font-size:4rem;color:var(--pure-white);text-shadow:2px 2px 8px rgba(0,0,0,.2);margin-bottom:20px}
.hero-subtitle{font-size:1.5rem;margin-bottom:40px;color:var(--cream);font-weight:300}
.hero-cta{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}

/* Therapist Hero */
.therapist-hero{min-height:60vh}
.hero-logo-large{max-width:500px;margin:0 auto 30px;display:block}

/* Sections */
.welcome-section,.about-section,.featured-services,.featured-therapist,.reviews-section,.quick-contact,.about-business,.team-section,.services-offered,.booking-cta{padding:var(--section-padding)}
.welcome-section,.team-section,.booking-cta{background:var(--pure-white)}
.featured-services,.reviews-section,.services-offered{background:linear-gradient(to bottom,var(--cream) 0%,var(--pure-white) 100%)}
.featured-therapist,.about-business{background:var(--cream)}
.quick-contact{background:var(--gradient-primary);color:var(--pure-white)}

/* Content */
.welcome-content,.business-intro{max-width:900px;margin:0 auto;text-align:center}
.welcome-content p,.business-intro p{text-align:left;margin-bottom:1.5rem}
.cta-row{display:flex;gap:20px;justify-content:center;margin-top:40px;flex-wrap:wrap}

/* Services Grid */
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;margin-bottom:50px}
.service-card{background:var(--pure-white);padding:40px 30px;border-radius:var(--radius-large);text-align:center;transition:all .3s;box-shadow:var(--shadow-card)}
.service-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-medium)}
.service-icon{font-size:3.5rem;margin-bottom:20px}
.service-card h3{color:var(--primary-teal);margin-bottom:15px}
.service-card p{color:var(--medium-gray);font-size:1rem}
.services-cta{text-align:center;margin-top:40px;display:flex;gap:20px;justify-content:center;flex-wrap:wrap}

/* Featured Business */
.featured-business{background:linear-gradient(135deg,var(--cream) 0%,var(--light-gray) 100%);padding:50px;border-radius:var(--radius-large);box-shadow:var(--shadow-medium)}
.featured-logo-container{text-align:center;margin-bottom:30px}
.featured-logo{max-width:400px;margin:0 auto}
.featured-content{max-width:800px;margin:0 auto;text-align:center}
.featured-content h3{font-size:2.5rem;color:var(--primary-teal);margin-bottom:10px}
.business-tagline{font-size:1.3rem;font-style:italic;color:var(--accent-lavender);margin-bottom:25px}
.mission-vision-box{background:var(--pure-white);padding:40px;border-radius:var(--radius-large);margin:40px auto;max-width:900px;border-left:4px solid var(--primary-teal)}
.mission-placeholder{font-style:italic;color:var(--medium-gray);padding:20px;background:var(--cream);border-radius:var(--radius-medium)}

/* Team Section */
.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:50px}
.therapist-profile{background:var(--pure-white);border-radius:var(--radius-large);overflow:hidden;box-shadow:var(--shadow-card);transition:all .3s}
.therapist-profile:hover{transform:translateY(-5px);box-shadow:var(--shadow-medium)}
.profile-image{width:100%;height:400px;overflow:hidden}
.profile-image img{width:100%;height:100%;object-fit:cover}
.profile-content{padding:40px}
.profile-content h3{color:var(--primary-teal);margin-bottom:8px;font-size:2rem}
.profile-title{font-weight:600;color:var(--medium-gray);margin-bottom:10px}
.profile-specialty{color:var(--primary-sage);font-size:.95rem;margin-bottom:20px;font-weight:500}
.profile-bio{margin-bottom:30px}
.profile-cta{display:flex;gap:15px;flex-wrap:wrap}

/* Contact CTA */
.contact-cta-box,.cta-box-large{background:rgba(255,255,255,.15);backdrop-filter:blur(10px);padding:60px 40px;border-radius:var(--radius-large);text-align:center;max-width:800px;margin:0 auto;border:2px solid rgba(255,255,255,.2)}
.contact-cta-box h2,.cta-box-large h2{color:var(--pure-white);margin-bottom:15px}
.contact-cta-box p,.cta-box-large p{color:var(--cream);font-size:1.2rem;margin-bottom:30px}
.cta-buttons{display:flex;gap:15px;justify-content:center;flex-wrap:wrap}
.cta-note{font-size:.95rem;margin-top:20px;color:var(--light-gray)}

/* Footer */
.footer{background:var(--dark-charcoal);color:var(--light-gray);padding:60px 0 30px}
.footer-content{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px}
.footer-brand{max-width:350px}
.footer-logo{max-width:150px;margin-bottom:20px;filter:brightness(0) invert(1)}
.footer-address{margin-top:20px;font-size:.9rem;line-height:1.6}
.footer h4{color:var(--pure-white);margin-bottom:20px;font-size:1.2rem}
.footer-links ul,.footer-therapists ul{list-style:none}
.footer-links li,.footer-therapists li{margin-bottom:10px}
.footer-links a,.footer-therapists a{color:var(--light-gray);font-size:.95rem}
.footer-links a:hover,.footer-therapists a:hover{color:var(--primary-sage)}
.footer-contact p{margin-bottom:10px;font-size:.95rem}
.footer-contact a{color:var(--primary-sage)}
.footer-bottom{text-align:center;padding-top:30px;border-top:1px solid rgba(255,255,255,.1)}
.footer-bottom p{color:var(--medium-gray);font-size:.9rem;margin:0}

/* Responsive */
@media (max-width:1024px){
h1{font-size:3rem}
h2{font-size:2.25rem}
.hero h1{font-size:3.25rem}
.footer-content{grid-template-columns:1fr 1fr}
.team-grid{grid-template-columns:1fr}
}
@media (max-width:768px){
.nav-menu{position:fixed;left:-100%;top:82px;flex-direction:column;background:var(--pure-white);width:100%;transition:left .3s;box-shadow:var(--shadow-medium);padding:30px 0;gap:20px}
.nav-menu.active{left:0}
.mobile-menu-toggle{display:flex}
.dropdown-menu{position:static;box-shadow:none;background:var(--cream);margin:10px 20px}
h1{font-size:2.5rem}
h2{font-size:2rem}
.hero h1{font-size:2.75rem}
.hero-subtitle{font-size:1.2rem}
.hero-cta,.cta-buttons,.cta-row,.services-cta{flex-direction:column}
.services-grid,.team-grid{grid-template-columns:1fr}
.featured-business,.contact-cta-box,.cta-box-large{padding:30px 20px}
.footer-content{grid-template-columns:1fr;gap:30px}
.hero-logo-large{max-width:300px}
}
@media (max-width:480px){
h1{font-size:2rem}
h2{font-size:1.75rem}
.hero h1{font-size:2.25rem}
.logo img{height:55px}
.btn{padding:12px 24px;font-size:.95rem}
}

/* Additional Styles for Add-Ons and Wellness Pages */
.page-hero{min-height:50vh;display:flex;align-items:center;background:var(--gradient-primary);color:var(--pure-white);position:relative}
.page-hero::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(139,157,131,.85),rgba(92,141,137,.85))}
.page-hero .hero-content{position:relative;z-index:2}
.page-intro{padding:60px 0;background:var(--pure-white)}
.intro-content{max-width:900px;margin:0 auto;text-align:center}
.intro-content p{text-align:left;margin-bottom:1.5rem}

/* Add-Ons Page */
.add-ons-section{padding:var(--section-padding);background:var(--cream)}
.add-ons-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:40px}
.addon-card{background:var(--pure-white);padding:40px;border-radius:var(--radius-large);box-shadow:var(--shadow-card);transition:all .3s}
.addon-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-medium)}
.addon-card.featured{border:3px solid var(--primary-teal);background:linear-gradient(to bottom,var(--pure-white),var(--cream))}
.addon-icon{font-size:3.5rem;margin-bottom:20px;text-align:center}
.addon-card h3{color:var(--primary-teal);margin-bottom:10px;text-align:center}
.addon-tagline{font-style:italic;color:var(--accent-lavender);text-align:center;margin-bottom:20px;font-size:1.1rem}
.addon-benefits{margin:25px 0;padding-left:20px}
.addon-benefits li{margin-bottom:12px;line-height:1.6;color:var(--dark-charcoal)}

/* How To Section */
.how-to-section{padding:60px 0;background:var(--pure-white)}
.how-to-content{max-width:1000px;margin:0 auto;text-align:center}
.how-to-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:40px;margin:40px 0}
.how-to-step{text-align:center}
.step-number{width:60px;height:60px;background:var(--gradient-primary);color:var(--pure-white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.8rem;font-weight:700;margin:0 auto 20px;font-family:var(--font-heading)}
.how-to-note{background:var(--cream);padding:25px;border-radius:var(--radius-medium);margin-top:40px;border-left:4px solid var(--primary-teal)}

/* Wellness Products Page */
.wellness-products-section{padding:var(--section-padding)}
.product-feature{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;margin-bottom:80px;background:var(--pure-white);padding:50px;border-radius:var(--radius-large);box-shadow:var(--shadow-medium)}
.product-feature:nth-child(even){background:linear-gradient(135deg,var(--cream),var(--light-gray))}
.product-feature.fasciablaster{grid-template-columns:1fr 1fr}
.product-badge{display:inline-block;background:var(--accent-rose);color:var(--pure-white);padding:8px 20px;border-radius:20px;font-size:.85rem;font-weight:600;margin-bottom:15px}
.product-content h2{color:var(--primary-teal);margin-bottom:10px;font-size:2.5rem}
.product-tagline{font-size:1.3rem;font-style:italic;color:var(--accent-lavender);margin-bottom:25px}
.product-description{margin-bottom:30px}
.product-benefits,.product-tools,.product-uses{margin:30px 0}
.product-benefits h3,.product-tools h3,.product-uses h3{color:var(--primary-sage);margin-bottom:20px;font-size:1.5rem}
.product-benefits ul{padding-left:20px}
.product-benefits li{margin-bottom:12px;line-height:1.7}
.product-image-placeholder{background:var(--gradient-primary);border-radius:var(--radius-large);min-height:400px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--pure-white);text-align:center}
.placeholder-icon{font-size:6rem;margin-bottom:20px}
.product-image-placeholder p{font-size:1.3rem;font-weight:600}
.product-cta{margin-top:35px}
.cta-note{font-size:.9rem;color:var(--medium-gray);margin-top:10px;text-align:center}

/* Tools and Uses Grids */
.tools-grid,.uses-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-top:20px}
.tool-item,.use-item{background:var(--cream);padding:20px;border-radius:var(--radius-medium);text-align:center}
.tool-item h4,.use-item h4{color:var(--primary-teal);margin-bottom:10px;font-size:1.1rem}
.tool-item p,.use-item p{font-size:.95rem;margin:0}
.use-icon{font-size:2.5rem;margin-bottom:10px}

/* Why Us Section */
.why-us-section{padding:60px 0;background:var(--cream)}
.why-us-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px}
.why-card{background:var(--pure-white);padding:30px;border-radius:var(--radius-large);box-shadow:var(--shadow-card);text-align:center;transition:all .3s}
.why-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-medium)}
.why-icon{width:60px;height:60px;background:var(--gradient-primary);color:var(--pure-white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.8rem;font-weight:700;margin:0 auto 20px}
.why-card h3{color:var(--primary-teal);margin-bottom:15px}

/* Responsive for new pages */
@media (max-width:768px){
.product-feature{grid-template-columns:1fr;padding:30px 20px}
.product-feature.fasciablaster .product-image-placeholder{order:-1}
.add-ons-grid{grid-template-columns:1fr}
.how-to-grid,.tools-grid,.uses-grid,.why-us-grid{grid-template-columns:1fr}
.product-image-placeholder{min-height:300px}
}
