:root{--bg-ivory: #FAFAF8;--bg-teal-light: #F0F9F8;--text-primary: #112F2E;--text-secondary: #4A6362;--accent-teal: #00A19C;--accent-teal-dark: #008A86;--white: #FFFFFF;--black: #000000;--max-width: 1400px;--content-width: 800px;--section-py: 120px;--section-px: 5%;--border-light: rgba(0, 161, 156, .15);--border-thin: 1px solid var(--border-light);--border-radius: 4px;--radius-subtle: 2px;--font-display: "Cormorant Garamond", serif;--font-body: "Outfit", sans-serif;--transition-smooth: all .6s cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);color:var(--text-primary);background:var(--bg-ivory);line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,picture,video{max-width:100%;display:block;object-fit:cover}a{text-decoration:none;color:inherit;transition:var(--transition-smooth)}button{font-family:inherit;cursor:pointer;border:none;background:none}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--section-px);width:100%}.container-narrow{max-width:var(--content-width);margin:0 auto;padding:0 var(--section-px)}.section{padding:var(--section-py) 0}.section-teal-light{background-color:var(--bg-teal-light)}.section-dark{background:var(--text-primary);color:var(--bg-ivory)}.text-center{text-align:center}h1,h2,h3,h4,h5{font-family:var(--font-display);font-weight:400;line-height:1.1;margin-bottom:1rem;color:var(--text-primary)}.section-dark h1,.section-dark h2,.section-dark h3{color:var(--bg-ivory)}.tagline{font-family:var(--font-body);font-size:.75rem;letter-spacing:.25em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:2rem;display:block}.section-dark .tagline,.hero .tagline,.cta-section .tagline{color:#fafaf899}.title-massive{font-size:clamp(3rem,8vw,6rem);letter-spacing:-.02em}.title-massive em{font-style:italic;color:var(--accent-teal);font-weight:300}.title-large{font-size:clamp(2.5rem,5vw,4rem);letter-spacing:-.01em}.title-large em{font-style:italic;color:var(--accent-teal);font-weight:300}.body-large{font-size:clamp(1.1rem,2vw,1.4rem);line-height:1.8;color:var(--text-secondary);font-weight:300}.section-dark .body-large,.hero .body-large{color:#fafaf8cc}.btn{display:inline-flex;align-items:center;justify-content:center;padding:16px 36px;font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;font-weight:500;transition:var(--transition-smooth);position:relative;overflow:hidden;border-radius:var(--radius-subtle)}.btn-primary{background:var(--text-primary);color:var(--bg-ivory);border:1px solid var(--text-primary)}.btn-primary:hover{background:var(--accent-teal);border-color:var(--accent-teal);color:var(--white)}.btn-outline{background:transparent;color:var(--text-primary);border:1px solid var(--text-primary)}.btn-outline:hover{background:var(--text-primary);color:var(--bg-ivory)}.btn-outline-light{background:transparent;color:var(--bg-ivory);border:1px solid rgba(250,250,248,.4)}.btn-outline-light:hover{background:var(--bg-ivory);color:var(--text-primary)}.btn-cta-primary{background:var(--white);color:var(--text-primary);border:1px solid var(--white);font-weight:600}.btn-cta-primary:hover{background:transparent;color:var(--white)}.btn-link{padding:8px 0;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-primary);border-bottom:1px solid var(--text-primary);border-radius:0}.btn-link:hover{color:var(--accent-teal);border-color:var(--accent-teal);padding-left:8px}.img-serene{filter:sepia(10%) saturate(80%) contrast(1.1);transition:var(--transition-smooth)}.img-serene:hover{filter:sepia(0%) saturate(100%) contrast(1)}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;transition:background .4s ease,border-bottom .4s ease;border-bottom:1px solid transparent}.navbar.scrolled{background:var(--bg-ivory);border-bottom:var(--border-thin)}.nav-container{display:flex;justify-content:space-between;align-items:center;padding:24px var(--section-px);max-width:var(--max-width);margin:0 auto}.nav-logo-text{font-family:var(--font-display);font-size:1.5rem;color:var(--white);letter-spacing:.05em;text-transform:uppercase;transition:color .4s}.navbar.scrolled .nav-logo-text{color:var(--text-primary)}.nav-links{display:flex;gap:48px;list-style:none}.nav-links a{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:#fffc}.nav-links a:hover{color:var(--white)}.navbar.scrolled .nav-links a{color:var(--text-secondary)}.navbar.scrolled .nav-links a:hover{color:var(--text-primary)}.nav-actions{display:flex;align-items:center;gap:24px}.nav-action{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--white);border:1px solid rgba(255,255,255,.4);padding:12px 24px;border-radius:var(--radius-subtle);transition:all .4s}.nav-action:hover{background:var(--white);color:var(--text-primary)}.navbar.scrolled .nav-action{border-color:var(--text-primary);color:var(--text-primary)}.navbar.scrolled .nav-action:hover{background:var(--text-primary);color:var(--white)}.hamburger{display:none;width:24px;height:20px;position:relative;z-index:1001}.hamburger span{display:block;position:absolute;height:1px;width:100%;background:var(--white);transition:all .3s}.navbar.scrolled .hamburger span{background:var(--text-primary)}.hamburger span:nth-child(1){top:0}.hamburger span:nth-child(2){top:9px}.hamburger span:nth-child(3){top:18px}.mobile-menu{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--bg-ivory);z-index:900;display:flex;flex-direction:column;padding:120px var(--section-px) 40px;opacity:0;pointer-events:none;transition:opacity .4s ease}.mobile-menu.open{opacity:1;pointer-events:auto}.mobile-links{list-style:none;display:flex;flex-direction:column;gap:32px;margin-bottom:auto}.mobile-link{font-family:var(--font-display);font-size:2.5rem;color:var(--text-primary)}@media (max-width: 1024px){.nav-links,.nav-action{display:none}.hamburger{display:block}}.hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;background:var(--text-primary)}.hero-bg{position:absolute;top:0;left:0;right:0;bottom:0;z-index:0}.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center 30%}.hero-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to right,#1a3636d9,#1a363666 60%,#1a363600)}.hero-content{position:relative;z-index:10;padding-top:80px}.hero .title-massive{color:var(--white);margin-bottom:24px}.hero .hero-sub{color:#fafaf8cc;max-width:500px;margin-bottom:40px;font-size:1.25rem}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.gap-24{gap:24px}.mt-48{margin-top:48px}@media (max-width: 768px){.hero-overlay{background:linear-gradient(to bottom,#1a363699,#1a3636e6)}}.fade-in{opacity:0;transform:translateY(20px);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1)}.fade-in.visible{opacity:1;transform:translateY(0)}.philosophy-grid{display:grid;grid-template-columns:1fr;gap:40px;align-items:start}@media (min-width: 1024px){.philosophy-grid{grid-template-columns:1fr 1fr;gap:120px}}.philosophy-quote{font-family:var(--font-display);font-size:clamp(2rem,3.5vw,3rem);line-height:1.2;color:var(--text-primary)}.philosophy-image{margin-top:48px;overflow:hidden;border-radius:var(--border-radius);height:320px}.philosophy-image img{width:100%;height:100%;object-fit:cover}@media (max-width: 1023px){.philosophy-image{height:240px}}.philosophy-text{font-size:1.1rem;color:var(--text-secondary);line-height:1.8;font-weight:300}.philosophy-text p{margin-bottom:24px}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;text-align:center}@media (min-width: 768px){.stats-grid{grid-template-columns:repeat(4,1fr);gap:32px}}.stat-item{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px 0}.stat-number{font-family:var(--font-display);font-size:clamp(3rem,6vw,4.5rem);font-weight:300;color:var(--accent-teal);line-height:1}.stat-label{font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;color:#fafaf899;max-width:200px}.services-header{display:grid;grid-template-columns:1fr;gap:40px;margin-bottom:64px;align-items:center}@media (min-width: 1024px){.services-header{grid-template-columns:1fr 1fr;gap:80px}}.services-header-image{overflow:hidden;border-radius:var(--border-radius);height:300px}.services-header-image img{width:100%;height:100%;object-fit:cover}@media (max-width: 1023px){.services-header-image{height:220px}}.image-divider{position:relative;overflow:hidden}.image-divider-inner{position:relative;height:400px}@media (max-width: 768px){.image-divider-inner{height:280px}}.image-divider-inner img{width:100%;height:100%;object-fit:cover;object-position:center 40%}.image-divider-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to bottom,#112f2e4d,#112f2e99)}.image-divider-text{position:absolute;bottom:0;left:0;right:0;padding:48px var(--section-px);max-width:var(--max-width);margin:0 auto}.image-divider-text p{font-family:var(--font-display);font-size:clamp(1.4rem,3vw,2.2rem);color:var(--white);font-style:italic;font-weight:300;max-width:600px}.proceso-layout{display:grid;grid-template-columns:1fr;gap:48px;align-items:start}@media (min-width: 1024px){.proceso-layout{grid-template-columns:.8fr 1fr;gap:80px}}.proceso-image{overflow:hidden;border-radius:var(--border-radius);height:400px;position:sticky;top:120px}@media (max-width: 1023px){.proceso-image{height:280px;position:static}}.proceso-image img{width:100%;height:100%;object-fit:cover}.services-grid{display:grid;grid-template-columns:1fr;gap:24px}@media (min-width: 768px){.services-grid{grid-template-columns:1fr 1fr;gap:32px}}.service-card{background:var(--bg-ivory);border:var(--border-thin);padding:48px 32px;display:flex;flex-direction:column;transition:transform .4s ease,box-shadow .4s ease}.service-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px #1a36360f}.service-icon{width:32px;height:32px;color:var(--accent-teal);margin-bottom:24px}.service-title{font-family:var(--font-display);font-size:2rem;margin-bottom:12px}.service-text{color:var(--text-secondary);font-weight:300;line-height:1.6}.team-grid{display:grid;grid-template-columns:1fr;gap:24px}@media (min-width: 768px){.team-grid{grid-template-columns:repeat(2,1fr);gap:32px}}@media (min-width: 1200px){.team-grid{grid-template-columns:repeat(3,1fr)}}.team-card{background:var(--white);border:var(--border-thin);padding:40px 32px;text-align:center;transition:transform .4s ease,box-shadow .4s ease}.team-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px #1a36360f}.team-icon{width:48px;height:48px;margin:0 auto 24px;color:var(--accent-teal);display:flex;align-items:center;justify-content:center}.team-icon svg{width:36px;height:36px}.team-role{font-family:var(--font-display);font-size:1.6rem;margin-bottom:12px;color:var(--text-primary)}.team-desc{color:var(--text-secondary);font-weight:300;line-height:1.7;font-size:.95rem}.journey-timeline{max-width:700px;margin:0 auto}.journey-chapter{display:flex;gap:32px;margin-bottom:32px}.chapter-number{font-family:var(--font-display);font-size:2.5rem;color:var(--accent-teal);line-height:1;width:60px;flex-shrink:0}.chapter-content{padding-bottom:48px;border-bottom:var(--border-thin)}.journey-chapter:last-child .chapter-content{border-bottom:none}.chapter-title{font-family:var(--font-display);font-size:1.8rem;margin-bottom:16px}.chapter-text{color:var(--text-secondary);font-weight:300;line-height:1.8}.gallery-grid{display:grid;grid-template-columns:1fr;gap:12px}@media (min-width: 600px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.gallery-grid{grid-template-columns:repeat(3,1fr)}}.gallery-item{position:relative;width:100%;aspect-ratio:4 / 3;overflow:hidden;border-radius:var(--border-radius)}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform 1s ease}.gallery-item:hover img{transform:scale(1.05)}.gallery-caption{position:absolute;bottom:0;left:0;right:0;padding:32px 16px 14px;background:linear-gradient(to top,rgba(17,47,46,.85) 0%,transparent 100%);color:var(--white);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:500;pointer-events:none}.cert-grid{display:grid;grid-template-columns:1fr;gap:64px;align-items:center}@media (min-width: 1024px){.cert-grid{grid-template-columns:1.2fr .8fr;gap:120px}}.cert-badges{display:grid;grid-template-columns:1fr;gap:32px;margin-top:48px;border-top:1px solid rgba(250,250,248,.1);padding-top:40px}@media (min-width: 768px){.cert-badges{grid-template-columns:1fr 1fr}}.cert-badge{display:flex;align-items:flex-start;gap:16px}.cert-icon{width:32px;height:32px;color:var(--accent-teal);flex-shrink:0}.cert-text{display:flex;flex-direction:column}.cert-badge strong{font-family:var(--font-body);font-size:1.2rem;letter-spacing:.1em;color:var(--accent-teal)}.cert-badge span{font-size:.85rem;color:#fafaf899}.cert-images{display:flex;flex-direction:column;gap:16px}.cert-image-card{overflow:hidden;border-radius:var(--border-radius);background:#fafaf80d;border:1px solid rgba(250,250,248,.08)}.cert-image-card img{width:100%;object-fit:contain;background:#fafaf808;transition:transform .6s ease}.cert-image-card img{max-height:240px}.cert-card-vertical img{max-height:380px}.cert-image-card:hover img{transform:scale(1.02)}.cert-image-label{display:block;padding:10px 16px;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:#fafaf880;text-align:center}.testimonials-grid{display:grid;grid-template-columns:1fr;gap:32px}@media (min-width: 768px){.testimonials-grid{grid-template-columns:1fr 1fr;gap:40px}}.testimonial-card{background:var(--bg-teal-light);border:var(--border-thin);padding:40px 32px;display:flex;flex-direction:column;transition:transform .4s ease,box-shadow .4s ease}.testimonial-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px #1a36360f}.testimonial-quote-icon{font-family:var(--font-display);font-size:4rem;color:var(--accent-teal);line-height:.6;margin-bottom:16px}.testimonial-card .testimonial-quote{font-family:var(--font-display);font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.5;color:var(--text-primary);margin-bottom:24px;flex:1}.testimonial-footer{border-top:var(--border-thin);padding-top:16px}.testimonial-author-name{font-weight:500;color:var(--text-primary);font-size:.9rem}.testimonial-author-location{font-size:.8rem;color:var(--text-secondary);letter-spacing:.05em}.faq-accordion{border-top:var(--border-thin)}.faq-item{border-bottom:var(--border-thin)}.faq-question{width:100%;display:flex;justify-content:space-between;align-items:center;padding:28px 0;font-size:1.05rem;font-weight:500;color:var(--text-primary);text-align:left;gap:16px}.faq-question:hover{color:var(--accent-teal)}.faq-icon{font-size:1.5rem;font-weight:300;transition:transform .3s ease;flex-shrink:0}.faq-answer{max-height:0;overflow:hidden;transition:max-height .4s ease}.faq-answer p{padding-bottom:28px;color:var(--text-secondary);line-height:1.7;max-width:700px}.faq-item.active .faq-answer{max-height:500px}.faq-item.active .faq-question{color:var(--accent-teal)}.cta-section{background:linear-gradient(135deg,var(--text-primary) 0%,#0a4240 50%,var(--accent-teal-dark) 100%);color:var(--white)}.cta-content h2{color:var(--white)}.cta-content em{color:var(--accent-teal)}.cta-actions{display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap}.contact-grid{display:grid;grid-template-columns:1fr;gap:64px}@media (min-width: 1024px){.contact-grid{grid-template-columns:1fr 1fr;gap:80px}}.contact-details{display:flex;flex-direction:column;gap:32px;margin-top:48px;border-top:var(--border-thin);padding-top:48px}.contact-block{display:flex;flex-direction:column}.contact-block strong{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--accent-teal);margin-bottom:8px}.contact-link,.contact-block p{font-family:var(--font-display);font-size:1.5rem;color:var(--text-primary);line-height:1.4}.contact-link:hover{color:var(--accent-teal)}.contact-map{width:100%;height:400px;border-radius:var(--border-radius);overflow:hidden}@media (min-width: 1024px){.contact-map{height:100%;min-height:500px}}.contact-map iframe{width:100%;height:100%}.footer{background-color:var(--text-primary);color:var(--white);padding:100px 0 0;border-top:none}.footer-grid{display:grid;grid-template-columns:1fr;gap:64px}@media (min-width: 1024px){.footer-grid{grid-template-columns:1.5fr 2fr;gap:80px}}.footer-logo{font-family:var(--font-display);font-size:2rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:24px;display:block}.footer-col h4{font-family:var(--font-body);font-size:.85rem;letter-spacing:.15em;text-transform:uppercase;color:var(--bg-teal-light);margin-bottom:24px}.footer-mission{color:#fafaf880;font-size:.9rem;line-height:1.8;max-width:300px;margin-bottom:32px}.footer-social{display:flex;gap:20px;align-items:center}.footer-social a{color:#fafaf880;transition:color .3s ease;display:flex;align-items:center}.footer-social a:hover{color:var(--accent-teal)}.footer-social a svg{width:20px;height:20px}.footer-links{display:grid;grid-template-columns:1fr;gap:48px}@media (min-width: 768px){.footer-links{grid-template-columns:repeat(3,1fr);gap:24px}}.footer-col{display:flex;flex-direction:column;gap:14px}.footer-col-title{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-teal);margin-bottom:12px;font-weight:500}.footer-col a{font-size:.85rem;letter-spacing:.03em;color:#fafaf899}.footer-col a:hover{color:var(--white)}.footer-legal{border-top:1px solid rgba(250,250,248,.08);padding:28px 0;margin-top:80px}.footer-legal-flex{display:flex;flex-direction:column;gap:12px;font-size:.72rem;color:#fafaf84d;letter-spacing:.05em}@media (min-width: 768px){.footer-legal-flex{flex-direction:row;justify-content:space-between}}.footer-legal-links{display:flex;gap:24px}@keyframes pulse-wa{0%{box-shadow:0 0 #25d36666}70%{box-shadow:0 0 0 20px #25d36600}to{box-shadow:0 0 #25d36600}}.wa-float{position:fixed;bottom:24px;right:24px;background:#25d366;color:var(--white);width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px #25d3664d;z-index:1000;transition:var(--transition-smooth);animation:pulse-wa 3s infinite cubic-bezier(.66,0,0,1)}.wa-float:hover{transform:translateY(-5px) scale(1.05);box-shadow:0 10px 30px #25d36666;animation:none}
