:root{--teal:#159e8c;--teal-light:#e8f5f3;--teal-dark:#0d7a6b;--purple:#54337e;--purple-light:#ddd1ef;--purple-dark:#3d2280;--white:#fff;--bg-light:#effcff;--about-panel-bg:color-mix(in srgb, var(--bg-light) 90%, var(--border) 10%);--page-bg:color-mix(in srgb, var(--bg-light) 18%, var(--border) 92%);--text:#4a4a5a;--text-dark:#1a1a2e;--text-muted:#7a7a8e;--border:#e8e8ef;--shadow:0 4px 24px #512da814;--shadow-lg:0 8px 40px #512da81f;--radius:12px;--radius-lg:10px;--radius-full:999px;--font:"Nunito Sans", system-ui, sans-serif;--max-width:1200px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font);color:var(--text-dark);background:var(--page-bg);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6}#root{min-height:100svh}img{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3,h4{color:var(--text-dark);margin:0;line-height:1.25}p{margin:0}button,input,select,textarea{font-family:inherit}.highlight-teal{color:var(--teal)}.highlight-purple{color:var(--purple)}.section-label{letter-spacing:.12em;text-transform:uppercase;color:var(--purple);margin-bottom:.5rem;font-size:.75rem;font-weight:700}.section-anchor{scroll-margin-top:6.5rem}.section-title{margin-bottom:.75rem;font-size:clamp(1.75rem,4vw,2.25rem);font-weight:700}.section-subtitle{color:var(--text-dark);max-width:560px;font-size:1.05rem}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}.btn{border-radius:var(--radius-full);cursor:pointer;white-space:nowrap;border:2px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex}.btn:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.btn:focus-visible{outline:2px solid var(--purple);outline-offset:2px}.btn-teal{background:var(--teal);color:var(--white)}.btn-teal:hover{background:var(--teal-dark)}.btn-purple{background:var(--purple);color:var(--white)}.btn-purple:hover{background:var(--purple-dark)}.btn-outline{color:var(--purple);border-color:var(--purple);background:0 0}.btn-outline:hover{background:var(--purple-light)}.header{z-index:100;background:var(--white);--header-height:84px;transition:transform .3s;position:sticky;top:0;box-shadow:0 2px 12px #0000000a}.header--hidden{transform:translateY(-100%)}.header__inner{min-height:var(--header-height);align-items:center;gap:2rem;padding:.5rem 0;display:flex}.header__logo{align-items:center;line-height:0;display:flex}.header__logo img{object-fit:contain;width:auto;max-width:320px;height:67px}.header__nav{flex:1}.header__links{justify-content:center;align-items:center;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.header__link{color:var(--text-dark);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:.5rem 1rem;font-family:inherit;font-size:.9rem;font-weight:600;text-decoration:none;transition:color .2s,border-color .2s;display:block}.header__link:hover,.header__link--active{color:var(--teal);border-bottom-color:var(--teal)}.header__cta{flex-shrink:0}.header__menu-btn{cursor:pointer;color:var(--text-dark);background:0 0;border:none;padding:.5rem;display:none}.hero{align-items:center;min-height:360px;display:flex;position:relative;overflow:hidden}.hero__media{z-index:0;position:absolute;inset:0}.hero__slide{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity 1s;position:absolute;inset:0}.hero__slide--active{opacity:1}.hero__scrims{pointer-events:none;background:linear-gradient(90deg,#fffffff7 0%,#ffffffe0 42%,#fff0 100%);width:58%;position:absolute;top:0;bottom:0;left:0}.carousel-nav__btn{width:40px;height:40px;color:var(--purple);cursor:pointer;background:#ffffffeb;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:background .2s,transform .2s;display:flex;box-shadow:0 2px 10px #0000002e}.carousel-nav__btn:hover{background:var(--white);transform:scale(1.05)}.carousel-nav__btn:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.hero__layout{z-index:1;width:100%;max-width:var(--max-width);grid-template-columns:1fr auto;align-items:center;gap:2rem;min-height:360px;margin:0 auto;padding:2rem 1.5rem;display:grid;position:relative}.hero__title{max-width:520px;margin-bottom:.75rem;font-size:clamp(2rem,5vw,2.75rem);font-weight:800}.hero__text{color:var(--text-dark);max-width:480px;margin-bottom:1.25rem;font-size:1.05rem}.hero__card{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:fit-content;max-width:none;color:var(--text-dark);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;align-items:center;gap:.75rem;padding:1rem 1.25rem;font-size:.95rem;font-weight:600;line-height:1.4;display:flex}.hero__card-text{margin:0}.hero__card-line{display:block}.hero__card-icon{color:var(--purple);flex-shrink:0}@media (width>=769px){.hero__layout{grid-template-columns:1fr;align-items:center}.hero__card{z-index:2;position:absolute;bottom:2rem;right:0}.hero__title,.hero__text{max-width:30%}}.services{padding:2.5rem 0 .5rem}.services__header{text-align:center;margin-bottom:1.5rem}.services__underline{background:var(--teal);border-radius:2px;width:48px;height:3px;margin:1rem auto 0}.services__grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:.625rem;display:grid}.services__card{text-align:center;background:var(--white);border-radius:var(--radius-lg);padding:1.5rem .4rem}.services__icon{justify-content:center;margin-bottom:1rem;display:flex}.services__card h3{margin-bottom:.75rem;font-size:.95rem;font-weight:700}.services__card p{color:var(--text-dark);font-size:.85rem;line-height:1.5}.about{padding:.5rem 0 2.5rem}.about__panel{background:var(--white);border-radius:var(--radius-lg);width:100%;padding:1.75rem}.about__header{margin-bottom:0}.about__header .section-label{margin-bottom:.35rem}.about__header .section-title{white-space:nowrap;margin-bottom:0}.about__underline{background:var(--purple);border-radius:2px;width:30%;height:3px;margin-top:1rem;margin-bottom:1rem}.about__inner{grid-template-columns:1fr 1fr;align-items:start;column-gap:1.5rem;display:grid}.about__left{min-width:0}.about__content{margin-top:0}.about__gallery{align-self:start;width:100%}.about__text{color:var(--text-dark);margin-bottom:.75rem;line-height:1.65}.about__text:first-child{margin-top:0}.about__content .btn{margin-top:.5rem}.about__carousel{border-radius:var(--radius-lg);aspect-ratio:4/3;background:var(--white);position:relative;overflow:hidden;box-shadow:0 6px 28px #0000002e,0 2px 10px #512da833}.about__slide{object-fit:cover;opacity:0;pointer-events:none;width:100%;height:100%;transition:opacity .6s;position:absolute;inset:0}.about__slide--active{opacity:1;pointer-events:auto}.about__slide--video{object-fit:cover;background:#5a3585}.about__slide-embed{object-fit:cover;border:0;width:100%;height:100%;display:block}.about__carousel-btn{z-index:2;position:absolute;top:50%;transform:translateY(-50%)}.about__carousel-btn:hover{transform:translateY(-50%)scale(1.05)}.about__carousel-btn--prev{left:.75rem}.about__carousel-btn--next{right:.75rem}.hero__carousel-btn{z-index:10}.hero__dots{z-index:10;justify-content:center;gap:.5rem;display:flex;position:absolute;bottom:1.25rem;left:50%;transform:translate(-50%)}.hero__dot{cursor:pointer;background:#ffffff73;border:none;border-radius:50%;width:10px;height:10px;padding:0;transition:background .2s,transform .2s}.hero__dot--active{background:var(--white);transform:scale(1.2)}.about__dots{justify-content:center;gap:.5rem;margin-top:1rem;display:flex}.about__dot{background:var(--border);cursor:pointer;border:none;border-radius:50%;width:10px;height:10px;padding:0;transition:background .2s,transform .2s}.about__dot--active{background:var(--teal);transform:scale(1.2)}.values{padding:1rem 0}.values__grid{grid-template-columns:repeat(4,1fr);gap:1.25rem;display:grid}.values__item{align-items:flex-start;gap:1rem;display:flex}.values__icon{flex-shrink:0}.values__item h3{margin-bottom:.25rem;font-size:.9rem;font-weight:700}.values__item p{color:var(--text-dark);white-space:pre-line;font-size:.82rem}.info{padding:.5rem 0 2.5rem}.info__panel{background:var(--about-panel-bg);border-radius:var(--radius-lg);width:100%;padding:1.75rem}.info__header{margin-bottom:0}.info__header .section-label{margin-bottom:.35rem}.info__header .section-title{margin-bottom:0}.info__underline{background:var(--teal);border-radius:2px;width:30%;height:3px;margin-top:1rem;margin-bottom:1rem}.info__grid{grid-template-columns:1fr 1.5fr;gap:1.25rem;display:grid}.info__schedule,.info__map{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:1.5rem}.info__map-label{align-items:center;gap:.5rem;display:flex}.info__map-label svg{flex-shrink:0}.info__hours{margin:0 0 1.25rem;padding:0;list-style:none}.info__hours li{border-bottom:1px solid var(--border);justify-content:space-between;padding:.75rem 0;font-size:.95rem;display:flex}.info__hours li:last-child{border-bottom:none}.info__hours li span:first-child{color:var(--text-dark);font-weight:600}.info__note{color:var(--text-dark);font-size:.85rem;font-style:italic}.info__address{color:var(--text-dark);margin-bottom:1rem;font-size:.95rem}.info__map-embed{border-radius:var(--radius);height:220px;margin-bottom:.75rem;overflow:hidden}.info__directions{justify-content:center;width:100%}.contact-page{min-height:50vh;padding:2rem 0 3rem}.contact-page .contact{padding-top:0}.contact{padding:2.5rem 0}.contact__inner{grid-template-columns:1fr 1.4fr;align-items:start;gap:2rem;display:grid}.contact__form{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:1.5rem}.contact__row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.contact__field{margin-bottom:1rem}.contact__field label{color:var(--text-dark);margin-bottom:.4rem;font-size:.85rem;font-weight:600;display:block}.contact__field input,.contact__field select,.contact__field textarea{border:1.5px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text-dark);background:var(--white);padding:.75rem 1rem;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.contact__field input::placeholder,.contact__field textarea::placeholder{color:var(--text-muted);opacity:1}.contact__field select:required:invalid{color:var(--text-muted)}.contact__field select option{color:var(--text-dark)}.contact__field select option[value=""]{color:var(--text-muted)}.contact__field input:focus,.contact__field select:focus,.contact__field textarea:focus{border-color:var(--teal);outline:none;box-shadow:0 0 0 3px #159e8c26}.contact__field input[aria-invalid=true],.contact__field select[aria-invalid=true],.contact__field textarea[aria-invalid=true]{border-color:#e53935}.contact__error{color:#e53935;margin-top:.25rem;font-size:.8rem;display:block}.contact__checkbox{color:var(--text-dark);cursor:pointer;align-items:center;gap:.5rem;margin-bottom:1.25rem;font-size:.9rem;display:flex}.contact__checkbox input{width:18px;height:18px;accent-color:var(--teal)}.contact__submit{width:100%;padding:1rem;font-size:1rem}.work-with-us{background:var(--purple-light);padding:1.75rem 0}.work-with-us__inner{grid-template-columns:1fr;align-items:center;gap:.75rem;display:grid}.work-with-us__content .section-label{margin-bottom:.35rem}.work-with-us__line{flex-wrap:wrap;align-items:center;gap:.35rem .5rem;display:flex}.work-with-us__text{color:var(--text-dark);font-size:1rem;line-height:1.7}.work-with-us__contact{background:var(--white);border-radius:var(--radius-lg);width:fit-content;max-width:100%;box-shadow:var(--shadow);padding:1.5rem}.work-with-us__contact h3{color:var(--purple);margin:0 0 1rem;font-size:1rem;font-weight:700}.work-with-us__email{color:var(--teal-dark);vertical-align:middle;align-items:center;gap:.35rem;font-size:1rem;font-weight:600;text-decoration:none;transition:color .2s;display:inline-flex}.work-with-us__email:hover{color:var(--purple)}@media (width>=769px){.work-with-us__contact{justify-self:end}.work-with-us__line{flex-wrap:nowrap}}.cta-banner{padding-block:1.5rem 2rem}.cta-banner__card{background:var(--purple);color:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);flex-wrap:wrap;justify-content:center;align-items:center;gap:1.25rem 2rem;padding:.85rem 1.5rem;display:flex;position:relative;overflow:hidden}.cta-banner__card>*{flex:none}.cta-banner__brain{justify-content:center;align-items:center;display:flex}.cta-banner__brain-img{object-fit:contain;width:80px;height:80px}.cta-banner__quote{text-align:left;margin:0;font-size:1.35rem;font-weight:600;line-height:1.45}.cta-banner__quote strong{color:var(--teal);font-weight:800}.cta-banner__message{text-align:left;justify-content:flex-start;align-items:center;gap:.85rem;display:flex}.cta-banner__message-text{text-align:left;font-size:1.35rem;font-weight:600;line-height:1.45;display:block}.cta-banner__calendar-img{object-fit:contain;flex-shrink:0;width:40px;height:40px}.cta-banner__btn{padding:.9rem 1.85rem;font-size:1rem}.footer{background:var(--purple);color:var(--white);padding:2rem 0 1.25rem}.footer__content{flex-direction:column;display:flex}.footer__main{grid-template-columns:repeat(4,1fr);align-items:flex-start;gap:2rem;display:grid}.footer__brand,.footer__contact,.footer__social,.footer__fiscal{min-width:0}.footer__brand{justify-content:center;display:flex}.footer__brand img{object-fit:contain;object-position:center;width:auto;max-width:220px;height:auto;max-height:8.1875rem;display:block}.footer__contact li:last-child{margin-bottom:0}.footer__contact h3,.footer__social h3{color:var(--white);margin:0 0 1rem;font-size:.95rem;font-weight:700}.footer__social{flex-direction:column;align-items:center;display:flex}.footer__social-links{gap:.75rem;display:flex}.footer__contact ul{margin:0;padding:0;list-style:none}.footer__contact li{color:#ffffffeb;align-items:center;gap:.6rem;margin-bottom:.75rem;font-size:.9rem;display:flex}.footer__contact li svg{color:var(--purple-light);flex-shrink:0}.footer__contact a{color:#ffffffeb;text-decoration:none;transition:color .2s}.footer__contact a:hover{color:var(--white)}.footer__social-links a{width:40px;height:40px;color:var(--white);background:#ffffff26;border-radius:50%;justify-content:center;align-items:center;transition:background .2s,color .2s;display:flex}.footer__social-links a:hover{background:var(--white);color:var(--purple)}.footer__fiscal{justify-content:center;display:flex}.footer__fiscal-link{line-height:0;display:block}.footer__fiscal-img{width:auto;height:40px;display:block}.footer__divider{background:var(--white);border:none;width:40vw;height:1px;margin:1.5rem auto}.footer__copyright{text-align:center;color:#ffffffe6;margin:0;font-size:.85rem}@media (width>=769px){.footer__contact{text-align:center;flex-direction:column;align-items:center;display:flex}.footer__contact ul{flex-direction:column;align-items:center;width:100%;display:flex}.footer__contact li{justify-content:center}.footer__contact li a,.footer__contact li span{text-align:center}}.floating-whatsapp{display:none}.floating-whatsapp__icon{width:52px;height:52px;color:var(--white);background:#25d366;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:0 4px 16px #25d36673}@media (width<=1024px){.services__grid{grid-template-columns:repeat(3,1fr)}.values__grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.header__nav{inset:var(--header-height) 0 auto 0;background:var(--white);box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:transform .3s,opacity .3s;position:fixed;transform:translateY(-120%)}.header__nav--open{opacity:1;pointer-events:auto;transform:translateY(0)}.header__links{flex-direction:column;padding:1rem}.header__link{text-align:center;width:100%;padding:.75rem}.header__cta{display:none}.header__inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:0;display:grid}.header__logo{grid-column:2;justify-self:center}.header__menu-btn{grid-column:3;justify-self:end;margin-left:0;display:flex}.floating-whatsapp{right:max(1.75rem, env(safe-area-inset-right,0px));bottom:max(1.25rem, env(safe-area-inset-bottom,0px));z-index:1000;color:inherit;background:0 0;padding:0;text-decoration:none;display:flex;position:fixed}@media (hover:hover){.floating-whatsapp{transition:transform .2s}.floating-whatsapp:hover{transform:translateY(-2px)}.floating-whatsapp:hover .floating-whatsapp__icon{box-shadow:0 6px 20px #25d36680}}.hero__card{display:none}.hero__content{flex-direction:column;display:flex}.hero__layout{padding-bottom:2.5rem}.hero__cta{align-self:center;margin-top:.5rem;margin-bottom:1rem;display:inline-flex}.hero__scrims{display:none}.hero__text{visibility:hidden}.hero__media:after{content:"";pointer-events:none;z-index:1;background:#ffffff73;position:absolute;inset:0}.hero__layout,.about__inner,.contact__inner,.work-with-us__inner,.info__grid{grid-template-columns:1fr}.about__panel,.info__panel{padding:1.5rem}.info__header .section-title{white-space:normal}.about__inner{grid-template-columns:1fr;row-gap:1rem}.about__header .section-title{white-space:normal}.about__carousel{aspect-ratio:4/3}.about__content{flex-direction:column;display:flex}.about__content .btn{align-self:center}.cta-banner{display:none}.cta-banner__card{flex-direction:column;justify-content:center;gap:1rem;padding:1rem 1.25rem}.cta-banner__quote{text-align:left}.cta-banner__message{justify-content:center}.cta-banner__message-text{text-align:left}.cta-banner__btn{width:100%}.services__grid{grid-template-columns:1fr;gap:.5rem}.services__card{text-align:left;background:var(--white);border-radius:var(--radius-lg);grid-template-rows:auto auto;grid-template-columns:auto 1fr;gap:0 1rem;padding:1rem;display:grid}.services__icon{grid-row:span 2;margin:0}.values__grid,.contact__row{grid-template-columns:1fr}.footer__main{text-align:center;flex-direction:column;align-items:center;gap:1.5rem;display:flex}.footer__contact{width:100%}.footer__contact li{justify-content:center}.footer__contact li:last-child span{overflow-wrap:break-word;min-width:0;max-width:60%}.footer__social-links{justify-content:center}.footer__fiscal{flex-direction:column;align-items:center;display:flex}.footer__brand{justify-content:center;display:flex}.footer__brand img{object-position:center;max-width:200px;max-height:120px;margin:0 auto}}
