.hero{position:relative;height:100vh;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center;background:#f8f8f8}.hero-bg{background-image:url(/images/hero/hero-photo.png);opacity:.85;background-size:cover;background-position:center;position:absolute;top:0;left:0;width:100%;height:120%;z-index:1}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;height:150%;background:#000;opacity:.3;z-index:1}.hero-content{z-index:2;position:relative;color:#000;padding:0 20px}.hero-content p{max-width:800px;margin:20px auto 0;font-size:1rem;line-height:1.6;color:#fff}.hero-content h1{font-size:3rem;color:#26a69a;margin:0}.hero-content p{font-size:1.5rem;margin-top:1rem;color:#fff}@media screen and (max-width: 768px){.hero-bg{background-image:url(/images/hero/hero-mobile.png)}}.about-section{display:flex;align-items:stretch;justify-content:center;max-width:95%;width:1000px;margin:80px auto;background:#fff;border-radius:18px;box-shadow:0 4px 32px #00000012;overflow:hidden}@media (max-width: 800px){.about-section{flex-direction:column}}.about-photo{flex:1 1 50%;min-width:0;background:#f5f5f5;display:flex;align-items:center;justify-content:center}.about-photo img{width:100%;height:100%;object-fit:cover;display:block;min-height:320px}.about-content{flex:1 1 50%;padding:48px 36px;display:flex;flex-direction:column;justify-content:center}.about-content h2{font-size:2rem;font-weight:600;margin-bottom:18px;color:#26a69a}.about-content p{font-size:1.1rem;color:#444;line-height:1.7}.services-section{margin:80px auto;width:fit-content;padding:0 24px}.services-title{text-align:center;color:#26a69a;font-size:2.2rem;font-weight:600;margin-bottom:48px;letter-spacing:.01em}.services-cards{display:grid;grid-template-columns:1fr 1fr;flex-wrap:wrap;gap:32px;justify-content:center}.service-card{border-radius:16px;box-shadow:0 4px 24px #00000012;border:1px solid #26a69a;padding-bottom:1rem;width:350px;min-height:350px;background-size:cover;position:relative;display:flex;justify-content:space-between;flex-direction:column;align-items:flex-start;transition:box-shadow .2s,transform .2s;text-align:center;overflow:hidden;margin:0 auto}.service-card .service-content-wrapper{padding:24px;position:relative;width:100%;height:100%;display:flex;flex-direction:column}.service-card .service-0{background-image:url(/images/services/individual.png)}.service-card .service-1{background-image:url(/images/services/children.png)}.service-card .service-2{background-image:url(/images/services/parenting.png)}.service-card .service-3{background-image:url(/images/services/couple.png)}.service-card .bg-photo{position:absolute;background-size:cover;top:0;width:100%;height:100%;z-index:-1}.service-card:hover{box-shadow:0 8px 24px #0000001a}.service-card button{padding:.5rem 2rem;border:none;background:#26a69a;color:#fff;border-radius:6px;margin:0 auto;border:1px solid transparent;cursor:pointer;transition:background .3s}.service-card button:hover{background:transparent;border:1px solid #26a69a;color:#26a69a}.service-card .service-icon{font-size:2.5rem;margin-bottom:12px;align-self:center;filter:drop-shadow(0 2px 8px #2563eb22)}.service-card h3{font-size:1.25rem;font-weight:600;margin-bottom:14px;color:#26a69a;width:100%}.service-card p{font-size:1.05rem;color:#000;line-height:1.6}.service-card:hover{box-shadow:0 8px 32px #2563eb21;transform:translateY(-4px) scale(1.03)}@media (max-width: 900px){.services-cards{gap:20px}.service-card{width:100%;min-width:0}.services-cards{grid-template-columns:1fr}}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;background:#0000004d;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center}.modal{background:#fff;padding:2rem 1.5rem;border:2px solid #26a69a;border-radius:12px;color:#000;line-height:200%;max-width:500px;width:90vw;box-shadow:0 8px 32px #0003;position:relative}.modal h3{font-size:1.5rem;margin-bottom:1rem;color:#26a69a}.modal p{max-height:70vh;overflow-y:auto}.modal .close-button{position:absolute;top:1rem;right:1rem;background:transparent;border:none;font-size:1.5rem;cursor:pointer}.contact-section{border:1px solid #26a69a}#contact{font-family:var(--font-secondary);padding:2rem}#contact h2{font-size:2rem;font-weight:600;font-family:var(--font-primary);text-align:center;color:#26a69a;margin:2rem}.contact-image-col{flex:1;min-height:400px;width:100%}.contact-image-wrap{background:#fff;overflow-x:clip;width:100%;min-height:400px;margin-right:30px;height:100%;position:relative}@media (min-width: 768px){.contact-image-wrap{overflow:visible}}a{color:#26a69a;text-decoration:none}.contact-wrapper{display:flex;width:100%;gap:50px}.contact-flex{display:flex;flex-direction:column;gap:10px;width:50%;color:#000;text-decoration:none}.contact-flex p{margin:0}.contact-image{position:absolute;right:0;bottom:0;width:100%;top:30px;left:30px;min-height:400px;height:100%;object-fit:cover;object-position:center}.contact-form-col{flex:1;padding-left:5vw;padding-right:5vw}@media (min-width: 768px){.contact-form-col{padding-right:5vw}}.contact-form-grid{display:grid;grid-template-columns:1fr;gap:2.5rem}@media (min-width: 768px){.contact-form-grid{grid-template-columns:1fr 1fr}}.input-field{width:100%;padding:1rem .75rem;border:1px solid #d1d5db;border-radius:.5rem;background:#fff;font-size:1rem;outline:none;transition:border-color .2s;margin-bottom:.5rem}.input-field:focus{border-color:#2563eb}.label{position:absolute;left:.75rem;top:1rem;font-size:1rem;color:#6b7280;pointer-events:none;transition:.2s}.input-field:focus+.label,.input-field:not(:placeholder-shown)+.label{top:-.75rem;left:.5rem;font-size:.85rem;color:#26a69a;background:#fff;padding:0 .25rem}textarea.input-field{resize:none}.contact-form-btn-row{display:flex;justify-content:center;grid-column:span 2}.contact-success{text-align:center;margin-top:1rem;font-size:1.125rem;font-weight:500;color:#26a69a}.contact-section{max-width:1200px;margin:80px auto 0;padding:40px 32px 32px;background:#fff;border-radius:18px;box-shadow:0 4px 32px #00000012;opacity:1;transition:all 1s cubic-bezier(.4,0,.2,1)}.contact-title{text-align:center;font-size:2.2rem;font-weight:600;margin-bottom:32px;letter-spacing:.01em;color:#222}.contact-form{display:flex;width:100%;flex-direction:column;gap:18px;margin-bottom:1.5rem}.contact-row{display:flex;width:100%;gap:18px}@media (max-width: 1000px){.contact-row{flex-direction:column;gap:0}}.contact-field{flex:1;display:flex;flex-direction:column;margin-bottom:8px}.contact-field label{font-size:1rem;color:#444;margin-bottom:6px;font-weight:500}.contact-field input,.contact-field textarea{padding:12px 14px;border:1.5px solid #e0e0e0;border-radius:8px;font-size:1rem;background:#fafbfc;transition:border-color .2s,box-shadow .2s;outline:none;resize:none}.contact-field input:focus,.contact-field textarea:focus{border-color:#26a69a;box-shadow:0 0 0 2px #2563eb22;background:#fff}.contact-btn{margin:18px auto 0;padding:12px 38px;background:#26a69a;color:#fff;font-size:1.1rem;font-weight:600;border:none;border-radius:8px;border:1.5px solid transparent;cursor:pointer;letter-spacing:.03em;transition:background .2s;box-shadow:0 2px 8px #2563eb22}.contact-btn:hover,.contact-btn:focus{background:transparent;border:1.5px solid #26a69a;color:#26a69a}.contact-status{margin-top:18px;text-align:center;color:#22c55e;font-weight:500;font-size:1.05rem}@media screen and (max-width: 768px){.contact-wrapper{flex-direction:column;gap:20px}.contact-flex{width:100%}}.navbar{position:fixed;width:100%;display:flex;justify-content:space-between;align-items:center;background:#fff;z-index:10}.navbar__logo{margin:0;padding:0;font-weight:700;color:#000}.navbar__toggle{position:relative;width:40px;height:40px;margin-right:1rem;border-radius:50%;border:1px solid #26a69a;display:flex;justify-content:center;align-items:center;cursor:pointer;transition:transform .3s;z-index:1000}.navbar__toggle span{position:absolute;left:50%;top:50%;width:20px;height:1px;background:#26a69a;transition:.3s;border-radius:1px;transform:translate(-50%,-50%)}.navbar__toggle span:first-child{transform:translate(-50%,-3px)}.navbar__toggle span:last-child{transform:translate(-50%,3px)}.navbar__toggle.open span:first-child{transform:translate(-50%,-50%) rotate(45deg)}.navbar__toggle.open span:last-child{transform:translate(-50%,-50%) rotate(-45deg)}.navbar__menu{position:fixed;top:0;right:0;width:100%;height:100vh;background:#fff;display:flex;justify-content:center;align-items:center;transform:translate(100%);transition:.3s}.navbar__menu ul{list-style:none;text-align:center;padding:0}.navbar__menu ul li{padding:20px;margin:auto}.navbar__menu ul li a{color:#000;font-size:1.5rem;text-decoration:none}.navbar .logo{z-index:1001}.navbar .book-a-meeting{color:#26a69a;font-weight:700;text-decoration:none;padding:10px 20px;border:2px solid #26a69a;border-radius:10px;display:inline-block;transition:background .3s,color .3s}.navbar .book-a-meeting:hover{background:#26a69a;color:#fff}@media (min-width: 769px){.navbar__toggle{display:none}.navbar__menu{transform:none!important;position:static;width:fit-content;height:50px;background:none}.navbar__menu ul{display:flex;gap:10px}.navbar__menu ul li a{font-size:1rem;cursor:pointer}}*{box-sizing:border-box}body{margin:0;font-family:Inter,sans-serif;background-color:transparent;color:#fff}.App{position:relative}.scroll-to-top{position:fixed;bottom:30px;right:30px;align-items:center;background:#000;color:#fff;border:none;border-radius:50%;width:40px;height:40px;font-size:20px;cursor:pointer;z-index:900;opacity:0;transform:translateY(20px);pointer-events:none;transition:background .3s}.scroll-to-top:hover{background:#333}.section{opacity:0}section{padding:100px 20px;max-width:1440px;margin:0 auto}.calendar-wrapper{padding:40px}.booking-calendar{width:100%;max-width:1050px;margin:0 auto;padding:20px;height:800px;border-radius:20px;box-shadow:0 4px 24px #0000001a;display:flex;flex-direction:column;align-items:center;font-size:1.5rem;color:#26a69a}.App.blurred{filter:blur(5px)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-backdrop .modal{background:#fff;border-radius:12px;padding:2rem;max-width:600px;width:90%;position:relative}.modal-backdrop .modal p{max-height:400px;overflow-y:auto}.modal-backdrop .modal .close-button{position:absolute;top:.5rem;right:.5rem;background:none;border:none;font-size:1.5rem;cursor:pointer}.footer-container{background-color:#26a69a;display:flex;margin-top:50px;height:60px;align-items:center;justify-content:center;font-size:.8rem}.footer-container a{color:#000;text-decoration:none;transition:color .3s ease}.footer-container a:hover{color:#fff}
