.header{position:sticky;top:0;z-index:100;background:var(--color-stone);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(132,169,140,.15)}.header__inner{display:flex;align-items:center;justify-content:space-between;height:72px}.header__brand{display:flex;align-items:center;gap:.75rem;text-decoration:none}.header__logo{width:40px;height:40px}.header__name{font-family:var(--font-display);font-size:1.1rem;font-weight:600;color:var(--color-deep-forest)}.header__nav{display:flex;align-items:center;gap:var(--space-lg)}.header__list{display:flex;list-style:none;gap:var(--space-md)}.header__link{font-size:.9rem;font-weight:500;color:var(--color-text-muted);padding:.5rem 0;position:relative;transition:color var(--transition-base)}.header__link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--color-canopy);border-radius:1px;transition:width var(--transition-base)}.header__link:hover,.header__link--active{color:var(--color-canopy)}.header__link--active:after,.header__link:hover:after{width:100%}.header__cta{font-size:.85rem;padding:.7rem 1.5rem}.header__cta:hover{color:#fff}.header__toggle{display:none;width:44px;height:44px;align-items:center;justify-content:center;background:none;border:none}.header__hamburger,.header__hamburger:before,.header__hamburger:after{display:block;width:22px;height:2px;background:var(--color-deep-forest);border-radius:2px;transition:all var(--transition-base);position:relative}.header__hamburger:before,.header__hamburger:after{content:"";position:absolute;left:0;width:100%}.header__hamburger:before{top:-7px}.header__hamburger:after{top:7px}.header__hamburger--open{background:transparent}.header__hamburger--open:before{top:0;transform:rotate(45deg)}.header__hamburger--open:after{top:0;transform:rotate(-45deg)}@media (max-width: 768px){.header__toggle{display:flex}.header__nav{position:fixed;top:70px;right:0;bottom:0;left:0;flex-direction:column;align-items:center;justify-content:flex-start;padding:var(--space-xl) var(--space-md);gap:var(--space-lg);background:var(--color-stone);-webkit-backdrop-filter:none;backdrop-filter:none;opacity:1;transform:translate(100%);transition:transform var(--transition-base);z-index:999;height:fit-content}.header__nav--open{transform:translate(0)}.header__list{flex-direction:column;align-items:center;gap:var(--space-md)}.header__link{font-size:1.1rem}}.footer{position:relative;background:var(--color-deep-forest);color:#fffc;padding:var(--space-2xl) 0 var(--space-lg);overflow:hidden}.footer__line{top:0;left:0;width:100%;height:80px;opacity:.1;color:var(--color-fog)}.footer__inner{position:relative;z-index:1}.footer__brand{margin-bottom:var(--space-xl)}.footer__title{font-family:var(--font-display);font-size:1.5rem;color:var(--color-white);margin-bottom:var(--space-xs)}.footer__tagline{color:var(--color-sage);font-size:.95rem}.footer__nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-lg);margin-bottom:var(--space-xl)}.footer__heading{font-family:var(--font-body);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-sage);margin-bottom:var(--space-sm)}.footer__col ul{list-style:none}.footer__col li{margin-bottom:.5rem;font-size:.9rem}.footer__col a{color:#ffffffbf;transition:color var(--transition-base)}.footer__col a:hover{color:var(--color-fog)}.footer__bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:var(--space-md);display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-sm);font-size:.8rem;color:#ffffff80}.footer__crefito{font-style:italic}.hero{position:relative;min-height:calc(100vh - 72px);display:flex;align-items:center;overflow:hidden;padding:var(--space-xl) 0}.btn:hover{color:#fff}.btn-service:hover{color:var(--color-canopy)}.hero__line{position:absolute;width:120%;left:-10%;opacity:.12}.hero__line--top{top:10%}.hero__line--bottom{bottom:10%}.hero__inner{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xl);align-items:center;position:relative;z-index:1}.hero__badge{display:inline-block;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--color-canopy);background:var(--color-fog);padding:.4rem 1rem;border-radius:var(--radius-full);margin-bottom:var(--space-md)}.hero__title{margin-bottom:var(--space-md)}.hero__title em{font-style:italic;color:var(--color-canopy)}.hero__text{font-size:1.1rem;margin-bottom:var(--space-lg);line-height:1.8}.hero__actions{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.hero__visual{display:flex;justify-content:center}.hero__oval-frame{position:relative;width:300px;height:400px}.hero__oval-frame:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:linear-gradient(160deg,var(--color-fog) 0%,var(--color-sage) 100%);opacity:.3;transform:scale(1.08);z-index:0}.hero__image{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;object-position:center top;border-radius:50%;box-shadow:0 8px 40px #1b433226,inset 0 0 0 4px #84a98c33}.hero__oval-decoration{position:absolute;top:-20px;right:-20px;bottom:-20px;left:-20px;width:calc(100% + 40px);height:calc(100% + 40px);z-index:2;pointer-events:none}@media (max-width: 768px){.hero__inner{grid-template-columns:1fr;text-align:center}.hero__actions{justify-content:center}.hero__visual{order:2;margin-top:var(--space-lg)}.hero__content{order:1}.hero__oval-frame{width:220px;height:290px}}.highlights__header{text-align:center;margin-bottom:var(--space-xl)}.highlights__header p{margin:var(--space-sm) auto 0}.highlights__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-md)}.highlight-card{background:var(--color-stone);border-radius:var(--radius-md);padding:var(--space-lg);transition:all var(--transition-base);border:1px solid transparent}.highlight-card:hover{border-color:var(--color-sage);box-shadow:var(--shadow-soft);transform:translateY(-4px)}.highlight-card__icon{font-size:2rem;display:block;margin-bottom:var(--space-sm)}.highlight-card__title{font-size:1.2rem;margin-bottom:var(--space-xs);color:var(--color-deep-forest)}.highlight-card__desc{font-size:.9rem;line-height:1.7}.cta-banner{position:relative;text-align:center;overflow:hidden}.cta-banner__line{top:50%;left:-10%;width:120%;transform:translateY(-50%);opacity:.08}.cta-banner__inner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:var(--space-sm)}.cta-banner__title{color:var(--color-deep-forest)}.cta-banner__text{font-size:1.1rem;margin-bottom:var(--space-sm);text-align:center}.page-header{position:relative;padding:var(--space-2xl) 0 var(--space-xl);overflow:hidden;text-align:center}.page-header__line{top:60%;left:-5%;width:110%;opacity:.08}.page-header__inner{position:relative;z-index:1}.page-header__subtitle{font-size:1.1rem;margin-top:var(--space-sm);max-width:55ch;margin-left:auto;margin-right:auto}.services-list{padding-top:0}.service-block{display:grid;grid-template-columns:1.3fr .7fr;gap:var(--space-xl);align-items:center;padding:var(--space-xl) 0;border-bottom:1px solid rgba(132,169,140,.15)}.service-block:last-child{border-bottom:none}.service-block--reverse{grid-template-columns:.7fr 1.3fr}.service-block--reverse .service-block__content{order:2}.service-block--reverse .service-block__visual{order:1}.service-block__icon{font-size:2.5rem;display:block;margin-bottom:var(--space-sm)}.service-block__title{margin-bottom:.25rem}.service-block__subtitle{font-family:var(--font-display);font-style:italic;color:var(--color-sage);font-size:1rem;margin-bottom:var(--space-md)}.service-block__desc{margin-bottom:var(--space-md);font-size:1rem;line-height:1.8}.service-block__benefits h4{font-size:.9rem;color:var(--color-canopy);margin-bottom:var(--space-xs)}.service-block__benefits ul{list-style:none;margin-bottom:var(--space-md)}.service-block__benefits li{position:relative;padding-left:1.5rem;margin-bottom:.4rem;font-size:.9rem;color:var(--color-text-muted)}.service-block__benefits li:before{content:"";position:absolute;left:0;top:.6rem;width:8px;height:2px;background:var(--color-sage);border-radius:2px}.service-block__whom{font-size:.9rem;padding:var(--space-sm);background:var(--color-fog);border-radius:var(--radius-sm);border-left:3px solid var(--color-sage)}.service-block__visual{display:flex;justify-content:center;align-items:center}.service-block__image-frame{position:relative;width:100%;max-width:280px;aspect-ratio:4 / 5;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lifted)}.service-block__image-frame:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-lg);border:2px solid rgba(132,169,140,.2);pointer-events:none}.service-block__image{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform var(--transition-base);image-rendering:-webkit-optimize-contrast;transform:translateZ(0);backface-visibility:hidden}.service-block:hover .service-block__image{transform:scale(1.03)}@media (max-width: 768px){.service-block,.service-block--reverse{grid-template-columns:1fr}.service-block--reverse .service-block__content{order:1}.service-block--reverse .service-block__visual{order:2}.service-block__visual{margin-top:var(--space-md)}.service-block__image-frame{max-width:240px}}.about__hero{position:relative;padding:var(--space-2xl) 0;overflow:hidden}.about__hero-line{top:30%;left:-5%;width:110%;opacity:.08}.about__hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1.2fr;gap:var(--space-xl);align-items:center}.about__photo-area{display:flex;justify-content:center}.about__photo-placeholder{width:280px;height:360px;border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--color-fog),var(--color-sage));display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.about__photo-placeholder svg{width:70%;height:auto;opacity:.4}.about__intro-tag{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--color-sage);margin-bottom:var(--space-sm)}.about__intro h1{margin-bottom:var(--space-md)}.about__intro p{margin-bottom:var(--space-sm);font-size:1.05rem;line-height:1.8}.about__philosophy{text-align:center}.about__philosophy h2{margin-bottom:var(--space-md)}.about__pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md);margin-top:var(--space-lg)}.pillar{padding:var(--space-lg);border-radius:var(--radius-md);background:var(--color-stone);border:1px solid rgba(132,169,140,.1)}.pillar__icon{font-size:2rem;margin-bottom:var(--space-sm);display:block}.pillar__title{font-size:1.1rem;color:var(--color-canopy);margin-bottom:.5rem}.pillar__desc{font-size:.9rem}.about__credentials{background:var(--color-deep-forest);padding:var(--space-xl);border-radius:var(--radius-lg);color:#ffffffd9}.about__credentials h3{color:var(--color-white);margin-bottom:var(--space-md)}.about__credentials ul{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-sm)}.about__credentials li{padding-left:1.5rem;position:relative;font-size:.95rem}.about__credentials li:before{content:"";position:absolute;left:0;top:.65rem;width:8px;height:2px;background:var(--color-sage);border-radius:2px}@media (max-width: 768px){.about__hero-inner{grid-template-columns:1fr;text-align:center}.about__photo-area{order:-1}.about__photo-placeholder{width:200px;height:260px}.about__pillars{grid-template-columns:1fr}}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:var(--space-md)}.testimonial-card{position:relative;background:var(--color-white);border-radius:var(--radius-md);padding:var(--space-lg);border:1px solid rgba(132,169,140,.12);transition:all var(--transition-base);display:flex;flex-direction:column}.testimonial-card:hover{box-shadow:var(--shadow-soft);transform:translateY(-3px)}.testimonial-card__quote{width:32px;height:32px;margin-bottom:var(--space-sm)}.testimonial-card__text{font-size:1rem;line-height:1.8;font-style:italic;color:var(--color-text);flex:1;margin-bottom:var(--space-md)}.testimonial-card__footer{display:flex;flex-direction:column;gap:.2rem;border-top:1px solid rgba(132,169,140,.1);padding-top:var(--space-sm)}.testimonial-card__name{font-style:normal;font-weight:600;color:var(--color-deep-forest);font-size:.95rem}.testimonial-card__meta{font-size:.8rem;color:var(--color-text-muted)}.testimonial-card__duration{font-size:.75rem;color:var(--color-sage);font-weight:500}@media (max-width: 768px){.testimonials-grid{grid-template-columns:1fr}}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xl);align-items:start}.contact-info h2{margin-bottom:var(--space-sm)}.contact-info__desc{font-size:1.05rem;line-height:1.8;margin-bottom:var(--space-lg)}.contact-channels{display:flex;flex-direction:column;gap:var(--space-sm)}.contact-channel{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);background:var(--color-white);border:1px solid rgba(132,169,140,.12);text-decoration:none;color:inherit;transition:all var(--transition-base)}a.contact-channel:hover{border-color:var(--color-canopy);box-shadow:var(--shadow-soft);transform:translate(4px)}.contact-channel--whatsapp:hover{border-color:#25d366}.contact-channel__icon{font-size:1.5rem;flex-shrink:0}.contact-channel strong{display:block;font-size:.95rem;color:var(--color-deep-forest)}.contact-channel span{font-size:.85rem;color:var(--color-text-muted)}.contact-form{background:var(--color-white);border-radius:var(--radius-md);padding:var(--space-lg);border:1px solid rgba(132,169,140,.1);box-shadow:var(--shadow-soft)}.contact-form__title{font-size:1.3rem;margin-bottom:var(--space-md);color:var(--color-deep-forest)}.contact-form__group{margin-bottom:var(--space-md)}.contact-form__group label{display:block;font-size:.85rem;font-weight:500;color:var(--color-text);margin-bottom:.4rem}.contact-form__group input,.contact-form__group select,.contact-form__group textarea{width:100%;padding:.75rem 1rem;border:1.5px solid rgba(132,169,140,.25);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.95rem;color:var(--color-text);background:var(--color-stone);transition:border-color var(--transition-base)}.contact-form__group input:focus,.contact-form__group select:focus,.contact-form__group textarea:focus{border-color:var(--color-canopy);outline:none;box-shadow:0 0 0 3px #2d6a4f1a}.contact-form__group textarea{resize:vertical;min-height:100px}.contact-form__submit{width:100%;justify-content:center}.contact-form__note{margin-top:var(--space-sm);font-size:.8rem;color:var(--color-text-muted);text-align:center}.contact-form__alert{padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:.9rem;margin-bottom:var(--space-md)}.contact-form__alert--success{background:var(--color-fog);color:var(--color-deep-forest);border:1px solid var(--color-sage)}.contact-form__alert--error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.contact-map__placeholder{height:240px;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--color-fog) 0%,var(--color-sage) 100%);display:flex;align-items:center;justify-content:center;text-align:center}.contact-map__text{display:flex;align-items:center;gap:var(--space-sm)}.contact-map__text span{font-size:2.5rem}.contact-map__text p{font-size:1.2rem;color:var(--color-deep-forest);font-weight:500}.contact-map__text small{font-weight:400;font-size:.85rem;color:var(--color-text-muted)}@media (max-width: 768px){.contact-grid{grid-template-columns:1fr}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-deep-forest: #1B4332;--color-canopy: #2D6A4F;--color-sage: #84A98C;--color-fog: #D8F3DC;--color-stone: #F5F1EB;--color-earth: #5C4033;--color-dusk: #4A4063;--color-white: #FFFFFF;--color-text: #1a1a2e;--color-text-muted: #4a5568;--font-display: "Fraunces", serif;--font-body: "DM Sans", sans-serif;--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2.5rem;--space-xl: 4rem;--space-2xl: 6rem;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--radius-full: 9999px;--shadow-soft: 0 4px 24px rgba(27, 67, 50, .08);--shadow-lifted: 0 8px 40px rgba(27, 67, 50, .12);--transition-base: .3s cubic-bezier(.4, 0, .2, 1);--transition-spring: .5s cubic-bezier(.34, 1.56, .64, 1)}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-stone);line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;line-height:1.2;color:var(--color-deep-forest)}h1{font-size:clamp(2.2rem,5vw,3.5rem)}h2{font-size:clamp(1.8rem,4vw,2.8rem)}h3{font-size:clamp(1.3rem,2.5vw,1.8rem)}p{max-width:65ch;color:var(--color-text-muted)}a{color:var(--color-canopy);text-decoration:none;transition:color var(--transition-base)}a:hover{color:var(--color-deep-forest)}img{max-width:100%;height:auto;display:block}button{font-family:var(--font-body);cursor:pointer;border:none;outline:none}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-md)}.section{padding:var(--space-2xl) 0}.section--alt{background-color:var(--color-white)}.movement-line{position:absolute;pointer-events:none;opacity:.15;z-index:0}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 2rem;font-size:.95rem;font-weight:500;border-radius:var(--radius-full);transition:all var(--transition-base);letter-spacing:.02em}.btn--primary{background-color:var(--color-canopy);color:var(--color-white);box-shadow:0 4px 16px #2d6a4f4d}.btn--primary:hover{background-color:var(--color-deep-forest);transform:translateY(-2px);box-shadow:0 6px 24px #2d6a4f66}.btn--outline{background-color:transparent;color:var(--color-canopy);border:2px solid var(--color-sage)}.btn--outline:hover{background-color:var(--color-fog);border-color:var(--color-canopy)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:focus-visible{outline:3px solid var(--color-sage);outline-offset:3px;border-radius:4px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes drawLine{0%{stroke-dashoffset:1000}to{stroke-dashoffset:0}}.animate-in{animation:fadeInUp .7s var(--transition-base) both}
