/* Official identity and photographic sections. */
.service-tagline{font-size:20px;color:var(--purple);font-weight:600;line-height:1.4}
.related-services{display:flex;flex-wrap:wrap;gap:12px 24px;padding:0;list-style:none}
.related-services a{display:inline-block;padding:10px 0;text-decoration:underline;text-underline-offset:4px;font-size:14px}
.whatsapp-float{position:fixed;right:max(22px,env(safe-area-inset-right));bottom:calc(22px + env(safe-area-inset-bottom));z-index:19;display:flex;align-items:center;justify-content:center;gap:9px;min-width:58px;min-height:58px;padding:13px 19px;border-radius:32px;background:#128c46;color:#fff;box-shadow:0 5px 20px #163c2b30;font-size:13px;font-weight:600}
.whatsapp-float:hover{background:#0c7037}
.whatsapp-float{isolation:isolate;animation:whatsapp-bounce 6s ease-in-out 2s infinite}
.whatsapp-float::before{content:"";position:absolute;inset:0;border:2px solid #128c46;border-radius:inherit;pointer-events:none;animation:whatsapp-pulse 2.8s ease-out infinite}
.whatsapp-float svg{transform-origin:50% 65%;animation:whatsapp-wave 6s ease-in-out 2s infinite}
.whatsapp-float:hover,.whatsapp-float:focus-visible,.whatsapp-float:hover svg,.whatsapp-float:focus-visible svg{animation-play-state:paused}
@keyframes whatsapp-pulse{0%{transform:scale(1);opacity:.55}75%,100%{transform:scale(1.25,1.4);opacity:0}}
@keyframes whatsapp-bounce{0%,12%,24%,100%{transform:translateY(0)}6%,18%{transform:translateY(-6px)}}
@keyframes whatsapp-wave{0%,24%,100%{transform:rotate(0)}5%,15%{transform:rotate(-12deg)}10%,20%{transform:rotate(12deg)}}
@media(prefers-reduced-motion:reduce){.whatsapp-float,.whatsapp-float::before,.whatsapp-float svg{animation:none!important}}
.cookie-banner:not([hidden])~.whatsapp-float{bottom:calc(var(--cookie-banner-height,140px) + 30px + env(safe-area-inset-bottom))}
@media(max-width:760px){.whatsapp-float{right:max(16px,env(safe-area-inset-right));padding:13px;min-width:56px;min-height:56px}.whatsapp-float span{display:none}}
.service-context{display:inline-block;padding:5px 10px;background:var(--cream);border-radius:3px;font-size:12px;color:var(--purple)}
.form-privacy{font-size:11px;line-height:1.6;margin:18px 0;color:var(--muted)}
.form-privacy a{text-decoration:underline}
.client-area{white-space:nowrap}
nav>a:not(.button),nav>details>summary{padding:10px 12px;border-radius:5px;line-height:1.5}
nav a,nav summary{transition:color .18s ease,background-color .18s ease,box-shadow .18s ease}
nav a.is-active:not(.button),nav summary.is-active,nav .button.is-active{background:var(--purple);color:#fff;box-shadow:inset 0 -3px 0 var(--orange);text-decoration:none}
nav .submenu a{border-radius:4px}
@media(min-width:961px){.navigation nav{gap:10px}}
@media(hover:hover){
 nav a:not(.button):not(.is-active):hover,nav summary:not(.is-active):hover{background:#ffe0b8;color:var(--purple);box-shadow:inset 0 -3px 0 var(--orange)}
 nav .button:hover{background:var(--purple);color:#fff;box-shadow:inset 0 -3px 0 var(--orange)}
}
@media(max-width:960px){
 .navigation{height:82px}
 .menu-toggle{display:block;border:1px solid var(--line);background:white;padding:9px;border-radius:3px;font-size:12px}
 nav{display:none;position:absolute;top:82px;left:0;right:0;padding:25px;background:#fff;box-shadow:0 15px 25px #31054017;align-items:stretch}
 nav.open{display:flex;flex-direction:column}
 .submenu{position:static;box-shadow:none;margin-top:15px}
}
.brand-logo{width:176px;height:auto;object-fit:contain}
.footer-grid .brand-logo{width:185px}
.solution-photo{padding:0 0 26px;overflow:hidden}
.solution-image{width:100%;height:210px;margin-bottom:24px;object-position:center}
.solution-photo h3,.solution-photo p,.solution-photo .text-link{margin-left:25px;margin-right:25px}
.solution-photo .text-link{display:block;padding-top:8px}
.service-hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:55px;align-items:center}
.service-hero-grid h1{font-size:clamp(36px,3.7vw,52px);letter-spacing:-2px}
.service-hero-grid .lead{font-size:17px}
.service-scene{margin:0;min-width:0}
.service-scene img{width:100%;height:410px;border-radius:5px;object-position:center}
.service-scene figcaption{font-size:10px;color:var(--muted);margin-top:8px;line-height:1.5}
.enterprise{gap:20px 60px}
.enterprise-image{grid-row:1 / 3;width:100%;height:400px;border-radius:4px;object-position:center}
.enterprise>div:nth-child(2){align-self:end}
.enterprise>div:nth-child(3){align-self:start}
.contact-scene{width:100%;height:230px;margin:28px 0;border-radius:4px;object-position:center}
.hero-image>img{object-position:52% center}
.building img{object-position:50% center}
@media(max-width:1000px){.service-hero-grid{gap:30px}.service-scene img{height:370px}.solution-image{height:220px}}
@media(max-width:760px){
 .brand-logo{width:142px}
 .footer-grid .brand-logo{width:165px}
 .service-hero-grid{grid-template-columns:1fr;gap:30px}
 .service-hero-grid h1{font-size:40px}
 .service-scene img{height:auto;aspect-ratio:3 / 2}
 .solution-image{height:auto;aspect-ratio:16 / 9}
 .enterprise-image{grid-row:auto;height:auto;aspect-ratio:3 / 2;margin-bottom:12px}
 .contact-scene{height:auto;aspect-ratio:16 / 9}
 .hero-image>img{object-position:50% center}
}
