/* Revisão 3: Sobre nós, capacidades e galeria. Identidade original preservada. */
.about-section{background:var(--canvas);color:var(--ink)}
.about-section .company-layout{grid-template-columns:1fr 1fr;gap:7%}
.about-section .company-copy{grid-column:1;grid-row:1}
.about-section .company-photo{grid-column:2;grid-row:1}
.about-section .company-copy h2{font-size:clamp(34px,3.5vw,49px)}
.about-section .company-copy p{color:var(--muted);font-size:15px;line-height:1.9;margin-top:20px}
.about-section .company-copy .about-lead{font-size:22px;line-height:1.45;color:var(--ink);font-weight:500;max-width:28ch}
.about-section .company-copy .text-link{color:var(--blue)}
.about-section .company-photo img{height:410px;filter:none;object-position:center}
.about-section .company-photo figcaption{color:var(--muted);font-size:12px}
.capacities-section{background:var(--soft)}
.capacities-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;scroll-margin-top:110px}
.capacity-item{padding:28px;background:var(--canvas);border:1px solid var(--line);min-width:0}
.capacity-icon{width:100%;height:160px;object-fit:contain;margin-bottom:24px}
.capacity-item h3{font-size:21px;line-height:1.4}
.capacity-item>p{font-size:14px;line-height:1.7;margin-top:10px}
.capacity-spec{margin:28px 0 0;padding-top:24px;border-top:1px solid var(--line)}
.capacity-spec dt{font-size:12px;color:var(--muted);line-height:1.6;margin-bottom:7px}
.capacity-spec dd{margin:0;color:var(--blue);font-size:clamp(26px,2.5vw,38px);letter-spacing:-.025em;line-height:1.25;font-weight:500;font-variant-numeric:tabular-nums}
.capacity-spec dd span{font-size:16px;letter-spacing:0}
.capacity-secondary{margin-top:20px}
.capacity-secondary dd{font-size:28px}
.capacity-footer{display:flex;align-items:center;justify-content:space-between;gap:48px;margin-top:30px}
.capacity-footer>p{max-width:76ch;font-size:14px}
.capacity-footer .text-link{flex:none}
.works-section{background:var(--canvas)}
.works-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.work-figure{position:relative;min-width:0;overflow:hidden;background:var(--dark)}
.work-photo{display:block;aspect-ratio:3/2;overflow:hidden}
.work-photo img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform 300ms var(--ease)}
.work-figure:first-child .work-photo img{object-position:center 45%}
.work-figure figcaption{position:absolute;inset:auto 0 0;pointer-events:none;display:flex;align-items:end;justify-content:space-between;gap:24px;min-height:155px;padding:56px 26px 25px;background:linear-gradient(transparent,rgba(21,28,34,.94));color:var(--on-dark);font-size:21px;font-weight:500;line-height:1.4;letter-spacing:-.015em}
.work-figure figcaption>span:first-child{max-width:30ch;text-wrap:balance}
.work-open{display:grid;place-items:center;width:44px;height:44px;flex:none;border:1px solid #ffffff70;color:var(--on-dark)}
.work-open svg{width:20px;height:20px}
.work-photo:focus-visible{outline:3px solid var(--on-dark);outline-offset:-6px}
@media(hover:hover) and (pointer:fine){.work-photo:hover img{transform:scale(1.035)}}
.photo-viewer{width:min(1160px,calc(100% - 40px));max-width:none;max-height:calc(100dvh - 40px);padding:24px;border:0;background:var(--dark);color:var(--on-dark);overflow:auto}
.photo-viewer::backdrop{background:rgba(10,16,21,.88)}
body:has(.photo-viewer[open]){overflow:hidden}
.viewer-close{position:absolute;right:12px;top:12px;width:44px;height:44px;display:grid;place-items:center;background:var(--dark);color:var(--on-dark);z-index:2;border:1px solid #ffffff55}
.viewer-image{height:min(70dvh,720px);display:flex;justify-content:center;align-items:center}
.viewer-image img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.viewer-footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:22px}
.viewer-footer p{color:var(--on-dark);font-size:17px;font-weight:500;max-width:60ch}
.viewer-controls{display:flex;align-items:center;gap:15px;flex:none;font-size:13px;font-variant-numeric:tabular-nums}
.viewer-controls button{width:44px;height:44px;display:grid;place-items:center;background:transparent;color:var(--on-dark);border:1px solid #ffffff55}
.photo-viewer button:focus-visible{outline-color:var(--on-dark)}
@media(max-width:1050px){.capacity-item{padding:22px}.capacity-icon{height:130px}.capacity-item h3{font-size:19px}.capacity-footer{gap:24px}.work-figure figcaption{font-size:19px;padding-inline:22px}}
@media(max-width:800px){.about-section .company-layout{grid-template-columns:1fr;gap:30px}.about-section .company-copy{grid-column:1;grid-row:1}.about-section .company-photo{grid-column:1;grid-row:2}.about-section .company-photo img{height:auto;aspect-ratio:3/2}.capacities-grid{grid-template-columns:1fr}.capacity-item{display:grid;grid-template-columns:150px 1fr;column-gap:26px;padding:26px}.capacity-icon{grid-column:1;grid-row:1/4;margin:0;align-self:center;height:150px}.capacity-item h3,.capacity-item>p,.capacity-spec{grid-column:2}.capacity-spec{margin-top:20px;padding-top:18px}.capacity-spec dd{font-size:34px}.capacity-secondary{margin-top:16px}.capacity-secondary dd{font-size:26px}.capacity-footer{display:block}.capacity-footer .text-link{margin-top:15px}.work-figure figcaption{font-size:17px;min-height:130px;gap:14px;padding:45px 18px 18px}.work-open{width:38px;height:38px}}
@media(max-width:600px){.works-grid{grid-template-columns:1fr;gap:20px}.work-photo{aspect-ratio:6/5}.work-figure figcaption{font-size:20px;padding:60px 22px 22px;min-height:150px}.work-open{width:44px;height:44px}.capacity-item{display:block;padding:26px}.capacity-icon{height:145px;width:200px;margin:0 0 20px}.capacity-item h3{font-size:22px}.capacity-spec dd{font-size:34px}.capacity-secondary dd{font-size:28px}.about-section .company-copy .about-lead{font-size:21px}.about-section .company-copy p{font-size:14px}.photo-viewer{width:calc(100% - 20px);max-height:calc(100dvh - 20px);padding:16px}.viewer-image{height:60dvh}.viewer-footer{display:block;padding-top:18px}.viewer-footer p{font-size:16px}.viewer-controls{justify-content:space-between;margin-top:18px}.viewer-controls button{width:48px;height:48px}}
@media(prefers-reduced-motion:reduce){.work-photo img{transition:none}.work-photo:hover img{transform:none}}
@media print{.photo-viewer,.works-section{display:none!important}}

/* Apenas alinhamento da nova ligacao LinkedIn junto ao Facebook. */
.company-social-links{display:flex;flex-wrap:wrap;column-gap:24px}
