/* V76: ajustes exclusivos para computador; móvel e tablet mantêm v75. */
@media(min-width:1101px){
 .service-slide .slide-background{display:block;filter:none;image-rendering:auto;backface-visibility:hidden}
 .service-slide.is-active .slide-background{animation-name:desktop-photo-distance;animation-timing-function:cubic-bezier(.18,.5,.3,1);animation-duration:4.2s}
 .service-slide:after{background:linear-gradient(90deg,rgba(5,24,44,.7) 0%,rgba(5,24,44,.5) 28%,rgba(5,24,44,.16) 52%,transparent 74%),linear-gradient(0deg,rgba(5,24,44,.3),transparent 38%)}
 .service-slide .slide-content{padding-bottom:36px;padding-inline:clamp(28px,4vw,64px)}
 .service-slide .slide-content .eyebrow{max-width:48ch;color:#c4e8ff;line-height:1.55;text-shadow:0 1px 3px rgba(0,0,0,.4)}
 .service-slide .slide-content>p{max-width:47ch;line-height:1.65;color:#fff;text-shadow:0 1px 5px rgba(0,0,0,.4);margin-bottom:22px}
 .service-slide .hero-actions{gap:12px;max-width:600px;flex-wrap:wrap}
 .service-slide .hero-actions .btn{min-height:48px;white-space:normal;line-height:1.4;text-align:center}
 .service-slide .slide-content small{max-width:52ch;color:#e5eef7;opacity:1}
 .carousel-controls{width:100%;max-width:none;padding-inline:clamp(28px,4vw,64px);background:#f5faff;box-sizing:border-box}
 .carousel-dots{align-items:center}
}
@keyframes desktop-photo-distance{from{transform:scale(1.14)}to{transform:scale(1)}}
@media(min-width:1101px) and (prefers-reduced-motion:reduce){.service-slide.is-active .slide-background{animation:none;transform:scale(1)}}

/* Protecção quando o script ainda não carregou ou falha. */
@media(min-width:1101px){.service-carousel .carousel-stage{min-height:clamp(360px,40vw,560px)}}

/* Espaço reservado para os botões flutuantes, incluindo ecrãs pequenos. */
.service-carousel .carousel-controls{padding-inline:max(88px,env(safe-area-inset-left)) max(88px,env(safe-area-inset-right))}
@media(max-width:700px){
 .service-carousel .carousel-controls{grid-template-columns:44px minmax(0,1fr) 44px;gap:6px}
 .service-carousel .carousel-dots{min-width:0;overflow-x:auto;justify-content:flex-start}
 .service-carousel .carousel-controls>[data-carousel=pause]{grid-column:2;justify-self:center}
}

@media(min-width:1101px){.service-carousel .slide-visual{height:100%;bottom:0}}
.carousel-controls button:focus-visible,.chat-widget button:focus-visible,.chat-widget input:focus-visible{outline:3px solid #67b9ee;outline-offset:3px}
