@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,400&family=Quicksand:wght@300;400;500;600&display=swap";:root{--color-primary:#9cb39c;--color-primary-dark:#6f876f;--color-secondary:#e0d4e4;--color-secondary-dark:#c6b5cd;--color-background:#fdfcf9;--color-surface:#fff;--color-text:#4a4a4a;--color-text-light:#737373;--color-accent:#b2d8d8;--font-heading:"Cormorant Garamond", serif;--font-body:"Quicksand", sans-serif;--border-radius:16px;--transition-speed:.4s}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background-color:var(--color-background);color:var(--color-text);line-height:1.7;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-text);margin-bottom:1rem;font-weight:500}a{color:inherit;text-decoration:none;transition:color .3s}ul{list-style:none}.fade-in-section{opacity:0;will-change:opacity, transform;transition:opacity .8s ease-out,transform .8s ease-out;transform:translateY(40px)}.fade-in-section.is-visible{opacity:1;transform:none}.btn{cursor:pointer;font-weight:500;font-family:var(--font-heading);border:none;border-radius:30px;padding:.8rem 2rem;text-decoration:none;transition:all .3s;display:inline-block}.btn-primary{background-color:var(--color-secondary);color:var(--color-text)}.btn-primary:hover{background-color:var(--color-secondary-dark);transform:translateY(-2px);box-shadow:0 4px 15px #c6b5cd66}.btn:disabled,.btn:disabled:hover{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.bg-orb{filter:blur(100px);z-index:-1;opacity:.4;pointer-events:none;border-radius:50%;position:fixed}.bg-orb-1{background-color:var(--color-primary);width:600px;height:600px;animation:20s ease-in-out infinite alternate floatOrb;top:-100px;left:-200px}.bg-orb-2{background-color:var(--color-secondary);width:700px;height:700px;animation:25s ease-in-out infinite alternate floatOrb2;bottom:15%;right:-50px}@keyframes floatOrb{0%{transform:translate(0)}to{transform:translate(100px,150px)}}@keyframes floatOrb2{0%{transform:translate(0)}to{transform:translate(-150px,-100px)}}.section-container{max-width:1200px;margin:0 auto;padding:5rem 2rem}.text-center{text-align:center}::-webkit-scrollbar{width:14px}::-webkit-scrollbar-track{background:var(--color-background)}::-webkit-scrollbar-thumb{border:4px solid var(--color-background);background:#9cb39c66;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--color-primary-dark)}.navigation{z-index:1000;width:100%;padding:1.5rem 0;transition:all .3s;position:fixed;top:0;left:0}.navigation.scrolled{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#fdfdf9f2;padding:1rem 0;box-shadow:0 4px 20px #0000000d}.nav-container{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0 2rem;display:flex}.nav-logo{font-family:var(--font-heading);color:var(--color-primary-dark);font-size:1.5rem;font-weight:500}.nav-logo-title{color:var(--color-text-light);margin-left:.5rem;font-size:.9rem;font-weight:400}.nav-links{align-items:center;gap:2rem;display:flex}.nav-links a{font-family:var(--font-heading);color:var(--color-text);font-size:1.05rem;font-weight:500;position:relative}.nav-links a:after{content:"";background-color:var(--color-secondary-dark);width:0;height:2px;transition:width .3s;position:absolute;bottom:-4px;left:0}.nav-links a:hover{color:var(--color-primary-dark)}.nav-links a:hover:after{width:100%}.nav-cta{background-color:var(--color-secondary);border-radius:20px;padding:.5rem 1.2rem;transition:all .3s!important}.nav-cta:hover{background-color:var(--color-secondary-dark);transform:translateY(-1px);color:#fff!important}@media (width<=768px){.nav-links{display:none}}.hero-section{justify-content:center;align-items:center;height:100vh;display:flex;position:relative;overflow:hidden}.hero-background{z-index:-2;background-position:50%;background-size:cover;background-attachment:fixed;width:100%;height:100%;position:absolute;top:0;left:0}.hero-overlay{z-index:-1;background:linear-gradient(#fdfdf966,#fdfdf9e6);width:100%;height:100%;position:absolute;top:0;left:0}.hero-content{-webkit-backdrop-filter:blur(4px);background:#fdfcf940;border:1px solid #fff3;border-radius:24px;max-width:800px;padding:3rem 4rem;box-shadow:0 8px 32px #0000000a}.hero-content h1{color:var(--color-primary-dark);text-shadow:0 0 10px #fdfcf9e6;margin-bottom:.5rem;font-size:4rem}.hero-subtitle{color:var(--color-text);letter-spacing:1px;text-shadow:0 0 8px #fdfcf9cc;margin-bottom:1.5rem;font-size:1.5rem;font-weight:500}.hero-description{color:var(--color-text);text-shadow:0 0 8px #fdfcf9cc;margin-bottom:2.5rem;font-size:1.25rem;font-style:italic;font-weight:500}.hero-wave{width:100%;line-height:0;position:absolute;bottom:-1px;left:0;overflow:hidden}.hero-wave svg{width:calc(100% + 1.3px);height:60px;display:block}@media (width<=768px){.hero-content h1{font-size:2.5rem}.hero-subtitle{font-size:1.2rem}}.about-section{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--border-radius);background-color:#fff9;margin:4rem auto;box-shadow:0 10px 40px #00000008;padding:4rem!important}.about-grid{grid-template-columns:1fr 1.5fr;align-items:center;gap:4rem;display:grid}.about-image-container{position:relative}.about-image{z-index:2;filter:sepia(.3)hue-rotate(-10deg)saturate(.9);width:100%;transition:border-radius 8s ease-in-out infinite alternate, filter .5s ease;border-radius:60% 40% 30% 70%/60% 30% 70% 40%;position:relative;box-shadow:0 15px 30px #0000001a}.about-image-container:hover .about-image{filter:sepia(0)hue-rotate()saturate()}.about-image-decoration{background-color:var(--color-primary);z-index:1;width:100%;height:100%;transition:border-radius 10s ease-in-out infinite alternate;border-radius:40% 60% 70% 30%/40% 70% 30% 60%;position:absolute;top:-20px;left:-20px}@keyframes morph{0%{border-radius:60% 40% 30% 70%/60% 30% 70% 40%}to{border-radius:30% 60% 70% 40%/50% 60% 30%}}.about-image{animation:8s ease-in-out infinite alternate morph}.about-image-decoration{animation:10s ease-in-out infinite alternate-reverse morph}.about-text h2{color:var(--color-primary-dark);margin-bottom:1.5rem;font-size:2.5rem;display:inline-block;position:relative}.about-text h2:after{content:"";background-color:var(--color-secondary);border-radius:2px;width:40px;height:3px;position:absolute;bottom:-5px;left:0}.pull-quote{font-size:1.6rem;font-family:var(--font-heading);color:var(--color-secondary-dark);border-left:4px solid var(--color-primary-dark);margin-bottom:2rem;padding-left:1.5rem;font-style:italic;line-height:1.4}.about-text p{margin-bottom:1.5rem;font-size:1.1rem}@media (width<=900px){.about-grid{grid-template-columns:1fr;gap:2rem}.about-image-container{max-width:400px;margin:0 auto}.about-section{padding:2rem!important}}.services-section{padding-top:2rem}.services-header{margin-bottom:4rem}.services-header h2{color:var(--color-primary-dark);font-size:2.5rem}.services-intro{max-width:700px;color:var(--color-text-light);margin:0 auto;font-size:1.2rem}.services-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:3rem;display:grid}.service-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--border-radius);text-align:center;border-top:4px solid var(--color-primary);background-color:#fff9;padding:2.5rem 2rem;transition:transform .3s,box-shadow .3s,border-color .3s;box-shadow:0 5px 20px #00000005}.service-card:hover{border-top-color:var(--color-secondary-dark);transform:translateY(-5px);box-shadow:0 15px 30px #c6b5cd33}.service-icon-container{border:3px solid var(--color-primary);background-color:#e0d4e44d;border-radius:50%;justify-content:center;align-items:center;width:100px;height:100px;margin:0 auto 1.5rem;transition:all .4s;display:flex;overflow:hidden}.service-card:hover .service-icon-container{border-color:var(--color-secondary-dark);background-color:#9cb39c26;transform:scale(1.05)rotate(3deg)}.service-icon{object-fit:cover;width:100%;height:100%;animation:4s ease-in-out infinite alternate floatBreathing}@keyframes floatBreathing{0%{transform:translateY(0)}to{transform:translateY(-4px)}}.service-card h3{color:var(--color-text);margin-bottom:1rem;font-size:1.5rem}.service-card p{color:var(--color-text-light);font-size:1rem}.specialty-list{text-align:left;margin-top:.5rem;display:inline-block}.specialty-list li{color:var(--color-text-light);margin-bottom:.5rem;padding-left:1.5rem;position:relative}.specialty-list li:before{content:"✦";color:var(--color-primary-dark);position:absolute;left:0}.faq-section{max-width:800px;margin:0 auto}.faq-header{margin-bottom:3rem}.faq-header h2{color:var(--color-primary-dark);font-size:2.5rem}.faq-list{flex-direction:column;gap:1rem;display:flex}.faq-item{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--border-radius);background-color:#fff9;border-left:4px solid #0000;transition:border-color .3s,box-shadow .3s;overflow:hidden;box-shadow:0 4px 15px #00000005}.faq-item:hover{border-left-color:var(--color-primary-dark);box-shadow:0 4px 20px #9cb39c26}.faq-question{text-align:left;width:100%;color:var(--color-text);cursor:pointer;font-size:1.2rem;font-weight:500;font-family:var(--font-heading);background:0 0;border:none;justify-content:space-between;align-items:center;padding:1.5rem 2rem;transition:background-color .3s;display:flex}.faq-question:hover{background-color:#e0d4e41a}.faq-icon{color:var(--color-secondary-dark);font-size:1.5rem}.faq-answer{background-color:#0000;max-height:0;transition:max-height .3s ease-out,padding .3s;overflow:hidden}.faq-answer.open{max-height:200px;padding:0 2rem 1.5rem}.faq-answer p{color:var(--color-text-light);margin:0}.contact-section{padding-bottom:6rem}.contact-grid{background-color:var(--color-surface);border-radius:var(--border-radius);grid-template-columns:1fr 1fr;gap:4rem;padding:4rem;display:grid;box-shadow:0 10px 40px #00000008}.contact-info h2{color:var(--color-primary-dark);margin-bottom:1rem;font-size:2.5rem}.contact-intro{margin-bottom:2rem;font-size:1.1rem}.contact-details{border-bottom:1px solid #0000000d;margin-bottom:2rem;padding-bottom:2rem}.contact-details p,.fees-info p{color:var(--color-text-light);margin-bottom:.5rem}.fees-info h3{color:var(--color-secondary-dark);margin-bottom:1rem;font-size:1.5rem}.contact-form-container{flex-direction:column;justify-content:center;display:flex}.contact-form{flex-direction:column;gap:1.5rem;display:flex}.form-group{flex-direction:column;margin-top:1rem;display:flex;position:relative}.form-group label{color:var(--color-text-light);pointer-events:none;background-color:var(--color-background);padding:0 .5rem;font-size:1rem;font-weight:500;transition:all .3s;position:absolute;top:1rem;left:1rem}.form-group input,.form-group textarea{font-family:var(--font-body);background-color:var(--color-background);border:1px solid #0000001a;border-radius:8px;padding:1rem;font-size:1rem;transition:border-color .3s,box-shadow .3s}.form-group input:focus,.form-group textarea:focus{border-color:var(--color-primary-dark);outline:none;box-shadow:0 0 0 3px #9cb39c33}.form-group input:focus+label,.form-group input:not(:placeholder-shown)+label,.form-group textarea:focus+label,.form-group textarea:not(:placeholder-shown)+label{color:var(--color-primary-dark);font-size:.8rem;top:-.6rem;left:.8rem}.contact-form .hidden,.form-message:empty{display:none}.form-status{border-radius:8px;margin:0;padding:.85rem 1rem;font-size:.95rem}.form-status.success{color:var(--color-primary-dark);background-color:#9cb39c26}.form-status.error{color:#8c3b2b;background-color:#b45a461a}.form-privacy{color:var(--color-text-light);margin:0;font-size:.8rem;line-height:1.5}.btn-block{text-align:center;width:100%;font-size:1.1rem}@media (width<=800px){.contact-grid{grid-template-columns:1fr;padding:2rem}}.footer{background-color:var(--color-surface);background-image:radial-gradient(circle at 0,#e0d4e466,#0000 50%),radial-gradient(circle at 100%,#9cb39c4d,#0000 60%);border-top:1px solid #0000000d;margin-top:2rem;padding:4rem 2rem 2rem;position:relative;overflow:hidden}.footer-container{z-index:1;max-width:1200px;margin:0 auto;position:relative}.footer-watermark{pointer-events:none;z-index:0;width:450px;position:absolute;bottom:-50px;right:-50px}.footer-watermark img{opacity:.35;width:100%;height:auto}.footer-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2rem;margin-bottom:3rem;display:flex}.footer-brand h3{color:var(--color-primary-dark);margin-bottom:.5rem}.footer-brand p{color:var(--color-text-light)}.footer-links{gap:1.5rem;display:flex}.footer-links a{color:var(--color-text-light);font-weight:500}.footer-links a:hover{color:var(--color-secondary-dark)}.footer-bottom{text-align:center;color:var(--color-text-light);border-top:1px solid #0000000d;padding-top:2rem;font-size:.9rem}.floating-btn{background-color:var(--color-primary);color:var(--color-text);font-family:var(--font-heading);opacity:0;z-index:1000;border-radius:30px;align-items:center;gap:.5rem;padding:.8rem 1.5rem;font-weight:500;text-decoration:none;transition:all .4s cubic-bezier(.175,.885,.32,1.275);display:flex;position:fixed;bottom:2rem;right:2rem;transform:translateY(100px);box-shadow:0 4px 15px #00000026}.floating-btn.visible{opacity:1;transform:translateY(0)}.floating-btn:hover{background-color:var(--color-secondary);color:var(--color-text);transform:translateY(-3px)scale(1.05);box-shadow:0 8px 25px #00000026}@media (width<=768px){.floating-btn{border-radius:50%;padding:.8rem;bottom:1rem;right:1rem}.floating-btn-text{display:none}}
