:root{--header-height: 140px;--nav-height: 10px;--footer-height: 120px}:root,html,body,app-root{height:100%;margin:0;padding:0}body{background-color:#2a2e30;color:#f8f4ef}body,app-root,.app-shell{transform:none!important;perspective:none!important;transform-style:flat!important;backface-visibility:visible!important}header,.app-header,footer,.app-footer{position:relative}.logo-white{display:none}.logo-green{display:inline-block}body.home-active{overflow:hidden!important}body.home-active header,body.home-active .app-header{position:fixed;top:0;left:0;width:100%;z-index:1100}body.home-active footer,body.home-active .app-footer{position:fixed;bottom:0;left:0;width:100%;z-index:1000}body.home-active .logo-white{display:inline-block}body.home-active .logo-green{display:none}.app-shell:not(.home-active) .content{padding-top:1rem}body.home-active .content{padding-top:var(--header-height)}body.home-active .app-shell{padding-bottom:var(--footer-height)}section{background-color:transparent;width:90%;margin-top:80px;margin-left:auto;margin-right:auto;padding:20px;box-sizing:border-box}section h1{font-family:Dancing Script,cursive;font-size:36px;color:#f8f4ef;margin-bottom:20px;margin-top:0}section h2{font-family:Dancing Script,cursive;font-size:30px;color:#f8f4ef;margin-bottom:20px;margin-top:0}section p{font-family:Raleway,sans-serif;font-weight:600;font-size:16px;color:#f8f4ef;line-height:1.6;margin:10px 0;padding:0 20px;text-align:justify}body:not(.home-active){overflow-y:auto;scrollbar-width:thin;scrollbar-color:#8b9b82 #2a2e30}body:not(.home-active)::-webkit-scrollbar{width:12px}body:not(.home-active)::-webkit-scrollbar-track{background:transparent}body:not(.home-active)::-webkit-scrollbar-thumb{background-color:#8b9b82;border-radius:20px;border:3px solid #2a2e30}.page-home .home{position:fixed;top:var(--header-height);bottom:var(--footer-height);left:0;right:0;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;z-index:1;--home-title-size: 500px}.page-home .home-bg{position:fixed;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;pointer-events:none}.page-home .draw-gradient{width:100%;height:auto;display:block;margin:0 auto 1rem;overflow:visible}.page-home .draw-gradient text{font-family:Macondo Swash Caps,cursive;font-size:var(--home-title-size);stroke-width:3px;stroke-dasharray:2000;stroke-dashoffset:2000;stroke:url(#grad1);fill:url(#grad1);animation:drawLine 3s ease forwards}.page-home .lead{color:#fff;text-shadow:0 2px 4px rgba(0,0,0,1);font-size:1.5rem;font-family:Raleway,sans-serif}.page-equipa section.equipa{width:100%;max-width:1200px;padding:30px;border-radius:10px;background-color:#8b9b82}.page-equipa .membro-direita,.page-equipa .membro-esquerda,.page-equipa .equipa-intro{padding:20px;margin:20px auto;width:100%;max-width:1100px}.page-equipa .membro-direita img{width:30%;float:right;margin-left:40px;border-radius:15px;animation:fadeIn 1s ease-in forwards}.page-equipa .membro-esquerda img{width:30%;float:left;margin-right:40px;border-radius:15px;animation:fadeIn 1s ease-in forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.testimonials-page{width:100%;max-width:1500px;box-sizing:border-box;border-radius:10px;background:transparent;position:relative;z-index:1;display:block}.testimonials-page .header-text{text-align:center;margin-bottom:2rem;color:#f8f4ef}.testimonials-page .header-text h2{font-family:Dancing Script,cursive;font-size:3rem;margin:0;color:#f8f4ef}.scroll-wrapper{width:100%;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;padding:2rem 0 22px;cursor:grab;white-space:nowrap;overscroll-behavior-x:contain}.scroll-wrapper::-webkit-scrollbar{display:none}.scroll-wrapper{scrollbar-width:none;-ms-overflow-style:none}.cards-container{display:flex;gap:30px;align-items:stretch;padding:0;margin:0}.testimonial-card{flex:0 0 350px;background:#8b9b8233;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(248,244,239,.08);border-radius:20px;padding:30px;text-align:center;transition:transform .4s ease,background .4s ease;white-space:normal;box-shadow:0 4px 10px #00000059}.testimonial-card:hover{transform:translateY(-10px) scale(1.02);background:#8b9b8266}.card-image{width:120px;height:120px;margin:0 auto 1.5rem;border-radius:50%;overflow:hidden;border:3px solid #8b9b82}.card-image img{width:100%;height:100%;object-fit:cover;display:block}.card-content h3{font-family:Whisper,cursive;font-size:2.2rem;color:#f8f4ef;margin-bottom:.5rem}.text{font-family:Raleway,sans-serif;color:#f8f4ef;font-size:1rem;line-height:1.6}.page-contacto section.contacto{width:100%;max-width:850px;padding:30px;border-radius:10px}.page-contacto .contact-container{display:flex;justify-content:center}.page-contacto form{width:100%;max-width:800px;background-color:#8b9c82;padding:36px;border-radius:10px;box-sizing:border-box}.page-contacto .form-title{font-family:Dancing Script,cursive;font-size:42px;color:#f8f4ef;margin:0 0 8px;text-align:center}.page-contacto .form-subtitle{font-family:Wittgenstein,sans-serif;font-size:16px;color:#f8f4ef;text-align:center;margin-bottom:24px;opacity:.95}.page-contacto label{font-family:Wittgenstein,sans-serif;font-size:14px;color:#f8f4ef;display:block;margin:10px 0 6px}.page-contacto input[type=text],.page-contacto input[type=email],.page-contacto input[type=date],.page-contacto textarea{width:100%;background-color:#d1d5db;border:1px solid #ccc;border-radius:6px;padding:10px 12px;margin-bottom:12px;font-family:Wittgenstein,sans-serif;font-size:14px;color:#2a2e30;box-sizing:border-box}.page-contacto textarea{max-width:100%;display:block;box-sizing:border-box;height:120px;resize:vertical}.page-contacto .radio-group{display:block;width:100%;margin-bottom:8px}.page-contacto .radio-group input[type=radio]{display:inline-block;vertical-align:middle;margin-right:8px}.page-contacto .radio-group input[type=radio]+label{display:inline-block;vertical-align:middle;margin-right:12px;margin-bottom:10px;cursor:pointer}.page-contacto .radio-group input[type=radio]+label:after{content:"";display:block}.page-contacto .radio-group label{display:inline-block;vertical-align:middle;font-family:Wittgenstein,sans-serif;font-size:14px;color:#f8f4ef;cursor:pointer;margin-bottom:6px}.page-contacto button[type=submit]{width:100%;background-color:#9da5aa;color:#2a2e30;border:none;border-radius:8px;padding:12px 16px;font-family:Wittgenstein,sans-serif;font-size:16px;cursor:pointer;transition:background-color .2s ease,color .2s ease;margin-top:12px}.page-contacto button[type=submit]:hover{background-color:#2a2e30;color:#f8f4ef}.page-contacto .radio-group .radio-item{display:flex;align-items:center;gap:10px;width:100%;padding:6px 0}.page-contacto .radio-group .radio-item input[type=radio]{flex:0 0 auto}.page-contacto .radio-group .radio-item:after{content:""}.portfolio-grid{background-color:transparent}.header-content{text-align:center;margin-top:0;margin-bottom:50px}.header-content h1{font-family:Dancing Script,cursive;font-size:3.5rem;color:#f8f4ef;margin-bottom:10px}.grid-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:25px;max-width:1400px;margin:0 auto}.portfolio-card{position:relative;height:450px;border-radius:20px;overflow:hidden;box-shadow:0 10px 30px #0000004d;cursor:pointer}.portfolio-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.25,1,.5,1)}.portfolio-card:hover img{transform:scale(1.1)}.overlay{position:absolute;inset:0;background:#2a2e3099;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .4s ease;padding:20px}.portfolio-card:hover .overlay{opacity:1}.overlay-content{text-align:center;transform:translateY(20px);transition:transform .4s ease}.portfolio-card:hover .overlay-content{transform:translateY(0)}.overlay-content h2{font-family:Dancing Script,cursive;font-size:2.5rem;color:#f8f4ef;margin-bottom:15px}.overlay-content p{font-family:Raleway,sans-serif;font-size:1rem;color:#f8f4ef;margin-bottom:25px}.view-btn{display:inline-block;padding:10px 25px;background-color:#8b9b82;color:#f8f4ef;text-decoration:none;border-radius:50px;font-weight:700;transition:background .3s}.view-btn:hover{background-color:#f8f4ef;color:#2a2e30}.image-container img{object-position:center center}.image-container.img-pos-top img,.img-pos-top img{object-position:center top}.image-container.img-pos-center img,.img-pos-center img{object-position:center center}.image-container.img-pos-bottom img,.img-pos-bottom img{object-position:center bottom}img{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none}.portfolio-card img,.lightbox-content img{pointer-events:auto}section.thank-you{max-width:900px;margin:100px auto;padding:60px 30px;text-align:center}section.thank-you h1{font-family:Dancing Script,cursive;font-size:3.5rem;margin:0 0 10px}section.thank-you h2{font-family:Wittgenstein,sans-serif;font-size:16px;margin:0}.page-precario section{background-color:transparent!important;width:80%!important;padding:0!important;margin-top:80px!important}.page-precario section p{font-weight:400!important;padding:0!important;text-align:left;margin:10px 0}.questionario-page{width:100%;max-width:900px;margin:auto;padding:20px;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;text-align:center}.questionario-page section h1{font-family:Dancing Script,cursive;font-size:36px;color:#f8f4ef;margin-bottom:20px;margin-top:0}.questionario-page section p{font-family:Wittgenstein,sans-serif;font-size:15px;color:#f8f4ef;line-height:1.6;margin:10px 0;padding:0 20px;text-align:center}.questionario-page form{margin:20px auto 40px;display:flex;flex-direction:column;align-items:center;width:100%;max-width:700px;box-sizing:border-box}.questionario-page form label{font-family:Wittgenstein,sans-serif;font-size:15px;color:#f8f4ef;margin-bottom:10px;width:100%;text-align:left}.questionario-page .radio-group{display:flex;align-items:center;width:100%;justify-content:flex-start;gap:8px;margin-bottom:10px}.questionario-page .radio-group label{width:auto;margin:0;text-align:left;font-family:Wittgenstein,sans-serif;color:#f8f4ef}.questionario-page .radio-group input[type=radio]{margin-right:6px}.questionario-page form textarea{width:100%;max-width:100%;display:block;box-sizing:border-box;height:100px;font-size:15px;padding:10px;border-radius:10px;border:none;margin-bottom:20px;resize:vertical}.questionario-page form input[type=text],.questionario-page form input[type=number],.questionario-page form input[type=email],.questionario-page form input[type=date],.questionario-page form input[type=time]{width:100%;height:36px;font-size:15px;padding:8px 10px;border-radius:10px;border:none;margin-bottom:18px;box-sizing:border-box}.questionario-page form input[type=radio]{margin-right:10px;vertical-align:middle}.questionario-page form input[type=submit]{background-color:#8b9b82;color:#f8f4ef;padding:10px 20px;border:none;border-radius:15px;cursor:pointer;transition:background-color .3s;align-self:center}.questionario-page form input[type=submit]:hover{background-color:#f8f4ef;color:#2a2e30}.questionario-page .star-rating{display:flex;flex-direction:row-reverse;justify-content:flex-start;align-items:center;gap:6px;padding-left:0;margin:6px 0 14px;align-self:flex-start}.questionario-page .star-rating input[type=radio]{display:none}.questionario-page .star-rating label{font-family:"Font Awesome 5 Free"!important;font-weight:900;font-size:30px;color:#bbb;cursor:pointer;transition:color .3s;display:inline-block;width:36px;text-align:center;line-height:1;pointer-events:auto!important}.questionario-page .star-rating label:before{content:"\f005"}.questionario-page .star-rating input[type=radio]:checked~label,.questionario-page .star-rating input[type=radio]:checked~label~label,.questionario-page .star-rating input[type=radio]:checked~label~label~label,.questionario-page .star-rating input[type=radio]:checked~label~label~label~label,.questionario-page .star-rating input[type=radio]:checked~label~label~label~label~label{color:#8b9b82}.questionario-page .star-rating label:hover,.questionario-page .star-rating label:hover~label{color:#8b9b82}@media (max-width: 1000px){.testimonial-card{flex:0 0 320px}.card-image{width:100px;height:100px}.testimonials-page{margin-top:80px!important}}@media (max-width: 800px){.cards-container{gap:18px}.testimonial-card{flex:0 0 300px;padding:20px}.header-text h2{font-size:2.4rem}}@media (max-width: 600px){.cards-container{gap:12px}.testimonial-card{flex:0 0 280px;padding:16px;border-radius:16px}.card-image{width:90px;height:90px}.header-text h2{font-size:2rem}.scroll-wrapper{padding:1.2rem 0 18px}}@media (max-width: 800px){section{margin-top:0}section.equipa{margin-top:80px}.page-home .home{--home-title-size: 300px}.page-home .lead{font-size:1.2rem}}@media (max-width: 600px){body{padding-top:0;padding-left:10px;padding-right:10px}nav{gap:.5em}nav a,.nav-link{max-width:100px;font-size:14px}header img,.app-header img{width:70px;height:70px}header h1,.app-header h1{font-size:22px}section p{font-size:12px;padding:0 10px}.membro-direita img,.membro-esquerda img{width:150px;margin:10px auto;float:none;display:block}}@media (max-width: 800px){.page-contacto{margin-top:80px!important}.page-contacto form{padding:20px}.page-contacto .form-title{font-size:32px}.page-contacto .radio-group .radio-item{padding:6px 0}}@media (max-width: 600px){.portfolio-grid{padding-top:50px}.grid-container{grid-template-columns:1fr}.portfolio-card{height:350px}.header-content h1{font-size:2.5rem}}@media (max-width: 600px){section.thank-you{margin:120px 10px 40px;padding:30px 20px}section.thank-you h1{font-size:2rem}}@media (max-width: 600px){.questionario-page{padding-top:30px;padding-left:10px;padding-right:10px;overflow-x:hidden}.questionario-page section h1{font-size:28px}.questionario-page section p{font-size:10px}}
