/* Visual refinement layer — loaded after the core and page styles. */
body{overflow-x:hidden}
.header{box-shadow:0 8px 28px rgba(17,24,21,.045)}
.nav a{position:relative}
.nav a:after{position:absolute;right:0;bottom:5px;left:0;height:2px;border-radius:2px;background:var(--corp-green);content:"";transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
.nav a:hover:after,.nav a:focus-visible:after{transform:scaleX(1)}
.corp-section{padding:clamp(3.5rem,5.5vw,5.25rem) 0}
.corp-hero{padding:clamp(3.75rem,6vw,5.75rem) 0;background:linear-gradient(135deg,#fff 0%,#fff 58%,#f4f7f5 100%)}
.corp-hero-grid{gap:clamp(2.5rem,5vw,5.5rem)}
.corp-hero h1{font-size:clamp(2.65rem,4.8vw,4.1rem)}
.corp-hero p{line-height:1.72}
.hero-carousel{position:relative;min-width:0;border:1px solid var(--corp-line);border-radius:.75rem;overflow:hidden;background:var(--corp-warm);box-shadow:0 18px 50px rgba(17,24,21,.08)}
.hero-carousel-viewport{position:relative;aspect-ratio:4/3}
.hero-carousel-slide{position:absolute;inset:0;display:grid;grid-template-rows:minmax(0,1fr) auto;margin:0;visibility:hidden;opacity:0;transform:translateX(3%);transition:opacity .5s ease,transform .5s ease,visibility .5s}
.hero-carousel-slide.is-active{z-index:1;visibility:visible;opacity:1;transform:none}
.hero-carousel-slide img{display:block;width:100%;height:100%;min-height:0;object-fit:cover;object-position:center top}
.hero-carousel-slide figcaption{padding:1rem 4.25rem 1rem 1.25rem;color:var(--corp-muted);font-size:.85rem;background:var(--corp-warm)}
.hero-carousel-button{position:absolute;top:calc(50% - 1.35rem);z-index:3;display:grid;width:2.7rem;height:2.7rem;padding:0;place-items:center;border:1px solid rgba(255,255,255,.75);border-radius:50%;background:rgba(17,24,21,.78);color:#fff;font:500 2rem/1 Manrope,sans-serif;cursor:pointer;transition:background .2s ease,transform .2s ease}
.hero-carousel-button:hover{background:var(--corp-green);transform:scale(1.05)}
.hero-carousel-button.is-previous{left:.8rem}
.hero-carousel-button.is-next{right:.8rem}
.hero-carousel-dots{position:absolute;right:1.1rem;bottom:1.15rem;z-index:3;display:flex;gap:.4rem;align-items:center}
.hero-carousel-dot{width:.55rem;height:.55rem;padding:0;border:0;border-radius:1rem;background:#aab6af;cursor:pointer;transition:width .2s ease,background .2s ease}
.hero-carousel-dot[aria-current=true]{width:1.4rem;background:var(--corp-green)}
.hero-carousel-button:focus-visible,.hero-carousel-dot:focus-visible{outline:3px solid #fff;outline-offset:2px;box-shadow:0 0 0 5px var(--corp-green)}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.hero-primary-visual{box-shadow:0 24px 70px rgba(17,24,21,.12)}
.hero-primary-visual .hero-carousel-slide:first-child img{object-position:center}
.corp-heading{margin-bottom:2.35rem}
.corp-feature-grid article,.corp-card,.knowledge-card{transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.corp-feature-grid article:hover,.corp-card:hover,.knowledge-card:hover{border-color:#b9c9c1;box-shadow:0 16px 42px rgba(17,24,21,.07);transform:translateY(-3px)}
.corp-card{min-height:245px}
.corp-process li{padding:1.55rem}
.corp-process h3{margin-top:1.5rem}
.corp-proof{background:#fff}
.corp-proof-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.corp-proof-grid article{padding:1.5rem;border-left:3px solid var(--corp-green);background:var(--corp-surface)}
.corp-proof-grid article>span{color:var(--corp-green);font-size:.75rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.corp-proof-grid h3{margin-top:1rem;font-size:1.25rem}
.corp-proof-grid p{color:var(--corp-muted)}
.corp-proof-grid a{color:var(--corp-green);font-weight:700}
.corp-cta{padding:clamp(3.75rem,5.5vw,5.25rem) 0}
.knowledge-hero{padding:clamp(3.75rem,6vw,5.5rem) 0}
.knowledge-main{padding-top:clamp(3rem,5vw,4.5rem);padding-bottom:clamp(3.75rem,6vw,5.5rem)}
.knowledge-card{min-height:310px}
.page-hero,.article-hero{padding:clamp(4.75rem,7vw,6.75rem) max(10vw,24px)}
.article-body{padding:4.5rem 24px;font-size:1.06rem;line-height:1.78}
.article-body>p:first-child{font-size:1.16rem;color:#3f4c46}
.cta{margin-bottom:5rem;padding:clamp(3.5rem,6vw,5rem)}
.contact-wrap{padding:clamp(4rem,6vw,6rem) max(7vw,24px);gap:clamp(3rem,7vw,7rem);align-items:start;background:linear-gradient(135deg,#fff 0%,#f4f7f5 100%)}
.contact-wrap h1{font-size:clamp(2.8rem,4.6vw,5.1rem)}
.contact-form{border:1px solid var(--corp-line);border-radius:.75rem;box-shadow:0 24px 70px rgba(17,24,21,.09)}
.contact-form input,.contact-form textarea{transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}
.contact-form input:focus,.contact-form textarea:focus{outline:0;border-color:var(--corp-green);background:#fff;box-shadow:0 0 0 3px rgba(23,107,77,.13)}
.mobile-whatsapp{background:var(--corp-green)!important;border-color:var(--corp-green)!important;color:#fff!important;box-shadow:0 5px 16px rgba(23,107,77,.22)}
.mobile-whatsapp img{display:block;width:22px;height:22px}
@media(max-width:767px){
  .corp-container{width:min(100% - 32px,var(--corp-container))}
  .corp-hero{padding:2.75rem 0 3.5rem}
  .corp-hero-grid{gap:2.25rem}
  .corp-hero h1{font-size:clamp(2.15rem,9.5vw,2.75rem);letter-spacing:-.04em}
  .corp-hero p,.corp-heading>p,.corp-split p{font-size:1rem}
  .corp-actions{gap:.75rem;margin-top:1.5rem}
  .hero-carousel{margin-top:.5rem}
  .hero-carousel-button{top:calc(50% - 1.2rem);width:2.4rem;height:2.4rem}
  .hero-carousel-slide figcaption{padding-right:4rem}
  .corp-section{padding:3.5rem 0}
  .corp-heading{margin-bottom:2rem}
  .corp-feature-grid,.corp-card-grid{gap:1rem}
  .corp-feature-grid article,.corp-card{padding:1.35rem}
  .corp-process li{padding:1.35rem}
  .corp-proof-grid{grid-template-columns:1fr;gap:1rem}
  .corp-product figure{padding:1.25rem}
  .corp-cta{padding:3.5rem 0}
  .knowledge-hero{padding:3rem 0}
  .knowledge-main{padding-top:3rem;padding-bottom:4rem}
  .knowledge-card{padding:1.35rem}
  .page-hero,.article-hero{padding:3.5rem 16px}
  .article-hero h1{font-size:clamp(2.3rem,10vw,3.25rem)}
  .article-hero p{font-size:1.05rem}
  .article-body{padding:3.25rem 16px;font-size:1rem}
  .cta{margin:0 16px 4rem;padding:3rem 1.25rem}
  .contact-wrap{padding:3.25rem 16px 4rem;gap:2.5rem}
  .contact-wrap h1{font-size:clamp(2.6rem,11vw,3.5rem)}
  .contact-form{padding:1.25rem}
}
@media(prefers-reduced-motion:reduce){.nav a:after,.corp-feature-grid article,.corp-card,.knowledge-card{transition:none}}
