:root{--primary-green:#556b2f;--primary-green-rgb:85,107,47;--dark-green-text:#26432b;--accent-terracotta:#c38370;--accent-clay:#be9e7f;--accent-sage:#b2ac88;--accent-stone:#8d8e8e;--earth-brown:#796e65;--warm-beige-bg:#faf6f0;--off-white:#efe7dd;--white-text:#fff;--subtle-gray:#b0b0b0;--sky-blue:#7bafd4;--light-beige:#f2ece3;--text-color-dark:#2c3e50;--verdant-green:var(--primary-green);--forest:var(--dark-green-text);--saddle-brown:#5d4037;--sage:var(--accent-sage);--clay:var(--accent-clay);--stone:var(--accent-stone);--earth:var(--earth-brown);--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--font-heading:"Playfair Display",serif;--font-body:"Lato",sans-serif;--font-hand:"Dancing Script",cursive;--font-sans:var(--font-body);--font-serif:var(--font-heading);--text-sm:0.875rem;--text-base:1rem;--text-md:1.0625rem;--text-lg:1.125rem;--text-xl:1.5rem;--text-2xl:2rem;--text-3xl:2.75rem;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--shadow-sm:0 1px 4px rgba(0,0,0,.07);--shadow-md:0 4px 12px rgba(0,0,0,.1);--shadow-lg:0 8px 24px rgba(0,0,0,.14)}*,:after,:before{box-sizing:border-box}html{font-size:1.06rem}body,html{width:100%;overflow-x:hidden}body{margin:0;padding:0;font-family:var(--font-body);color:var(--dark-green-text);background:linear-gradient(180deg,#fff 0,var(--warm-beige-bg) 100%);line-height:1.65}main{padding:var(--space-2xl) 0;width:100%}h2{text-align:center;color:var(--dark-green-text);letter-spacing:.3px;margin-bottom:var(--space-xl)}h2,h3{font-family:var(--font-heading);font-weight:600}h3{color:var(--primary-green);font-size:var(--text-lg);margin-bottom:var(--space-sm)}*{overscroll-behavior:auto!important}header{color:var(--white-text);padding:0;text-align:center;position:relative;overflow:hidden;min-height:100vh;display:flex;flex-direction:column;width:100%;max-width:100%}#header-video{position:absolute;top:50%;left:50%;min-width:100%;min-height:100%;width:auto;height:auto;will-change:transform;transform:translate(-50%,-50%) scale(1.1);transition:transform .4s ease-in-out;z-index:-2;object-fit:cover}.header-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(180deg,rgba(0,0,0,.35),rgba(38,67,43,.55) 50%,rgba(85,107,47,.65));z-index:-1}nav{background-color:rgba(20,30,25,.28);padding:var(--space-sm) var(--space-lg);margin-bottom:0;position:fixed;top:0;z-index:1000;border-bottom:1px solid hsla(0,0%,100%,.25);justify-content:space-between;width:100%;max-width:100vw;box-sizing:border-box;overflow-x:hidden;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.quick-access,nav{display:flex;align-items:center}.quick-access .cta-button{font-size:var(--text-sm);padding:var(--space-xs) var(--space-sm);margin-left:var(--space-md)}nav ul{list-style:none;padding:0;margin:0;transition:all .3s ease;display:flex;align-items:center}nav ul li{display:inline-block;margin:0 var(--space-md)}nav ul li a{text-decoration:none;color:hsla(0,0%,100%,.9);font-family:var(--font-body);font-weight:500;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.8px;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);transition:all .3s ease;position:relative}nav ul li a:focus,nav ul li a:hover{color:var(--white-text)}nav ul li a:after{content:"";position:absolute;width:0;height:2px;bottom:0;left:50%;background-color:var(--white-text);transition:all .3s ease;transform:translateX(-50%)}nav ul li a:focus:after,nav ul li a:hover:after{width:80%}#home{padding:var(--space-xl) var(--space-lg);position:relative;z-index:1;flex-grow:1;display:flex;align-items:center;justify-content:center;text-align:center;max-width:100vw;overflow-x:hidden}#home,.header-content{width:100%;box-sizing:border-box}.header-content{max-width:900px;padding:0 var(--space-md)}#home h1{font-family:var(--font-heading);font-size:clamp(2rem,5vw,3rem);color:var(--white-text);margin-bottom:var(--space-sm);font-weight:700;text-shadow:0 2px 8px rgba(0,0,0,.45)}#home p{font-size:var(--text-lg);color:hsla(0,0%,100%,.9);margin-bottom:var(--space-lg);font-weight:400}@media (max-width:768px){nav{padding:var(--space-xs) var(--space-md);justify-content:flex-end}nav ul.nav-links{display:none}.quick-access .cta-button{font-size:calc(var(--text-sm) * .9);padding:calc(var(--space-xs) * .8) var(--space-sm);margin-left:var(--space-sm)}.swiper-container{width:100%!important;overflow:hidden}#home h1{font-size:var(--text-2xl)}#home p{font-size:var(--text-base)}}@media (min-width:992px){.quick-access{display:none}}.container,body,html,main,section{overscroll-behavior-y:auto!important}section{padding:var(--space-2xl) 0;margin-bottom:var(--space-2xl)}.container,main>section>:not(.swiper){max-width:1000px;margin-left:auto;margin-right:auto;padding-left:var(--space-lg);padding-right:var(--space-lg)}#gallery,#testimonials{max-width:none;padding-left:0;padding-right:0}#gallery h2,#testimonials h2{max-width:1100px;margin-left:auto;margin-right:auto;padding-left:var(--space-lg);padding-right:var(--space-lg)}.about-content{display:flex;gap:var(--space-xl);align-items:stretch;flex-wrap:wrap;justify-content:center}.about-content>div{flex-basis:700px;transition:transform .3s ease;max-width:900px;background:#fff;padding:var(--space-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.about-content>div:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.about-content img{width:340px;height:340px;object-fit:cover;border-radius:50%;box-shadow:var(--shadow-sm);margin-bottom:var(--space-md)}.about-content h3{font-family:var(--font-sans);font-size:var(--text-lg);color:var(--verdant-green);margin-top:0;margin-bottom:var(--space-sm)}.collaborators-content{display:flex;gap:var(--space-xl);align-items:stretch;flex-wrap:wrap;justify-content:center;margin-top:var(--space-xl)}.collaborator-card{flex-basis:450px;transition:transform .3s ease;background-color:#fff;padding:var(--space-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.collaborator-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.collaborator-card img{width:200px;height:200px;object-fit:cover;border-radius:50%;margin-bottom:var(--space-md);box-shadow:var(--shadow-sm)}.collaborator-card h3{font-family:var(--font-sans);font-size:var(--text-lg);color:var(--verdant-green);margin-top:0;margin-bottom:var(--space-sm)}#collaborators p{text-align:center;max-width:700px;margin:0 auto var(--space-md);color:var(--earth)}.ch-treatment-info{margin-top:var(--space-md);padding:var(--space-md);background-color:rgba(var(--primary-green-rgb),.06);border-radius:var(--radius-md);border-left:3px solid var(--verdant-green)}.ch-treatment-info h4{font-family:var(--font-sans);font-size:var(--text-md);color:var(--verdant-green);margin-top:0;margin-bottom:var(--space-sm)}.ch-treatment-info ul{list-style-type:none;padding-left:var(--space-md);margin-top:var(--space-sm)}.ch-treatment-info ul li{position:relative;padding-left:var(--space-sm);margin-bottom:var(--space-xs)}.ch-treatment-info ul li:before{content:"•";color:var(--verdant-green);position:absolute;left:-15px;top:0}.ch-treatment-info a{color:var(--verdant-green);text-decoration:underline;font-weight:500;transition:color .2s ease}.ch-treatment-info a:hover{color:var(--forest)}#experience p{max-width:700px;text-align:center;font-size:var(--text-lg);color:var(--earth)}.experience-image{display:block;max-width:100%;height:auto;margin:var(--space-md) auto;border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}@media (max-width:768px){.experience-image{width:90%;max-height:300px;object-fit:cover}}.package-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:var(--space-xl);gap:var(--space-xl)}.package-item{border-radius:var(--radius-lg);padding:var(--space-xl);background-color:#fff;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;border:1px solid rgba(0,0,0,.03)}.package-item h3{font-family:var(--font-heading);font-size:var(--text-xl);color:var(--verdant-green);margin-top:0;margin-bottom:var(--space-md)}.package-item p{margin-bottom:var(--space-sm);flex-grow:1}.package-item .price{font-weight:700;color:var(--saddle-brown);font-size:var(--text-xl);margin-top:var(--space-lg);text-align:right}.faq-list{max-width:800px}.faq-item{border-bottom:1px solid #eee;margin-bottom:0}.faq-question{font-size:var(--text-lg);font-family:var(--font-body);color:var(--forest);margin:0;padding:var(--space-md) var(--space-lg) var(--space-md) 0;cursor:pointer;position:relative;font-weight:600}.faq-question:after{content:"\25BC";position:absolute;right:0;top:50%;transform:translateY(-50%);font-weight:700;font-size:var(--text-sm);color:var(--sky-blue);transition:transform .3s ease}.faq-item.active .faq-question:after{content:"\25B2";transform:translateY(-50%) rotate(0deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .4s ease,padding .4s ease;padding:0 1rem}main>section:nth-of-type(2n){background-color:rgba(var(--primary-green-rgb),.03);border-top:1px solid rgba(0,0,0,.04);border-bottom:1px solid rgba(0,0,0,.04)}.research-page{padding:var(--space-xl) var(--space-md)}.research-page .container{max-width:800px;margin:0 auto}.research-item{margin-bottom:var(--space-xl);background-color:#fff;padding:var(--space-lg);border-radius:8px;box-shadow:0 4px 10px rgba(0,0,0,.05)}.cta-container{text-align:center;margin-top:var(--space-xl);padding:var(--space-lg)}.research-header{padding:1rem 0;border-bottom:1px solid rgba(0,0,0,.08);background:#f9f7f3;position:-webkit-sticky;position:sticky;top:0;z-index:500}.cta-button{display:inline-block;background:var(--primary-green);color:var(--white-text);padding:var(--space-md) var(--space-xl);border-radius:999px;font-family:var(--font-body);font-size:var(--text-sm);font-weight:700;letter-spacing:.5px;text-transform:uppercase;text-decoration:none;cursor:pointer;box-shadow:var(--shadow-sm);transition:transform .15s ease,box-shadow .25s ease,opacity .2s ease;margin-top:var(--space-md)}.cta-button:focus,.cta-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);opacity:.95}.hero-marketing{position:relative;max-width:860px;margin:var(--space-2xl) auto;padding:var(--space-xl);background:hsla(0,0%,100%,.9);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-align:center}.hero-marketing:before{content:"";position:absolute;top:0;left:50%;width:36px;height:3px;background-color:hsla(14,41%,60%,.8);transform:translateX(-50%);border-radius:2px}.hero-marketing p:first-child{font-size:var(--text-xl);font-style:italic;color:var(--primary-green);margin-bottom:var(--space-md)}.hero-marketing p:last-child{font-size:var(--text-lg);font-weight:600;margin-top:var(--space-md)}.hero-marketing a{display:inline-block;margin-top:var(--space-sm);padding:var(--space-xs) var(--space-md);background-color:var(--accent-terracotta);color:var(--white-text);border-radius:6px;text-decoration:none;transition:background-color .3s ease,transform .2s ease}.hero-marketing a:hover{background-color:var(--primary-green);transform:translateY(-2px)}.booking-note{font-size:var(--text-sm);color:hsla(0,0%,100%,.85);margin-top:var(--space-sm);text-transform:none;max-width:600px;margin-left:auto;margin-right:auto;line-height:1.4}.cta-button.cta-green{background:var(--primary-green)}.cta-button.cta-green,.cta-button.cta-green:hover{color:var(--white-text)}.toast-notification{position:fixed;bottom:20px;right:20px;background-color:var(--primary-green);color:#fff;padding:1rem 2rem;border-radius:var(--radius-md);box-shadow:var(--shadow-md);transform:translateY(150%);transition:transform .3s ease-in-out;z-index:1000;font-size:1rem}.toast-notification.show{transform:translateY(0)}.gallery-note{text-align:center;color:var(--earth);margin-top:var(--space-sm);margin-bottom:var(--space-lg)}.swiper{width:100%;margin:var(--space-lg) auto;position:relative;border-radius:var(--radius-lg);overflow:visible!important;padding-left:var(--space-lg);padding-right:var(--space-lg);box-sizing:border-box;max-width:100vw;box-shadow:none}.swiper-slide{text-align:center;font-size:var(--text-base);background:transparent;box-sizing:border-box;width:100%!important}.gallery-swiper{width:90%;max-width:1200px;margin:2rem auto;padding-bottom:50px}.gallery-swiper .swiper-slide{text-align:center;font-size:18px;background:#fff;display:flex;justify-content:center;align-items:center;aspect-ratio:16/9;overflow:hidden}.gallery-swiper .swiper-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.testimonial-swiper{max-width:1000px}.testimonial-swiper .swiper-slide{min-height:200px;background-color:#fff;box-shadow:var(--shadow-sm);border-radius:var(--radius-md);display:flex;flex-direction:column;justify-content:center;padding:var(--space-xl);transition:all .3s ease;width:calc(100% - 10px)!important}.testimonial-swiper .swiper-slide p{font-size:var(--text-base);line-height:1.6;margin-bottom:var(--space-md);color:var(--earth)}.testimonial-swiper cite{margin-top:auto;font-family:var(--font-sans);font-style:normal;font-weight:600;color:var(--saddle-brown);font-size:var(--text-sm)}.swiper-button-next,.swiper-button-prev{color:var(--verdant-green);--swiper-navigation-size:30px}.swiper-pagination-bullet{background:var(--stone);opacity:.5}.swiper-pagination-bullet-active{background:var(--verdant-green)}@media (min-width:1100px){.swiper{padding-left:0;padding-right:0}}@media (max-width:768px){.swiper{padding-left:var(--space-sm);padding-right:var(--space-sm);margin-left:0;margin-right:0;width:100%}.testimonial-swiper{padding-left:var(--space-md);padding-right:var(--space-md)}.testimonial-swiper .swiper-slide{padding:var(--space-md);width:100%!important}.swiper-pagination-bullet{margin:0 8px!important}.gallery-swiper{width:95%}.gallery-swiper .swiper-slide{aspect-ratio:4/3}}.booking-form,.contact-form{max-width:650px;padding:var(--space-xl);border-radius:var(--radius-lg);background-color:#fff;box-shadow:var(--shadow-sm)}.booking-form label,.contact-form label{display:block;font-size:var(--text-sm);color:var(--saddle-brown);margin-bottom:var(--space-xs);font-weight:600}.booking-form .date-picker,.booking-form input[type=email],.booking-form input[type=number],.booking-form input[type=text],.booking-form textarea,.contact-form input[type=email],.contact-form input[type=number],.contact-form input[type=text],.contact-form textarea{width:100%;border:1px solid #ddd;border-radius:4px;padding:var(--space-md);margin-bottom:var(--space-md);font-size:var(--text-base);font-family:var(--font-body);box-sizing:border-box;transition:border-color .3s ease,box-shadow .3s ease}.booking-form input:focus,.booking-form input[type=number]:focus,.booking-form textarea:focus,.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--sky-blue);box-shadow:0 0 0 3px rgba(123,175,212,.2)}.booking-form textarea,.contact-form textarea{resize:vertical;min-height:100px}.booking-form .cta-button,.contact-form .cta-button{width:100%;margin-top:var(--space-md)}.booking-form button:disabled,.booking-form input:disabled,.booking-form textarea:disabled,.contact-form button:disabled,.contact-form input:disabled,.contact-form textarea:disabled,select:disabled{background-color:#f6f2ea;color:#8a8a8a;border-color:#e5e1d8;cursor:not-allowed}.booking-form select{width:100%;border:1px solid #ddd;border-radius:4px;padding:var(--space-md);margin-bottom:var(--space-md);font-size:var(--text-base);font-family:var(--font-sans);color:var(--saddle-brown);background-color:#fff;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg width='12' height='8' viewBox='0 0 12 8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%233A4D39' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-md) center;background-size:12px 8px;transition:border-color .3s ease,box-shadow .3s ease;cursor:pointer}.booking-form select:focus,.booking-form select:hover{border-color:var(--sky-blue)}.booking-form select:focus{outline:none;box-shadow:0 0 0 3px rgba(123,175,212,.2)}.booking-form select option[disabled]{color:#888}.booking-form select::-ms-expand{display:none}.package-options{display:flex;gap:var(--space-md);margin-bottom:var(--space-md);flex-wrap:wrap}.package-card{flex:1 1;min-width:280px;cursor:pointer;display:flex}.package-card .card-content{display:flex;flex-direction:column;flex:1 1;background:#fff;border:1px solid #ddd;border-radius:8px;overflow:hidden;box-shadow:0 4px 10px rgba(0,0,0,.05);transition:border-color .3s ease,box-shadow .3s ease,transform .2s ease}.package-card .card-content img{width:100%;height:180px;object-fit:cover;flex-shrink:0;display:block}.package-card .card-content h4{margin:var(--space-md);margin-bottom:.25rem;font-size:var(--text-lg);color:var(--saddle-brown)}.package-card .card-content p{margin:0 var(--space-md) var(--space-md);font-size:var(--text-sm);color:var(--saddle-brown);flex-grow:1}.package-card:hover .card-content{transform:translateY(-4px);box-shadow:0 6px 15px rgba(0,0,0,.1)}.package-card input{display:none}.package-card input:checked+.card-content{border-color:var(--sky-blue);box-shadow:0 0 0 3px rgba(123,175,212,.3)}footer{background:linear-gradient(180deg,transparent 0,rgba(49,73,60,.15) 15%),var(--earth);color:hsla(0,0%,100%,.9);text-align:center;padding:var(--space-xl);font-size:var(--text-sm);margin-top:var(--space-xl)}