/* Apoio Group v3 — refinamento editorial e correções solicitadas */
/* Hero full bleed: resolve foto cortada pela metade/letterbox */
.site-header{padding:10px 0}
.nav{min-height:66px}
.nav-links{gap:14px}
.nav-links a{font-size:.86rem;white-space:nowrap}
.nav-actions{gap:10px;flex-shrink:0}
.nav-cta{white-space:nowrap;padding:0 16px;min-height:44px;font-size:.86rem}
.companies-toggle{min-height:44px;padding:0 14px}
.brand{flex:0 0 auto}.brand img{height:36px}
.hero-cinematic{position:relative;min-height:clamp(600px,68vw,760px);padding:0;display:flex;align-items:center;isolation:isolate;color:white;background:#081126}
.hero-cinematic::before{content:"";position:absolute;inset:0;z-index:-2;background:url('../img/site/hero.webp') 62% 44%/cover no-repeat;animation:hero-zoom 16s ease-out both}
.hero-cinematic::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,17,38,.98) 0%,rgba(8,17,38,.92) 29%,rgba(8,17,38,.59) 52%,rgba(8,17,38,.1) 84%),linear-gradient(0deg,rgba(8,17,38,.32),transparent 45%)}
.hero-grid-cinematic{display:block;width:var(--container);margin:0 auto}
.hero-cinematic .hero-copy{max-width:720px;padding:68px 0 84px}
.hero-cinematic .hero-copy h1{font-size:clamp(2.5rem,4.8vw,4.8rem);line-height:1.06;max-width:16ch;margin:24px 0}
.hero-cinematic .section-kicker{color:#bbd1ff}
.hero-cinematic .hero-lead{color:#e5eafb;font-size:1.08rem;max-width:57ch}
.hero-cinematic .btn-secondary{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.5);color:white;box-shadow:none}
.hero-cinematic .btn-primary{box-shadow:none}
@keyframes hero-zoom{from{transform:scale(1.06)}to{transform:scale(1)}}
/* Suppress generic blue dots; use hierarchy/typography instead */
.section-kicker::before,.card-tag::before,.bullet-list li::before,.company-kicker::before{display:none!important}
.section-kicker{gap:0}.bullet-list li{padding-left:0;border-left:2px solid #d7e3fc;padding-inline-start:16px}
/* Each service now has unique photography; no number pills */
.editorial-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.service-card,.service-card-feature{display:flex;flex-direction:column;min-height:0;padding:0!important;border-radius:12px;justify-content:unset;overflow:hidden;box-shadow:none}
.service-media{height:220px;flex:0 0 220px;border-radius:0;background:#d9e2ec}
.service-media img{display:block;width:100%;height:100%;object-fit:cover}
.service-body{padding:23px 24px 28px;flex:1}
.service-body h3{font-size:1.28rem;margin:0 0 12px}
.service-body p{font-size:.94rem;line-height:1.65}
/* Corporate portrait cards: photos with actual official logo badges as HTML overlays */
.company-band{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.company-card{height:290px;min-height:0;border-radius:12px;overflow:hidden;position:relative;display:flex;flex-direction:column;justify-content:flex-end;padding:18px;border:1px solid rgba(255,255,255,.19);background:#152442;isolation:isolate}
.company-card .group-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;filter:saturate(.82);transition:transform .5s ease}
.company-card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(4,12,30,.98),rgba(4,12,30,.08) 73%)}
.company-card>img:not(.group-photo){max-width:62%;height:38px;object-fit:contain;object-position:left center;filter:brightness(0) invert(1);margin-bottom:auto;position:relative;z-index:1;filter:brightness(0) invert(1) drop-shadow(0 1px 3px rgba(0,0,0,.5))}
.company-card-name{font-size:1rem;line-height:1.25;color:#fff;margin-top:auto}
.company-card span{color:rgba(255,255,255,.86);margin:5px 0 0;font-size:.82rem}
.company-card:hover .group-photo{transform:scale(1.055)}
/* Restrained brand language */
.page-shell{display:none}.hero-points{display:none}
.value-mark{border-radius:5px}.timeline-year{border-radius:5px}
.proof-item{box-shadow:none}
.company-card,.service-card{transition:transform .28s ease,border-color .28s ease}
@media(max-width:1170px){.nav-links{gap:10px}.nav-links a{font-size:.78rem}.nav-cta{font-size:.78rem;padding-inline:12px}.brand img{height:32px}}
@media(max-width:980px){.nav-links{display:none}.mobile-toggle{display:block;order:2;margin-left:auto}.nav{flex-wrap:wrap}.nav-actions{order:3}.nav-links.open{display:flex;order:4;width:100%;flex-direction:column;align-items:flex-start;background:white;padding:20px;border:1px solid var(--line);border-radius:12px}.company-band{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-cinematic::before{background-position:67% center}}
@media(max-width:760px){.hero-cinematic{min-height:670px}.hero-cinematic::after{background:linear-gradient(90deg,rgba(8,17,38,.93),rgba(8,17,38,.57)),linear-gradient(0deg,rgba(8,17,38,.65),transparent)}.hero-cinematic .hero-copy{padding:65px 0}.editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.company-card{height:250px}}
@media(max-width:540px){.hero-cinematic .hero-copy h1{font-size:clamp(2.15rem,9vw,3.2rem)}.editorial-grid,.company-band{grid-template-columns:1fr}.service-media{height:230px;flex-basis:230px}.company-card{height:310px}.nav-cta{display:none}}
@media(prefers-reduced-motion:reduce){.hero-cinematic::before{animation:none}.company-card .group-photo{transition:none}}
