/* Portfólio de serviços · refinamento visual de homologação. */
/* Desktop: fotografia concentrada na metade direita, como a abertura aprovada V4.2. */
@media(min-width:781px){
 .sp3-service .sp-hero{min-height:690px}
 .sp3-service .sp-hero-photo{left:34%;right:0;top:0;bottom:0;z-index:-2}
 .sp3-service .sp-hero-photo img{object-fit:cover;object-position:var(--hero-photo-focus,center center)}
 .sp3-service .sp-hero-wash{background:linear-gradient(90deg,#f8f7f3 0%,#f8f7f3 29%,#f8f7f3f0 40%,#f8f7f3b8 50%,#f8f7f358 63%,transparent 81%)}
 .sp3-service .sp-hero-content h1{max-width:min(690px,54vw);font-size:clamp(46px,4.9vw,73px);text-wrap:balance}
 .sp3-service .sp-hero-content>p{max-width:540px}
 .sp3-service .sp-hero-photo.sp-photo-unavailable:after{min-width:0;max-width:290px;width:38%;right:8%;font-size:19px}
}
@media(min-width:781px) and (max-width:1120px){
 .sp3-service .sp-hero{min-height:660px}
 .sp3-service .sp-hero-photo{left:38%}
 .sp3-service .sp-hero-content h1{font-size:clamp(42px,4.75vw,59px);max-width:55vw}
 .sp3-service .sp-hero-wash{background:linear-gradient(90deg,#f8f7f3 0%,#f8f7f3 32%,#f8f7f3ee 46%,#f8f7f3a8 59%,transparent 87%)}
}
@media(max-width:780px){
 .sp3-service .sp-hero-photo{left:auto;right:auto;top:auto;bottom:auto;width:100%;min-height:0}
 .sp3-service .sp-hero-photo img{object-position:var(--hero-photo-focus,center center)}
 .sp3-service .sp-hero-content h1{max-width:100%}
}
/* Diagramas específicos das seis páginas: equilíbrio de escala, sem linhas atravessando os rótulos. */
@media(min-width:781px){
 .sp3-management-orbit{min-height:0;max-width:1040px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:44px auto 0}
 .sp3-management-lines{display:none}
 .sp3-management-center{position:relative;inset:auto;top:auto;left:auto;transform:none;grid-column:1/-1;justify-self:center;margin:0 auto 20px;width:222px;height:222px}
 .sp3-management-node{position:relative!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;transform:none!important;min-width:0;max-width:none;align-items:center;text-align:center;border-top:1px solid #b89a7252;padding-top:26px;gap:8px}
 .sp3-management-node strong{font-size:27px}
 .sp3-management-node small{font-size:12px;line-height:1.6}
 .sp3-hospitality-map{height:468px;max-width:1050px;margin:40px auto 0}
 .sp3-hospitality-core{width:227px;height:227px}
 .sp3-hospitality-core strong{font-size:32px}
 .sp3-hosp-node{width:220px;gap:11px}
 .sp3-hosp-node strong{font-size:26px}
 .sp3-hosp-node small{font-size:12px}
 .sp3-hosp-node.pos1,.sp3-hosp-node.pos3{left:0}
 .sp3-hosp-node.pos2,.sp3-hosp-node.pos4{right:0}
}
@media(min-width:781px) and (max-width:1024px){
 .sp3-hosp-node{width:185px;gap:9px}
 .sp3-hosp-node strong{font-size:23px}
 .sp3-hosp-node>span{flex-basis:48px;width:48px;height:48px}
 .sp3-management-center{width:205px;height:205px}
}
/* Footer: centralized in every viewport, all links visible over navy. */
.sp-page .footer.sp-shared-footer{background:#102d40;color:#f0f4f3}
.sp-page .sp-shared-footer .footer-left,.sp-page .sp-shared-footer .footer-bottom{color:#b7c9d1}
.sp-page .sp-shared-footer .footer-left a,.sp-page .sp-shared-footer .footer-right a{color:#f2f6f7}
.sp-page .sp-shared-footer .footer-logo span{color:#f2f4f5}
.sp-page .sp-shared-footer .footer-logo img{filter:none}
.sp-page .sp-shared-footer .footer-top{align-items:center}
.sp-top-button.near-footer{opacity:0!important;pointer-events:none!important}


/* V3 — orientação final aprovada: rodapé branco, sem alterar diagramas nem conteúdos. */
.footer,
.sp-page .footer.sp-shared-footer,
.sp-page .sp-shared-footer {background:#fff !important;color:#183349 !important;}
.footer .footer-top,
.sp-page .sp-shared-footer .footer-top {display:flex !important;flex-direction:column !important;justify-content:center !important;align-items:center !important;gap:17px !important;text-align:center !important;}
.footer .footer-logo,
.sp-page .sp-shared-footer .footer-logo {order:1 !important;display:flex !important;flex-direction:column !important;align-items:center !important;justify-self:center !important;align-self:center !important;margin:0 auto !important;gap:10px !important;}
.footer .footer-logo img,
.sp-page .sp-shared-footer .footer-logo img {height:128px !important;width:auto !important;max-width:180px !important;object-fit:contain !important;filter:none !important;padding:0 !important;background:transparent !important;}
.footer .footer-logo span,
.sp-page .sp-shared-footer .footer-logo span {color:#112d40 !important;font-size:11px !important;text-align:center !important;letter-spacing:.1em !important;}
.footer .footer-left,
.sp-page .sp-shared-footer .footer-left {order:2 !important;color:#53646c !important;font-size:13px !important;line-height:1.8 !important;text-align:center !important;max-width:100% !important;overflow-wrap:anywhere !important;}
.footer .footer-left a,
.sp-page .sp-shared-footer .footer-left a {color:#122f42 !important;font-weight:600 !important;text-align:center !important;text-decoration:none !important;}
.footer .footer-right,
.sp-page .sp-shared-footer .footer-right {order:3 !important;display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;align-items:center !important;justify-content:center !important;gap:12px 24px !important;margin:4px auto 0 !important;}
.footer .footer-right a,
.sp-page .sp-shared-footer .footer-right a {color:#183349 !important;font-size:12px !important;font-weight:600 !important;text-decoration:none !important;}
.footer .footer-bottom,
.sp-page .sp-shared-footer .footer-bottom {border-top:1px solid #dce1e0 !important;color:#687780 !important;text-align:center !important;display:flex !important;flex-direction:column !important;align-items:center !important;justify-content:center !important;gap:6px !important;}
.footer a:hover,.sp-page .sp-shared-footer a:hover{color:#9b7444 !important;}
@media(max-width:620px){
.footer .footer-top,.sp-page .sp-shared-footer .footer-top{gap:18px !important;}
.footer .footer-logo img,.sp-page .sp-shared-footer .footer-logo img{height:115px !important;}
.footer .footer-right,.sp-page .sp-shared-footer .footer-right{gap:12px 20px !important;}
.footer .footer-bottom,.sp-page .sp-shared-footer .footer-bottom{font-size:10px !important;}
}
