/*
Theme Name: Polivalente Comunicação — Site Definitivo
Theme URI: https://polivalentecomunicacao.com.br/
Author: Polivalente Comunicação
Description: Tema corporativo premium para a Polivalente Comunicação — Inteligência & Soluções.
Version: 3.4.0
Text Domain: polivalente-definitivo
*/

:root {
  --petroleo: #073f46;
  --petroleo-2: #0b5961;
  --verde: #12a28e;
  --magenta: #0b756b;
  --laranja: #f28b22;
  --tinta: #102a2e;
  --texto: #41595d;
  --claro: #f4f8f7;
  --branco: #fff;
  --linha: #dce9e7;
  --sombra: 0 15px 38px rgba(5, 58, 65, .085);
  --raio: 24px;
  --largura: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--texto);
  background:
    radial-gradient(circle at 4% 28%, rgba(18,162,142,.055), transparent 24%),
    radial-gradient(circle at 96% 63%, rgba(242,139,34,.045), transparent 22%),
    #fbfdfc;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.65;
}
body.admin-bar .pc-header { top: 32px; }
a { color: inherit; }
img { max-width: 100%; height: auto; }
.pc-container { width: min(calc(100% - 40px), var(--largura)); margin-inline: auto; }
.pc-skip { position: fixed; left: 14px; top: -100px; z-index: 9999; background: #fff; padding: 12px 16px; }
.pc-skip:focus { top: 14px; }

.pc-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(255,255,255,.91);
  border-bottom: 1px solid rgba(7,63,70,.08);
  backdrop-filter: blur(20px) saturate(1.18);
  box-shadow: 0 8px 30px rgba(7,63,70,.045);
}
.pc-header__inner { min-height: 100px; display: flex; align-items: center; justify-content: space-between; gap: 22px; }
.pc-brand { display: inline-flex; align-items: center; text-decoration: none; color: var(--petroleo); }
.pc-brand__mark {
  width: 46px; height: 46px; display: grid; place-items: center; color: #fff;
  border-radius: 14px; background: linear-gradient(145deg, var(--petroleo), var(--verde));
  box-shadow: 0 10px 25px rgba(7,63,70,.22); font-size: 24px; font-weight: 900;
}
.pc-brand__text { display: grid; line-height: 1.05; }
.pc-brand__text strong { font-size: 17px; letter-spacing: .01em; }
.pc-brand__text small { margin-top: 6px; color: var(--magenta); font-size: 10px; letter-spacing: .14em; text-transform: uppercase; font-weight: 800; }
.pc-brand__logo { display:block; width:292px; height:auto; max-height:86px; object-fit:contain; }
.pc-header .pc-brand {
  width:330px !important; height:130px !important; overflow:hidden !important; justify-content:center;
}
.pc-header .pc-brand__logo {
  width:100% !important; height:100% !important; max-height:none !important;
  transform:scale(1.18) !important; transform-origin:center !important; object-fit:contain !important;
}
.pc-nav { display: flex; align-items: center; gap: 24px; }
.pc-nav a { text-decoration: none; color: var(--tinta); font-size: 14px; font-weight: 700; }
.pc-nav a:hover, .pc-nav a:focus { color: var(--magenta); }
.pc-menu-button { display: none; border: 0; background: none; color: var(--petroleo); font-weight: 800; font-size: 15px; }

.pc-button {
  display: inline-flex; align-items: center; justify-content: center; gap: 9px;
  min-height: 50px; padding: 0 22px; border-radius: 999px; border: 1px solid transparent;
  text-decoration: none; font-weight: 800; transition: .2s ease;
}
.pc-button:hover { transform: translateY(-2px); }
.pc-button--primary { color: #fff; background: linear-gradient(100deg, var(--magenta), #075f5a); box-shadow: 0 14px 28px rgba(11,117,107,.22); }
.pc-button--outline { color: var(--petroleo); border-color: rgba(7,63,70,.24); background: rgba(255,255,255,.7); }
.pc-button--header { min-height: 42px; padding-inline: 18px; color: #fff !important; background: var(--petroleo); }

.pc-hero {
  position: relative; overflow: hidden; padding: 96px 0 76px;
  background:
    radial-gradient(circle at 80% 12%, rgba(18,162,142,.17), transparent 29%),
    radial-gradient(circle at 2% 90%, rgba(242,139,34,.10), transparent 31%),
    linear-gradient(140deg, #f8fbfa 0%, #fff 62%);
}
.pc-hero::after {
  content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .32;
  background-image: linear-gradient(rgba(7,63,70,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(7,63,70,.08) 1px, transparent 1px);
  background-size: 58px 58px; mask-image: linear-gradient(to right, transparent 15%, #000);
}
.pc-hero::before {
  content:""; position:absolute; z-index:0; left:-120px; bottom:-135px; width:420px; height:420px;
  pointer-events:none; opacity:.17; background:url("assets/images/neural-corner-a.svg") center/contain no-repeat;
  transform:rotate(-8deg);
}
.pc-hero__grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1.12fr .88fr; align-items: center; gap: 64px; }
.pc-kicker { display: inline-flex; align-items: center; gap: 9px; color: var(--magenta); font-size: 12px; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.pc-kicker::before { content: ""; width: 30px; height: 3px; border-radius: 4px; background: linear-gradient(90deg, var(--magenta), var(--laranja)); }
.pc-hero h1 { max-width: 780px; margin: 20px 0; color: var(--petroleo); font-size: clamp(42px, 6.2vw, 78px); line-height: .98; letter-spacing: -.055em; }
.pc-hero h1 span { color: var(--magenta); }
.pc-hero__lead { max-width: 690px; font-size: clamp(17px, 2vw, 21px); color: #526a6e; }
.pc-actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 34px; }
.pc-hero__proof { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 34px; color: var(--petroleo); font-size: 13px; font-weight: 750; }
.pc-hero__proof span::before { content: "✓"; color: var(--verde); margin-right: 7px; font-weight: 900; }
.pc-orbit {
  position: relative; min-height: 510px; display: grid; place-items: center;
  border-radius: 48px; background: linear-gradient(145deg, var(--petroleo), #052b31);
  box-shadow: var(--sombra); overflow: hidden;
}
.pc-orbit::before, .pc-orbit::after { content: ""; position: absolute; border: 1px solid rgba(255,255,255,.15); border-radius: 50%; }
.pc-orbit::before { width: 390px; height: 390px; }
.pc-orbit::after { width: 270px; height: 270px; }
.pc-orbit__core {
  position: relative; z-index: 2; width: 180px; height: 180px; display: grid; place-items: center; border-radius: 50%;
  color: #fff; font-size: 74px; font-weight: 950; background: linear-gradient(145deg, var(--magenta), var(--laranja));
  box-shadow: 0 0 0 18px rgba(255,255,255,.07), 0 0 70px rgba(11,117,107,.38);
}
.pc-media {
  position: relative; min-height: 510px; overflow: hidden;
  border: 1px solid rgba(7,63,70,.12); border-radius: 40px;
  background:
    radial-gradient(circle at 54% 42%, rgba(18,162,142,.22), transparent 36%),
    linear-gradient(145deg, var(--petroleo), #052c32);
  box-shadow: var(--sombra);
}
.pc-media::before {
  content: ""; position: absolute; inset: 0; opacity: .21;
  background-image: linear-gradient(rgba(255,255,255,.13) 1px, transparent 1px),linear-gradient(90deg,rgba(255,255,255,.13) 1px,transparent 1px);
  background-size: 45px 45px;
}
.pc-media canvas { position:absolute; inset:0; width:100%; height:100%; }
.pc-media__brand-panel {
  position:absolute; z-index:3; left:50%; top:50%; transform:translate(-50%,-50%);
  width:min(78%,390px); padding:0;
}
.pc-media__brand {
  position:relative; z-index:2; display:block; width:100%; height:auto;
  max-height:320px; object-fit:contain; filter:drop-shadow(0 18px 28px rgba(0,0,0,.30));
}
.pc-media__video { position:absolute; z-index:4; inset:0; width:100%; height:100%; object-fit:cover; background:#031d22; }
.pc-media__badge {
  position:absolute; z-index:5; left:24px; bottom:24px; display:flex; align-items:center; gap:9px;
  padding:10px 14px; border:1px solid rgba(255,255,255,.18); border-radius:999px;
  color:#fff; background:rgba(3,29,34,.7); backdrop-filter:blur(12px); font-size:11px; font-weight:850; letter-spacing:.06em;
}
.pc-media__badge::before { content:""; width:8px; height:8px; border-radius:50%; background:#55f3d4; box-shadow:0 0 14px #55f3d4; }
.pc-chip {
  position: absolute; z-index: 3; max-width: 170px; padding: 12px 15px; color: #fff;
  border: 1px solid rgba(255,255,255,.16); border-radius: 14px; background: rgba(255,255,255,.10);
  backdrop-filter: blur(10px); font-size: 12px; font-weight: 800;
}
.pc-chip--1 { top: 16%; left: 8%; }
.pc-chip--2 { top: 23%; right: 6%; }
.pc-chip--3 { bottom: 18%; left: 7%; }
.pc-chip--4 { right: 8%; bottom: 13%; }

.pc-section {
  position:relative; overflow:hidden; padding:92px 0;
  background:
    radial-gradient(circle at 12% 12%, rgba(18,162,142,.065), transparent 27%),
    radial-gradient(circle at 90% 92%, rgba(242,139,34,.045), transparent 25%),
    linear-gradient(145deg,#fff 0%,#f9fcfb 100%);
}
.pc-section > .pc-container { position:relative; z-index:2; }
.pc-section::before,
.pc-section::after {
  content:""; position:absolute; z-index:1; width:390px; height:390px;
  pointer-events:none; opacity:.19; background-position:center; background-size:contain; background-repeat:no-repeat;
}
.pc-section::before { left:-145px; top:-145px; background-image:url("assets/images/neural-corner-a.svg"); transform:rotate(-10deg); }
.pc-section::after { right:-150px; bottom:-155px; background-image:url("assets/images/neural-corner-b.svg"); transform:rotate(8deg); }
.pc-section:nth-of-type(even)::before { left:auto; right:-165px; top:-130px; width:430px; height:430px; opacity:.14; transform:rotate(88deg); }
.pc-section:nth-of-type(even)::after { right:auto; left:-150px; bottom:-155px; opacity:.2; transform:rotate(182deg); }
.pc-section:nth-of-type(3n)::before { top:24%; opacity:.16; transform:rotate(32deg) scale(.82); }
.pc-section:nth-of-type(3n)::after { bottom:12%; opacity:.13; transform:rotate(154deg) scale(.9); }
.pc-section--dark::before,.pc-section--dark::after { opacity:.22; filter:brightness(1.8) saturate(.85); }
.pc-section--soft {
  background:
    linear-gradient(125deg,rgba(255,255,255,.55),transparent 48%),
    radial-gradient(circle at 88% 20%,rgba(242,139,34,.09),transparent 23%),
    var(--claro);
}
.pc-section--dark {
  color: rgba(255,255,255,.78);
  background:
    radial-gradient(circle at 15% 85%,rgba(242,139,34,.18),transparent 30%),
    radial-gradient(circle at 88% 12%,rgba(18,162,142,.18),transparent 28%),
    linear-gradient(145deg,var(--petroleo),#052b31);
}
.pc-heading { max-width: 760px; margin-bottom: 42px; }
.pc-heading h2 { margin: 14px 0; color: var(--petroleo); font-size: clamp(32px, 4vw, 50px); line-height: 1.08; letter-spacing: -.035em; }
.pc-section--dark .pc-heading h2 { color: #fff; }
.pc-heading p { font-size: 18px; }
.pc-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.pc-card {
  position:relative; isolation:isolate; overflow:hidden;
  padding: 32px 30px; border: 1px solid rgba(7,63,70,.10); border-radius: var(--raio);
  background:linear-gradient(155deg,rgba(255,255,255,.98),rgba(245,250,249,.94));
  box-shadow: 0 10px 34px rgba(7,63,70,.065); transition: .22s ease;
}
.pc-card::before {
  content:""; position:absolute; z-index:-1; inset:0 auto 0 0; width:4px;
  background:linear-gradient(180deg,var(--verde),var(--petroleo));
}
.pc-card::after {
  content:""; position:absolute; z-index:-1; width:170px; height:170px; right:-85px; top:-90px;
  border-radius:50%; background:radial-gradient(circle,rgba(18,162,142,.13),transparent 67%);
}
.pc-card:nth-child(3n+2)::before { background:linear-gradient(180deg,var(--magenta),#075f5a); }
.pc-card:nth-child(3n+3)::before { background:linear-gradient(180deg,var(--laranja),var(--magenta)); }
.pc-card:hover { transform: translateY(-7px); box-shadow: 0 26px 60px rgba(7,63,70,.14); border-color: rgba(18,162,142,.38); }
.pc-card__icon { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 16px; color: #fff; background: linear-gradient(145deg, var(--petroleo), var(--verde)); font-size: 23px; }
.pc-card h3 { margin: 22px 0 10px; color: var(--petroleo); font-size: 21px; line-height: 1.2; }
.pc-card p { margin: 0; font-size: 15px; }

.pc-about { display: grid; grid-template-columns: .82fr 1.18fr; gap: 70px; align-items: center; }
.pc-about__panel {
  position:relative; isolation:isolate; overflow:hidden; padding:42px; border-radius:34px; color:#fff;
  background:linear-gradient(145deg,var(--petroleo),var(--petroleo-2)); box-shadow:var(--sombra);
}
.pc-about__panel::after {
  content:""; position:absolute; z-index:-1; width:290px; height:290px; right:-110px; bottom:-120px;
  background:url("assets/images/neural-corner-b.svg") center/contain no-repeat; opacity:.26; transform:rotate(15deg);
}
.pc-about__number { display: block; font-size: clamp(64px, 9vw, 110px); line-height: .9; font-weight: 950; color: var(--laranja); letter-spacing: -.07em; }
.pc-about__panel p { font-size: 19px; }
.pc-list { display: grid; gap: 16px; padding: 0; margin: 28px 0 0; list-style: none; }
.pc-list li { position: relative; padding-left: 30px; }
.pc-list li::before { content: "●"; position: absolute; left: 0; color: var(--magenta); }

.pc-method { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; counter-reset: etapas; }
.pc-method__item { position: relative; padding: 26px; border: 1px solid rgba(255,255,255,.15); border-radius: 20px; background: rgba(255,255,255,.06); }
.pc-method__item::before { counter-increment: etapas; content: "0" counter(etapas); display: block; margin-bottom: 30px; color: var(--laranja); font-size: 27px; font-weight: 950; }
.pc-method__item h3 { color: #fff; }

.pc-proofbar {
  position:relative; display:grid; grid-template-columns:repeat(4,1fr);
  border-block:1px solid var(--linha); background:linear-gradient(90deg,#fff,#f5faf9,#fff);
  box-shadow:0 12px 35px rgba(7,63,70,.045);
}
.pc-proofbar::before { content:""; position:absolute; inset:0 0 auto; height:3px; background:linear-gradient(90deg,var(--verde),var(--magenta),var(--laranja)); }
.pc-proofbar__item { padding:25px 22px; text-align:center; border-right:1px solid var(--linha); color:var(--texto); font-size:13px; }
.pc-proofbar__item:last-child { border-right:0; }
.pc-proofbar__item strong { display:block; color:var(--petroleo); font-size:19px; }

.pc-portfolio-controls { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 28px; }
.pc-filter {
  min-height:42px; padding:0 17px; border:1px solid var(--linha); border-radius:999px;
  background:#fff; color:var(--petroleo); font-weight:800; cursor:pointer;
}
.pc-filter.is-active { border-color:var(--petroleo); background:var(--petroleo); color:#fff; }
.pc-portfolio-grid { display:grid; grid-template-columns:repeat(12,1fr); gap:18px; }
.pc-work {
  position:relative; grid-column:span 4; min-height:300px; overflow:hidden;
  border-radius:22px; background:#dce9e7; box-shadow:0 12px 34px rgba(7,63,70,.09);
}
.pc-work:nth-child(1),.pc-work:nth-child(6) { grid-column:span 8; }
.pc-work img { width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.pc-work > a { display:block; width:100%; height:100%; color:inherit; text-decoration:none; }
.pc-work:hover img { transform:scale(1.04); }
.pc-work__placeholder {
  width:100%; min-height:300px; display:grid; place-items:center; color:rgba(255,255,255,.94);
  background:linear-gradient(145deg,var(--petroleo),var(--verde)); font-size:92px; font-weight:950;
}
.pc-work__info {
  position:absolute; inset:auto 0 0; padding:45px 22px 19px; color:#fff;
  background:linear-gradient(transparent,rgba(2,27,31,.92));
}
.pc-work__info span { color:#7fffe5; font-size:10px; font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
.pc-work__info strong { display:block; margin-top:4px; font-size:18px; }
.pc-work.is-hidden { display:none; }
.pc-category-links { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; margin:0 0 28px; }
.pc-category-link {
  position:relative; overflow:hidden; min-height:82px; padding:15px; display:flex; flex-direction:column; justify-content:flex-end;
  border:1px solid var(--linha); border-radius:17px; text-decoration:none; color:var(--petroleo); background:linear-gradient(145deg,#fff,#f2f8f7);
  font-size:13px; font-weight:850;
}
.pc-category-link::before { content:""; position:absolute; width:70px; height:70px; right:-20px; top:-24px; border-radius:50%; background:linear-gradient(145deg,rgba(18,162,142,.22),rgba(242,139,34,.12)); }
.pc-category-link small { color:var(--magenta); font-size:9px; letter-spacing:.11em; text-transform:uppercase; }
.pc-category-link:hover { transform:translateY(-2px); border-color:rgba(18,162,142,.45); }
.pc-empty-portfolio { grid-column:1/-1; padding:34px; border:1px dashed rgba(7,63,70,.25); border-radius:20px; text-align:center; }
.pc-portfolio-content { margin-top:34px; font-size:17px; }
.pc-portfolio-content > * { max-width:820px; }
.pc-portfolio-content img { border-radius:22px; box-shadow:var(--sombra); }
.pc-project-credit {
  display:inline-flex; margin:8px 0 30px; padding:10px 15px; border:1px solid rgba(18,162,142,.24);
  border-radius:999px; color:var(--petroleo); background:rgba(18,162,142,.08); font-size:13px;
}

.pc-cta {
  position:relative; isolation:isolate; overflow:hidden; padding:56px; border-radius:34px;
  background:linear-gradient(115deg,var(--magenta),#075f5a); color:#fff;
  display:flex; align-items:center; justify-content:space-between; gap:30px; box-shadow:var(--sombra);
}
.pc-cta::after {
  content:""; position:absolute; z-index:-1; width:310px; height:310px; right:-100px; top:-120px;
  background:url("assets/images/neural-corner-a.svg") center/contain no-repeat; opacity:.22; filter:brightness(2);
}
.pc-cta h2 { margin: 0 0 10px; font-size: clamp(30px, 4vw, 48px); line-height: 1.05; }
.pc-cta p { margin: 0; color: rgba(255,255,255,.86); font-size: 17px; }
.pc-cta .pc-button { flex: 0 0 auto; background: #fff; color: var(--magenta); }

.pc-contact { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; }
.pc-contact__links { display: grid; gap: 14px; margin-top: 28px; }
.pc-contact__links a { padding: 17px 20px; text-decoration: none; border-radius: 16px; background: var(--claro); color: var(--petroleo); font-weight: 800; }
.pc-contact__box { padding: 34px; border-radius: 26px; background: var(--claro); border: 1px solid var(--linha); }
.pc-contact__box h3 { color: var(--petroleo); font-size: 24px; margin-top: 0; }
.pc-contact__box .pc-button { width: 100%; margin-top: 8px; }

.pc-footer {
  position:relative; isolation:isolate; overflow:hidden; padding:64px 0 28px; color:rgba(255,255,255,.74);
  background:
    radial-gradient(circle at 12% 34%,rgba(18,162,142,.27),transparent 28%),
    radial-gradient(circle at 86% 88%,rgba(242,139,34,.16),transparent 30%),
    linear-gradient(145deg,#052f35,#031e23);
}
.pc-footer::before {
  content:""; position:absolute; z-index:-1; width:440px; height:440px; left:-180px; bottom:-220px;
  background:url("assets/images/neural-corner-b.svg") center/contain no-repeat; opacity:.27; filter:brightness(1.6);
}
.pc-footer .pc-brand { display:inline-flex; background:transparent; }
.pc-footer .pc-brand { width:340px !important; height:175px !important; overflow:hidden !important; justify-content:center; }
.pc-footer .pc-brand__logo {
  width:100% !important; height:100% !important; max-height:none !important;
  transform:scale(1.2) !important; transform-origin:center !important; object-fit:contain !important;
  filter:drop-shadow(0 0 2px rgba(255,255,255,.92)) drop-shadow(0 14px 24px rgba(0,0,0,.42));
}
.pc-footer__grid { display: grid; grid-template-columns: 1.4fr .8fr .8fr; gap: 40px; }
.pc-footer h3, .pc-footer strong { color: #fff; }
.pc-footer a { color: rgba(255,255,255,.76); text-decoration: none; }
.pc-footer__links { display: grid; gap: 9px; }
.pc-footer__bottom { margin-top: 36px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.12); font-size: 13px; }

@media (max-width: 960px) {
  body.admin-bar .pc-header { top: 46px; }
  .pc-menu-button { display: inline-flex; }
  .pc-nav { display: none; position: absolute; inset: 100px 20px auto; padding: 22px; border-radius: 18px; background: #fff; box-shadow: var(--sombra); flex-direction: column; align-items: stretch; }
  .pc-nav.is-open { display: flex; }
  .pc-hero { padding-top: 62px; }
  .pc-hero__grid, .pc-about, .pc-contact { grid-template-columns: 1fr; }
  .pc-orbit { min-height: 410px; }
  .pc-grid { grid-template-columns: repeat(2, 1fr); }
  .pc-method { grid-template-columns: repeat(2, 1fr); }
  .pc-footer__grid { grid-template-columns: 1fr 1fr; }
  .pc-work,.pc-work:nth-child(1),.pc-work:nth-child(6) { grid-column:span 6; }
  .pc-proofbar { grid-template-columns:repeat(2,1fr); }
  .pc-category-links { grid-template-columns:repeat(3,1fr); }
}
@media (max-width: 620px) {
  .pc-container { width: min(calc(100% - 28px), var(--largura)); }
  .pc-header__inner { min-height:84px; }
  .pc-brand__logo { width:220px; max-height:68px; }
  .pc-header .pc-brand { width:245px !important; height:100px !important; }
  .pc-nav { inset:84px 14px auto; }
  .pc-hero { padding: 48px 0 56px; }
  .pc-hero__grid { gap: 38px; }
  .pc-orbit { min-height: 330px; border-radius: 30px; }
  .pc-orbit__core { width: 125px; height: 125px; font-size: 52px; }
  .pc-chip { max-width: 135px; padding: 9px 11px; font-size: 10px; }
  .pc-section { padding: 68px 0; }
  .pc-grid, .pc-method, .pc-footer__grid { grid-template-columns: 1fr; }
  .pc-card { padding: 25px; }
  .pc-cta { padding: 34px 26px; flex-direction: column; align-items: flex-start; }
  .pc-cta .pc-button { width: 100%; }
  .pc-media { min-height:360px; }
  .pc-media__brand-panel { width:82%; }
  .pc-work,.pc-work:nth-child(1),.pc-work:nth-child(6) { grid-column:1/-1; min-height:270px; }
  .pc-proofbar { grid-template-columns:1fr 1fr; }
  .pc-proofbar__item:nth-child(2) { border-right:0; }
  .pc-category-links { grid-template-columns:1fr 1fr; }
  .pc-section::before,.pc-section::after { width:265px;height:265px;opacity:.14; }
  .pc-footer .pc-brand { width:285px !important; height:150px !important; }
}

@media (max-width: 380px) {
  .pc-brand__logo { width:195px; max-height:62px; }
  .pc-header .pc-brand { width:210px !important; height:88px !important; }
  .pc-menu-button { padding-inline:4px; }
}

/* Direção de arte 2.0 — editorial tecnológica premium */
body {
  background:#f3f7f6;
  font-feature-settings:"kern" 1,"liga" 1;
}
.pc-header {
  border-bottom:1px solid rgba(7,63,70,.09);
  background:rgba(255,255,255,.95);
  box-shadow:0 7px 24px rgba(7,63,70,.07);
}
.pc-header::after {
  content:""; position:absolute; inset:auto 0 0; height:2px;
  background:linear-gradient(90deg,transparent,var(--verde),var(--magenta),var(--laranja),transparent);
  opacity:.75;
}
.pc-header__inner { min-height:130px; }
.pc-header .pc-brand {
  position:relative; height:122px!important;
}
.pc-header .pc-brand::before {
  content:none;
}
.pc-header .pc-brand__logo {
  position:relative; z-index:1;
  filter:none;
  border-radius:22px;
}
.pc-nav a { color:var(--petroleo); }
.pc-nav a:hover,.pc-nav a:focus { color:var(--magenta); }
.pc-button--header {
  color:#fff!important;
  background:linear-gradient(110deg,var(--petroleo),#0b6568);
  box-shadow:0 8px 20px rgba(7,63,70,.16);
}
.pc-menu-button { color:var(--petroleo); }

.pc-hero {
  min-height:min(860px,calc(100svh - 70px)); padding:clamp(80px,9vw,132px) 0 92px;
  color:rgba(255,255,255,.78);
  background:
    radial-gradient(circle at 88% 16%,rgba(18,162,142,.28),transparent 27%),
    radial-gradient(circle at 3% 90%,rgba(242,139,34,.14),transparent 31%),
    linear-gradient(135deg,#031e23 0%,#063d44 58%,#082a31 100%);
}
.pc-hero::after {
  opacity:.21;
  background-image:linear-gradient(rgba(255,255,255,.11) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.11) 1px,transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(120deg,#000,transparent 72%);
}
.pc-hero::before {
  left:auto; right:-90px; bottom:-150px; width:540px; height:540px; opacity:.25;
  filter:brightness(1.6); transform:rotate(78deg);
}
.pc-hero__grid { grid-template-columns:1.08fr .92fr; gap:clamp(42px,6vw,88px); }
.pc-hero .pc-kicker { color:#75efd7; }
.pc-hero h1 {
  max-width:730px; margin:24px 0 28px; color:#fff;
  font-size:clamp(50px,5vw,72px); line-height:.94; letter-spacing:-.058em;
  text-wrap:balance;
}
.pc-hero h1 span {
  color:transparent;
  background:linear-gradient(105deg,#55dfc8 5%,#21ae99 52%,#f2a044);
  background-clip:text; -webkit-background-clip:text;
}
.pc-hero__lead { max-width:650px; color:rgba(255,255,255,.67); font-size:clamp(17px,1.55vw,21px); }
.pc-hero .pc-button--outline { color:#fff; border-color:rgba(255,255,255,.25); background:rgba(255,255,255,.06); backdrop-filter:blur(12px); }
.pc-hero .pc-button--outline:hover { border-color:rgba(255,255,255,.55); background:rgba(255,255,255,.12); }
.pc-hero__proof { color:rgba(255,255,255,.76); }
.pc-media {
  min-height:clamp(470px,46vw,610px);
  border:1px solid rgba(255,255,255,.18); border-radius:34px;
  background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.025));
  box-shadow:0 24px 58px rgba(0,0,0,.22),inset 0 1px rgba(255,255,255,.16);
  transform:perspective(1400px) rotateY(-3deg);
}
.pc-media::after {
  content:""; position:absolute; inset:12px; z-index:2; pointer-events:none;
  border:1px solid rgba(255,255,255,.1); border-radius:25px;
}
.pc-media__video { border-radius:33px; }
.pc-media__badge { left:28px; bottom:28px; letter-spacing:.11em; }

.pc-proofbar {
  position:relative; z-index:4; width:min(calc(100% - 40px),1180px); margin:-44px auto 0;
  border:1px solid rgba(255,255,255,.17); border-radius:22px;
  background:rgba(255,255,255,.91); backdrop-filter:blur(22px) saturate(1.2);
  box-shadow:0 14px 36px rgba(5,58,65,.11);
}
.pc-proofbar::before { border-radius:22px 22px 0 0; }
.pc-proofbar__item { padding:28px 20px; }

.pc-section { padding:clamp(88px,9vw,132px) 0; }
.pc-heading { max-width:880px; margin-bottom:52px; }
.pc-heading h2 {
  max-width:850px; font-size:clamp(39px,5vw,68px); line-height:.98; letter-spacing:-.052em;
  text-wrap:balance;
}
.pc-heading p { max-width:760px; color:#587074; font-size:18px; }

#servicos { padding-top:145px; }
#servicos .pc-grid {
  grid-template-columns:repeat(12,1fr); grid-auto-flow:dense; gap:18px;
}
#servicos .pc-card {
  grid-column:span 4; min-height:320px; padding:34px;
  display:flex; flex-direction:column; justify-content:flex-start;
  border:1px solid rgba(7,63,70,.1); border-radius:28px;
  background:linear-gradient(150deg,rgba(255,255,255,.97),rgba(235,246,244,.91));
  box-shadow:0 10px 29px rgba(7,63,70,.065);
}
#servicos .pc-card:nth-child(1),
#servicos .pc-card:nth-child(6) { grid-column:span 8; }
#servicos .pc-card:nth-child(1) {
  color:rgba(255,255,255,.72);
  background:
    radial-gradient(circle at 85% 15%,rgba(18,162,142,.35),transparent 30%),
    linear-gradient(135deg,#052e34,#073f46);
}
#servicos .pc-card:nth-child(1) h3 { color:#fff; font-size:30px; }
#servicos .pc-card:nth-child(3) {
  background:
    radial-gradient(circle at 92% 10%,rgba(242,139,34,.19),transparent 28%),
    linear-gradient(150deg,#fff,#fff7ed);
}
#servicos .pc-card:nth-child(6) {
  background:
    radial-gradient(circle at 88% 12%,rgba(18,162,142,.18),transparent 30%),
    linear-gradient(145deg,#fff,#fff2f8);
}
#servicos .pc-card__icon {
  width:58px; height:58px; margin-bottom:auto; border-radius:18px;
  box-shadow:0 8px 18px rgba(7,63,70,.12);
}
#servicos .pc-card h3 { margin:46px 0 12px; font-size:24px; letter-spacing:-.025em; }
#servicos .pc-card p { max-width:520px; font-size:16px; }

#empresa {
  background:
    linear-gradient(115deg,rgba(255,255,255,.9),rgba(244,249,248,.65)),
    radial-gradient(circle at 10% 20%,rgba(18,162,142,.12),transparent 27%);
}
.pc-about { grid-template-columns:.74fr 1.26fr; gap:clamp(55px,8vw,110px); }
.pc-about__panel {
  min-height:500px; display:flex; flex-direction:column; justify-content:flex-end;
  padding:46px; border-radius:38px;
  background:
    radial-gradient(circle at 25% 15%,rgba(18,162,142,.35),transparent 32%),
    linear-gradient(155deg,#052c33,#073f46 62%,#092b32);
  box-shadow:0 22px 55px rgba(5,58,65,.16);
}
.pc-about__number {
  font-size:clamp(96px,12vw,165px); color:var(--laranja)!important; background:none!important;
  -webkit-text-fill-color:var(--laranja);
}
.pc-about__panel p { max-width:390px; color:rgba(255,255,255,.74); }

.pc-section--dark { padding-block:120px; }
.pc-section--dark .pc-heading { max-width:900px; }
.pc-method { gap:1px; border:1px solid rgba(255,255,255,.14); border-radius:28px; overflow:hidden; background:rgba(255,255,255,.08); }
.pc-method__item {
  min-height:330px; padding:34px; border:0; border-right:1px solid rgba(255,255,255,.12); border-radius:0;
  background:rgba(4,35,40,.46); transition:.3s ease;
}
.pc-method__item:last-child { border-right:0; }
.pc-method__item:hover { background:rgba(255,255,255,.1); }
.pc-method__item::before { font-size:42px; }

.pc-cta {
  min-height:330px; padding:clamp(42px,6vw,78px); border-radius:42px;
  background:
    radial-gradient(circle at 84% 25%,rgba(242,139,34,.42),transparent 27%),
    linear-gradient(115deg,#0b756b,#073f46);
  box-shadow:0 19px 48px rgba(7,63,70,.17);
}
.pc-cta h2 { max-width:680px; font-size:clamp(42px,5vw,66px); letter-spacing:-.05em; }
.pc-contact__box {
  min-height:360px; padding:44px; display:flex; flex-direction:column; justify-content:center;
  border-radius:30px; background:rgba(255,255,255,.82); backdrop-filter:blur(15px);
  box-shadow:0 13px 34px rgba(7,63,70,.07);
}
.pc-footer { padding-top:76px; }
.pc-footer__grid > div:first-child {
  padding:24px 28px 26px; border:1px solid rgba(255,255,255,.72); border-radius:30px;
  color:var(--texto); background:linear-gradient(145deg,#fff,#f5faf9);
}
.pc-footer__grid > div:first-child p { margin-bottom:0; }
.pc-footer .pc-brand { position:relative; }
.pc-footer .pc-brand::before {
  content:none;
}
.pc-footer .pc-brand__logo {
  position:relative; z-index:1;
  filter:none;
  border-radius:22px;
}

@media (max-width:960px) {
  .pc-header { background:rgba(255,255,255,.97); }
  .pc-nav { background:#fff; border:1px solid rgba(7,63,70,.1); }
  .pc-hero { min-height:auto; }
  .pc-media { transform:none; }
  #servicos .pc-card,#servicos .pc-card:nth-child(1),#servicos .pc-card:nth-child(6) { grid-column:span 6; }
  .pc-about__panel { min-height:390px; }
}
@media (max-width:620px) {
  .pc-header__inner { min-height:100px; }
  .pc-header .pc-brand { height:100px!important; }
  .pc-nav { inset:100px 14px auto; }
  .pc-hero { padding-top:66px; }
  .pc-hero h1 { font-size:clamp(46px,14vw,64px); }
  .pc-proofbar { width:calc(100% - 24px); margin-top:-26px; }
  #servicos { padding-top:105px; }
  #servicos .pc-card,#servicos .pc-card:nth-child(1),#servicos .pc-card:nth-child(6) { grid-column:1/-1; min-height:285px; }
  .pc-method { border-radius:22px; }
  .pc-method__item { min-height:245px; border-right:0; border-bottom:1px solid rgba(255,255,255,.12); }
  .pc-method__item:last-child { border-bottom:0; }
  .pc-cta { min-height:auto; border-radius:30px; }
}

/* Correção 2.4.3 — painel de vídeo responsivo em celulares */
.pc-media--video {
  display:block!important; width:100%; aspect-ratio:16/10;
}
.pc-media__video {
  display:block!important; visibility:visible!important; opacity:1!important;
  width:100%!important; height:100%!important; min-width:100%; min-height:100%;
  object-fit:cover; object-position:center;
}
@media (max-width:960px) {
  .pc-media--video {
    min-height:0!important; height:auto!important; aspect-ratio:16/10;
  }
}
@media (max-width:620px) {
  .pc-hero__grid { grid-template-columns:minmax(0,1fr)!important; }
  .pc-media--video {
    display:block!important; min-height:0!important;
    aspect-ratio:4/3; border-radius:14px;
  }
  .pc-media__video { border-radius:13px!important; }
  .pc-media__badge {
    left:12px; right:12px; bottom:12px;
    width:max-content; max-width:calc(100% - 24px);
    padding:8px 10px; font-size:8px; letter-spacing:.045em;
  }
}

/* Garantia final 2.6 — quadro 2004 totalmente responsivo */
@media (max-width:620px) {
  .pc-about {
    display:grid!important; grid-template-columns:minmax(0,1fr)!important;
    width:100%; min-width:0; gap:44px;
  }
  .pc-about__panel {
    width:100%!important; min-width:0!important; min-height:0!important;
    box-sizing:border-box; padding:36px 26px!important;
    overflow:hidden!important; border-radius:14px!important;
  }
  .pc-about__eyebrow {
    max-width:100%; font-size:9px!important; letter-spacing:.12em;
    white-space:normal;
  }
  .pc-about__number {
    display:block!important; width:auto!important; max-width:100%!important;
    margin:4px 0 6px!important; padding:0!important;
    font-size:clamp(62px,22vw,100px)!important;
    line-height:.84!important; letter-spacing:-.075em!important;
    white-space:nowrap!important; overflow:visible!important;
  }
  .pc-about__panel p {
    max-width:100%!important; margin:8px 0 0!important;
    font-size:16px!important; line-height:1.55;
  }
}
@media (max-width:360px) {
  .pc-about__panel { padding:30px 20px!important; }
  .pc-about__number { font-size:clamp(58px,21vw,76px)!important; }
}

/* 2.8.0 — paleta institucional e responsividade final multitelas */
html,body { max-width:100%; overflow-x:clip; }
:root { --magenta:#0b756b; }
body {
  background:
    radial-gradient(circle at 4% 28%,rgba(18,162,142,.055),transparent 24%),
    radial-gradient(circle at 96% 63%,rgba(242,139,34,.045),transparent 22%),
    #fbfdfc;
}
.pc-header::after,
.pc-proofbar::before {
  background:linear-gradient(90deg,transparent,var(--verde),var(--petroleo-2),var(--laranja),transparent);
}
.pc-button--primary {
  color:#fff;
  background:linear-gradient(105deg,var(--verde),var(--petroleo-2));
  box-shadow:none;
}
.pc-hero {
  background:
    radial-gradient(circle at 88% 16%,rgba(18,162,142,.28),transparent 27%),
    radial-gradient(circle at 3% 90%,rgba(242,139,34,.12),transparent 31%),
    linear-gradient(135deg,#031e23 0%,#063d44 58%,#082a31 100%);
}
.pc-hero h1 span {
  color:transparent;
  background:linear-gradient(105deg,#55dfc8 4%,#21ae99 52%,#f2a044);
  background-clip:text;
  -webkit-background-clip:text;
}
#servicos .pc-card:nth-child(6) {
  background:
    url("assets/images/neural-corner-a.svg") calc(100% + 90px) -90px/260px no-repeat,
    radial-gradient(circle at 88% 12%,rgba(18,162,142,.14),transparent 31%),
    linear-gradient(145deg,#fff,#f0f9f7);
}
.pc-cta {
  border-color:rgba(7,63,70,.34);
  background:
    url("assets/images/neural-corner-a.svg") calc(100% + 80px) -100px/280px no-repeat,
    radial-gradient(circle at 84% 25%,rgba(242,139,34,.28),transparent 27%),
    linear-gradient(115deg,#0b756b,#073f46);
}
.pc-cta .pc-button { color:var(--petroleo); }
.pc-section--dark {
  background:
    radial-gradient(circle at 15% 85%,rgba(242,139,34,.12),transparent 30%),
    radial-gradient(circle at 88% 12%,rgba(18,162,142,.18),transparent 28%),
    linear-gradient(145deg,var(--petroleo),#052b31);
}
.pc-footer {
  background:
    radial-gradient(circle at 7% 18%,rgba(18,162,142,.11),transparent 25%),
    radial-gradient(circle at 93% 82%,rgba(242,139,34,.07),transparent 28%),
    linear-gradient(145deg,#fff,#f3f8f7);
}

/* Estrutura fluida: conteúdo nunca ultrapassa a tela. */
.pc-container,
.pc-header__inner,
.pc-hero__grid,
.pc-about,
.pc-contact,
.pc-footer__grid,
.pc-footer__utility,
.pc-grid,
.pc-method { min-width:0; }
.pc-hero__grid>*,
.pc-about>*,
.pc-contact>*,
.pc-footer__grid>*,
.pc-grid>*,
.pc-method>* { min-width:0; }
.pc-heading h2,
.pc-hero h1,
.pc-hero__lead,
.pc-card h3,
.pc-card p,
.pc-footer__statement { overflow-wrap:anywhere; }
.pc-button { min-height:48px; }

@media (max-width:1100px) {
  .pc-header .pc-brand { width:300px!important; }
  .pc-nav { gap:15px; }
  .pc-nav a { font-size:13px; }
  .pc-hero__grid { gap:44px; }
  .pc-footer__utility { padding-inline:34px; }
}

@media (max-width:960px) {
  .pc-header__inner { min-height:116px!important; }
  .pc-header .pc-brand { width:min(300px,65vw)!important; height:104px!important; }
  .pc-menu-button {
    display:inline-flex; align-items:center; justify-content:center;
    min-width:48px; min-height:48px; padding:8px;
  }
  .pc-nav {
    z-index:20; inset:116px 20px auto;
    max-height:calc(100svh - 136px); overflow-y:auto;
  }
  .pc-hero { padding:72px 0 78px; }
  .pc-hero__grid { grid-template-columns:minmax(0,1fr)!important; gap:48px; }
  .pc-media { width:100%; min-height:0; aspect-ratio:16/10; transform:none; }
  .pc-about { grid-template-columns:minmax(0,1fr)!important; }
  .pc-about__panel { width:100%; min-height:410px; }
  #servicos .pc-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #servicos .pc-card:nth-child(n) { grid-column:auto; }
  .pc-method { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pc-footer__grid { grid-template-columns:minmax(0,1fr)!important; }
  .pc-footer__utility {
    margin-inline:calc(50% - 50vw)!important;
    grid-template-columns:minmax(170px,.75fr) minmax(260px,1.25fr)!important;
  }
}

@media (max-width:700px) {
  .pc-container { width:min(calc(100% - 32px),var(--largura)); }
  .pc-hero h1 { font-size:clamp(42px,12vw,60px); }
  .pc-heading h2 { font-size:clamp(34px,9vw,50px); }
  .pc-proofbar { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pc-proofbar__item { min-width:0; padding:22px 14px; }
  .pc-proofbar__item strong { font-size:17px; overflow-wrap:anywhere; }
  #servicos .pc-grid { grid-template-columns:minmax(0,1fr); }
  #servicos .pc-card:nth-child(n) { grid-column:1/-1; min-height:260px; }
  .pc-method { grid-template-columns:minmax(0,1fr); }
  .pc-method__item { min-height:220px; border-right:0; border-bottom:1px solid rgba(255,255,255,.12); }
  .pc-contact { grid-template-columns:minmax(0,1fr); }
  .pc-footer__utility { grid-template-columns:minmax(0,1fr)!important; gap:38px!important; }
}

@media (max-width:520px) {
  body.admin-bar .pc-header { top:46px; }
  .pc-container { width:calc(100% - 24px); }
  .pc-header__inner { min-height:94px!important; padding-block:4px; }
  .pc-header .pc-brand { width:min(230px,70vw)!important; height:84px!important; }
  .pc-nav { inset:94px 12px auto; max-height:calc(100svh - 112px); }
  .pc-hero { padding:52px 0 58px; }
  .pc-hero__grid { gap:34px; }
  .pc-hero h1 { margin-block:18px 22px; font-size:clamp(38px,12.5vw,54px); line-height:1; }
  .pc-hero__lead { font-size:17px; }
  .pc-actions { display:grid; grid-template-columns:minmax(0,1fr); }
  .pc-actions .pc-button { width:100%; }
  .pc-hero__proof { display:grid; grid-template-columns:minmax(0,1fr); gap:9px; }
  .pc-media,.pc-media--video { aspect-ratio:4/3!important; border-radius:14px!important; }
  .pc-media__brand-panel { width:86%; }
  .pc-proofbar { width:calc(100% - 24px); grid-template-columns:minmax(0,1fr); margin-top:-22px; }
  .pc-proofbar__item { border-right:0; border-bottom:1px solid var(--linha); }
  .pc-proofbar__item:last-child { border-bottom:0; }
  .pc-section { padding:64px 0!important; }
  #servicos { padding-top:88px!important; }
  #servicos .pc-card:nth-child(n) { min-height:0; padding:28px 24px; }
  #servicos .pc-card h3 { margin-top:36px; }
  .pc-about__panel { min-height:0!important; padding:34px 24px!important; }
  .pc-about__number { font-size:clamp(68px,24vw,98px)!important; }
  .pc-cta,.pc-contact__box { padding:30px 22px; }
  .pc-cta h2 { font-size:clamp(34px,10vw,48px); }
  .pc-footer { padding-top:52px; }
  .pc-footer .pc-brand { width:min(100%,300px)!important; height:135px!important; }
  .pc-footer__statement { font-size:clamp(25px,8vw,35px); }
  .pc-footer__utility {
    margin-inline:calc(50% - 50vw)!important;
    padding:48px 20px!important;
  }
  .pc-footer__bottom { gap:12px; overflow-wrap:anywhere; }
}

@media (max-width:360px) {
  .pc-header .pc-brand { width:min(198px,67vw)!important; height:76px!important; }
  .pc-menu-button { min-width:44px; min-height:44px; font-size:13px; }
  .pc-kicker { letter-spacing:.095em; }
  .pc-media__badge { max-width:calc(100% - 20px); white-space:normal; }
  .pc-about__number { font-size:64px!important; }
}

@media (max-height:500px) and (orientation:landscape) {
  .pc-nav { max-height:calc(100svh - 90px); }
  .pc-hero { min-height:auto; }
  .pc-media { max-height:78svh; }
}

/* Regra final 2.8.0 — marcas completas no cabeçalho e rodapé */
.pc-header {
  overflow:visible!important;
}
.pc-header__inner {
  min-height:142px!important; padding-block:8px;
}
.pc-header .pc-brand {
  width:350px!important; height:126px!important;
  overflow:visible!important; display:flex; align-items:center; justify-content:center;
}
.pc-header .pc-brand__logo {
  display:block; width:100%!important; height:100%!important;
  max-width:100%!important; max-height:100%!important;
  object-fit:contain!important; object-position:center!important;
  transform-origin:center!important;
}
.pc-footer .pc-brand {
  width:370px!important; height:178px!important;
  overflow:visible!important; display:flex; align-items:center; justify-content:flex-start;
}
.pc-footer .pc-brand__logo {
  display:block; width:100%!important; height:100%!important;
  max-width:100%!important; max-height:100%!important;
  object-fit:contain!important; object-position:left center!important;
  transform:scale(1)!important; transform-origin:center!important;
  clip-path:none!important;
}
@media (max-width:960px) {
  .pc-header__inner { min-height:126px!important; }
  .pc-header .pc-brand { width:300px!important; height:110px!important; }
}
@media (max-width:620px) {
  .pc-header__inner { min-height:104px!important; padding-block:6px; }
  .pc-header .pc-brand { width:min(250px,72vw)!important; height:92px!important; }
  .pc-footer .pc-brand { width:min(100%,330px)!important; height:158px!important; }
}
@media (max-width:380px) {
  .pc-header .pc-brand { width:min(215px,68vw)!important; height:84px!important; }
  .pc-footer .pc-brand { height:145px!important; }
}

/* Correção 2.4.1 — contraste e acabamento do painel escuro do rodapé */
.pc-footer__utility {
  color:#d9e8e6!important;
  background:
    linear-gradient(90deg,rgba(18,162,142,.8) 0 4px,transparent 4px),
    linear-gradient(145deg,#063b42,#031f25);
}
.pc-footer__utility::after {
  background:linear-gradient(145deg,#063b42,#031f25);
}
.pc-footer__utility .pc-footer__links {
  position:relative; display:flex; flex-direction:column; align-items:flex-start;
  gap:0; color:#d9e8e6!important;
}
.pc-footer__utility .pc-footer__links strong {
  display:flex; align-items:center; gap:10px; width:100%; margin:0 0 20px;
  color:#fff!important; font-size:12px; font-weight:900;
  letter-spacing:.16em; text-transform:uppercase;
}
.pc-footer__utility .pc-footer__links strong::before {
  content:""; width:22px; height:3px;
  background:linear-gradient(90deg,var(--magenta),var(--laranja));
}
.pc-footer__utility .pc-footer__links a:not(.pc-footer__action) {
  width:100%; padding:12px 0;
  border-bottom:1px solid rgba(255,255,255,.12);
  color:#d9e8e6!important; font-size:15px; font-weight:650; line-height:1.45;
  text-decoration:none;
}
.pc-footer__utility .pc-footer__links a:not(.pc-footer__action):hover {
  color:#fff!important; border-bottom-color:var(--verde); transform:translateX(4px);
}
.pc-footer__utility .pc-footer__links:nth-child(2) a:not(.pc-footer__action) {
  font-size:16px; font-weight:750; overflow-wrap:anywhere;
}
.pc-footer__utility .pc-footer__action {
  width:100%; margin-top:24px; padding:16px 18px;
  border:1px solid #48d7bf; border-radius:7px;
  color:#fff!important; background:#0b665f;
  font-weight:850; letter-spacing:.01em;
}
.pc-footer__utility .pc-footer__action:hover {
  color:#031f25!important; background:#73ead5; border-color:#73ead5;
}

/* Direção de arte 2.4 — tecnologia editorial nítida */
.pc-header {
  box-shadow:none; border-bottom:1px solid rgba(7,63,70,.16);
  backdrop-filter:none;
}
.pc-button,
.pc-button--primary,
.pc-button--header,
.pc-proofbar,
.pc-media,
#servicos .pc-card,
.pc-about__panel,
.pc-method,
.pc-method__item,
.pc-cta,
.pc-contact__box {
  box-shadow:none!important;
  filter:none;
}
.pc-button--primary { background:var(--magenta); }
.pc-button--header { background:var(--petroleo); }
.pc-button:hover { transform:translateY(-1px); }

.pc-media {
  border-color:rgba(255,255,255,.28);
  border-radius:28px; transform:none;
}
.pc-media::after { border-radius:20px; }
.pc-proofbar {
  border:1px solid rgba(7,63,70,.15);
  background:#fff; backdrop-filter:none;
}

#servicos .pc-grid { gap:12px; }
#servicos .pc-card {
  border-color:rgba(7,63,70,.16); border-radius:16px;
  background:#fff;
}
#servicos .pc-card:hover {
  transform:translateY(-2px); border-color:var(--verde); box-shadow:none;
}
#servicos .pc-card__icon {
  border:1px solid rgba(7,63,70,.18); border-radius:11px;
  background:transparent; color:var(--petroleo); box-shadow:none;
}
#servicos .pc-card:nth-child(1) {
  background:
    url("assets/images/neural-corner-b.svg") calc(100% + 70px) -80px/240px no-repeat,
    var(--petroleo);
}
#servicos .pc-card:nth-child(1) .pc-card__icon {
  color:#fff; border-color:rgba(255,255,255,.3);
}
#servicos .pc-card:nth-child(2) { border-top:5px solid var(--magenta); }
#servicos .pc-card:nth-child(3) {
  border-left:5px solid var(--laranja); background:#fffaf4;
}
#servicos .pc-card:nth-child(4) {
  border-bottom:5px solid var(--verde); background:#f3faf8;
}
#servicos .pc-card:nth-child(5) {
  border-left:5px solid var(--magenta);
}
#servicos .pc-card:nth-child(6) {
  background:
    url("assets/images/neural-corner-a.svg") calc(100% + 82px) -82px/245px no-repeat,
    #fff;
  border-top:5px solid var(--laranja);
}
#servicos .pc-card:nth-child(2) .pc-card__icon,
#servicos .pc-card:nth-child(5) .pc-card__icon { color:var(--magenta); }
#servicos .pc-card:nth-child(3) .pc-card__icon,
#servicos .pc-card:nth-child(6) .pc-card__icon { color:var(--laranja); }

.pc-about__panel {
  border:1px solid rgba(7,63,70,.28); border-radius:20px;
  background:
    linear-gradient(90deg,var(--laranja) 0 5px,transparent 5px),
    var(--petroleo);
}
.pc-about__panel::after { opacity:.18; }

.pc-method { border-radius:16px; }
.pc-method__item { border-radius:0; }
.pc-cta {
  border:1px solid rgba(7,63,70,.42); border-radius:20px;
  background:
    url("assets/images/neural-corner-a.svg") calc(100% + 80px) -100px/280px no-repeat,
    var(--magenta);
}
.pc-contact__box {
  border:1px solid rgba(7,63,70,.18); border-radius:16px; background:#fff;
}
.pc-contact__links a {
  border:1px solid rgba(7,63,70,.15); border-radius:8px; background:transparent;
}

.pc-footer {
  padding:0 0 24px; color:var(--texto);
  background:#f7faf9;
}
.pc-footer::before { left:-170px; bottom:-190px; opacity:.15; }
.pc-footer::after { right:-165px; top:-185px; opacity:.18; filter:brightness(1.7); }
.pc-footer__grid {
  grid-template-columns:.92fr 1.08fr; gap:0; align-items:stretch;
  width:100%; max-width:none;
}
.pc-footer__identity {
  min-height:430px; padding:66px clamp(42px,6vw,88px) 56px 0!important;
  display:flex; flex-direction:column; justify-content:center;
}
.pc-footer__utility {
  position:relative; isolation:isolate; min-height:430px;
  padding:74px clamp(34px,5vw,72px);
  display:grid; grid-template-columns:.7fr 1.3fr; gap:clamp(36px,5vw,80px);
  color:rgba(255,255,255,.72); background:#052f35;
}
.pc-footer__utility::before {
  content:""; position:absolute; z-index:-1; inset:auto -100px -160px auto;
  width:330px; height:330px; opacity:.22;
  background:url("assets/images/neural-corner-b.svg") center/contain no-repeat;
}
.pc-footer__utility::after {
  content:""; position:absolute; z-index:-2; inset:0 auto 0 100%;
  width:50vw; background:#052f35;
}
.pc-footer__utility .pc-footer__links { padding-top:0; }
.pc-footer__utility strong { color:#fff; }
.pc-footer__utility a { color:rgba(255,255,255,.74); }
.pc-footer__action {
  border:1px solid rgba(255,255,255,.28); border-radius:7px;
  background:transparent;
}
.pc-footer__action:hover { color:#fff!important; border-color:var(--verde); }
.pc-footer__bottom {
  margin-top:24px; border-top:1px solid rgba(7,63,70,.16);
}

@media (max-width:960px) {
  .pc-footer__grid { grid-template-columns:1fr; }
  .pc-footer__identity { min-height:auto; padding:58px 0 48px!important; }
  .pc-footer__utility { min-height:auto; margin-inline:-24px; padding-inline:24px; }
}
@media (max-width:620px) {
  .pc-media,.pc-about__panel,.pc-cta,.pc-contact__box { border-radius:14px; }
  .pc-footer__utility { grid-template-columns:1fr; gap:42px; }
}

@media (prefers-reduced-motion:no-preference) {
  .pc-media { animation:pc-float-panel 7s ease-in-out infinite; }
  @keyframes pc-float-panel { 0%,100%{translate:0 0} 50%{translate:0 -9px} }
}

/* Movimento e refinamento 2.1 */
.pc-button { position:relative; overflow:hidden; isolation:isolate; }
.pc-button::after {
  content:""; position:absolute; z-index:-1; inset:-40% auto -40% -75%; width:48%;
  background:linear-gradient(105deg,transparent,rgba(255,255,255,.34),transparent);
  transform:skewX(-18deg); transition:left .55s ease;
}
.pc-button:hover::after { left:135%; }
.pc-card,.pc-method__item,.pc-contact__box { will-change:transform; }
.pc-card:hover { transform:translateY(-4px); }
#servicos .pc-card:hover {
  border-color:rgba(18,162,142,.32);
  box-shadow:0 14px 34px rgba(7,63,70,.085);
}
.pc-method__item:hover { transform:translateY(-3px); }
.pc-category-link,.pc-contact__links a { transition:transform .22s ease,border-color .22s ease,background-color .22s ease; }
.pc-contact__links a:hover { transform:translateX(5px); background:#e9f5f2; }

@media (prefers-reduced-motion:no-preference) {
  .pc-section::before,.pc-section::after {
    animation:pc-neural-drift 11s ease-in-out infinite alternate,pc-neural-pulse 5.5s ease-in-out infinite;
  }
  .pc-section::after { animation-delay:-3.2s,-1.4s; animation-duration:14s,6.8s; }
  .pc-hero::before { animation:pc-neural-drift 13s ease-in-out infinite alternate,pc-neural-pulse-dark 6s ease-in-out infinite; }
  .pc-footer::before { animation:pc-neural-footer 14s ease-in-out infinite alternate; }
  @keyframes pc-neural-drift {
    0% { translate:0 0; }
    50% { translate:14px -9px; }
    100% { translate:-8px 13px; }
  }
  @keyframes pc-neural-pulse {
    0%,100% { opacity:.11; }
    50% { opacity:.24; }
  }
  @keyframes pc-neural-pulse-dark {
    0%,100% { opacity:.17; }
    50% { opacity:.31; }
  }
  @keyframes pc-neural-footer {
    0% { translate:0 0; opacity:.18; }
    100% { translate:18px -10px; opacity:.3; }
  }
  html.pc-motion .pc-reveal {
    opacity:1; translate:0 18px;
    transition:translate .72s cubic-bezier(.2,.72,.2,1);
    transition-delay:var(--pc-delay,0ms);
  }
  html.pc-motion .pc-reveal.is-visible { translate:0 0; }
}


@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { scroll-behavior:auto !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
  #pc-network { display:none; }
}

/* Direção de arte 2.3 — integração de marca, bento equilibrado e rodapé editorial */
.pc-header { overflow:hidden; }
.pc-header__inner { position:relative; isolation:isolate; }
.pc-header__inner::before,
.pc-header__inner::after {
  content:""; position:absolute; z-index:-1; width:230px; height:230px;
  pointer-events:none; background:center/contain no-repeat; opacity:.13;
}
.pc-header__inner::before {
  left:-150px; top:-92px; background-image:url("assets/images/neural-corner-a.svg"); transform:rotate(18deg);
}
.pc-header__inner::after {
  right:-158px; bottom:-125px; background-image:url("assets/images/neural-corner-b.svg"); transform:rotate(188deg);
}

#servicos .pc-grid { counter-reset:pc-services; }
#servicos .pc-card {
  min-height:300px; justify-content:flex-end;
  background:
    radial-gradient(circle at 94% 8%,rgba(18,162,142,.10),transparent 29%),
    linear-gradient(150deg,rgba(255,255,255,.99),rgba(239,248,246,.93));
}
#servicos .pc-card::after {
  counter-increment:pc-services; content:"0" counter(pc-services);
  width:auto; height:auto; right:28px; top:24px; border-radius:0;
  color:rgba(7,63,70,.13); background:none;
  font-size:48px; line-height:1; font-weight:950; letter-spacing:-.07em;
}
#servicos .pc-card:nth-child(1),
#servicos .pc-card:nth-child(4) { grid-column:span 7; }
#servicos .pc-card:nth-child(2),
#servicos .pc-card:nth-child(3) { grid-column:span 5; }
#servicos .pc-card:nth-child(5),
#servicos .pc-card:nth-child(6) { grid-column:span 6; }
#servicos .pc-card:nth-child(1) {
  background:
    url("assets/images/neural-corner-b.svg") calc(100% + 80px) -85px/250px no-repeat,
    radial-gradient(circle at 85% 15%,rgba(18,162,142,.34),transparent 31%),
    linear-gradient(135deg,#052e34,#073f46);
}
#servicos .pc-card:nth-child(1)::after { color:rgba(255,255,255,.16); }
#servicos .pc-card:nth-child(6) {
  background:
    url("assets/images/neural-corner-a.svg") calc(100% + 90px) -90px/260px no-repeat,
    radial-gradient(circle at 88% 12%,rgba(18,162,142,.15),transparent 31%),
    linear-gradient(145deg,#fff,#fff3f8);
}

.pc-about__panel {
  justify-content:center; align-items:flex-start; gap:14px; min-height:500px;
  padding:50px 46px;
}
.pc-about__eyebrow {
  display:inline-flex; align-items:center; gap:9px;
  color:#8cf3df; font-size:11px; font-weight:900; letter-spacing:.16em; text-transform:uppercase;
}
.pc-about__eyebrow::before { content:""; width:24px; height:2px; background:var(--laranja); }
.pc-about__number {
  width:100%; margin:0; padding:0;
  color:var(--laranja)!important; -webkit-text-fill-color:var(--laranja)!important;
  font-size:clamp(88px,11vw,148px); line-height:.78; letter-spacing:-.085em;
  text-align:left; background:none!important;
}
.pc-about__panel p { max-width:330px; margin:10px 0 0; }

.pc-footer {
  padding:82px 0 26px; color:var(--texto);
  background:
    radial-gradient(circle at 7% 18%,rgba(18,162,142,.11),transparent 25%),
    radial-gradient(circle at 93% 82%,rgba(242,139,34,.08),transparent 28%),
    linear-gradient(145deg,#fff,#f3f8f7);
}
.pc-footer::before,
.pc-footer::after {
  content:""; position:absolute; z-index:-1; width:390px; height:390px;
  pointer-events:none; background:center/contain no-repeat; opacity:.18; filter:none;
}
.pc-footer::before {
  left:-170px; bottom:-190px; background-image:url("assets/images/neural-corner-a.svg"); transform:rotate(-8deg);
}
.pc-footer::after {
  right:-165px; top:-185px; background-image:url("assets/images/neural-corner-b.svg"); transform:rotate(172deg);
}
.pc-footer__grid {
  position:relative; z-index:1; grid-template-columns:1.35fr .65fr 1fr; gap:clamp(42px,6vw,92px); align-items:start;
}
.pc-footer__grid > div:first-child {
  padding:0; border:0; border-radius:0; color:var(--texto); background:none;
}
.pc-footer .pc-brand {
  width:360px!important; height:164px!important; margin:0 0 20px;
  overflow:hidden!important; justify-content:flex-start; background:transparent;
}
.pc-footer .pc-brand__logo {
  width:100%!important; height:100%!important; max-height:none!important;
  object-fit:contain!important; object-position:left center;
  transform:scale(1)!important; filter:none!important; border-radius:18px;
}
.pc-footer__kicker {
  display:block; margin-bottom:13px; color:var(--magenta);
  font-size:11px; font-weight:900; letter-spacing:.15em; text-transform:uppercase;
}
.pc-footer__statement {
  max-width:580px; margin:0; color:var(--petroleo);
  font-size:clamp(24px,2.6vw,38px); line-height:1.08; font-weight:850; letter-spacing:-.035em;
}
.pc-footer h3,.pc-footer strong { color:var(--petroleo); }
.pc-footer a { color:#536c70; }
.pc-footer__links { gap:13px; padding-top:22px; }
.pc-footer__links strong {
  margin-bottom:8px; font-size:12px; letter-spacing:.13em; text-transform:uppercase;
}
.pc-footer__action {
  display:inline-flex; align-items:center; justify-content:space-between; gap:14px;
  margin-top:14px; padding:15px 18px; border-radius:999px;
  color:#fff!important; background:linear-gradient(110deg,var(--petroleo),#0b6568);
  font-weight:850;
}
.pc-footer__bottom {
  display:flex; justify-content:space-between; gap:24px; margin-top:58px; padding-top:22px;
  border-top:1px solid rgba(7,63,70,.14); color:#60777b;
}

@media (max-width:960px) {
  #servicos .pc-card:nth-child(n) { grid-column:span 6; }
  .pc-footer__grid { grid-template-columns:1fr 1fr; }
  .pc-footer__identity { grid-column:1/-1; }
  .pc-footer__statement { max-width:700px; }
}
@media (max-width:620px) {
  .pc-header__inner::before,.pc-header__inner::after { width:170px; height:170px; opacity:.1; }
  #servicos .pc-card:nth-child(n) { grid-column:1/-1; min-height:270px; }
  .pc-about__panel { min-height:390px; padding:38px 30px; }
  .pc-about__number { font-size:clamp(86px,30vw,126px); }
  .pc-footer { padding-top:62px; }
  .pc-footer__grid { grid-template-columns:1fr; gap:34px; }
  .pc-footer__identity { grid-column:auto; }
  .pc-footer .pc-brand { width:min(100%,320px)!important; height:145px!important; }
  .pc-footer__links { padding-top:0; }
  .pc-footer__bottom { flex-direction:column; margin-top:42px; }
}

/* Correção 2.4.2 — grade final do rodapé, sempre após as regras anteriores */
.pc-footer__grid {
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;
  gap:0!important; align-items:stretch!important;
}
.pc-footer__identity { min-width:0; }
.pc-footer__utility {
  min-width:0; width:auto!important;
  grid-template-columns:minmax(150px,.72fr) minmax(260px,1.28fr)!important;
  gap:clamp(32px,4vw,64px)!important;
}
.pc-footer__utility .pc-footer__links { min-width:0; width:100%; }
.pc-footer__utility .pc-footer__links a { max-width:none; }
.pc-footer__utility .pc-footer__action {
  width:100%!important; min-width:0;
  white-space:normal;
}

@media (max-width:960px) {
  .pc-footer__grid { grid-template-columns:minmax(0,1fr)!important; }
  .pc-footer__identity { grid-column:auto!important; }
  .pc-footer__utility {
    margin-inline:calc(50% - 50vw)!important;
    padding-inline:max(24px,calc((100vw - min(100vw - 48px,1180px))/2))!important;
    grid-template-columns:minmax(170px,.75fr) minmax(300px,1.25fr)!important;
  }
}
@media (max-width:620px) {
  .pc-footer__utility {
    grid-template-columns:minmax(0,1fr)!important;
    gap:42px!important;
  }
  .pc-footer__utility .pc-footer__links a:not(.pc-footer__action) {
    font-size:15px;
  }
}

/* Garantia final 2.4.3 — visibilidade do vídeo após toda a cascata */
.pc-media--video {
  display:block!important; visibility:visible!important;
  width:100%!important; min-height:0!important; height:auto!important;
  aspect-ratio:16/10; overflow:hidden;
}
.pc-media--video .pc-media__video {
  display:block!important; visibility:visible!important; opacity:1!important;
  position:absolute!important; inset:0!important;
  width:100%!important; height:100%!important; min-width:100%; min-height:100%;
  object-fit:cover!important; object-position:center!important;
}
@media (max-width:620px) {
  .pc-hero__grid { grid-template-columns:minmax(0,1fr)!important; }
  .pc-media--video { aspect-ratio:4/3!important; border-radius:14px!important; }
  .pc-media--video .pc-media__video { border-radius:13px!important; }
  .pc-media--video .pc-media__badge {
    left:12px!important; right:auto!important; bottom:12px!important;
    max-width:calc(100% - 24px); padding:8px 10px; font-size:8px;
  }
}

/* Regra final 2.6 — nenhuma regra antiga pode cortar o quadro 2004 */
@media (max-width:620px) {
  .pc-about {
    display:grid!important; grid-template-columns:minmax(0,1fr)!important;
    width:100%!important; min-width:0!important; gap:44px!important;
  }
  .pc-about__panel {
    width:100%!important; min-width:0!important; min-height:0!important;
    box-sizing:border-box!important; padding:36px 26px!important;
    overflow:hidden!important; border-radius:14px!important;
  }
  .pc-about__number {
    display:block!important; width:auto!important; max-width:100%!important;
    margin:4px 0 6px!important; padding:0!important;
    font-size:clamp(62px,22vw,100px)!important;
    line-height:.84!important; letter-spacing:-.075em!important;
    white-space:nowrap!important; overflow:visible!important;
  }
  .pc-about__panel p {
    max-width:100%!important; margin:8px 0 0!important;
    font-size:16px!important; line-height:1.55!important;
  }
}
@media (max-width:360px) {
  .pc-about__panel { padding:30px 20px!important; }
  .pc-about__number { font-size:clamp(58px,21vw,76px)!important; }
}

/* Salvaguardas finais 2.8.0 — prevalecem sobre toda a cascata histórica. */
@media (max-width:700px) {
  #servicos .pc-grid { grid-template-columns:minmax(0,1fr)!important; }
  #servicos .pc-card:nth-child(n) { grid-column:1/-1!important; width:100%; }
  .pc-method { grid-template-columns:minmax(0,1fr)!important; }
}
@media (max-width:520px) {
  .pc-header__inner { min-height:94px!important; }
  .pc-header .pc-brand { width:min(230px,70vw)!important; height:84px!important; overflow:visible!important; }
  .pc-nav { inset:94px 12px auto!important; }
  .pc-proofbar { grid-template-columns:minmax(0,1fr)!important; }
  .pc-proofbar__item { border-right:0!important; border-bottom:1px solid var(--linha); }
  .pc-proofbar__item:last-child { border-bottom:0; }
  .pc-actions { display:grid; grid-template-columns:minmax(0,1fr); }
  .pc-actions .pc-button { width:100%; }
  .pc-footer .pc-brand { width:min(100%,300px)!important; height:135px!important; overflow:visible!important; }
}
@media (max-width:360px) {
  .pc-header .pc-brand { width:min(198px,67vw)!important; height:76px!important; }
  .pc-about__number { font-size:64px!important; }
}

/* 3.2.0 — respiro editorial do texto institucional */
.pc-about > .pc-heading {
  box-sizing:border-box;
  padding:clamp(16px,2.8vw,38px);
  border-left:1px solid rgba(7,63,70,.10);
}
.pc-about > .pc-heading p {
  max-width:720px;
}
@media (max-width:960px) {
  .pc-about > .pc-heading {
    padding:24px 18px 0;
    border-left:0;
  }
}
@media (max-width:520px) {
  .pc-about > .pc-heading {
    padding:18px 12px 0;
  }
}

/* 3.4.0 — cabeçalho neural, soluções simétricas e contato móvel */
.pc-header__inner::before,
.pc-header__inner::after {
  z-index:0;
  width:285px;
  height:285px;
  opacity:.22;
  filter:saturate(1.08);
}
.pc-header__inner::before {
  left:-175px;
  top:-105px;
}
.pc-header__inner::after {
  right:-170px;
  bottom:-145px;
}
.pc-header .pc-brand,
.pc-header .pc-nav,
.pc-header .pc-menu-button {
  position:relative;
  z-index:2;
}

#servicos .pc-grid {
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-auto-flow:row;
  align-items:stretch;
  gap:16px!important;
}
#servicos .pc-card:nth-child(n) {
  grid-column:auto!important;
  width:100%;
  min-height:320px;
}
#servicos .pc-card h3 {
  min-height:2.35em;
}
#servicos .pc-card p {
  margin-bottom:0;
}

.pc-footer__email {
  display:flex!important;
  flex-wrap:nowrap;
  align-items:baseline;
  width:100%;
  max-width:100%;
  white-space:nowrap;
  overflow-wrap:normal!important;
  word-break:normal;
  font-size:clamp(12px,1.18vw,16px)!important;
  letter-spacing:-.015em;
}
.pc-footer__email span {
  display:inline;
}

@media (max-width:960px) {
  #servicos .pc-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  #servicos .pc-card:nth-child(n) {
    min-height:300px;
  }
}
@media (max-width:620px) {
  .pc-header__inner::before,
  .pc-header__inner::after {
    width:190px;
    height:190px;
    opacity:.18;
  }
  .pc-header__inner::before {
    left:-125px;
    top:-64px;
  }
  .pc-header__inner::after {
    right:-132px;
    bottom:-92px;
  }
  #servicos .pc-grid {
    grid-template-columns:minmax(0,1fr)!important;
  }
  #servicos .pc-card:nth-child(n) {
    min-height:0;
  }
  #servicos .pc-card h3 {
    min-height:0;
  }
  .pc-footer__email {
    display:grid!important;
    grid-template-columns:max-content;
    gap:0;
    white-space:normal;
    font-size:14px!important;
    line-height:1.35!important;
  }
  .pc-footer__email span {
    white-space:nowrap;
  }
}
@media (max-width:360px) {
  .pc-footer__email {
    font-size:13px!important;
  }
}
