/* V11 — revisão dimensional, tipográfica e responsiva consolidada */
:root{--container:min(1280px,calc(100% - 48px));--radius-lg:20px;--radius-md:16px;--radius-sm:10px}
html{scroll-padding-top:96px;overflow-x:clip}
body{overflow-x:clip;min-width:320px}
.container{max-width:1280px}
.section{padding-block:clamp(64px,7vw,100px)}
.section-head{gap:clamp(18px,3vw,44px);min-width:0;align-items:end}
.section-head>div{min-width:0;flex:1}
.section-head .section-title{max-width:22ch}
.section-title{font-size:clamp(2rem,4vw,3.55rem);line-height:1.12;overflow-wrap:normal}
.section-text{max-width:56ch}
.site-header{z-index:1000;box-shadow:0 1px 0 rgba(8,17,38,.07)}
.nav{width:min(1360px,calc(100% - 48px));gap:clamp(12px,1.7vw,28px)}
.nav-links{gap:clamp(10px,1.12vw,20px);min-width:0}
.nav-links a{font-size:clamp(.77rem,.86vw,.88rem)}
.nav-actions{flex-shrink:0}
.nav-cta{font-size:.82rem;max-width:fit-content}
.brand img{height:36px;width:auto;max-width:215px}
/* Hero: mantém mídia de fundo, sem altura excessiva ou texto cortado */
.hero-cinematic{min-height:clamp(510px,60vw,690px)}
.hero-cinematic .hero-copy{max-width:680px;padding:clamp(68px,8vw,108px) 0}
.hero-cinematic .hero-copy h1{max-width:16ch;font-size:clamp(2.55rem,4.3vw,4.45rem);line-height:1.08;overflow-wrap:break-word}
.hero-cinematic::before{background-position:64% 42%}
.hero-cinematic .hero-lead{max-width:54ch}
/* Layouts e grids com minmax(0,1fr) impedem overflow horizontal */
.about-grid,.split-grid,.contact-grid,#contato .contact-grid{grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr)}
.editorial-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.company-band{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}
.values-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
.timeline-grid,.cert-grid,.proof-bar{align-items:stretch}
.company-card.company-profile{height:clamp(330px,28vw,380px);min-height:330px;border-radius:14px}
.company-profile .group-photo{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 35%!important}
.company-profile .company-logo-panel{flex-shrink:0;max-width:95%;min-width:0}
.company-profile .company-logo-panel img{max-width:150px!important;max-height:43px!important}
.company-profile .company-bottom{max-width:100%;min-width:0}
.company-profile .company-bottom .company-card-name{font-size:1.03rem;overflow-wrap:break-word}
.service-card{min-width:0;min-height:0!important;height:auto;border-radius:14px}
.service-media{height:clamp(180px,16vw,234px);flex:0 0 auto;aspect-ratio:16/10;overflow:hidden}
.service-media img{width:100%;height:100%;object-fit:cover}
.service-body{flex:1;display:flex;flex-direction:column;padding:23px 24px 27px}
.service-body h3{font-size:clamp(1.18rem,1.5vw,1.44rem);line-height:1.32;margin-bottom:10px}
.service-body p{font-size:.94rem;line-height:1.7}
#valores .value-card{min-width:0;border-radius:15px;overflow:hidden!important}
#valores .value-card .value-photo{height:auto!important;aspect-ratio:16/9;object-fit:cover;object-position:center center;flex-shrink:0;transform:none!important}
#valores .value-card h3{padding:22px 22px 0!important;font-size:clamp(1.1rem,1.42vw,1.35rem);line-height:1.3;margin-bottom:8px}
#valores .value-card p{padding:0 22px 24px;font-size:.94rem;line-height:1.7}
.cert-card{min-width:0}
.cert-card .cert-badge{max-width:100%;object-fit:contain}
#contato .contact-grid{align-items:stretch}
#contato .contact-panel{min-width:0;padding:clamp(24px,3vw,38px)}
#contato .contact-panel .section-title{font-size:clamp(2.1rem,3.7vw,3.3rem);overflow-wrap:break-word}
#contato .contact-chip{overflow-wrap:anywhere;min-width:0}
#contato .contact-side{min-width:0}
#contato .contact-side>.mini-panel{min-height:100%;padding:clamp(22px,3vw,36px)}
.site-footer{padding-inline:24px}
.site-footer .footer-inner{width:100%;max-width:1280px}
.whatsapp-float{position:fixed!important;right:max(18px,env(safe-area-inset-right))!important;bottom:max(18px,env(safe-area-inset-bottom))!important;left:auto!important;top:auto!important;inset:auto max(18px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) auto!important;display:grid!important;place-items:center!important;width:58px!important;height:58px!important;min-width:58px!important;min-height:58px!important;padding:0!important;line-height:0!important;border-radius:50%!important;overflow:visible!important;z-index:1100!important}
.whatsapp-float svg{position:static!important;display:block!important;width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;vertical-align:middle;flex:none;transform:none!important}
/* Layout sem sobreposição entre links e navegação em resoluções intermediárias */
@media(max-width:1260px){
 .nav-links{gap:10px}.nav-links a{font-size:.78rem}
 .brand img{height:32px}.nav-cta{font-size:.78rem;padding-inline:12px}
}
@media(max-width:1100px){
 .nav-links{display:none!important}
 .nav-links.open{display:flex!important;order:5;width:100%;gap:15px;align-items:stretch;flex-direction:column;padding:20px;background:#fff;border-radius:14px;box-shadow:0 18px 35px rgba(8,17,38,.12);margin-top:8px;flex-basis:100%}
 .nav-links.open a{font-size:1rem;padding:5px 0}
 .mobile-toggle{display:block!important;order:4;margin-left:0}
 .nav{flex-wrap:wrap}.nav-actions{margin-left:auto;order:3}
 .about-grid,.split-grid,#contato .contact-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .company-band{grid-template-columns:repeat(2,minmax(0,1fr))}
 .values-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:850px){
 .container{width:min(100% - 36px,760px)}.nav{width:calc(100% - 36px)}
 .about-grid,.split-grid,.contact-grid,#contato .contact-grid{grid-template-columns:1fr}
 .editorial-grid,.cert-grid,.timeline-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .section-head{align-items:start;flex-direction:column}
 .hero-cinematic{min-height:540px}.hero-cinematic::before{background-position:70% center}
 .hero-cinematic::after{background:linear-gradient(90deg,rgba(8,17,38,.97),rgba(8,17,38,.55) 85%)}
 .hero-cinematic .hero-copy{padding-block:68px;max-width:620px}
}
@media(max-width:600px){
 :root{--container:calc(100% - 32px)}
 .container{width:var(--container)}.nav{width:var(--container);min-height:60px}
 .site-header{padding:8px 0}.brand img{height:31px;max-width:174px}
 .nav-actions{order:5;width:100%;justify-content:flex-start;margin:0}
 .nav-links.open{order:6}
 .nav-cta{display:none!important}
 .companies-toggle{min-height:40px;font-size:.9rem}
 .section{padding-block:64px}
 .section-title{font-size:clamp(1.95rem,8vw,2.7rem);line-height:1.16}
 .hero-cinematic{min-height:560px}
 .hero-cinematic .hero-copy{padding:70px 0}
 .hero-cinematic .hero-copy h1{font-size:clamp(2.15rem,8.6vw,3.15rem);max-width:17ch}
 .hero-cinematic .hero-lead{font-size:1rem;line-height:1.65}
 .hero-cinematic::before{background-position:73% center}
 .hero-cinematic::after{background:linear-gradient(90deg,rgba(8,17,38,.98),rgba(8,17,38,.68))}
 .editorial-grid,.company-band,.values-grid,.cert-grid,.timeline-grid,.proof-bar{grid-template-columns:1fr}
 .service-media{height:auto;aspect-ratio:16/10}
 .company-card.company-profile{height:350px;min-height:350px}
 .section-head .section-title{max-width:100%}
 #valores .value-card .value-photo{aspect-ratio:16/8.3}
 .whatsapp-float{inset:auto max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) auto!important;width:54px!important;height:54px!important;min-width:54px!important;min-height:54px!important}
 .whatsapp-float svg{width:26px!important;height:26px!important;min-width:26px!important;min-height:26px!important}
 .site-footer{padding-inline:16px}.site-footer .footer-inner{width:100%}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto} .company-profile .group-photo,.service-media img{transition:none!important} [data-reveal]{opacity:1!important;transform:none!important}}

/* Ícones originais recolocados como SVG independente: sempre visíveis e sem corte */
#valores .value-card .value-icon{display:grid!important;place-items:center;flex:none;position:static!important;inset:auto!important;transform:none!important;overflow:visible!important;margin:20px 22px 0!important;width:46px!important;height:46px!important;background:#eef3ff!important;border:1px solid #d7e3ff!important;border-radius:12px!important;color:#306ef2!important;box-shadow:none!important}
#valores .value-card .value-icon svg{display:block!important;width:24px!important;height:24px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
#valores .value-card h3{padding-top:13px!important}
#valores .value-card .value-photo{display:block;object-fit:cover;object-position:center}
/* Impede sobreposição de menu e textos em tablets na orientação paisagem */
@media (max-width:1100px){.site-header .nav{align-items:center}.nav-links.open{max-height:min(65vh,560px);overflow-y:auto}}
@media (max-width:600px){#valores .value-card .value-icon{margin:18px 22px 0!important}}
