/* Final interaction layer, loaded after each page stylesheet. */
:root{--orange:#ff6b35;--deep:#23252d;--glow:rgba(236,32,39,.25);--ease:cubic-bezier(.2,.8,.2,1)}
.button,.btn,.svc-button,.nav-contact{position:relative;isolation:isolate;overflow:hidden;background-image:linear-gradient(115deg,var(--red) 0%,var(--red) 52%,var(--orange) 100%);background-size:190% 100%;background-position:0 50%;box-shadow:0 7px 16px rgba(196,20,31,.18);transition:transform .28s var(--ease),box-shadow .28s var(--ease),background-position .45s var(--ease),filter .28s var(--ease)}
.button::before,.btn::before,.svc-button::before,.nav-contact::before{content:'';pointer-events:none;position:absolute;z-index:0;inset:0;background:linear-gradient(105deg,transparent 28%,rgba(255,255,255,.32) 48%,transparent 67%);transform:translateX(-145%);transition:transform .58s var(--ease)}
.button--white{background-image:linear-gradient(115deg,#fff 0%,#fff 52%,#ffe4dc 100%);box-shadow:0 8px 20px rgba(0,0,0,.12)}
.button--white::before{z-index:0}.button--white>*{position:relative;z-index:1}
.site-nav>a:not(.nav-contact),.nav-dropdown>button,.footer-policy,.footer-quote>a,.svc-coverage-link{transition:color .25s var(--ease),text-decoration-color .25s var(--ease),transform .25s var(--ease)}
.site-nav>a:not(.nav-contact):hover,.nav-dropdown>button:hover,.footer-quote>a:hover,.footer-policy:hover,.svc-coverage-link:hover{color:var(--red)}
.brand{transition:transform .35s var(--ease),filter .35s var(--ease)}.brand:hover{transform:translateY(-3px) scale(1.025);filter:drop-shadow(0 9px 12px rgba(90,0,6,.18))}
.home-service,.home-esg-card,.institutional-culture-card,.institutional-structure-card,.institutional-metric,.svc-tab,.svc-esg-card,.svc-post-card,.svc-coverage-card,.svc-blog-featured{transition:transform .36s var(--ease),box-shadow .36s var(--ease),background-color .36s var(--ease),border-color .36s var(--ease)}
.home-service>img,.home-esg-card>img,.svc-tab img,.svc-esg-card>img,.svc-post-image img,.svc-featured-image img,.svc-intro-image,.svc-coverage-photo,.institutional-photo-main,.institutional-rounded-image,.institutional-culture-card img,.institutional-structure-card img{transition:transform .65s var(--ease),filter .5s var(--ease)}
.svc-post-image,.svc-featured-image,.institutional-video{overflow:hidden}.image-badge,.institutional-photo-badge,.institutional-section-badge{transition:transform .35s var(--ease),background-color .35s var(--ease),box-shadow .35s var(--ease)}
.home-about-visual:hover .image-badge,.institutional-photo:hover .institutional-photo-badge{transform:translateY(-8px) rotate(-4deg);background-color:var(--orange);box-shadow:0 15px 27px rgba(236,32,39,.3)}
.footer-social a,.footer-social .social-unset{transition:transform .28s var(--ease),filter .28s var(--ease),opacity .28s var(--ease)}
.footer-social a:hover{transform:translateY(-5px) scale(1.14);filter:drop-shadow(0 7px 8px rgba(236,32,39,.25))}
.whatsapp-float{position:fixed;right:26px;bottom:26px;z-index:50;display:flex;align-items:center;gap:12px;min-height:68px;padding:9px 20px 9px 10px;border-radius:999px;background:linear-gradient(135deg,#20c96b,#12a855);color:#fff;box-shadow:0 13px 28px rgba(12,125,61,.36);isolation:isolate;transition:transform .3s var(--ease),box-shadow .3s var(--ease),filter .3s var(--ease)}.whatsapp-float__icon{position:relative;z-index:1;display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:50%;background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.14)}.whatsapp-float__icon img{width:30px;height:30px;filter:invert(55%) sepia(59%) saturate(665%) hue-rotate(93deg) brightness(93%) contrast(92%)}.whatsapp-float__copy{position:relative;z-index:1;display:grid;gap:2px;line-height:1.1}.whatsapp-float__copy strong{font-size:16px;font-weight:800}.whatsapp-float__copy small{font-size:14px}.whatsapp-float__pulse{position:absolute;z-index:-1;inset:0;border-radius:inherit;background:#20c96b;animation:sl-whatsapp-pulse 2.2s ease-out infinite}@keyframes sl-whatsapp-pulse{0%,30%{opacity:.65;transform:scale(1)}70%,100%{opacity:0;transform:scale(1.22)}}
.sl-field input,.sl-field textarea,.sl-field select,.svc-coverage-form input{transition:border-color .25s var(--ease),box-shadow .25s var(--ease),transform .25s var(--ease)}
.sl-field input:hover,.sl-field textarea:hover,.sl-field select:hover,.svc-coverage-form input:hover{border-color:rgba(236,32,39,.55)}
.sl-field input:focus,.sl-field textarea:focus,.sl-field select:focus,.svc-coverage-form input:focus{border-color:var(--red);box-shadow:0 0 0 4px var(--glow);transform:translateY(-1px)}
.sl-contact-widget{transition:transform .35s var(--ease),box-shadow .35s var(--ease)}.sl-contact-widget:hover{transform:translateY(-4px)}.sl-contact-tabs button{transition:background-color .28s var(--ease),color .28s var(--ease),letter-spacing .28s var(--ease)}.sl-contact-tabs button:hover{letter-spacing:.25px}
/* Performance numbers: each metric becomes an interactive highlight. */
.performance-item{position:relative;z-index:0;isolation:isolate;transition:transform .35s var(--ease),padding .35s var(--ease),margin .35s var(--ease),filter .35s var(--ease),color .35s var(--ease)}
.performance-item img,.performance-item strong,.performance-item p{position:relative;z-index:1;transition:color .35s var(--ease),filter .35s var(--ease),transform .35s var(--ease)}
@media (hover:hover){.performance-list:hover .performance-item:not(:hover){filter:grayscale(.15);opacity:.72}.performance-item:hover{z-index:3;margin:-18px -10px;padding:18px 10px;background:linear-gradient(140deg,var(--red),var(--orange));border-radius:18px;box-shadow:0 20px 35px rgba(196,20,31,.28);transform:translateY(-8px);filter:none}.performance-item:hover::after{display:none}.performance-item:hover img{filter:brightness(0) invert(1);transform:translateY(-3px) scale(1.12)}.performance-item:hover strong,.performance-item:hover p{color:#fff}.performance-item:hover strong{transform:scale(1.08)}}
@media (hover:hover){.button:hover,.btn:hover,.svc-button:hover,.nav-contact:hover{background-position:100% 50%;box-shadow:0 13px 27px rgba(196,20,31,.32);transform:translateY(-3px);filter:saturate(1.08)}.button:hover::before,.btn:hover::before,.svc-button:hover::before,.nav-contact:hover::before{transform:translateX(145%)}.button:active,.btn:active,.svc-button:active,.nav-contact:active{transform:translateY(0);box-shadow:0 5px 12px rgba(196,20,31,.22)}.home-service:hover,.home-esg-card:hover,.institutional-culture-card:hover,.institutional-structure-card:hover,.svc-esg-card:hover,.svc-post-card:hover,.svc-coverage-card:hover,.svc-blog-featured:hover{transform:translateY(-10px);box-shadow:0 24px 44px rgba(35,37,45,.16)}.home-service:hover>img,.home-esg-card:hover>img,.svc-esg-card:hover>img,.svc-post-card:hover .svc-post-image img,.svc-blog-featured:hover .svc-featured-image img,.institutional-culture-card:hover img,.institutional-structure-card:hover img{transform:scale(1.055);filter:saturate(1.09) contrast(1.02)}.svc-tab:not(.is-active):hover{transform:translateY(-9px);box-shadow:0 20px 36px rgba(35,37,45,.14);background:#fff7f5}.svc-tab:not(.is-active):hover img{transform:scale(1.035)}.institutional-metric:hover{transform:translateY(-8px);box-shadow:0 18px 34px rgba(35,37,45,.16)}.institutional-carousel-control:hover{color:var(--orange);transform:scale(1.18)}.home-performance:hover{box-shadow:0 36px 80px rgba(35,37,45,.15)}}
.sl-page-enter{animation:sl-page-enter .7s var(--ease) both}.sl-reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease) var(--sl-reveal-delay,0ms),transform .7s var(--ease) var(--sl-reveal-delay,0ms)}.sl-reveal.is-visible{opacity:1;transform:none}.sl-reveal--scale{transform:translateY(18px) scale(.975)}
@keyframes sl-page-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
/* Home hero sequence: navigation, title lines, copy and call-to-action. */
.sl-home-intro .site-header{animation:sl-header-enter .65s var(--ease) .06s both}.hero--home.sl-home-hero-ready{isolation:isolate}.hero--home.sl-home-hero-ready::after{content:'';pointer-events:none;position:absolute;z-index:0;inset:0;background:linear-gradient(90deg,rgba(236,32,39,.44),rgba(236,32,39,.14) 56%,transparent);animation:sl-hero-wash 1.1s var(--ease) .04s both}.hero--home.sl-home-hero-ready .wrap{position:relative;z-index:1}.hero--home.sl-home-hero-ready h1 .sl-hero-line{display:block;opacity:0;transform:translateY(34px);animation:sl-hero-line .66s var(--ease) forwards}.hero--home.sl-home-hero-ready h1 .sl-hero-line:nth-child(1){animation-delay:.2s}.hero--home.sl-home-hero-ready h1 .sl-hero-line:nth-child(2){animation-delay:.34s}.hero--home.sl-home-hero-ready h1 .sl-hero-line:nth-child(3){animation-delay:.48s}.hero--home.sl-home-hero-ready .hero-description,.hero--home.sl-home-hero-ready .button{opacity:0;animation:sl-hero-line .62s var(--ease) forwards}.hero--home.sl-home-hero-ready .hero-description{animation-delay:.66s}.hero--home.sl-home-hero-ready .button{animation-delay:.8s}
@keyframes sl-header-enter{from{opacity:0;transform:translate(-50%,-22px)}to{opacity:1;transform:translate(-50%,0)}}@keyframes sl-hero-wash{from{opacity:1}to{opacity:0}}@keyframes sl-hero-line{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@media (hover:hover){.whatsapp-float:hover{color:#fff;transform:translateY(-7px) scale(1.03);filter:saturate(1.08);box-shadow:0 19px 36px rgba(12,125,61,.44)}.whatsapp-float:hover .whatsapp-float__icon{transform:rotate(-10deg) scale(1.08)}}
@media(max-width:700px){.whatsapp-float{right:16px;bottom:16px;min-height:58px;padding:7px 15px 7px 8px;gap:9px}.whatsapp-float__icon{flex-basis:44px;width:44px;height:44px}.whatsapp-float__icon img{width:27px;height:27px}.whatsapp-float__copy strong{font-size:14px}.whatsapp-float__copy small{font-size:12px}}
@media (prefers-reduced-motion:reduce){.sl-home-intro .site-header,.hero--home.sl-home-hero-ready::after,.hero--home.sl-home-hero-ready h1 .sl-hero-line,.hero--home.sl-home-hero-ready .hero-description,.hero--home.sl-home-hero-ready .button,.sl-page-enter,.whatsapp-float__pulse{animation:none}.hero--home.sl-home-hero-ready h1 .sl-hero-line,.hero--home.sl-home-hero-ready .hero-description,.hero--home.sl-home-hero-ready .button{opacity:1;transform:none}.sl-reveal{opacity:1;transform:none;transition:none}.button,.btn,.svc-button,.nav-contact,.brand,.home-service,.home-esg-card,.institutional-culture-card,.institutional-structure-card,.institutional-metric,.svc-tab,.svc-esg-card,.svc-post-card,.svc-coverage-card,.svc-blog-featured,.sl-contact-widget{transition:none!important}.button::before,.btn::before,.svc-button::before,.nav-contact::before{display:none}}
