/*
Theme Name: ProfiPlast® V9 B2B
Theme URI: https://profiplast.com.br/
Author: ProfiPlast®
Description: Catálogo institucional B2B ProfiPlast®, sem preços e sem dependência de plugins.
Version: 9.8.29
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: profiplast-v8
*/

:root {
  --pp-navy: #082b4c;
  --pp-blue: #0877c9;
  --pp-blue-ink: #006bb6;
  --pp-cyan: #18b7df;
  --pp-lime: #b8d432;
  --pp-orange: #ff8a2a;
  --pp-whatsapp: #25d366;
  --pp-whatsapp-hover: #20bd5a;
  --pp-cream: #fff8eb;
  --pp-ink: #10283d;
  --pp-muted: #5b6d7c;
  --pp-line: #dce7ef;
  --pp-white: #fff;
  --pp-shadow: 0 18px 50px rgba(8, 43, 76, .13);
  --pp-radius: 24px;
  --pp-shell: min(1180px, calc(100vw - 40px));
  --pp-context-accent: var(--pp-blue);
  --pp-context-ink: var(--pp-navy);
  --pp-context-soft: #e9f5fc;
  --pp-context-on: #fff;
  --pp-context-on-ink: #fff;
}

.pp-editorial-sections {
  display: grid;
  min-width: 0;
  gap: 22px;
  margin-top: 28px;
}

.pp-editorial-section {
  min-width: 0;
  overflow: hidden;
  padding: clamp(22px, 3vw, 34px);
  border: 1px solid var(--pp-line);
  border-radius: 20px;
  background: var(--pp-white);
  box-shadow: 0 12px 34px rgba(8, 43, 76, .07);
}

.pp-editorial-section h2 {
  margin: 0 0 12px;
  color: var(--pp-navy);
  font-size: clamp(1.3rem, 2vw, 1.75rem);
}

.pp-editorial-section p,
.pp-editorial-section li {
  color: var(--pp-muted);
  line-height: 1.68;
}

.pp-editorial-section p:last-child,
.pp-editorial-section ul:last-child,
.pp-editorial-section .pp-table-wrap:last-child {
  margin-bottom: 0;
}

.pp-editorial-section ul {
  display: grid;
  gap: 8px;
  padding-left: 22px;
}

.pp-editorial-section .pp-table-wrap {
  max-width: 100%;
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--pp-ink);
  background: #f7fafc;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.62;
  -webkit-font-smoothing: antialiased;
}
body.pp-menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
:focus-visible { outline: 3px solid var(--pp-orange); outline-offset: 3px; }
.screen-reader-text {
  position: absolute !important; width: 1px !important; height: 1px !important;
  margin: -1px !important; padding: 0 !important; overflow: hidden !important;
  clip: rect(0 0 0 0) !important; clip-path: inset(50%) !important;
  border: 0 !important; white-space: nowrap !important;
}
.pp-skip {
  position: fixed; top: 8px; left: 8px; z-index: 9999; padding: 10px 14px;
  background: var(--pp-white); color: var(--pp-navy); border-radius: 8px;
  transform: translateY(-150%);
}
.pp-skip:focus { transform: none; }
.pp-shell { width: var(--pp-shell); margin-inline: auto; }
.pp-site-header {
  position: sticky; top: 0; z-index: 80; background: rgba(255,255,255,.92);
  border-bottom: 1px solid rgba(8,43,76,.08); backdrop-filter: blur(16px);
}
.pp-header-row { min-height: 78px; display: flex; align-items: center; gap: 28px; }
.pp-logo { flex: 0 0 auto; }
.pp-nav { display: flex; align-items: center; gap: 24px; margin-left: auto; font-weight: 600; }
.pp-nav a { position: relative; padding: 9px 0; }
.pp-nav a::after {
  content: ""; position: absolute; left: 0; right: 100%; bottom: 3px; height: 3px;
  border-radius: 4px; background: linear-gradient(90deg,var(--pp-lime),var(--pp-orange));
  transition: right .25s ease;
}
.pp-nav a:hover::after, .pp-nav a[aria-current="page"]::after { right: 0; }
.pp-menu-toggle {
  display: none; width: 44px; height: 44px; border: 0; border-radius: 12px;
  background: var(--pp-navy); color: #fff;
}
.pp-button {
  display: inline-flex; align-items: center; justify-content: center; gap: 9px;
  min-height: 48px; padding: 11px 20px; border: 0; border-radius: 999px;
  color: #fff; background: var(--pp-blue); font-weight: 850;
  box-shadow: 0 10px 22px rgba(8,119,201,.24); transition: transform .2s ease, box-shadow .2s ease;
}
.pp-button:hover { transform: translateY(-2px); box-shadow: 0 14px 28px rgba(8,119,201,.32); }
.pp-button:disabled { cursor: not-allowed; opacity: .5; transform: none; box-shadow: none; }
.pp-button--lime { color: #173007; background: var(--pp-lime); box-shadow: 0 10px 22px rgba(184,212,50,.25); }
.pp-button--ghost { color: var(--pp-navy); background: #fff; border: 1px solid rgba(8,43,76,.15); box-shadow: none; }
.pp-button--whatsapp { color: #fff; background: var(--pp-whatsapp); box-shadow: 0 10px 22px rgba(7,94,84,.25); }
.pp-button--whatsapp:hover { color: #fff; background: var(--pp-whatsapp-hover); box-shadow: 0 14px 28px rgba(7,94,84,.32); }
.pp-whatsapp-mark {
  width: 25px; height: 25px; display: inline-grid; place-items: center; flex: 0 0 25px;
  border: 2px solid currentColor; border-radius: 50%; font-size: .6rem; font-weight: 950; letter-spacing: -.04em;
}
.pp-whatsapp-mark svg { display: block; width: 13px; height: 13px; fill: currentColor; }
.pp-nav .pp-button::after { display: none; }
.pp-nav .pp-button { padding: 10px 17px; font-weight: 700; }
.pp-hero {
  position: relative; overflow: hidden; isolation: isolate; color: #fff;
  background:
    radial-gradient(circle at 78% 18%, rgba(24,183,223,.8), transparent 20%),
    radial-gradient(circle at 88% 88%, rgba(255,138,42,.72), transparent 22%),
    linear-gradient(125deg, #061f38 0%, var(--pp-navy) 50%, #075c91 100%);
}
.pp-hero::before, .pp-hero::after {
  content: ""; position: absolute; z-index: -1; border: 18px solid var(--pp-lime); border-radius: 999px;
  opacity: .9; transform: rotate(-24deg);
}
.pp-hero::before { width: 340px; height: 96px; right: -100px; top: -60px; }
.pp-hero::after { width: 440px; height: 130px; left: 46%; bottom: -150px; border-color: var(--pp-orange); }
.pp-hero-grid { min-height: 610px; display: grid; grid-template-columns: 1.03fr .97fr; align-items: center; gap: 56px; padding: 80px 0; }
.pp-eyebrow {
  display: inline-flex; padding: 7px 12px; border-radius: 999px; font-size: .78rem;
  font-weight: 900; letter-spacing: .12em; text-transform: uppercase;
  color: var(--pp-navy); background: var(--pp-lime);
}
.pp-hero h1, .pp-page-hero h1 {
  margin: 18px 0; font-size: clamp(2.55rem, 6vw, 5.35rem); line-height: .98;
  letter-spacing: -.055em; max-width: 850px;
}
.pp-hero p { max-width: 630px; color: rgba(255,255,255,.84); font-size: clamp(1.05rem, 2vw, 1.3rem); }
.pp-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.pp-hero-products { position: relative; min-height: 430px; }
.pp-float-product {
  position: absolute; width: 55%; aspect-ratio: 1; display: grid; place-items: center;
  padding: 24px; border-radius: 34px; background: rgba(255,255,255,.96);
  box-shadow: 0 30px 70px rgba(0,0,0,.22); animation: pp-float 5s ease-in-out infinite;
}
.pp-float-product img { width: 100%; height: 100%; object-fit: contain; }
.pp-float-product:nth-child(1) { left: 0; top: 4%; transform: rotate(-7deg); }
.pp-float-product:nth-child(2) { right: 0; top: 28%; transform: rotate(7deg); animation-delay: -1.4s; }
.pp-float-product:nth-child(3) { left: 22%; bottom: -6%; width: 38%; transform: rotate(2deg); animation-delay: -2.8s; }
@keyframes pp-float { 50% { translate: 0 -12px; } }
.pp-trust {
  position: relative; z-index: 4; margin-top: -32px;
  display: grid; grid-template-columns: repeat(4, 1fr); background: #fff;
  border-radius: 22px; box-shadow: var(--pp-shadow); overflow: hidden;
}
.pp-trust div { padding: 22px; text-align: center; border-right: 1px solid var(--pp-line); }
.pp-trust div:last-child { border: 0; }
.pp-trust strong { display: block; color: var(--pp-blue); font-size: 1.5rem; }
.pp-section { padding: 84px 0; }
.pp-section--soft { background: #edf5f8; }
.pp-section--warm { background: var(--pp-cream); }
.pp-section-head { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 32px; }
.pp-kicker { margin: 0 0 5px; color: var(--pp-blue-ink); font-weight: 900; letter-spacing: .08em; text-transform: uppercase; font-size: .78rem; }
.pp-section h2, .pp-content h2 { margin: 0 0 18px; color: var(--pp-navy); font-size: clamp(1.85rem, 4vw, 3rem); line-height: 1.08; letter-spacing: -.035em; }
.pp-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px; }
.pp-grid--4 { grid-template-columns: repeat(4, minmax(0,1fr)); }
.pp-card {
  position: relative; overflow: hidden; min-width: 0; border: 1px solid rgba(8,43,76,.08);
  border-radius: var(--pp-radius); background: #fff; box-shadow: 0 10px 34px rgba(8,43,76,.08);
  transition: transform .25s ease, box-shadow .25s ease;
}
.pp-card:hover { transform: translateY(-6px); box-shadow: var(--pp-shadow); }
.pp-card-media {
  position: relative; aspect-ratio: 1.17; display: grid; place-items: center; padding: 24px;
  overflow: hidden; background: linear-gradient(145deg,#eef8fb,#fff8e8);
}
.pp-card-media::after {
  content: ""; position: absolute; width: 130px; height: 130px; right: -50px; top: -45px;
  border: 14px solid var(--pp-lime); border-radius: 50%;
}
.pp-card-media img { width: 100%; height: 100%; object-fit: contain; transition: transform .3s ease; }
.pp-card:hover .pp-card-media img { transform: scale(1.055) rotate(-1deg); }
.pp-card-body { padding: 22px; }
.pp-card h3 { margin: 0 0 8px; color: var(--pp-navy); font-size: 1.18rem; line-height: 1.25; }
.pp-card p { margin: 0; color: var(--pp-muted); font-size: .94rem; }
.pp-card-link { position: absolute; inset: 0; z-index: 2; }
.pp-card-link:focus-visible { outline-offset: -5px; border-radius: inherit; }
.pp-area-card { min-height: 300px; padding: 28px; color: #fff; background: linear-gradient(145deg,var(--pp-navy),var(--pp-blue)); }
.pp-area-card:nth-child(2n) { background: linear-gradient(145deg,#155244,#19a07d); }
.pp-area-card:nth-child(3n) { background: linear-gradient(145deg,#823907,var(--pp-orange)); }
.pp-area-card img { position: absolute; right: -8%; bottom: -11%; width: 58%; height: 58%; object-fit: contain; filter: drop-shadow(0 14px 14px rgba(0,0,0,.18)); }
.pp-area-card h3 { color: #fff; font-size: 1.45rem; max-width: 72%; }
.pp-area-card p { color: rgba(255,255,255,.82); max-width: 67%; }
.pp-page-hero { padding: 70px 0 56px; color: #fff; background: linear-gradient(120deg,var(--pp-navy),#075f95); }
.pp-page-hero h1 { max-width: 980px; font-size: clamp(2.35rem, 5vw, 4.7rem); }
.pp-page-hero p { max-width: 760px; font-size: 1.16rem; color: rgba(255,255,255,.84); }
.pp-breadcrumbs { margin-bottom: 22px; color: rgba(255,255,255,.72); font-size: .9rem; }
.pp-breadcrumbs a { text-decoration: underline; text-underline-offset: 3px; }
.pp-product-hero { padding: 62px 0; background: linear-gradient(140deg,#eaf7fb,#fff8eb); }
.pp-product-layout { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 56px; align-items: center; }
.pp-gallery-main { aspect-ratio: 1; display: grid; place-items: center; padding: 36px; border-radius: 30px; background: #fff; box-shadow: var(--pp-shadow); }
.pp-gallery-main img { width: 100%; height: 100%; object-fit: contain; }
.pp-thumbs { display: flex; gap: 10px; margin-top: 12px; overflow-x: auto; }
.pp-thumb { flex: 0 0 76px; aspect-ratio: 1; padding: 8px; border: 2px solid transparent; border-radius: 13px; background: #fff; }
.pp-thumb[aria-current="true"] { border-color: var(--pp-blue); }
.pp-thumb img { width: 100%; height: 100%; object-fit: contain; }
.pp-product-copy h1 { margin: 12px 0 18px; color: var(--pp-navy); font-size: clamp(2.3rem,5vw,4.3rem); line-height: 1; letter-spacing: -.05em; }
.pp-product-copy > p { color: var(--pp-muted); font-size: 1.14rem; }
.pp-content-layout { display: grid; grid-template-columns: minmax(0,1fr) 320px; gap: 54px; align-items: start; }
.pp-content { min-width: 0; }
.pp-content > section { padding: 34px 0; border-bottom: 1px solid var(--pp-line); }
.pp-content h3 { color: var(--pp-navy); font-size: 1.35rem; }
.pp-content p, .pp-content li { color: #3f5668; }
.pp-content table { width: 100%; border-collapse: collapse; overflow: hidden; border-radius: 16px; background: #fff; box-shadow: 0 8px 28px rgba(8,43,76,.07); }
.pp-content th, .pp-content td { padding: 14px 16px; text-align: left; border-bottom: 1px solid var(--pp-line); vertical-align: top; }
.pp-content th { color: #fff; background: var(--pp-navy); }
.pp-content tr:last-child td { border: 0; }
.pp-side-card { position: sticky; top: 106px; padding: 26px; border-radius: 22px; color: #fff; background: linear-gradient(155deg,var(--pp-navy),var(--pp-blue)); box-shadow: var(--pp-shadow); }
.pp-side-card h2 { color: #fff; font-size: 1.6rem; }
.pp-faq details { margin-bottom: 10px; border: 1px solid var(--pp-line); border-radius: 15px; background: #fff; }
.pp-faq summary { padding: 17px 20px; color: var(--pp-navy); font-weight: 850; cursor: pointer; }
.pp-faq details p { padding: 0 20px 18px; margin: 0; }
.pp-search-panel { padding: 30px; border-radius: 24px; background: linear-gradient(120deg,var(--pp-navy),var(--pp-blue)); color: #fff; }
.pp-search-row { display: grid; grid-template-columns: 1fr auto; gap: 10px; }
.pp-search-row input { width: 100%; min-height: 52px; padding: 12px 18px; border: 0; border-radius: 999px; }
.pp-result-count { margin: 18px 0 0; color: rgba(255,255,255,.8); }
.pp-contact { padding: 38px; border-radius: 26px; background: #fff; box-shadow: var(--pp-shadow); }
.pp-contact-priority {
  display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 28px;
  margin-bottom: 28px; padding: 24px; border: 1px solid #b9e2d9; border-radius: 20px; background: #edf9f6;
}
.pp-contact-priority .pp-kicker { color: #075e54; }
.pp-contact-priority h2 { margin: 3px 0 8px; color: var(--pp-navy); font-size: clamp(1.45rem,3vw,2.15rem); }
.pp-contact-priority p { max-width: 720px; margin: 0; color: var(--pp-muted); }
.pp-form-heading { margin: 0 0 18px; padding-top: 22px; border-top: 1px solid var(--pp-line); }
.pp-form-heading span { color: var(--pp-muted); font-size: .82rem; font-weight: 850; text-transform: uppercase; letter-spacing: .08em; }
.pp-form-heading h2 { margin: 3px 0 0; color: var(--pp-navy); font-size: clamp(1.45rem,3vw,2rem); }
.pp-contact-choice { display: grid; gap: 10px; margin-top: 18px; }
.pp-contact-form-link {
  min-height: 44px; display: inline-flex; align-items: center; justify-content: center;
  padding: 8px 12px; border: 1px solid currentColor; border-radius: 999px; font-weight: 850;
}
.pp-side-card .pp-contact-form-link { color: #fff; }
.pp-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.pp-field { display: grid; gap: 7px; }
.pp-field--wide { grid-column: 1 / -1; }
.pp-field label { color: var(--pp-navy); font-weight: 800; }
.pp-field input, .pp-field select, .pp-field textarea {
  width: 100%; min-height: 48px; padding: 11px 13px; border: 1px solid #bdcdd8; border-radius: 12px; background: #fff;
}
.pp-field label span { color: var(--pp-muted); font-size: .84em; font-weight: 650; }
.pp-field textarea { min-height: 145px; resize: vertical; }
.pp-field-help { min-height: 1.2em; margin: 0; color: var(--pp-muted); font-size: .84rem; }
.pp-form-subsection {
  grid-column: 1 / -1; min-width: 0; padding: 20px; border: 1px solid #b8cad5; border-radius: 16px; background: #f7fafb;
}
.pp-form-subsection > legend { padding: 0 8px; color: var(--pp-navy); font-weight: 850; }
.pp-form-subsection > legend span, .pp-checkbox-group > legend span { color: var(--pp-muted); font-size: .84em; font-weight: 650; }
.pp-form-subsection > p { margin: 0 0 16px; color: var(--pp-muted); }
.pp-form-subsection .pp-form-grid { gap: 15px; }
.pp-form-details {
  overflow: hidden; border: 1px solid #b8cad5; border-radius: 16px; background: #f7fafb;
}
.pp-form-details > summary {
  min-height: 54px; display: flex; align-items: center; gap: 10px; padding: 14px 17px;
  color: var(--pp-navy); font-weight: 800; cursor: pointer; list-style: none;
}
.pp-form-details > summary::-webkit-details-marker { display: none; }
.pp-form-details > summary span {
  margin-left: auto; padding: 4px 8px; border-radius: 999px; color: #31556d;
  background: #e6f0f4; font-size: .7rem; font-weight: 750; letter-spacing: .04em; text-transform: uppercase;
}
.pp-form-details > summary::after { content: '+'; color: var(--pp-blue); font-size: 1.4rem; line-height: 1; }
.pp-form-details[open] > summary::after { content: '−'; }
.pp-form-details-body { padding: 18px; border-top: 1px solid #d6e1e6; background: #fff; }
.pp-notice { padding: 15px 18px; margin-bottom: 20px; border-radius: 12px; background: #e5f6d2; color: #25490c; font-weight: 750; }
.pp-notice--error { background: #fff0ed; color: #8d261b; }
.pp-footer { margin-top: 80px; padding: 58px 0 28px; color: rgba(255,255,255,.76); background: #061f38; }
.pp-footer-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 40px; }
.pp-footer img { width: 175px; filter: brightness(0) invert(1); }
.pp-footer h2 { color: #fff; font-size: 1rem; }
.pp-footer a:hover { color: var(--pp-lime); }
.pp-footer .pp-button--whatsapp:hover { color: #fff; }
.pp-footer-bottom { margin-top: 42px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.12); font-size: .86rem; }
.pp-empty { grid-column: 1 / -1; padding: 34px; text-align: center; border: 1px dashed #aebfca; border-radius: 18px; }

@media (max-width: 920px) {
  .pp-menu-toggle { display: inline-grid; place-items: center; margin-left: auto; }
  .pp-nav {
    position: fixed; inset: 78px 0 auto; display: none; align-items: stretch; padding: 24px;
    background: #fff; box-shadow: 0 20px 30px rgba(8,43,76,.16);
  }
  .pp-nav.is-open { display: grid; }
  .pp-nav .pp-button { margin-top: 8px; }
  .pp-hero-grid, .pp-product-layout, .pp-content-layout { grid-template-columns: 1fr; }
  .pp-hero-grid { padding: 58px 0 80px; }
  .pp-hero-products { min-height: 350px; }
  .pp-grid--4 { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pp-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pp-side-card { position: static; }
}
@media (max-width: 620px) {
  :root { --pp-shell: min(calc(100% - 28px), 1180px); --pp-radius: 19px; }
  .pp-hero-grid { min-height: auto; gap: 28px; }
  .pp-hero-products { min-height: 280px; }
  .pp-float-product { padding: 14px; border-radius: 22px; }
  .pp-trust { grid-template-columns: repeat(2,1fr); }
  .pp-trust div:nth-child(2) { border-right: 0; }
  .pp-grid, .pp-grid--4, .pp-footer-grid, .pp-form-grid { grid-template-columns: 1fr; }
  .pp-section { padding: 60px 0; }
  .pp-section-head { display: block; }
  .pp-section-head .pp-button { margin-top: 16px; }
  .pp-page-hero { padding: 48px 0 42px; }
  .pp-product-hero { padding: 38px 0; }
  .pp-gallery-main { padding: 22px; }
  .pp-contact { padding: 22px; }
  .pp-field--wide { grid-column: auto; }
  .pp-search-row { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation: none !important; transition-duration: .01ms !important; }
}

/* V8.3 — navegação estrutural, identidades por categoria e galerias íntegras */
.pp-button--context {
  color: var(--pp-context-on-ink);
  background: var(--pp-context-ink);
  box-shadow: 0 10px 24px color-mix(in srgb, var(--pp-context-ink) 25%, transparent);
}
.pp-section--compact { padding: 38px 0; }
.pp-section-title { margin-bottom: 24px; }
.pp-table-wrap { width: 100%; overflow-x: auto; border-radius: 18px; }
.pp-table-wrap table { min-width: 0; }
.pp-count-badge {
  display: inline-flex; align-items: center; min-height: 38px; padding: 7px 14px;
  border-radius: 999px; color: var(--pp-context-ink); background: var(--pp-context-soft);
  font-weight: 850;
}

.pp-mega { position: static; }
.pp-mega > summary {
  position: relative; display: flex; align-items: center; min-height: 44px;
  padding: 9px 18px 9px 0; list-style: none; cursor: pointer; font-weight: 600;
}
.pp-mega > summary::-webkit-details-marker { display: none; }
.pp-mega > summary::before {
  content: ""; position: absolute; right: 2px; top: 50%; width: 7px; height: 7px;
  border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;
  transform: translateY(-65%) rotate(45deg); transition: transform .2s ease;
}
.pp-mega[open] > summary::before { transform: translateY(-25%) rotate(225deg); }
.pp-mega-panel {
  position: absolute; left: 50%; top: calc(100% + 1px); width: min(1160px, calc(100vw - 34px));
  translate: -50% 0; padding: 26px; border: 1px solid rgba(8,43,76,.1);
  border-radius: 0 0 26px 26px; color: var(--pp-ink); background: rgba(255,255,255,.985);
  box-shadow: 0 26px 55px rgba(8,43,76,.18); white-space: normal;
}
.pp-mega-panel a::after, .pp-card-action::after { display: none; }
.pp-mega-panel--solutions { display: grid; grid-template-columns: 250px 1fr; gap: 24px; }
.pp-mega-intro {
  display: flex; flex-direction: column; align-items: flex-start; gap: 12px; padding: 22px;
  border-radius: 20px; color: #fff; background: linear-gradient(145deg,var(--pp-navy),var(--pp-blue));
}
.pp-mega-intro .pp-eyebrow { font-size: .68rem; }
.pp-mega-intro strong { font-size: 1.35rem; font-weight: 650; line-height: 1.18; }
.pp-mega-intro a, .pp-mega-products-head > a { color: inherit; text-decoration: underline; text-underline-offset: 4px; }
.pp-mega-solutions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.pp-mega-solution {
  display: flex; align-items: flex-start; gap: 12px; min-width: 0; padding: 14px;
  border-radius: 16px; background: var(--item-soft); transition: transform .2s ease;
}
.pp-mega-solution:hover { transform: translateY(-2px); }
.pp-mega-solution strong, .pp-mega-solution small { display: block; }
.pp-mega-solution strong { color: var(--pp-navy); font-weight: 600; }
.pp-mega-solution small { margin-top: 3px; color: var(--pp-muted); font-weight: 450; line-height: 1.35; }
.pp-menu-dot { flex: 0 0 11px; width: 11px; height: 11px; margin-top: 5px; border-radius: 50%; background: var(--item-accent); box-shadow: 0 0 0 5px color-mix(in srgb,var(--item-accent) 18%,transparent); }
.pp-mega-products-head { display: flex; justify-content: space-between; gap: 20px; margin-bottom: 20px; }
.pp-mega-products-head span, .pp-mega-products-head strong { display: block; }
.pp-mega-products-head strong { font-weight: 650; }
.pp-mega-products-head > a { color: var(--pp-blue); font-weight: 600; }
.pp-mega-groups { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; max-height: min(62vh,570px); overflow-y: auto; padding-right: 5px; }
.pp-mega-group { padding: 16px; border-radius: 18px; background: linear-gradient(145deg,var(--item-soft),#fff); }
.pp-mega-group h2 { margin: 0 0 10px; font-size: 1rem; }
.pp-mega-group h2 a { display: flex; gap: 10px; font-weight: 600; }
.pp-mega-group ul { margin: 0; padding: 0; list-style: none; }
.pp-mega-group li + li { margin-top: 3px; }
.pp-mega-group li a {
  display: block; min-width: 0; padding: 4px 0; overflow-wrap: anywhere;
  color: var(--pp-muted); font-size: .9rem; font-weight: 500;
}
.pp-mega-group li a:hover { color: var(--pp-navy); }

.pp-card { border-top: 4px solid var(--item-accent,var(--pp-blue)); }
.pp-card-context {
  display: inline-flex; margin-bottom: 8px; padding: 4px 9px; border-radius: 999px;
  color: var(--pp-navy); background: var(--item-soft,#e9f5fc); font-size: .72rem;
  font-weight: 900; letter-spacing: .04em; text-transform: uppercase;
}
.pp-card-action { display: inline-flex; margin-top: 16px; color: var(--pp-navy); font-weight: 900; }
.pp-card-media { background: linear-gradient(145deg,var(--item-soft,#eef8fb),#fff); }
.pp-card-media::after { border-color: var(--item-accent,var(--pp-lime)); opacity: .8; }
.pp-area-card {
  border-top: 0; color: var(--item-ink); background: linear-gradient(135deg,var(--item-soft),#fff);
}
.pp-area-card:nth-child(2n), .pp-area-card:nth-child(3n) { background: linear-gradient(135deg,var(--item-soft),#fff); }
.pp-area-card::before {
  content: ""; position: absolute; inset: 0 auto 0 0; width: 9px; background: var(--item-accent);
}
.pp-area-card h3 { color: var(--item-ink); }
.pp-area-card p { color: color-mix(in srgb,var(--item-ink) 76%,#fff); }
.pp-area-card .pp-card-action { color: var(--item-ink); }
.pp-area-card img { filter: drop-shadow(0 14px 14px rgba(8,43,76,.16)); }

.pp-master-hero, .pp-line-hero {
  position: relative; overflow: hidden; padding: 58px 0 70px;
  color: var(--pp-context-ink); background:
    radial-gradient(circle at 84% 10%, color-mix(in srgb,var(--pp-context-accent) 42%,transparent), transparent 28%),
    linear-gradient(132deg,var(--pp-context-soft),#fff 64%);
}
.pp-master-hero::after, .pp-line-hero::after {
  content: ""; position: absolute; right: -120px; bottom: -150px; width: 390px; height: 390px;
  border: 42px solid var(--pp-context-accent); border-radius: 50%; opacity: .24; pointer-events: none;
}
.pp-master-hero .pp-breadcrumbs, .pp-line-hero .pp-breadcrumbs, .pp-product-hero .pp-breadcrumbs { color: color-mix(in srgb,var(--pp-context-ink) 72%,#fff); }
.pp-master-hero-grid, .pp-line-hero-grid {
  display: grid; grid-template-columns: minmax(0,1.1fr) minmax(320px,.9fr); align-items: center; gap: 62px;
}
.pp-master-hero h1, .pp-line-hero h1 {
  margin: 12px 0 20px; max-width: 780px; color: var(--pp-context-ink);
  font-size: clamp(2.5rem,5.5vw,5rem); line-height: .98; letter-spacing: -.055em;
}
.pp-master-hero-grid > div:first-child > p:not(.pp-kicker),
.pp-line-hero-grid > div:first-child > p:not(.pp-kicker) { max-width: 700px; font-size: 1.14rem; }
.pp-master-visual, .pp-line-visual {
  position: relative; z-index: 1; aspect-ratio: 1; display: grid; place-items: center;
  padding: 30px; border: 1px solid color-mix(in srgb,var(--pp-context-accent) 28%,#fff);
  border-radius: 34px; background: rgba(255,255,255,.86); box-shadow: var(--pp-shadow);
}
.pp-master-image, .pp-line-hero-image { width: 100%; height: 100%; object-fit: contain; }
.pp-journey { margin-top: -28px; position: relative; z-index: 3; }
.pp-journey ol {
  display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin: 0; padding: 0;
  border-radius: 24px; background: #fff; box-shadow: var(--pp-shadow); list-style: none;
}
.pp-journey li { display: flex; gap: 15px; padding: 24px; }
.pp-journey li + li { border-left: 1px solid var(--pp-line); }
.pp-journey li > span {
  flex: 0 0 38px; width: 38px; height: 38px; display: grid; place-items: center;
  border-radius: 50%; color: var(--pp-context-on-ink); background: var(--pp-context-ink); font-weight: 900;
}
.pp-journey h2 { margin: 0 0 5px; color: var(--pp-context-ink); font-size: 1rem; }
.pp-journey p { margin: 0; color: var(--pp-muted); font-size: .9rem; }
.pp-line-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.pp-line-card {
  min-width: 0; overflow: hidden;
  border: 1px solid color-mix(in srgb,var(--item-accent) 25%,#dce7ef); border-radius: 22px;
  background: #fff; box-shadow: 0 10px 30px rgba(8,43,76,.07);
}
.pp-line-card-link {
  display: grid; grid-template-columns: 180px minmax(0,1fr); min-height: 100%; color: inherit;
}
.pp-line-card-link:focus-visible { outline: 3px solid var(--item-accent); outline-offset: -3px; }
.pp-line-card-media { min-height: 220px; padding: 18px; background: var(--item-soft); }
.pp-line-card-image { width: 100%; height: 100%; object-fit: contain; transition: transform .2s ease; }
.pp-line-card-link:hover .pp-line-card-image { transform: scale(1.025); }
.pp-line-card-copy { padding: 22px; }
.pp-line-card-copy > span { color: var(--pp-muted); font-size: .78rem; font-weight: 850; text-transform: uppercase; }
.pp-line-card h3 { margin: 6px 0 8px; color: var(--pp-navy); font-size: 1.3rem; line-height: 1.18; }
.pp-line-card p { margin: 0; color: var(--pp-muted); font-size: .92rem; }
.pp-line-card-action { display: inline-flex; margin-top: 14px; color: var(--pp-navy) !important; font-weight: 750 !important; text-transform: none !important; }
.pp-line-table { margin-top: 52px; }
.pp-line-table h2 { font-size: 1.8rem; }
.pp-line-table table { width: 100%; border-collapse: collapse; background: #fff; }
.pp-line-table th, .pp-line-table td { padding: 15px 17px; text-align: left; border-bottom: 1px solid var(--pp-line); }
.pp-line-table table { min-width: 620px; }
.pp-line-table thead th { color: var(--pp-context-on-ink); background: var(--pp-context-ink); }
.pp-line-table a { color: var(--pp-blue); font-weight: 850; text-decoration: underline; text-underline-offset: 3px; }
.pp-sibling-lines { display: grid; gap: 4px; }
.pp-sibling-lines a { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid rgba(255,255,255,.16); font-weight: 750; }

.pp-product-hero {
  background:
    radial-gradient(circle at 6% 15%, color-mix(in srgb,var(--pp-context-accent) 28%,transparent), transparent 25%),
    linear-gradient(140deg,var(--pp-context-soft),#fff8eb);
}
.pp-gallery { min-width: 0; }
.pp-gallery-stage {
  position: relative; aspect-ratio: 1; min-width: 0; min-height: 0; overflow: hidden;
  border: 1px solid color-mix(in srgb,var(--pp-context-accent) 23%,#fff);
  border-radius: 30px; background: #fff; box-shadow: var(--pp-shadow);
}
.pp-gallery-stage[data-frame="full-photo-preserved"], .pp-lightbox-stage[data-frame="full-photo-preserved"] {
  background: #f7f8f8;
}
.pp-gallery-open { width: 100%; height: 100%; padding: 30px; border: 0; background: transparent; }
.pp-gallery-image, .pp-lightbox-image {
  width: 100%; height: 100%; max-width: 100%; max-height: 100%; object-fit: contain;
  opacity: 1; transform: scale(1); transition: opacity .18s ease, transform .28s ease;
}
.pp-gallery-image.is-changing, .pp-lightbox-image.is-changing { opacity: .15; transform: scale(.985); }
.pp-zoom-label {
  position: absolute; right: 16px; top: 16px; padding: 7px 11px; border-radius: 999px;
  color: var(--pp-navy); background: rgba(255,255,255,.92); box-shadow: 0 5px 18px rgba(8,43,76,.14);
  font-size: .78rem; font-weight: 850;
}
.pp-gallery-arrow {
  position: absolute; top: 50%; z-index: 4; width: 44px; height: 44px; border: 0;
  border-radius: 50%; translate: 0 -50%; color: #fff; background: rgba(8,43,76,.84);
  box-shadow: 0 8px 22px rgba(8,43,76,.24); font-size: 1.7rem; line-height: 1;
}
.pp-gallery-arrow--prev { left: 12px; }
.pp-gallery-arrow--next { right: 12px; }
.pp-gallery-meta {
  position: absolute; left: 14px; right: 14px; bottom: 12px; z-index: 3;
  display: flex; justify-content: space-between; gap: 12px; padding: 8px 12px;
  border-radius: 13px; color: #fff; background: rgba(6,31,56,.82); font-size: .76rem;
  backdrop-filter: blur(10px);
}
.pp-gallery-meta span:last-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pp-thumbs { padding: 5px 2px 8px; scrollbar-width: thin; }
.pp-thumb {
  position: relative; flex-basis: 82px; min-width: 82px; overflow: hidden;
  transition: border-color .2s ease, transform .2s ease;
}
.pp-thumb:hover { transform: translateY(-2px); }
.pp-thumb[aria-current="true"] { border-color: var(--pp-context-accent); box-shadow: 0 0 0 2px color-mix(in srgb,var(--pp-context-accent) 18%,transparent); }
.pp-lightbox {
  width: min(960px,calc(100vw - 24px)); max-width: none; max-height: calc(100dvh - 24px);
  padding: 0; overflow: hidden; border: 0; border-radius: 24px; background: #fff;
  box-shadow: 0 30px 90px rgba(0,0,0,.42);
}
.pp-lightbox::backdrop { background: rgba(3,17,31,.82); backdrop-filter: blur(6px); }
.pp-lightbox[open] { animation: pp-dialog-in .22s ease both; }
@keyframes pp-dialog-in { from { opacity: 0; transform: translateY(16px) scale(.985); } }
.pp-lightbox-bar { min-height: 58px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 10px 18px; color: #fff; background: var(--pp-navy); }
.pp-lightbox-bar button { width: 38px; height: 38px; border: 0; border-radius: 50%; color: #fff; background: rgba(255,255,255,.14); font-size: 1.5rem; }
.pp-lightbox-stage { position: relative; height: min(72dvh,760px); display: grid; place-items: center; padding: 22px; }
.pp-lightbox-caption { margin: 0; padding: 13px 18px 18px; color: var(--pp-muted); text-align: center; }
.pp-image-protection-notice {
  margin-top: 12px; padding: 13px 15px; border: 1px solid #e5a63a; border-left: 5px solid #d47300;
  border-radius: 14px; color: #4d2c00; background: #fff7e5; box-shadow: 0 8px 24px rgba(87,52,0,.1);
}
.pp-image-protection-notice strong { display: block; color: #7a3800; font-size: .9rem; }
.pp-image-protection-notice p { margin: 5px 0 0; font-size: .72rem; line-height: 1.48; }
.pp-image-protection-links { display: flex; flex-wrap: wrap; gap: 6px 14px; }
.pp-image-protection-links a { color: #744000; font-weight: 850; text-decoration: underline; text-underline-offset: 2px; }
.pp-image-protection-alert {
  position: fixed; z-index: 10000; left: 50%; bottom: max(24px,env(safe-area-inset-bottom));
  width: min(560px,calc(100vw - 28px)); padding: 17px 20px; border: 2px solid #ffb13b; border-radius: 16px;
  color: #fff; background: #071d31; box-shadow: 0 22px 70px rgba(0,0,0,.42); translate: -50% 18px;
  opacity: 0; visibility: hidden; transition: opacity .18s ease,translate .18s ease,visibility .18s ease;
  font-size: .88rem; font-weight: 750; line-height: 1.45;
}
.pp-image-protection-alert.is-visible { opacity: 1; visibility: visible; translate: -50% 0; }
[data-protected-media],
[data-protected-media] img { -webkit-touch-callout: none; user-select: none; -webkit-user-select: none; }
.pp-context-chips { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; margin-top: 20px; }
.pp-context-chips > span { width: 100%; color: var(--pp-muted); font-size: .8rem; font-weight: 850; }
.pp-context-chips a { padding: 6px 10px; border: 1px solid var(--pp-line); border-radius: 999px; background: #fff; font-size: .78rem; font-weight: 800; }
.pp-context-chips a[aria-current="true"] { color: var(--pp-context-on-ink); border-color: var(--pp-context-ink); background: var(--pp-context-ink); }
.pp-quick-specs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; margin: 24px 0 0; }
.pp-quick-specs div { min-width: 0; padding: 12px; border: 1px solid color-mix(in srgb,var(--pp-context-accent) 22%,#dce7ef); border-radius: 14px; background: rgba(255,255,255,.72); }
.pp-quick-specs dt { color: var(--pp-muted); font-size: .72rem; font-weight: 850; text-transform: uppercase; }
.pp-quick-specs dd { margin: 3px 0 0; overflow-wrap: anywhere; color: var(--pp-context-ink); font-weight: 850; line-height: 1.28; }
.pp-coastal-advantage {
  position: relative; overflow: hidden; display: grid; grid-template-columns: 84px 1fr; gap: 22px;
  padding: 32px; border: 1px solid #8bd2e8; border-radius: 26px; color: #073752;
  background: linear-gradient(130deg,#dff7ff,#f3fcff 58%,#fff);
  box-shadow: 0 14px 40px rgba(0,125,184,.11);
}
.pp-coastal-advantage::after {
  content: ""; position: absolute; right: -60px; top: -85px; width: 210px; height: 210px;
  border: 24px solid rgba(0,125,184,.12); border-radius: 50%;
}
.pp-coastal-icon {
  position: relative; z-index: 1; width: 76px; height: 76px; display: grid; place-items: center;
  border-radius: 22px; color: #fff; background: linear-gradient(145deg,#007db8,#18b7df);
  font-size: 3rem; font-weight: 900;
}
.pp-coastal-advantage h2 { margin: 4px 0 11px; color: #073752; font-size: clamp(1.7rem,3vw,2.45rem); line-height: 1.08; }
.pp-coastal-advantage p { max-width: 890px; margin-top: 0; }
.pp-guide-links { display: flex; flex-wrap: wrap; gap: 11px 20px; }
.pp-guide-links a { color: #006d9f; font-weight: 900; text-decoration: underline; text-underline-offset: 4px; }

.pp-filter-bar { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.pp-filter-bar button {
  min-height: 39px; padding: 7px 13px; border: 1px solid var(--pp-line); border-radius: 999px;
  color: var(--pp-navy); background: #fff; font-weight: 800;
}
.pp-filter-bar button::before { content: ""; display: inline-block; width: 9px; height: 9px; margin-right: 7px; border-radius: 50%; background: var(--filter-accent,var(--pp-blue)); }
.pp-filter-bar button.is-active { color: #fff; border-color: var(--pp-navy); background: var(--pp-navy); }

.pp-footer-grid { grid-template-columns: 1.45fr repeat(3,1fr); }
.pp-footer-brand img {
  display: block; width: min(240px,100%); height: auto; max-width: 100%;
  filter: brightness(0) invert(1);
}
.pp-footer-logo {
  display: inline-flex; width: fit-content; max-width: 100%;
}
.pp-footer-brand p { max-width: 370px; }
.pp-footer-cta { display: inline-flex; margin-top: 8px; color: #fff; font-weight: 900; }

@media (max-width: 1080px) {
  .pp-nav { gap: 16px; }
  .pp-mega-groups { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pp-line-grid { grid-template-columns: 1fr; }
}
@media (max-width: 920px) {
  .pp-nav { max-height: calc(100dvh - 78px); overflow-y: auto; }
  .pp-mega > summary { padding: 11px 28px 11px 0; }
  .pp-mega-panel {
    position: static; width: 100%; translate: none; padding: 14px 0 4px; border: 0;
    border-radius: 0; box-shadow: none;
  }
  .pp-mega-panel--solutions { grid-template-columns: 1fr; }
  .pp-mega-intro { display: none; }
  .pp-mega-solutions { grid-template-columns: 1fr; }
  .pp-mega-groups { grid-template-columns: 1fr; max-height: none; overflow: visible; }
  .pp-mega-products-head { display: block; padding: 4px; }
  .pp-mega-products-head > a { display: inline-flex; margin-top: 8px; }
  .pp-master-hero-grid, .pp-line-hero-grid { grid-template-columns: 1fr; }
  .pp-master-visual, .pp-line-visual { width: min(520px,100%); margin-inline: auto; }
  .pp-journey ol { grid-template-columns: 1fr; }
  .pp-journey li + li { border-left: 0; border-top: 1px solid var(--pp-line); }
  .pp-footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 620px) {
  .pp-master-hero, .pp-line-hero { padding: 42px 0 56px; }
  .pp-master-hero-grid, .pp-line-hero-grid { gap: 28px; }
  .pp-master-visual, .pp-line-visual { padding: 18px; border-radius: 24px; }
  .pp-line-card-link { grid-template-columns: 118px minmax(0,1fr); }
  .pp-line-card-media { min-height: 190px; padding: 10px; }
  .pp-line-card-copy { padding: 17px; }
  .pp-line-card p { display: -webkit-box; overflow: hidden; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
  .pp-gallery-open { padding: 19px; }
  .pp-gallery-meta { display: block; }
  .pp-gallery-meta span { display: block; }
  .pp-gallery-meta span:last-child { margin-top: 2px; }
  .pp-gallery-arrow { width: 39px; height: 39px; }
  .pp-quick-specs { grid-template-columns: 1fr; }
  .pp-coastal-advantage { grid-template-columns: 1fr; padding: 23px; }
  .pp-coastal-icon { width: 60px; height: 60px; font-size: 2.3rem; }
  .pp-footer-grid { grid-template-columns: 1fr; }
}

/* V8.4 — páginas internas mais densas e comparação realmente móvel */
.pp-side-card .pp-kicker { color: #bfeeff; }
.pp-page-hero .pp-kicker, .pp-search-panel .pp-kicker { color: #bfeeff; }
.pp-internal-page .pp-section { padding: 56px 0; }
.pp-internal-page .pp-section--compact { padding: 28px 0; }
.pp-internal-page .pp-section-head { margin-bottom: 24px; }
.pp-internal-page .pp-grid { gap: 16px; }
.pp-internal-page .pp-card-body { padding: 18px; }
.pp-internal-page .pp-card-body p {
  display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3;
}
.pp-internal-page .pp-card-action { margin-top: 12px; }
.pp-internal-page .pp-product-layout { gap: 38px; }
.pp-internal-page .pp-content-layout { gap: 38px; }
.pp-content > .pp-copy-group { padding: 22px 0; }
.pp-content > .pp-copy-group:first-child { padding-top: 0; }
.pp-content > .pp-copy-group h2 {
  margin-bottom: 10px; font-size: clamp(1.4rem,2.5vw,2rem); line-height: 1.14;
}
.pp-content > .pp-copy-group p { margin: 0; }
.pp-content > .pp-copy-group ul { margin: 4px 0 0; padding-left: 1.25rem; }
.pp-content > .pp-copy-group li + li { margin-top: 5px; }
.pp-line-grid { gap: 16px; }
.pp-line-card-media { min-height: 190px; }
.pp-line-card-copy { padding: 18px; }
.pp-line-card p {
  display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3;
}
.pp-line-card-action { margin-top: 10px; }
.pp-line-table { margin-top: 38px; }
.pp-footer { margin-top: 52px; }

@media (max-width: 620px) {
  .pp-internal-page .pp-section { padding: 38px 0; }
  .pp-internal-page .pp-section--compact { padding: 20px 0; }
  .pp-internal-page .pp-section-head { margin-bottom: 18px; }
  .pp-internal-page .pp-section-head h2 { margin-bottom: 8px; font-size: 1.65rem; }
  .pp-internal-page .pp-section-head p { margin: 0; }
  .pp-internal-page .pp-product-layout,
  .pp-internal-page .pp-content-layout { gap: 26px; }
  .pp-master-hero, .pp-line-hero { padding: 30px 0 40px; }
  .pp-master-hero h1, .pp-line-hero h1, .pp-product-copy h1 { font-size: clamp(2rem,11vw,3rem); }
  .pp-master-hero-grid, .pp-line-hero-grid { gap: 20px; }
  .pp-master-visual, .pp-line-visual { width: min(360px,82vw); padding: 12px; border-radius: 20px; }
  .pp-journey { margin-top: -18px; }
  .pp-journey li { padding: 17px; }
  .pp-journey li > span { flex-basis: 34px; width: 34px; height: 34px; }
  .pp-product-hero { padding: 28px 0 34px; }
  .pp-product-copy > p { font-size: 1rem; line-height: 1.5; }
  .pp-internal-page .pp-actions { margin-top: 20px; }
  .pp-internal-page .pp-actions .pp-button { flex: 1 1 100%; width: 100%; min-height: 46px; }
  .pp-content > .pp-copy-group { padding: 17px 0; }
  .pp-content > .pp-copy-group h2 { font-size: 1.35rem; }
  .pp-content-layout .pp-side-card { padding: 21px; }
  .pp-content-layout .pp-side-card .pp-button { width: 100%; }
  .pp-line-card-link { grid-template-columns: 104px minmax(0,1fr); }
  .pp-line-card-media { min-height: 168px; padding: 8px; }
  .pp-line-card-copy { padding: 14px; }
  .pp-line-card h3 { font-size: 1.05rem; }
  .pp-line-card p { -webkit-line-clamp: 2; font-size: .86rem; }
  .pp-product-grid { display: grid; grid-template-columns: 1fr; gap: 12px; }
  .pp-product-grid .pp-card {
    display: grid; grid-template-columns: 116px minmax(0,1fr); min-height: 164px;
  }
  .pp-product-grid .pp-card-media { aspect-ratio: auto; min-height: 164px; padding: 10px; }
  .pp-product-grid .pp-card-media::after { width: 78px; height: 78px; border-width: 9px; }
  .pp-product-grid .pp-card-body { display: flex; flex-direction: column; justify-content: center; padding: 13px; }
  .pp-product-grid .pp-card-context { align-self: flex-start; margin-bottom: 5px; font-size: .62rem; }
  .pp-product-grid .pp-card h3 { margin-bottom: 5px; font-size: 1rem; }
  .pp-product-grid .pp-card p { -webkit-line-clamp: 2; font-size: .82rem; line-height: 1.35; }
  .pp-product-grid .pp-card-action { margin-top: 8px; font-size: .86rem; }
  .pp-filter-bar button, .pp-context-chips a, .pp-sibling-lines a,
  .pp-mega-group li a, .pp-mega-solution, .pp-breadcrumbs a,
  .pp-guide-links a, .pp-footer a { min-height: 44px; align-items: center; }
  .pp-filter-bar button { padding-block: 9px; }
  .pp-context-chips a { display: inline-flex; padding: 9px 12px; }
  .pp-mega-group li a, .pp-sibling-lines a, .pp-footer a { display: flex; }
  .pp-breadcrumbs { display: flex; align-items: center; gap: 5px; overflow-x: auto; white-space: nowrap; }
  .pp-breadcrumbs a { display: inline-flex; }
  .pp-gallery-arrow { width: 44px; height: 44px; }
  .pp-line-table { margin-top: 28px; }
  .pp-line-table .pp-table-wrap { overflow: visible; }
  .pp-line-table table, .pp-line-table tbody, .pp-line-table tr,
  .pp-line-table th, .pp-line-table td { display: block; width: 100%; min-width: 0; }
  .pp-line-table thead { display: none; }
  .pp-line-table tr { margin-bottom: 10px; padding: 14px; border: 1px solid var(--pp-line); border-radius: 14px; background: #fff; }
  .pp-line-table th, .pp-line-table td { padding: 4px 0; border: 0; }
  .pp-line-table td { color: var(--pp-muted); font-size: .88rem; }
  .pp-line-table td::before {
    content: attr(data-label); display: block; margin-bottom: 1px; color: var(--pp-navy);
    font-size: .7rem; font-weight: 750; letter-spacing: .015em;
  }
  .pp-line-table td:last-child { margin-top: 7px; }
}

/* V8.7 — conteúdo aprovado com composição institucional mais compacta */
.pp-hero-grid {
  min-height: 520px; grid-template-columns: minmax(0,1.18fr) minmax(360px,.82fr);
  gap: 36px; padding: 56px 0 64px;
}
.pp-hero h1 {
  max-width: 720px; margin: 16px 0 14px; font-size: clamp(2.7rem,3.65vw,3.6rem);
  line-height: 1.04; letter-spacing: -.04em;
}
.pp-hero p { margin: 0; font-size: clamp(1rem,1.5vw,1.16rem); line-height: 1.5; }
.pp-hero-products { min-height: 360px; }
.pp-trust div { padding: 17px 14px; }
.pp-section { padding: 68px 0; }
.pp-section-head { margin-bottom: 26px; }
.pp-card-body { padding: 18px; }
.pp-area-card { min-height: 260px; padding: 22px; }

.pp-master-hero, .pp-line-hero { padding: 44px 0 54px; }
.pp-master-hero-grid, .pp-line-hero-grid {
  grid-template-columns: minmax(0,1.2fr) minmax(300px,.8fr); gap: 38px;
}
.pp-master-hero h1, .pp-line-hero h1 {
  margin: 10px 0 14px; font-size: clamp(2.4rem,4.25vw,3.65rem); line-height: 1.01;
}
.pp-master-hero-grid > div:first-child > p:not(.pp-kicker),
.pp-line-hero-grid > div:first-child > p:not(.pp-kicker) {
  margin: 0; font-size: 1.05rem; line-height: 1.5;
}
.pp-master-visual, .pp-line-visual {
  width: min(420px,100%); justify-self: end; padding: 22px; border-radius: 28px;
}
.pp-journey li { padding: 18px; }
.pp-journey { margin-top: -22px; }
.pp-product-hero { padding: 46px 0; }
.pp-product-layout { grid-template-columns: minmax(0,.82fr) minmax(0,1.18fr); gap: 38px; }
.pp-product-copy h1 { margin: 10px 0 12px; font-size: clamp(2.25rem,4.4vw,3.75rem); }
.pp-product-copy > p { margin: 0; font-size: 1.06rem; line-height: 1.5; }
.pp-context-chips { margin-top: 15px; }
.pp-quick-specs { margin-top: 17px; }
.pp-product-copy .pp-actions { margin-top: 22px; }
.pp-footer { margin-top: 38px; padding-top: 46px; }

@media (max-width: 920px) {
  .pp-hero-grid { grid-template-columns: 1fr; padding: 44px 0 48px; }
  .pp-master-hero-grid, .pp-line-hero-grid, .pp-product-layout { grid-template-columns: 1fr; }
  .pp-master-visual, .pp-line-visual { justify-self: center; }
}

@media (max-width: 620px) {
  .pp-header-row { min-height: 68px; }
  .pp-nav { inset: 68px 0 auto; max-height: calc(100dvh - 68px); }
  .pp-hero-grid { gap: 18px; padding: 34px 0 28px; }
  .pp-hero h1 {
    margin: 13px 0 12px; font-size: clamp(2.15rem,10vw,2.55rem); line-height: 1.01;
    letter-spacing: -.045em;
  }
  .pp-hero p { font-size: .98rem; line-height: 1.45; }
  .pp-hero .pp-actions {
    display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin-top: 17px;
  }
  .pp-hero .pp-actions .pp-button {
    width: 100%; min-width: 0; min-height: 44px; padding: 9px 10px; font-size: .82rem;
  }
  .pp-hero-products {
    min-height: 108px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px;
  }
  .pp-float-product,
  .pp-float-product:nth-child(1),
  .pp-float-product:nth-child(2),
  .pp-float-product:nth-child(3) {
    position: relative; inset: auto; width: 100%; padding: 8px; border-radius: 16px;
    transform: none; animation: none;
  }
  .pp-trust { grid-template-columns: repeat(4,minmax(0,1fr)); margin-top: -12px; }
  .pp-trust div { padding: 11px 4px; font-size: .68rem; line-height: 1.25; }
  .pp-trust strong { font-size: 1rem; }
  .pp-section { padding: 46px 0; }
  .pp-section-head { margin-bottom: 20px; }
  .pp-area-card { min-height: 230px; padding: 19px; }

  .pp-master-hero, .pp-line-hero { padding: 22px 0 30px; }
  .pp-master-hero .pp-breadcrumbs, .pp-line-hero .pp-breadcrumbs,
  .pp-product-hero .pp-breadcrumbs { margin-bottom: 12px; }
  .pp-master-hero h1, .pp-line-hero h1 {
    margin: 7px 0 11px; font-size: clamp(1.95rem,9.2vw,2.3rem); line-height: 1.03;
  }
  .pp-master-hero-grid > div:first-child > p:not(.pp-kicker),
  .pp-line-hero-grid > div:first-child > p:not(.pp-kicker) {
    font-size: .96rem; line-height: 1.48;
  }
  .pp-internal-page .pp-master-hero .pp-actions,
  .pp-internal-page .pp-line-hero .pp-actions,
  .pp-internal-page .pp-product-copy .pp-actions {
    display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin-top: 15px;
  }
  .pp-internal-page .pp-master-hero .pp-actions .pp-button,
  .pp-internal-page .pp-line-hero .pp-actions .pp-button,
  .pp-internal-page .pp-product-copy .pp-actions .pp-button {
    width: auto; min-width: 0; padding: 9px 8px; font-size: .82rem; line-height: 1.2;
  }
  .pp-master-hero-grid, .pp-line-hero-grid { gap: 17px; }
  .pp-master-visual, .pp-line-visual {
    width: 100%; height: min(210px,54vw); min-height: 0; aspect-ratio: auto; overflow: hidden;
    padding: 10px; border-radius: 20px;
  }
  .pp-master-visual .pp-master-image, .pp-line-visual .pp-line-hero-image {
    width: auto; height: 100%; min-width: 0; min-height: 0; max-width: 100%; max-height: 100%;
    justify-self: center; object-fit: contain;
  }
  .pp-journey { margin-top: -14px; }
  .pp-journey li { padding: 14px; }

  .pp-product-hero { padding: 20px 0 28px; }
  .pp-internal-page .pp-product-layout { gap: 17px; }
  .pp-gallery-stage { aspect-ratio: 4 / 3; border-radius: 22px; }
  .pp-gallery-open { padding: 12px; }
  .pp-thumbs { gap: 8px; margin-top: 7px; }
  .pp-thumb { flex-basis: 66px; min-width: 66px; padding: 6px; }
  .pp-product-copy h1 { margin: 8px 0 9px; font-size: clamp(1.95rem,9.4vw,2.3rem); line-height: 1.02; }
  .pp-product-copy > p { font-size: .96rem; line-height: 1.45; }
  .pp-context-chips { margin-top: 12px; }
  .pp-quick-specs { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; margin-top: 13px; }
  .pp-quick-specs div { padding: 9px; }
  .pp-quick-specs dt { font-size: .65rem; }
  .pp-quick-specs dd { font-size: .86rem; }
  .pp-footer { margin-top: 30px; padding: 38px 0 22px; }
  .pp-footer-grid { gap: 24px; }
  .pp-footer p { margin: 8px 0; }
}

/* V8.8 — atendimento prioritário e densidade interna revalidada */
.pp-internal-page .pp-section { padding: 48px 0; }
.pp-internal-page .pp-section--compact { padding: 24px 0; }
.pp-internal-page .pp-content-layout { gap: 32px; }
.pp-content > .pp-copy-group { padding: 18px 0; }
.pp-side-card p { margin-top: 0; }
.pp-footer-cta { width: fit-content; padding-inline: 17px; }

@media (max-width: 920px) {
  .pp-nav-whatsapp { width: 100%; }
}

@media (max-width: 620px) {
  .pp-internal-page .pp-section { padding: 32px 0; }
  .pp-internal-page .pp-section--compact { padding: 18px 0; }
  .pp-internal-page .pp-content-layout { gap: 22px; }
  .pp-content > .pp-copy-group { padding: 14px 0; }
  .pp-contact { padding: 18px; }
  .pp-contact-priority { grid-template-columns: 1fr; gap: 16px; margin-bottom: 22px; padding: 18px; }
  .pp-contact-priority .pp-button { width: 100%; }
  .pp-form-heading { padding-top: 18px; }
  .pp-footer-cta { width: 100%; }
}

/* V8.8.5 — submenu de produtos em duas colunas no desktop */
@media (min-width: 921px) {
  .pp-mega-panel--products { padding: 20px 22px 22px; }
  .pp-mega-products-head { align-items: center; margin-bottom: 14px; }
  .pp-mega-groups {
    grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px 14px;
    max-height: calc(100dvh - 170px);
  }
  .pp-mega-group { padding: 13px 14px; }
  .pp-mega-group h2 { margin-bottom: 7px; }
  .pp-mega-group ul {
    display: grid; grid-template-columns: repeat(2,minmax(0,1fr));
    align-content: start; gap: 2px 16px;
  }
  .pp-mega-group li + li { margin-top: 0; }
  .pp-mega-group li a { padding: 3px 0; font-size: .82rem; line-height: 1.25; }
}

/* V8.8.6 — links do submenu como microcards leves e identificáveis */
@media (min-width: 921px) {
  .pp-mega-group ul { gap: 3px 8px; }
  .pp-mega-group li a {
    display: block; padding: 2px 4px 2px 7px;
    border: 1px solid rgba(8,43,76,.09); border-radius: 7px;
    background: rgba(255,255,255,.76);
    box-shadow: inset 3px 0 0 color-mix(in srgb,var(--item-accent) 72%,white),
      0 2px 5px rgba(8,43,76,.05);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease,
      background-color .18s ease, color .18s ease;
  }
  .pp-mega-group li a:hover {
    color: var(--pp-navy); border-color: color-mix(in srgb,var(--item-accent) 42%,rgba(8,43,76,.09));
    background: #fff; box-shadow: inset 3px 0 0 var(--item-accent), 0 4px 10px rgba(8,43,76,.09);
    transform: translateY(-1px);
  }
  .pp-mega-group li a:focus-visible {
    outline: 2px solid var(--item-accent); outline-offset: 1px;
    color: var(--pp-navy); background: #fff;
  }
}

@media (min-width: 921px) and (max-width: 1100px) {
  .pp-mega-group li a { font-size: .8rem; }
}

/* V9.0 — catálogo institucional B2B */
.pp-header-row { gap: 16px; }
.pp-nav { gap: 13px; font-size: .84rem; white-space: nowrap; }
.pp-nav .pp-button { min-height: 44px; padding: 8px 12px; font-size: .8rem; }
.pp-nav .pp-whatsapp-mark { width: 21px; height: 21px; flex-basis: 21px; }
.pp-nav .pp-whatsapp-mark svg { width: 11px; height: 11px; }
.pp-trust span { display: block; color: var(--pp-muted); font-size: .78rem; }
.pp-trust strong { font-size: 1.05rem; }
.pp-b2b-band, .pp-commercial-cta, .pp-technical-link {
  display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 30px;
}
.pp-b2b-band > div:first-child, .pp-commercial-cta > div:first-child { max-width: 760px; }
.pp-b2b-band h2, .pp-commercial-cta h2, .pp-technical-link h2 {
  margin: 0 0 10px; color: var(--pp-navy); font-size: clamp(1.55rem,3vw,2.35rem); line-height: 1.12;
}
.pp-b2b-band p, .pp-commercial-cta p, .pp-technical-link p { margin: 0; color: var(--pp-muted); }
.pp-card-body { display: flex; min-height: 250px; flex-direction: column; }
.pp-card-body > p { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.pp-card-facts { display: grid; gap: 6px; margin: 15px 0 0; }
.pp-card-facts div { display: grid; grid-template-columns: 62px minmax(0,1fr); gap: 8px; padding-top: 6px; border-top: 1px solid var(--pp-line); }
.pp-card-facts dt { color: var(--pp-muted); font-size: .68rem; font-weight: 900; text-transform: uppercase; letter-spacing: .035em; }
.pp-card-facts dd { margin: 0; overflow-wrap: anywhere; color: var(--pp-ink); font-size: .78rem; font-weight: 720; line-height: 1.3; }
.pp-card-action { margin-top: auto; padding-top: 15px; }
.pp-catalog-notice { width: fit-content; margin-top: 18px; padding: 8px 12px; border: 1px solid rgba(255,255,255,.24); border-radius: 999px; font-size: .9rem !important; }
.pp-line-intro { padding: 22px 26px; border: 1px solid var(--pp-line); border-left: 5px solid var(--pp-context-accent); border-radius: 18px; background: #fff; box-shadow: 0 8px 24px rgba(8,43,76,.06); }
.pp-line-intro p:last-child { margin: 0; color: var(--pp-muted); font-size: 1.02rem; }
.pp-product-taxonomy { display: flex; flex-wrap: wrap; gap: 7px; align-items: center; color: var(--pp-blue-ink); font-size: .84rem; font-weight: 850; }
.pp-product-taxonomy a { text-decoration: underline; text-underline-offset: 3px; }
.pp-product-details { display: grid; grid-template-columns: minmax(0,1fr) 320px; gap: 32px; align-items: start; }
.pp-commercial-side .pp-button, .pp-commercial-side .pp-contact-form-link { width: 100%; }
.pp-commercial-side .pp-contact-form-link { margin-top: 10px; }
.pp-reseller-materials { padding: 20px !important; border: 1px solid var(--pp-line) !important; border-radius: 18px; background: #f4f9fb; }
.pp-technical-link { padding: 20px 24px; border: 1px solid var(--pp-line); border-radius: 18px; background: #fff; }
.pp-technical-link h2 { font-size: 1.35rem; }
.pp-technical-link a { color: var(--pp-blue-ink); font-weight: 900; text-decoration: underline; text-underline-offset: 4px; }
.pp-institutional-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.pp-institutional-grid article { padding: 24px; border: 1px solid var(--pp-line); border-radius: 20px; background: #fff; box-shadow: 0 8px 26px rgba(8,43,76,.06); }
.pp-institutional-grid h2 { margin: 0 0 10px; color: var(--pp-navy); font-size: 1.35rem; line-height: 1.18; }
.pp-institutional-grid p { margin: 0; color: var(--pp-muted); }
.pp-form-heading p { margin: 6px 0 0; color: var(--pp-muted); }
.pp-checkbox-group { margin: 0; padding: 0; border: 0; }
.pp-checkbox-group legend { margin-bottom: 8px; color: var(--pp-navy); font-weight: 800; }
.pp-checkbox-group > div { display: flex; flex-wrap: wrap; gap: 8px; }
.pp-checkbox-group label { display: inline-flex; align-items: center; gap: 7px; min-height: 44px; padding: 7px 11px; border: 1px solid var(--pp-line); border-radius: 999px; background: #f8fbfc; font-size: .86rem; }
.pp-checkbox-group input, .pp-consent input { width: auto; min-height: 0; }
.pp-consent { display: flex; align-items: center; gap: 9px; min-height: 44px; }
.pp-empty .pp-button { margin: 15px auto 0; }
.pp-filter-bar button { min-height: 44px; }
.pp-page-hero h1, .pp-product-copy h1 { font-size: clamp(2.25rem,4.1vw,3.65rem); }

@media (max-width: 1100px) and (min-width: 921px) {
  .pp-header-row { gap: 10px; }
  .pp-nav { gap: 9px; font-size: .74rem; }
  .pp-nav .pp-button { padding-inline: 9px; font-size: .72rem; }
}

@media (max-width: 920px) {
  .pp-nav { gap: 0; font-size: 1rem; white-space: normal; }
  .pp-b2b-band, .pp-commercial-cta, .pp-technical-link,
  .pp-product-details { grid-template-columns: 1fr; }
  .pp-institutional-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pp-card-body { min-height: 0; }
}

@media (max-width: 620px) {
  .pp-trust { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pp-trust div:nth-child(2) { border-right: 0; }
  .pp-trust div:nth-child(-n+2) { border-bottom: 1px solid var(--pp-line); }
  .pp-trust div { padding: 11px 7px; font-size: .72rem; }
  .pp-trust strong { font-size: .84rem; }
  .pp-trust span { margin-top: 2px; font-size: .67rem; }
  .pp-institutional-grid { grid-template-columns: 1fr; }
  .pp-institutional-grid article { padding: 18px; }
  .pp-product-grid .pp-card { min-height: 182px; }
  .pp-product-grid .pp-card-body { justify-content: flex-start; }
  .pp-product-grid .pp-card-body > p { -webkit-line-clamp: 2; }
  .pp-product-grid .pp-card-facts { margin-top: 9px; }
  .pp-product-grid .pp-card-facts div { grid-template-columns: 52px minmax(0,1fr); padding-top: 4px; }
  .pp-product-grid .pp-card-facts div:nth-child(n+3) { display: none; }
  .pp-product-grid .pp-card-facts dt { font-size: .6rem; }
  .pp-product-grid .pp-card-facts dd { font-size: .7rem; }
  .pp-product-grid .pp-card-action { padding-top: 8px; }
  .pp-line-intro { padding: 17px 18px; }
  .pp-product-taxonomy { font-size: .78rem; }
  .pp-checkbox-group > div { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pp-checkbox-group label { border-radius: 12px; }
  .pp-technical-link { padding: 17px; }
}

/* V9.0.2 — navegação sem colisões, texto contido e hierarquia tipográfica leve */
.pp-mega-products-head .pp-eyebrow,
.pp-mega-intro .pp-eyebrow { font-weight: 700; }

@media (max-width: 1279px) {
  .pp-menu-toggle { display: inline-grid; place-items: center; margin-left: auto; }
  .pp-nav {
    position: fixed; inset: 78px 0 auto; display: none; align-items: stretch;
    max-height: calc(100dvh - 78px); margin-left: 0; padding: 20px 24px 24px;
    overflow-y: auto; gap: 0; white-space: normal; font-size: .96rem;
    background: #fff; box-shadow: 0 20px 30px rgba(8,43,76,.16);
  }
  .pp-nav.is-open { display: grid; }
  .pp-nav > a, .pp-mega > summary { display: flex; align-items: center; min-height: 44px; }
  .pp-nav .pp-button { width: 100%; margin-top: 8px; }
  .pp-nav-whatsapp { width: 100%; }
  .pp-mega > summary { padding: 11px 28px 11px 0; }
  .pp-mega-panel {
    position: static; width: 100%; translate: none; padding: 12px 0 6px;
    border: 0; border-radius: 0; box-shadow: none;
  }
  .pp-mega-panel--solutions { grid-template-columns: 1fr; }
  .pp-mega-intro { display: none; }
  .pp-mega-solutions { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pp-mega-products-head { display: block; padding: 4px; }
  .pp-mega-products-head > a { display: inline-flex; margin-top: 8px; }
  .pp-mega-groups {
    grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px;
    max-height: none; overflow: visible; padding-right: 0;
  }
  .pp-mega-group { padding: 12px; }
  .pp-mega-group ul { grid-template-columns: 1fr; gap: 4px; }
  .pp-mega-group li a {
    display: flex; align-items: center; min-height: 38px; padding: 6px 9px;
    font-size: .84rem; line-height: 1.28; font-weight: 500;
    border: 1px solid rgba(8,43,76,.09); border-radius: 8px;
    background: rgba(255,255,255,.82);
    box-shadow: inset 3px 0 0 color-mix(in srgb,var(--item-accent) 70%,white),
      0 2px 5px rgba(8,43,76,.045);
  }
}

@media (max-width: 840px) {
  .pp-mega-groups { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (min-width: 921px) and (max-width: 1279px) {
  .pp-mega-groups { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pp-mega-group ul { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

/* V9.8 — cotação em página própria, cartões compactos, marca íntegra e mídia protegida. */
.pp-logo {
  width: clamp(164px,14vw,190px); min-width: 164px;
}
.pp-logo img {
  width: 100%; height: auto; aspect-ratio: 1131 / 235; object-fit: contain;
}

@media (min-width: 1280px) {
  .pp-nav { gap: 6px; font-size: .78rem; }
  .pp-nav > a:not(.pp-button),
  .pp-nav > .pp-mega > summary {
    min-height: 40px; display: inline-flex; align-items: center; padding: 7px 9px;
    border: 1px solid rgba(8,43,76,.12); border-radius: 10px; color: var(--pp-navy);
    background: linear-gradient(180deg,rgba(255,255,255,.96),rgba(239,247,250,.82));
    box-shadow: inset 0 1px 0 #fff,0 2px 7px rgba(8,43,76,.04);
    transition: border-color .2s ease,background .2s ease,transform .2s ease;
  }
  .pp-nav > a:not(.pp-button)::after { display: none; }
  .pp-nav > a:not(.pp-button):is(:hover,[aria-current="page"]),
  .pp-nav > .pp-mega:is(:hover,[open]) > summary {
    border-color: rgba(8,119,201,.42); background: #fff; transform: translateY(-1px);
    box-shadow: inset 0 -3px 0 var(--pp-lime),0 6px 14px rgba(8,43,76,.08);
  }
  .pp-nav .pp-button { padding-inline: 11px; font-size: .76rem; }
}

/* V9.8.8 — conferência interna de peso; a foto do visor existe apenas na sessão atual. */
.pp-weight-checker { min-height: 76vh; }
.pp-weight-checker__shell { max-width: 1040px; }
.pp-weight-checker__intro { max-width: 760px; margin: 0 0 20px; color: var(--pp-muted); }
.pp-weight-checker__status {
  margin: 0 0 18px; padding: 12px 14px; border: 1px solid #b7dced; border-radius: 12px;
  background: #eef9ff; color: var(--pp-navy); font-weight: 650;
}
.pp-weight-checker__status.is-error { border-color: #ecb0a7; background: #fff2ef; color: #8a2515; }
.pp-weight-checker__status.is-ok { border-color: #abd8b9; background: #effbf2; color: #1d6a39; }
.pp-weight-checker__grid { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(280px,.75fr); gap: 22px; align-items: start; }
.pp-weight-checker__camera {
  position: relative; min-height: 300px; overflow: hidden; border: 1px solid var(--pp-line); border-radius: 18px;
  background: #10283d; box-shadow: var(--pp-shadow);
}
.pp-weight-checker__camera video { width: 100%; min-height: 300px; max-height: 66vh; object-fit: cover; background: #10283d; }
.pp-weight-checker__guide {
  position: absolute; inset: 13% 12%; display: grid; place-items: end center; pointer-events: none;
  border: 2px dashed rgba(255,255,255,.82); border-radius: 18px; color: #fff; text-align: center;
}
.pp-weight-checker__guide span { margin: 12px; padding: 6px 10px; border-radius: 8px; background: rgba(8,43,76,.78); font-size: .82rem; line-height: 1.32; }
.pp-weight-checker__controls { display: grid; gap: 10px; padding: 18px; border: 1px solid var(--pp-line); border-radius: 18px; background: #fff; }
.pp-weight-checker__controls label { color: var(--pp-navy); font-weight: 750; }
.pp-weight-checker__controls input { width: 100%; padding: 12px; border: 1px solid #a9bfce; border-radius: 10px; color: var(--pp-ink); background: #fff; }
.pp-weight-checker__controls .pp-actions { margin: 4px 0 0; }
.pp-weight-checker__controls .pp-button { justify-content: center; }
.pp-weight-checker__capture { padding: 8px; border: 1px solid var(--pp-line); border-radius: 12px; background: #f7fafc; }
.pp-weight-checker__capture img { width: 100%; max-height: 180px; border-radius: 8px; object-fit: contain; background: #10283d; }
.pp-weight-checker__result { margin-top: 24px; padding: 20px; border: 1px solid var(--pp-line); border-radius: 18px; background: #fff; }
.pp-weight-checker__result.is-divergent { border-color: #e3a11d; background: #fff9e9; }
.pp-weight-checker__result.is-ok { border-color: #abd8b9; background: #f3fcf5; }
.pp-weight-checker__result h2 { margin: 0 0 10px; color: var(--pp-navy); }
.pp-weight-checker__facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin: 16px 0 0; }
.pp-weight-checker__fact { padding: 11px; border-radius: 10px; background: #f5f8fa; }
.pp-weight-checker__fact small { display: block; color: var(--pp-muted); font-weight: 650; }
.pp-weight-checker__product { display: grid; grid-template-columns: 100px minmax(0,1fr); gap: 14px; align-items: center; margin-top: 16px; }
.pp-weight-checker__product img { width: 100px; height: 100px; border-radius: 10px; object-fit: cover; background: #f5f8fa; }
@media (max-width: 760px) {
  .pp-weight-checker__grid { grid-template-columns: 1fr; }
  .pp-weight-checker__camera, .pp-weight-checker__camera video { min-height: 245px; }
  .pp-weight-checker__facts { grid-template-columns: 1fr; }
}

.pp-product-grid { gap: 16px; }
.pp-product-grid .pp-card { border-radius: 19px; }
.pp-product-grid .pp-card-media {
  height: 188px; aspect-ratio: auto; padding: 16px;
}
.pp-product-grid .pp-card-body { min-height: 0; padding: 15px 16px 16px; }
.pp-product-grid .pp-card-context { margin-bottom: 7px; font-size: .64rem; }
.pp-product-grid .pp-card h3 { margin-bottom: 6px; font-size: 1.04rem; line-height: 1.2; }
.pp-product-grid .pp-card-body > p {
  font-size: .82rem; line-height: 1.4; -webkit-line-clamp: 2;
}
.pp-product-grid .pp-card-facts { gap: 3px; margin-top: 10px; }
.pp-product-grid .pp-card-facts div {
  grid-template-columns: 76px minmax(0,1fr); gap: 7px; padding-top: 5px;
}
.pp-product-grid .pp-card-facts dt { font-size: .61rem; font-weight: 650; letter-spacing: 0; text-transform: none; }
.pp-product-grid .pp-card-facts dd { font-size: .7rem; font-weight: 600; line-height: 1.25; }
.pp-product-grid .pp-card-bottom { padding-top: 10px; }
.pp-product-grid .pp-card-action { padding: 0; font-size: .82rem; font-weight: 750; }
.pp-quote-add--card { display: none !important; }

.pp-page-hero h1,
.pp-page-hero p { color: #fff; text-shadow: 0 1px 1px rgba(0,0,0,.12); }
.pp-page-hero .pp-kicker { color: #d8f4ff; }
.pp-page-hero .pp-breadcrumbs,
.pp-page-hero .pp-breadcrumbs a { color: rgba(255,255,255,.9); }
.pp-side-card p,
.pp-side-card li { color: rgba(255,255,255,.9); }
.pp-side-card .pp-kicker { color: #d8f4ff; }
.pp-product-page .pp-spec-section th[scope="row"] {
  color: #fff; background: var(--pp-navy); font-weight: 600;
}

.pp-card-media,
.pp-area-media,
.pp-float-product,
.pp-gallery-stage,
.pp-thumb,
.pp-lightbox-stage,
.pp-line-card-media,
.pp-master-visual,
.pp-line-visual { position: relative; }
.pp-card-media:has(img[src*="/assets/premium-v98"])::before,
.pp-area-media:has(img[src*="/assets/premium-v98"])::before,
.pp-float-product:has(img[src*="/assets/premium-v98"])::before,
.pp-gallery-stage:has(img[src*="/assets/premium-v98"])::before,
.pp-thumb:has(img[src*="/assets/premium-v98"])::before,
.pp-lightbox-stage:has(img[src*="/assets/premium-v98"])::before,
.pp-line-card-media:has(img[src*="/assets/premium-v98"])::before,
.pp-master-visual:has(img[src*="/assets/premium-v98"])::before,
.pp-line-visual:has(img[src*="/assets/premium-v98"])::before {
  content: "";
  pointer-events: none;
}
.pp-card-media > img,
.pp-area-media > img,
.pp-float-product > img,
.pp-line-card-media > img,
.pp-master-visual > img,
.pp-line-visual > img { -webkit-user-drag: none; }

.pp-quote-toggle { text-decoration: none; }
.pp-quote-route .pp-quote-toggle,
.pp-quote-route .pp-quote-closed-summary,
.pp-quote-route .pp-whatsapp-float { display: none; }
.pp-quote-page-hero { padding-block: 42px 38px; }
.pp-quote-page-hero h1 { margin-block: 11px 12px; font-size: clamp(2.15rem,4.2vw,3.65rem); }
.pp-quote-page-intro {
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
  margin-bottom: 20px; padding: 19px 21px; border: 1px solid var(--pp-line);
  border-left: 5px solid var(--pp-blue); border-radius: 17px; background: #fff;
  box-shadow: 0 8px 24px rgba(8,43,76,.06);
}
.pp-quote-page-intro h2 { margin: 3px 0 6px; color: var(--pp-navy); font-size: clamp(1.25rem,2.2vw,1.75rem); line-height: 1.15; }
.pp-quote-page-intro p:last-child { margin: 0; color: var(--pp-muted); }
.pp-quote-workspace {
  display: grid; grid-template-columns: minmax(0,1.7fr) minmax(320px,.75fr); gap: 18px; align-items: start;
}
.pp-quote-picker-card,
.pp-quote-selection--page {
  min-width: 0; overflow: hidden; border: 1px solid var(--pp-line); border-radius: 18px;
  background: #fff; box-shadow: 0 12px 34px rgba(8,43,76,.08);
}
.pp-quote-picker-card .pp-quote-picker {
  min-height: 0; padding: 20px; overflow: visible; border: 0; background: #fff;
}
.pp-quote-selection--page {
  position: sticky; top: 96px; padding: 18px; overflow: visible; background: #f1f7f9;
}
.pp-quote-product.is-targeted {
  border-color: var(--quote-accent,var(--pp-blue));
  box-shadow: inset 4px 0 0 var(--quote-accent,var(--pp-blue)),0 8px 20px rgba(8,43,76,.08);
}
.pp-quote-page-actions { display: grid; gap: 9px; margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--pp-line); }
.pp-quote-page-actions > p { margin: 0 0 2px; color: var(--pp-muted); font-size: .76rem; line-height: 1.4; }
.pp-quote-page-actions .pp-button { width: 100%; min-height: 44px; padding: 9px 12px; font-size: .78rem; }

@media (max-width: 920px) {
  .pp-logo { width: 178px; min-width: 0; }
  .pp-nav > a:not(.pp-button), .pp-nav > .pp-mega > summary {
    margin-bottom: 5px; padding: 9px 12px; border: 1px solid rgba(8,43,76,.11);
    border-radius: 10px; background: #f7fafb;
  }
  .pp-quote-workspace { grid-template-columns: minmax(0,1fr); }
  .pp-quote-selection--page { position: static; }
}

@media (max-width: 620px) {
  .pp-logo { width: 162px; }
  .pp-product-grid .pp-card {
    grid-template-columns: 108px minmax(0,1fr); min-height: 146px;
  }
  .pp-product-grid .pp-card-media { height: auto; min-height: 146px; padding: 8px; }
  .pp-product-grid .pp-card-body { justify-content: center; padding: 11px 12px; }
  .pp-product-grid .pp-card-context { margin-bottom: 4px; font-size: .58rem; }
  .pp-product-grid .pp-card h3 { margin-bottom: 4px; font-size: .94rem; }
  .pp-product-grid .pp-card-body > p { font-size: .76rem; line-height: 1.3; }
  .pp-product-grid .pp-card-facts { display: none; }
  .pp-product-grid .pp-card-bottom { padding-top: 7px; }
  .pp-product-grid .pp-card-action { font-size: .77rem; }
  .pp-card-media::before { width: 82%; }
  .pp-quote-page-hero { padding-block: 26px 28px; }
  .pp-quote-page-intro { display: grid; gap: 14px; padding: 16px; }
  .pp-quote-page-intro .pp-button { width: 100%; }
  .pp-quote-picker-card .pp-quote-picker,
  .pp-quote-selection--page { padding: 13px; border-radius: 15px; }
  .pp-quote-segments { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pp-quote-lines,
  .pp-quote-products,
  .pp-quote-variants { grid-template-columns: minmax(0,1fr); }
  .pp-quote-search { grid-template-columns: minmax(0,1fr); gap: 5px; }
  .pp-quote-item-controls { grid-template-columns: 70px 70px minmax(0,1fr); }
  .pp-product-page .pp-spec-section th[scope="row"] {
    color: var(--pp-navy); background: transparent;
  }
}

/* V9.8.15 — zoom íntegro, tabelas leves, submenu completo e peso tipográfico útil. */
.pp-lightbox {
  width: min(1120px,calc(100vw - 24px));
  height: min(920px,calc(100dvh - 24px));
  max-height: calc(100dvh - 24px);
}
.pp-lightbox[open] {
  display: grid;
  grid-template-rows: auto minmax(0,1fr) auto;
}
.pp-lightbox-stage {
  width: 100%;
  height: auto;
  min-width: 0;
  min-height: 0;
  padding: clamp(12px,2.4vw,26px);
}
.pp-lightbox-image {
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.pp-lightbox-caption {
  max-height: 76px;
  overflow: auto;
  padding: 11px 18px 14px;
  font-size: .82rem;
  line-height: 1.4;
}

.pp-editorial-table,
.pp-content .pp-spec-table {
  width: 100%;
  table-layout: fixed;
  border: 0;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.pp-editorial-table-wrap,
.pp-spec-table-wrap {
  overflow: hidden;
  border: 1px solid #dfe8ee;
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(8,43,76,.055);
}
.pp-editorial-table th,
.pp-editorial-table td,
.pp-content .pp-spec-table th,
.pp-content .pp-spec-table td {
  padding: 13px 16px;
  border: 0;
  border-bottom: 1px solid #e5edf2;
  color: #294257;
  background: #fff;
  font-size: .92rem;
  font-weight: 450;
  line-height: 1.5;
  text-align: left;
  vertical-align: top;
}
.pp-editorial-table thead th {
  color: #203b51;
  background: #eef4f7;
  font-size: .82rem;
  font-weight: 600;
}
.pp-editorial-table tbody th[scope="row"],
.pp-product-page .pp-spec-section th[scope="row"] {
  width: 34%;
  color: #203b51;
  background: #f7fafb;
  font-weight: 600;
}
.pp-editorial-table tbody tr:nth-child(even) td { background: #fbfcfd; }
.pp-editorial-table tr:last-child > *,
.pp-content .pp-spec-table tbody:last-child tr:last-child > * { border-bottom: 0; }
.pp-product-page .pp-spec-section .pp-spec-group-row th {
  padding: 10px 16px;
  color: #365168;
  background: #edf4f7;
  font-size: .76rem;
  font-weight: 600;
  letter-spacing: .02em;
  text-transform: none;
}
.pp-product-page .pp-spec-section tbody + tbody { border-top: 7px solid #fff; }

.pp-button,
.pp-card-action,
.pp-line-card-action,
.pp-mega-group-overview,
.pp-image-protection-links a { font-weight: 650 !important; }
.pp-eyebrow,
.pp-kicker,
.pp-card-context,
.pp-line-card-copy > span,
.pp-context-chips > span { font-weight: 650; }
.pp-product-page .pp-quick-specs dt,
.pp-card-facts dt,
.pp-commercial-identity dt { font-weight: 550; }
.pp-product-page .pp-quick-specs dd,
.pp-card-facts dd { font-weight: 600; }
.pp-content strong,
.pp-editorial-section strong,
.pp-faq summary { font-weight: 650; }

@media (max-width: 1279px) {
  .pp-mega-group[open] { grid-column: auto; }
  .pp-mega-group > .pp-mega-group-body { display: block; }
  .pp-mega-group ul { grid-template-columns: minmax(0,1fr); }
}

@media (max-width: 720px) {
  .pp-lightbox { width: calc(100vw - 12px); height: calc(100dvh - 12px); max-height: calc(100dvh - 12px); border-radius: 17px; }
  .pp-lightbox-bar { min-height: 52px; padding: 7px 12px; }
  .pp-lightbox-bar strong { max-width: calc(100% - 52px); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 600; }
  .pp-lightbox-stage { padding: 9px; }
  .pp-lightbox-caption { max-height: 62px; padding: 8px 12px 10px; font-size: .74rem; }

  .pp-editorial-table-wrap { overflow: visible; border: 0; background: transparent; box-shadow: none; }
  .pp-editorial-table,
  .pp-editorial-table tbody,
  .pp-editorial-table tr,
  .pp-editorial-table th,
  .pp-editorial-table td { display: block; width: 100%; min-width: 0; }
  .pp-editorial-table thead {
    position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden;
    clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;
  }
  .pp-editorial-table tbody { display: grid; gap: 12px; }
  .pp-editorial-table tr {
    overflow: hidden; border: 1px solid #dfe8ee; border-radius: 13px;
    background: #fff; box-shadow: 0 5px 16px rgba(8,43,76,.045);
  }
  .pp-editorial-table tbody th[scope="row"] {
    width: 100%; padding: 11px 13px; border-bottom: 1px solid #dfe8ee;
    color: #203b51; background: #eef4f7; font-size: .9rem; font-weight: 600;
  }
  .pp-editorial-table td {
    display: grid; grid-template-columns: minmax(92px,.72fr) minmax(0,1.28fr); gap: 10px;
    padding: 10px 13px; background: #fff; font-size: .84rem;
  }
  .pp-editorial-table td::before {
    content: attr(data-label); color: #5b6d7c; font-size: .72rem; font-weight: 600;
  }

  .pp-spec-table-wrap { overflow: visible; border: 0; background: transparent; box-shadow: none; }
  .pp-spec-section .pp-spec-table tbody { display: grid; gap: 7px; }
  .pp-spec-section .pp-spec-table tbody + tbody { margin-top: 14px; border-top: 0; }
  .pp-spec-section .pp-spec-table tr:not(.pp-spec-group-row) {
    display: grid; grid-template-columns: minmax(108px,.78fr) minmax(0,1.22fr); gap: 11px;
    padding: 10px 12px; border: 1px solid #e1e9ee; border-radius: 11px; background: #fff;
  }
  .pp-spec-section .pp-spec-table th,
  .pp-spec-section .pp-spec-table td { padding: 0; border: 0; background: transparent; font-size: .82rem; }
  .pp-product-page .pp-spec-section .pp-spec-table th[scope="row"] { width: auto; background: transparent; font-weight: 600; }
  .pp-spec-section .pp-spec-table td { color: #4c6274; }
  .pp-product-page .pp-spec-section .pp-spec-group-row th {
    padding: 8px 11px; border-radius: 9px; background: #edf4f7; font-size: .74rem;
  }
}

@media (max-width: 620px) {
  .pp-nav { inset: 68px 0 auto; max-height: calc(100dvh - 68px); padding: 16px 18px 20px; }
  .pp-mega-solutions, .pp-mega-groups { grid-template-columns: 1fr; }
  .pp-mega-group li a { min-height: 44px; }
}

/* V9.1 — upgrade editorial V8.6 em cinco camadas e lista de cotação por sessão */
html.pp-dialog-open, html.pp-dialog-open body { overflow: hidden; }
.pp-button--quote {
  color: var(--pp-navy); border: 1px solid color-mix(in srgb,var(--pp-blue) 30%,var(--pp-line));
  background: #eef7fb; box-shadow: none;
}
.pp-button--quote:hover { color: var(--pp-navy); background: #e3f3f9; box-shadow: 0 8px 18px rgba(8,43,76,.12); }
.pp-button--quote.is-added { color: #173007; border-color: var(--pp-lime); background: #eef8c7; }
.pp-card-bottom {
  display: flex; align-items: center; justify-content: space-between; gap: 10px;
  margin-top: auto; padding-top: 14px;
}
.pp-section-tools { display: flex; align-items: center; flex-wrap: wrap; justify-content: flex-end; gap: 10px; }
.pp-card-bottom .pp-card-action { margin: 0; padding: 0; }
.pp-quote-add--card {
  position: relative; z-index: 3; min-height: 44px; padding: 7px 11px;
  font-size: .76rem; font-weight: 700;
}
.pp-commercial-identity dl { margin: 0; }
.pp-commercial-identity dl div {
  display: grid; grid-template-columns: minmax(140px,.36fr) minmax(0,1fr); gap: 14px;
  padding: 14px 16px; border: 1px solid var(--pp-line); border-radius: 14px; background: #f7fbfc;
}
.pp-commercial-identity dt { color: var(--pp-muted); font-size: .78rem; font-weight: 700; }
.pp-commercial-identity dd { margin: 0; overflow-wrap: anywhere; color: var(--pp-navy); font-weight: 650; }
.pp-commercial-identity ul { margin: 14px 0 0; padding-left: 20px; }
.pp-commercial-identity li + li { margin-top: 7px; }
.pp-commercial-identity li span { color: var(--pp-navy); font-weight: 650; }
@media (max-width: 620px) {
  .pp-card-bottom { align-items: end; }
  .pp-quote-add--card { min-height: 44px; padding-inline: 9px; }
  .pp-commercial-identity dl div { grid-template-columns: 1fr; gap: 4px; }
  .pp-section-tools { justify-content: flex-start; }
}

/* V9.2 — marca preservada, cotação hierárquica, WhatsApp e densidade interna */
.pp-logo { display: inline-flex; align-items: center; min-width: 178px; }
.pp-logo img { display: block; width: 186px; height: auto; max-width: 100%; filter: none; }

.pp-button--whatsapp {
  color: #063724; background: var(--pp-whatsapp);
  box-shadow: 0 10px 22px rgba(37,211,102,.25);
}
.pp-button--whatsapp:hover {
  color: #042a1b; background: var(--pp-whatsapp-hover);
  box-shadow: 0 14px 28px rgba(37,211,102,.32);
}
.pp-whatsapp-mark {
  width: 24px; height: 24px; display: inline-grid; place-items: center; flex: 0 0 24px;
  border: 0; border-radius: 0;
}
.pp-whatsapp-mark svg { width: 24px; height: 24px; fill: currentColor; }
.pp-footer-inline-whatsapp {
  min-height: 44px; padding: 7px 12px; color: #063724 !important; font-size: .86rem;
}
.pp-whatsapp-float {
  position: fixed; z-index: 73; right: 19px; bottom: 18px; width: 56px; height: 56px;
  display: grid; place-items: center; border: 2px solid rgba(255,255,255,.92); border-radius: 50%;
  color: #063724; background: var(--pp-whatsapp); box-shadow: 0 15px 34px rgba(4,54,36,.28);
  transition: transform .2s ease, background .2s ease, opacity .18s ease, visibility .18s ease;
}
.pp-whatsapp-float:hover { transform: translateY(-3px) scale(1.03); background: var(--pp-whatsapp-hover); }
.pp-whatsapp-float svg { display: block; width: 35px; height: 35px; fill: currentColor; }
.pp-page-hero, .pp-master-hero, .pp-line-hero, .pp-product-hero { position: relative; }
.pp-page-hero { padding: 42px 0 36px; }
.pp-hero h1, .pp-page-hero h1, .pp-master-hero h1, .pp-line-hero h1, .pp-product-copy h1 {
  font-weight: 650; letter-spacing: -.035em;
}
.pp-page-hero h1 { margin: 12px 0 13px; font-size: clamp(2.1rem,3.8vw,3.4rem); line-height: 1.02; }
.pp-page-hero p { margin: 0; }
.pp-page-hero::after,
.pp-master-hero::before,
.pp-line-hero::before,
.pp-product-hero::before {
  content: ""; position: absolute; z-index: 2; right: 0; bottom: 0; left: 0; height: 5px;
  background: linear-gradient(90deg,var(--pp-lime) 0 22%,var(--pp-cyan) 22% 48%,var(--pp-orange) 48% 72%,var(--pp-context-accent) 72% 100%);
  pointer-events: none;
}
.pp-master-hero, .pp-line-hero { padding-bottom: 42px; }
.pp-internal-page .pp-page-hero + .pp-section { padding-top: 30px; }
.pp-internal-page .pp-master-hero + .pp-section,
.pp-internal-page .pp-line-hero + .pp-section,
.pp-internal-page .pp-product-hero + .pp-section { padding-top: 36px; }
.pp-internal-page .pp-section { padding-block: 42px; }
.pp-internal-page .pp-section-head { margin-bottom: 20px; }
.pp-copy-group h2 + p, .pp-commercial-cta h2 + p { margin-top: 0; }

@media (max-width: 620px) {
  .pp-logo { min-width: 0; }
  .pp-logo img { width: 150px; }
  .pp-page-hero { padding: 27px 0 25px; }
  .pp-page-hero h1 { margin: 8px 0 10px; font-size: clamp(1.85rem,8.2vw,2.2rem); }
  .pp-internal-page .pp-page-hero + .pp-section,
  .pp-internal-page .pp-master-hero + .pp-section,
  .pp-internal-page .pp-line-hero + .pp-section,
  .pp-internal-page .pp-product-hero + .pp-section { padding-top: 25px; }
  .pp-internal-page .pp-section { padding-block: 35px; }
  .pp-whatsapp-float { right: 10px; bottom: 10px; width: 52px; height: 52px; }
  .pp-whatsapp-float svg { width: 32px; height: 32px; }
}

/* V9.3 — cotação progressiva por classe, linha, modelo, cor e referência */
.pp-quote-toggle {
  position: fixed; z-index: 72; right: 18px; bottom: 84px; display: inline-flex; align-items: center; gap: 10px;
  min-height: 48px; padding: 9px 11px 9px 16px; border: 1px solid rgba(255,255,255,.3); border-radius: 999px;
  color: #fff; background: var(--pp-navy); box-shadow: 0 14px 34px rgba(8,43,76,.28); font-weight: 700;
  transition: opacity .18s ease, visibility .18s ease, transform .18s ease;
}
.pp-quote-closed-summary {
  position: fixed; z-index: 71; right: 18px; bottom: 140px; max-width: min(330px,calc(100vw - 36px));
  margin: 0; padding: 8px 11px; border: 1px solid rgba(255,255,255,.26); border-radius: 11px;
  overflow: hidden; color: #fff; background: rgba(8,43,76,.94); box-shadow: 0 10px 26px rgba(8,43,76,.2);
  font-size: .7rem; font-weight: 600; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap;
}
.pp-quote-toggle strong,
.pp-quote-mobile-nav strong,
.pp-quote-mobile-list strong {
  display: inline-grid; min-width: 26px; min-height: 26px; place-items: center; padding-inline: 5px;
  border-radius: 999px; color: #173007; background: var(--pp-lime); font-size: .72rem;
}
.pp-quote-dialog {
  width: min(1180px,calc(100vw - 30px)); max-width: 1180px; height: min(90dvh,880px); max-height: 90dvh;
  padding: 0; overflow: hidden; border: 0; border-radius: 22px; color: var(--pp-ink); background: #fff;
  box-shadow: 0 30px 90px rgba(3,24,41,.36);
}
.pp-quote-dialog[open] { display: grid; grid-template-rows: auto minmax(0,1fr) auto; }
.pp-quote-dialog::backdrop { background: rgba(3,24,41,.66); backdrop-filter: blur(3px); }
.pp-quote-dialog-head {
  display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 15px 19px;
  color: #fff; background: linear-gradient(118deg,#082b4c 0 42%,#0877c9 100%);
}
.pp-quote-dialog-head .pp-kicker { color: #d8f2ff; font-size: .68rem; font-weight: 650; }
.pp-quote-dialog-head h2 { margin: 2px 0 0; font-size: clamp(1.3rem,2.3vw,1.72rem); line-height: 1.1; }
.pp-quote-dialog-head p { margin: 4px 0 0; color: rgba(255,255,255,.8); font-size: .76rem; }
.pp-quote-dialog-head > button {
  flex: 0 0 44px; width: 44px; height: 44px; border: 1px solid rgba(255,255,255,.32); border-radius: 50%;
  color: #fff; background: rgba(255,255,255,.12); font-size: 1.45rem;
}
.pp-quote-mobile-nav { display: none; }
.pp-quote-dialog-body {
  min-height: 0; display: grid; grid-template-columns: minmax(0,1.58fr) minmax(330px,.72fr);
  overflow: hidden; background: #eef4f6;
}
.pp-quote-picker,
.pp-quote-selection { min-width: 0; min-height: 0; overflow-y: auto; overscroll-behavior: contain; }
.pp-quote-picker { padding: 17px 19px 20px; border-right: 1px solid var(--pp-line); background: #fff; }
.pp-quote-selection { padding: 17px; background: #f2f6f7; }
.pp-quote-step-head { display: flex; align-items: flex-start; gap: 9px; }
.pp-quote-step-number {
  display: inline-grid; flex: 0 0 28px; width: 28px; height: 28px; place-items: center;
  border-radius: 50%; color: #fff; background: var(--pp-navy); font-size: .72rem; font-weight: 750;
}
.pp-quote-step-head h3,
.pp-quote-step-head h4 { margin: 0; color: var(--pp-navy); font-size: .96rem; line-height: 1.2; }
.pp-quote-step-head p { margin: 2px 0 0; color: var(--pp-muted); font-size: .7rem; line-height: 1.35; }
.pp-quote-segments { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; margin-top: 10px; }
.pp-quote-segments button {
  position: relative; min-width: 0; min-height: 54px; display: grid; align-content: center; gap: 2px;
  padding: 8px 10px 8px 14px; overflow: hidden; border: 1px solid var(--pp-line); border-radius: 11px;
  color: var(--pp-navy); background: #fff; text-align: left;
}
.pp-quote-segments button::before {
  content: ""; position: absolute; inset: 0 auto 0 0; width: 6px; background: var(--quote-accent);
}
.pp-quote-segment-name { overflow-wrap: anywhere; font-size: .76rem; font-weight: 650; line-height: 1.15; }
.pp-quote-segments small { color: var(--pp-muted); font-size: .64rem; }
.pp-quote-segments button.is-active {
  border-color: var(--quote-accent); background: color-mix(in srgb,var(--quote-accent) 10%,#fff);
  box-shadow: inset 0 0 0 1px var(--quote-accent), 0 4px 12px rgba(8,43,76,.08);
}
.pp-quote-search {
  display: grid; grid-template-columns: auto minmax(220px,1fr); align-items: center; gap: 12px;
  margin: 13px 0 0; padding: 9px 11px; border: 1px solid #d9e5eb; border-radius: 11px; background: #f5f9fa;
  color: var(--pp-navy); font-size: .69rem; font-weight: 650;
}
.pp-quote-search input {
  width: 100%; min-height: 40px; padding: 7px 10px; border: 1px solid #bdcfda; border-radius: 9px;
  color: var(--pp-ink); background: #fff; font-size: .8rem; font-weight: 450;
}
.pp-quote-segment-panel { --quote-accent: var(--pp-blue); }
.pp-quote-stage { margin-top: 15px; padding-top: 14px; border-top: 1px solid #dfe8ed; }
.pp-quote-lines { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; margin-top: 9px; }
.pp-quote-lines button {
  min-width: 0; min-height: 48px; display: grid; align-content: center; gap: 2px; padding: 7px 9px;
  border: 1px solid #cbdbe4; border-radius: 9px; color: var(--pp-navy); background: #f8fbfc; text-align: left;
}
.pp-quote-lines button span { overflow-wrap: anywhere; font-size: .72rem; font-weight: 650; line-height: 1.18; }
.pp-quote-lines button small { color: var(--pp-muted); font-size: .61rem; }
.pp-quote-lines button.is-active {
  border-color: var(--quote-accent); background: color-mix(in srgb,var(--quote-accent) 9%,#fff);
  box-shadow: inset 4px 0 0 var(--quote-accent);
}
.pp-quote-products { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; margin-top: 10px; }
.pp-quote-product { min-width: 0; padding: 11px; border: 1px solid #d5e2e8; border-radius: 12px; background: #f9fbfc; }
.pp-quote-product-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.pp-quote-product-head h5 { margin: 0; font-size: .8rem; line-height: 1.25; }
.pp-quote-product-head h5 a { color: var(--pp-navy); }
.pp-quote-product-head code {
  display: inline-block; margin-top: 4px; color: #006aa9; font-family: ui-monospace,SFMono-Regular,Consolas,monospace;
  font-size: .65rem; font-weight: 750;
}
.pp-quote-product-link { flex: 0 0 auto; color: #006aa9; font-size: .64rem; font-weight: 650; }
.pp-quote-variants { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6px; margin-top: 9px; }
.pp-quote-variant {
  min-width: 0; min-height: 52px; display: grid; grid-template-columns: 28px minmax(0,1fr) auto; align-items: center; gap: 7px;
  padding: 7px; border: 1px solid #bfd1dc; border-radius: 10px; color: #12344d; background: #fff; text-align: left;
}
.pp-quote-variant:hover { border-color: var(--pp-blue); background: #eef8fd; }
.pp-quote-variant.is-added,
.pp-quote-variant:disabled {
  opacity: 1; color: #173007; border-color: #83ad19; background: #f1f8d6; cursor: default;
}
.pp-quote-swatch {
  width: 28px; height: 28px; display: inline-block; flex: 0 0 28px; border: 1px solid rgba(8,43,76,.24);
  border-radius: 50%; background: var(--quote-swatch); box-shadow: inset 0 0 0 2px rgba(255,255,255,.42);
}
.pp-quote-swatch--light { border-color: #9eabb3; }
.pp-quote-swatch--crystal {
  background: conic-gradient(from 45deg,#e7eef2 25%,#fff 0 50%,#e7eef2 0 75%,#fff 0) 0 0/10px 10px;
}
.pp-quote-variant-copy { min-width: 0; display: grid; gap: 2px; }
.pp-quote-option-name { overflow-wrap: anywhere; font-size: .69rem; font-weight: 600; line-height: 1.12; }
.pp-quote-variant-copy code {
  overflow-wrap: anywhere; color: #006aa9; font-family: ui-monospace,SFMono-Regular,Consolas,monospace;
  font-size: .62rem; font-weight: 750; line-height: 1.12;
}
.pp-quote-variant-action { color: #006aa9; font-size: .6rem; font-weight: 650; }
.pp-quote-variant.is-added .pp-quote-variant-action { color: #436000; }
.pp-quote-filter-empty { margin: 14px 0 0; padding: 16px; border-radius: 10px; color: var(--pp-muted); background: #f5f8f9; text-align: center; }
.pp-quote-feedback { min-height: 18px; margin: 9px 0 0; color: #326000; font-size: .7rem; font-weight: 650; }
.pp-quote-selection-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; margin-bottom: 11px; }
.pp-quote-selection-head h3 { margin: 0; color: var(--pp-navy); font-size: 1rem; }
.pp-quote-selection-head h3 span {
  display: inline-grid; min-width: 24px; min-height: 24px; place-items: center; margin-left: 4px; padding-inline: 5px;
  border-radius: 999px; color: #173007; background: var(--pp-lime); font-size: .68rem;
}
.pp-quote-selection-head p { margin: 3px 0 0; color: var(--pp-muted); font-size: .7rem; }
.pp-quote-selection-head button {
  min-height: 36px; padding: 6px 9px; border: 1px solid #d7a8a8; border-radius: 8px; color: #7f2424;
  background: #fff7f7; font-size: .67rem; font-weight: 650;
}
.pp-quote-selection-head button:disabled { opacity: .45; cursor: default; }
.pp-quote-items { display: grid; gap: 8px; }
.pp-quote-empty { margin: 0; padding: 25px 14px; border: 1px dashed #bfd0da; border-radius: 11px; color: var(--pp-muted); background: #fff; text-align: center; font-size: .78rem; }
.pp-quote-item { padding: 10px; border: 1px solid #d2dfe6; border-radius: 11px; background: #fff; }
.pp-quote-item-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 9px; }
.pp-quote-item-identity { min-width: 0; }
.pp-quote-item h3 { margin: 0; overflow-wrap: anywhere; color: var(--pp-navy); font-size: .75rem; line-height: 1.2; }
.pp-quote-item-identity p { margin: 3px 0 0; color: var(--pp-muted); font-size: .6rem; line-height: 1.25; }
.pp-quote-item-reference { display: flex; align-items: center; gap: 6px; margin-top: 6px; }
.pp-quote-item-reference .pp-quote-swatch { width: 20px; height: 20px; flex-basis: 20px; }
.pp-quote-reference {
  min-width: 0; overflow-wrap: anywhere; color: #005f99; font-family: ui-monospace,SFMono-Regular,Consolas,monospace;
  font-size: .62rem; font-weight: 750; line-height: 1.2;
}
.pp-quote-remove {
  flex: 0 0 34px; width: 34px; height: 34px; padding: 0; border: 1px solid #e0b2b2; border-radius: 8px;
  color: #842525; background: #fff6f6; font-size: 1.12rem; line-height: 1;
}
.pp-quote-item-controls { display: grid; grid-template-columns: 82px minmax(0,1fr); gap: 7px; margin-top: 9px; }
.pp-quote-field { min-width: 0; color: var(--pp-muted); font-size: .59rem; font-weight: 650; line-height: 1.1; }
.pp-quote-field input {
  width: 100%; min-width: 0; height: 38px; margin-top: 4px; padding: 6px 8px; border: 1px solid #bdced8;
  border-radius: 8px; color: var(--pp-ink); background: #fff; font-size: .72rem; font-weight: 450;
}
.pp-quote-dialog-foot {
  display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 11px 18px 13px;
  border-top: 1px solid var(--pp-line); background: #fff;
}
.pp-quote-dialog-foot > p { max-width: 420px; margin: 0; color: var(--pp-muted); font-size: .7rem; line-height: 1.3; }
.pp-quote-dialog-foot .pp-actions { justify-content: flex-end; margin: 0; }
.pp-quote-dialog-foot .pp-button { min-height: 42px; padding: 8px 12px; font-size: .75rem; }
.pp-quote-whatsapp { color: #063724; }
.pp-quote-whatsapp .pp-whatsapp-mark { width: 20px; height: 20px; flex-basis: 20px; }
.pp-quote-whatsapp .pp-whatsapp-mark svg { width: 20px; height: 20px; }
.pp-quote-mobile-list { display: none; }

@media (max-width: 820px) {
  .pp-quote-dialog { width: calc(100vw - 12px); height: 96dvh; max-height: 96dvh; border-radius: 17px; }
  .pp-quote-dialog[open] { grid-template-rows: auto auto minmax(0,1fr) auto; }
  .pp-quote-dialog-head { padding: 12px 13px; }
  .pp-quote-dialog-head h2 { font-size: clamp(1.15rem,5.4vw,1.45rem); }
  .pp-quote-dialog-head p { display: none; }
  .pp-quote-mobile-nav {
    display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6px; padding: 7px 9px;
    border-bottom: 1px solid var(--pp-line); background: #f4f8f9;
  }
  .pp-quote-mobile-nav button {
    min-height: 44px; display: inline-flex; align-items: center; justify-content: center; gap: 7px;
    border: 1px solid #c7d8e1; border-radius: 9px; color: var(--pp-navy); background: #fff; font-size: .74rem; font-weight: 650;
  }
  .pp-quote-mobile-nav button.is-active { color: #fff; border-color: var(--pp-navy); background: var(--pp-navy); }
  .pp-quote-dialog-body { display: block; overflow: hidden; }
  .pp-quote-picker,
  .pp-quote-selection { height: 100%; padding: 13px; border: 0; overflow-y: auto; }
  .pp-quote-dialog[data-quote-mobile-view="picker"] .pp-quote-selection,
  .pp-quote-dialog[data-quote-mobile-view="selection"] .pp-quote-picker { display: none; }
  .pp-quote-segments,
  .pp-quote-lines { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pp-quote-products { grid-template-columns: 1fr; }
  .pp-quote-search { grid-template-columns: 1fr; gap: 5px; }
  .pp-quote-dialog-foot { display: block; padding: 9px; }
  .pp-quote-dialog-foot > p { display: none; }
  .pp-quote-dialog-foot .pp-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; }
  .pp-quote-dialog-foot .pp-button { width: 100%; min-height: 44px; justify-content: center; padding-inline: 8px; }
}

@media (max-width: 520px) {
  .pp-quote-toggle { right: 70px; bottom: 10px; min-height: 46px; padding: 8px 10px 8px 13px; font-size: .8rem; }
  .pp-quote-toggle > span { font-size: 0; }
  .pp-quote-toggle > span::after { content: "Cotação"; font-size: .78rem; }
  .pp-quote-closed-summary { right: 10px; bottom: 68px; max-width: calc(100vw - 20px); }
  .pp-quote-segments button { min-height: 50px; padding-left: 12px; }
  .pp-quote-lines { grid-template-columns: 1fr; }
  .pp-quote-variants { grid-template-columns: 1fr; }
  .pp-quote-variant { min-height: 50px; }
  .pp-quote-item-controls { grid-template-columns: 76px minmax(0,1fr); }
  .pp-quote-whatsapp { grid-column: 1 / -1; }
  .pp-quote-dialog-foot .pp-actions { grid-template-columns: 1fr; }
  .pp-product-page.pp-native-product-actions-visible .pp-whatsapp-float,
  .pp-product-page.pp-native-product-actions-visible .pp-quote-toggle,
  .pp-product-page.pp-native-product-actions-visible .pp-quote-closed-summary {
    visibility: hidden; opacity: 0; pointer-events: none; transform: translateY(10px);
  }
}

/* V9.4 — revalidação total R2: identidade comercial, cotação sob demanda e maior densidade */
.pp-button--quote.pp-button--primary {
  color: #173007; border-color: #9bc52b; background: var(--pp-lime);
  box-shadow: 0 10px 22px rgba(151,190,41,.24);
}
.pp-button--quote.pp-button--primary:hover {
  color: #102405; border-color: #86ad1f; background: #c7e95d;
  box-shadow: 0 13px 26px rgba(151,190,41,.3);
}
.pp-commercial-identity dl { display: grid; gap: 8px; }
.pp-commercial-identity code {
  color: #005f99; font-family: ui-monospace,SFMono-Regular,Consolas,monospace;
  font-size: .9rem; font-weight: 750;
}
.pp-field-note { margin-top: 10px; color: var(--pp-muted); font-size: .84rem; }
.pp-quote-variant-copy small { color: var(--pp-muted); font-size: .61rem; line-height: 1.2; }
.pp-quote-item-controls { grid-template-columns: 82px 86px minmax(0,1fr); }
.pp-quote-unit {
  min-width: 0; display: grid; align-content: end; color: var(--pp-muted);
  font-size: .59rem; font-weight: 650; line-height: 1.1;
}
.pp-quote-unit strong {
  min-height: 38px; display: flex; align-items: center; margin-top: 4px; padding: 6px 8px;
  border: 1px solid #d1dde3; border-radius: 8px; color: var(--pp-navy);
  background: #f3f7f8; font-size: .7rem; font-weight: 650;
}

@media (max-width: 520px) {
  .pp-quote-item-controls { grid-template-columns: 72px 70px minmax(0,1fr); }
}

/* V9.4.1 — pente-fino: hub editorial, downloads e densidade sem blocos vazios */
.pp-site:not(.pp-internal-page) .pp-section { padding-block: 52px; }
.pp-internal-page .pp-section.pp-section--compact { padding-block: 24px; }
.pp-content-jump {
  display: flex; align-items: center; flex-wrap: wrap; gap: 8px;
}
.pp-content-jump > span { margin-right: 3px; color: var(--pp-muted); font-size: .82rem; font-weight: 650; }
.pp-content-jump a {
  min-height: 44px; display: inline-flex; align-items: center; padding: 8px 12px;
  border: 1px solid var(--pp-line); border-radius: 999px; color: var(--pp-navy);
  background: #fff; font-size: .8rem; font-weight: 650;
}
.pp-content-jump a:hover { border-color: var(--pp-blue); color: var(--pp-blue-ink); }
.pp-content-count { margin: 10px 0 0; color: var(--pp-muted); font-size: .82rem; }
.pp-content-index { padding-top: 30px !important; }
.pp-content-cluster { scroll-margin-top: 98px; }
.pp-content-cluster + .pp-content-cluster { margin-top: 34px; padding-top: 32px; border-top: 1px solid var(--pp-line); }
.pp-content-card-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.pp-content-card { min-width: 0; border: 1px solid var(--pp-line); border-radius: 17px; background: #fff; box-shadow: 0 7px 20px rgba(8,43,76,.055); }
.pp-content-card a { min-height: 100%; display: flex; overflow: hidden; flex-direction: column; }
.pp-content-card-media { display: block; aspect-ratio: 16 / 9; overflow: hidden; background: #e9eef1; }
.pp-content-card-media img { width: 100%; height: 100%; display: block; object-fit: contain; }
.pp-content-card-copy { min-height: 170px; display: flex; flex: 1; flex-direction: column; padding: 17px 18px; }
.pp-content-card h3 { margin: 0; color: var(--pp-navy); font-size: 1.06rem; font-weight: 650; line-height: 1.24; }
.pp-content-card p {
  display: -webkit-box; margin: 8px 0 12px; overflow: hidden; color: var(--pp-muted);
  font-size: .84rem; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 3;
}
.pp-content-card-link { margin-top: auto; color: var(--pp-blue-ink); font-size: .82rem; font-weight: 650; }
.pp-download-request {
  display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 28px;
  padding: 24px; border: 1px solid var(--pp-line); border-left: 5px solid var(--pp-blue);
  border-radius: 20px; background: #fff; box-shadow: 0 8px 26px rgba(8,43,76,.06);
}
.pp-download-request h2 { margin: 4px 0 8px; color: var(--pp-navy); font-size: clamp(1.45rem,3vw,2.1rem); line-height: 1.12; }
.pp-download-request p:last-child { max-width: 760px; margin: 0; color: var(--pp-muted); }
.pp-download-request .pp-actions { justify-content: flex-end; margin: 0; }
.pp-help-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.pp-help-card {
  display: flex; min-width: 0; flex-direction: column; padding: 22px;
  border: 1px solid var(--pp-line); border-radius: 18px; background: #fff;
  box-shadow: 0 10px 28px rgba(8,43,76,.06);
}
.pp-help-card h2 { margin: 0 0 8px; font-size: 1.13rem; }
.pp-help-card p { margin: 0 0 17px; color: var(--pp-muted); font-size: .93rem; line-height: 1.55; }
.pp-help-card a { margin-top: auto; color: var(--pp-blue); font-weight: 800; }
.pp-article-body {
  max-width: 920px; margin-inline: auto; padding: clamp(24px,4vw,44px);
  border: 1px solid var(--pp-line); border-radius: 22px; background: #fff;
  box-shadow: 0 14px 38px rgba(8,43,76,.07);
}
.pp-article-cover {
  max-width: 920px; margin: 0 auto 18px; overflow: hidden;
  border: 1px solid var(--pp-line); border-radius: 22px; background: #fff;
  box-shadow: 0 14px 38px rgba(8,43,76,.07);
}
.pp-article-cover img { width: 100%; height: auto; display: block; }
.pp-article-body h2 { margin: 32px 0 10px; color: var(--pp-navy); font-size: clamp(1.35rem,2.7vw,1.85rem); line-height: 1.16; }
.pp-article-body h2:first-child { margin-top: 0; }
.pp-article-body h3 { margin: 24px 0 8px; color: var(--pp-navy); font-size: 1.08rem; line-height: 1.28; }
.pp-article-body p { margin: 0 0 18px; color: #29435a; line-height: 1.72; }
.pp-article-body ul, .pp-article-body ol { display: grid; gap: 8px; margin: 4px 0 22px; padding-left: 1.25rem; color: #29435a; }
.pp-article-body li { padding-left: 4px; line-height: 1.55; }
.pp-article-body a { color: var(--pp-blue-ink); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.pp-article-body .pp-button { text-decoration: none; }
.pp-article-body .pp-button--lime { color: #173007; }
.pp-article-body .pp-button--whatsapp,
.pp-article-body .pp-button--whatsapp:hover { color: #063724; }
.pp-article-body strong { color: var(--pp-navy); font-weight: 700; }
.pp-article-table { margin: 12px 0 24px; overflow-x: auto; border: 1px solid var(--pp-line); border-radius: 14px; }
.pp-article-table table { width: 100%; min-width: 620px; border-collapse: collapse; background: #fff; }
.pp-article-table th, .pp-article-table td { padding: 12px 14px; border-bottom: 1px solid var(--pp-line); text-align: left; vertical-align: top; line-height: 1.45; }
.pp-article-table th { color: var(--pp-navy); background: #edf7fb; font-size: .84rem; font-weight: 700; }
.pp-article-table td { color: #29435a; font-size: .9rem; }
.pp-article-table tr:last-child td { border-bottom: 0; }
.pp-article-divider { margin: 30px 0 24px; border: 0; border-top: 1px solid var(--pp-line); }
.pp-article-related { margin-top: 30px; padding: 18px; border: 1px solid #cfe3ec; border-radius: 16px; background: #f4fafc; }
.pp-article-related > p { margin: 0 0 10px; color: var(--pp-navy); font-weight: 700; }
.pp-article-related ul { margin: 0; }
.pp-article-related a { font-weight: 650; }
.pp-article-actions { margin-top: 30px; padding-top: 22px; border-top: 1px solid var(--pp-line); }
.pp-article-actions-title { margin: 0 0 14px !important; color: var(--pp-navy) !important; font-size: clamp(1.2rem,2.4vw,1.55rem); font-weight: 700; line-height: 1.2 !important; }
.pp-article-actions > div { display: flex; flex-wrap: wrap; gap: 10px; }
.pp-error-area-links { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin-top: 12px; }
.pp-error-area-links a {
  min-height: 44px; display: flex; align-items: center; justify-content: center; padding: 8px 11px;
  border: 1px solid var(--pp-line); border-radius: 12px; color: var(--pp-navy); background: #fff;
  font-size: .82rem; font-weight: 650; text-align: center;
}
.pp-footer-bottom { display: flex; align-items: center; flex-wrap: wrap; justify-content: space-between; gap: 10px 24px; }
.pp-footer-bottom a { min-height: 44px; display: inline-flex; align-items: center; text-decoration: underline; text-underline-offset: 3px; }

@media (max-width: 920px) {
  .pp-product-layout { grid-template-columns: minmax(0,1fr); }
  .pp-product-layout > * { min-width: 0; }
}

@media (max-width: 720px) {
  .pp-site:not(.pp-internal-page) .pp-section { padding-block: 38px; }
  .pp-internal-page .pp-section.pp-section--compact { padding-block: 18px; }
  .pp-content-index { padding-top: 22px !important; }
  .pp-content-card-grid { grid-template-columns: 1fr; }
  .pp-content-cluster + .pp-content-cluster { margin-top: 26px; padding-top: 24px; }
  .pp-content-cluster .pp-section-head { display: flex; align-items: flex-end; gap: 10px; }
  .pp-content-cluster .pp-section-head h2 { font-size: 1.4rem; }
  .pp-content-card-copy { min-height: 0; padding: 15px 16px; }
  .pp-download-request { grid-template-columns: 1fr; gap: 18px; padding: 19px; }
  .pp-download-request .pp-actions { display: grid; grid-template-columns: 1fr; }
  .pp-download-request .pp-button { width: 100%; }
  .pp-help-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pp-error-area-links { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pp-footer-bottom { display: block; }
  .pp-footer-bottom a { margin-top: 8px; }
}
@media (max-width: 620px) {
  .pp-help-grid { grid-template-columns: minmax(0,1fr); gap: 11px; }
  .pp-help-card { padding: 18px; }
  .pp-article-body { padding: 20px 18px; border-radius: 18px; }
  .pp-article-cover { border-radius: 18px; }
  .pp-article-body h2 { margin-top: 25px; }
  .pp-article-table { overflow: visible; border: 0; border-radius: 0; }
  .pp-article-table table,
  .pp-article-table tbody,
  .pp-article-table tr,
  .pp-article-table td { display: block; width: 100%; min-width: 0; }
  .pp-article-table thead {
    position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden;
    clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;
  }
  .pp-article-table tbody { display: grid; gap: 11px; }
  .pp-article-table tr {
    overflow: hidden; border: 1px solid #dce7ed; border-radius: 13px;
    background: #fff; box-shadow: 0 5px 16px rgba(8,43,76,.045);
  }
  .pp-article-table td {
    display: grid; grid-template-columns: minmax(96px,.72fr) minmax(0,1.28fr); gap: 10px;
    padding: 10px 12px; border: 0; color: #29435a; background: #fff; font-size: .84rem;
  }
  .pp-article-table td + td { border-top: 1px solid #e5ecef; }
  .pp-article-table td:first-child { color: var(--pp-navy); background: #f3f8fa; font-weight: 650; }
  .pp-article-table td::before {
    content: attr(data-label); color: #5b6d7c; font-size: .71rem; font-weight: 650;
  }
  .pp-article-actions > div { display: grid; grid-template-columns: minmax(0,1fr); }
  .pp-article-actions .pp-button { width: 100%; }
}

/* Pente-fino funcional: tabelas e títulos contidos nas telas mais estreitas. */
.pp-product-copy h1 { overflow-wrap: anywhere; hyphens: auto; }
.pp-table-wrap:focus-visible { outline: 3px solid var(--pp-blue); outline-offset: 3px; }

@media (min-width: 921px) {
  .pp-product-grid { grid-template-columns: repeat(auto-fill,minmax(260px,1fr)); }
}

@media (max-width: 620px) {
  .pp-spec-section .pp-table-wrap { overflow: visible; }
  .pp-spec-section table, .pp-spec-section tbody, .pp-spec-section tr,
  .pp-spec-section th, .pp-spec-section td {
    display: block; width: 100%; min-width: 0;
  }
  .pp-spec-section tr { padding: 11px 0; border-bottom: 1px solid var(--pp-line); }
  .pp-spec-section tr:first-child { padding-top: 0; }
  .pp-spec-section tr:last-child { padding-bottom: 0; border-bottom: 0; }
  .pp-spec-section th, .pp-spec-section td { padding: 2px 0; border: 0; overflow-wrap: anywhere; }
  .pp-spec-section th { color: var(--pp-navy); background: transparent; font-size: .78rem; }
  .pp-spec-section td { color: var(--pp-muted); font-size: .9rem; }
}

/* V9.4.2 — recortes intermediários e vidro luminoso com contraste preservado */
.pp-mega-panel {
  background:
    radial-gradient(circle at 10% 0%, rgba(24,183,223,.11), transparent 31%),
    radial-gradient(circle at 92% 100%, rgba(184,212,50,.10), transparent 28%),
    rgba(248,252,254,.988);
  -webkit-backdrop-filter: blur(22px) saturate(1.18);
  backdrop-filter: blur(22px) saturate(1.18);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.92), 0 26px 55px rgba(8,43,76,.18);
}
.pp-mega-group {
  border: 1px solid rgba(255,255,255,.82);
  background: linear-gradient(145deg,color-mix(in srgb,var(--item-soft) 78%,rgba(255,255,255,.88)),rgba(255,255,255,.92));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.88), 0 8px 22px rgba(8,43,76,.055);
  -webkit-backdrop-filter: blur(12px) saturate(1.1);
  backdrop-filter: blur(12px) saturate(1.1);
}
.pp-mega-solution,
.pp-mega-group li a {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72), 0 4px 12px rgba(8,43,76,.045);
}
.pp-card,
.pp-line-card {
  background: linear-gradient(150deg,rgba(255,255,255,.96),rgba(248,252,254,.88));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.96), 0 12px 34px rgba(8,43,76,.085);
  -webkit-backdrop-filter: blur(10px) saturate(1.08);
  backdrop-filter: blur(10px) saturate(1.08);
}
.pp-card-media,
.pp-line-card-media {
  background:
    radial-gradient(circle at 24% 18%, rgba(255,255,255,.96), transparent 34%),
    linear-gradient(145deg,color-mix(in srgb,var(--item-soft,#eef8fb) 82%,white),rgba(255,255,255,.72));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.95), inset 0 -1px 0 rgba(8,43,76,.045);
}
.pp-card-image,
.pp-line-card-image,
.pp-area-image,
.pp-master-image,
.pp-line-hero-image {
  filter: drop-shadow(0 14px 15px rgba(8,43,76,.16));
}

@media (min-width: 921px) {
  .pp-product-grid .pp-card:hover,
  .pp-line-card:hover {
    box-shadow: inset 0 1px 0 rgba(255,255,255,.96), 0 20px 48px rgba(8,43,76,.14);
  }
}

@media (prefers-reduced-motion: reduce) {
  .pp-card,
  .pp-card-media img,
  .pp-line-card-image,
  .pp-mega-group li a,
  .pp-mega-solution { transition: none; }
}

/* V9.7.3 — segunda cor do mesmo produto no hover dos cards */
.pp-card-media .pp-card-image {
  grid-area: 1 / 1; min-width: 0; max-width: 100%;
}
.pp-card-image--primary {
  opacity: 1; visibility: visible;
  transition: opacity .28s ease, transform .3s ease, visibility 0s linear 0s;
}
.pp-card-image--alternate {
  opacity: 0; visibility: hidden;
  transition: opacity .28s ease, transform .3s ease, visibility 0s linear .28s;
}
@media (hover: hover) and (pointer: fine) {
  .pp-card[data-card-color-swap="true"]:is(:hover,:focus-within) .pp-card-image--primary {
    opacity: 0; visibility: hidden; transition-delay: 0s,0s,.28s;
  }
  .pp-card[data-card-color-swap="true"]:is(:hover,:focus-within) .pp-card-image--alternate {
    opacity: 1; visibility: visible; transition-delay: 0s;
  }
}
@media (prefers-reduced-motion: reduce) {
  .pp-card-image--primary,
  .pp-card-image--alternate { transition: none; }
}

/* V9.5 — R4: voz direta, especificações agrupadas e navegação móvel estável */
.pp-logo.pp-logo--text {
  min-width: 150px; color: var(--pp-navy); font-family: inherit; font-size: 1.24rem;
  font-weight: 650; line-height: 1; letter-spacing: 0; text-decoration: none;
}
.pp-hero h1 { font-size: clamp(2.5rem,3.3vw,3.35rem); }
.pp-spec-section tbody + tbody { border-top: 8px solid #fff; }
.pp-spec-section .pp-spec-group-row th {
  padding-block: 10px; color: var(--pp-navy); background: color-mix(in srgb,var(--pp-context-soft) 68%,#fff);
  font-size: .78rem; font-weight: 700; letter-spacing: .025em; text-transform: uppercase;
}
.pp-quote-dialog { overscroll-behavior: none; }
.pp-quote-picker,
.pp-quote-selection {
  touch-action: pan-y; -webkit-overflow-scrolling: touch; scrollbar-gutter: stable;
}
.pp-quote-selection-head > .pp-quote-step-head { flex: 1 1 auto; }

@media (max-width: 620px) {
  .pp-logo.pp-logo--text { min-width: 0; font-size: 1.18rem; }
  .pp-hero h1 { font-size: clamp(2.05rem,9.4vw,2.45rem); }
  .pp-spec-section .pp-spec-group-row { padding: 7px 0 5px; border-bottom: 0; }
  .pp-spec-section .pp-spec-group-row th {
    padding: 8px 10px; border-radius: 8px; background: color-mix(in srgb,var(--pp-context-soft) 68%,#fff);
  }
  .pp-spec-section tbody + tbody { border-top: 5px solid transparent; }
}

/* V9.6 — orientação técnica compacta por segmento, linha e produto */
.pp-business-guide {
  display: grid; grid-template-columns: minmax(240px,.82fr) minmax(0,1.45fr); gap: 24px;
  align-items: center; padding: 22px 24px; border: 1px solid var(--pp-line);
  border-left: 5px solid var(--pp-context-accent,var(--pp-blue)); border-radius: 18px;
  background:
    radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--pp-context-soft,#eaf7fb) 72%,transparent),transparent 38%),
    rgba(255,255,255,.96);
  box-shadow: inset 0 1px 0 #fff,0 10px 28px rgba(8,43,76,.065);
}
.pp-business-guide-copy h2 {
  margin: 3px 0 7px; color: var(--pp-navy); font-size: clamp(1.25rem,2.2vw,1.72rem); line-height: 1.14;
}
.pp-business-guide-copy > p:last-child { margin: 0; color: var(--pp-muted); font-size: .95rem; line-height: 1.55; }
.pp-business-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 9px; margin: 0; padding: 0; list-style: none; }
.pp-business-steps li {
  min-width: 0; display: grid; grid-template-columns: 27px minmax(0,1fr); gap: 8px; align-items: start;
  padding: 12px; border: 1px solid color-mix(in srgb,var(--pp-context-accent,var(--pp-blue)) 18%,var(--pp-line));
  border-radius: 12px; background: rgba(255,255,255,.84);
}
.pp-business-steps li > span {
  width: 27px; height: 27px; display: grid; place-items: center; border-radius: 50%;
  color: #fff; background: var(--pp-context-accent,var(--pp-blue)); font-size: .75rem; font-weight: 800;
}
.pp-business-steps p { margin: 1px 0 0; color: #29435a; font-size: .82rem; line-height: 1.42; }
.pp-content > .pp-business-guide { grid-template-columns: minmax(0,1fr); gap: 15px; margin: 18px 0; }
.pp-catalog-more { display: flex; justify-content: center; margin-top: 24px; }

@media (max-width: 920px) {
  .pp-business-guide { grid-template-columns: minmax(0,1fr); gap: 15px; }
}

@media (max-width: 620px) {
  .pp-business-guide { gap: 13px; padding: 17px 16px; border-radius: 15px; }
  .pp-business-guide-copy h2 { font-size: 1.28rem; }
  .pp-business-steps { grid-template-columns: minmax(0,1fr); gap: 7px; }
  .pp-business-steps li { padding: 10px 11px; }
}

/* Menu de produtos: grupos expansíveis no mobile, visão simultânea no desktop. */
.pp-mega-group > summary {
  display: flex; align-items: center; gap: 9px; min-height: 32px; color: var(--pp-navy);
  font-size: 1rem; font-weight: 650; cursor: pointer; list-style: none;
}
.pp-mega-group > summary::-webkit-details-marker { display: none; }
.pp-mega-group > summary::after {
  content: ''; width: 8px; height: 8px; margin-left: auto; border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor; transform: rotate(45deg); transition: transform .18s ease;
}
.pp-mega-group[open] > summary::after { transform: rotate(225deg); }
.pp-mega-group-body { margin-top: 8px; }
.pp-mega-group-overview {
  display: inline-flex; align-items: center; gap: 6px; min-height: 34px; margin-bottom: 4px;
  color: var(--pp-blue); font-size: .76rem; font-weight: 750;
}

@media (min-width: 1280px) {
  .pp-mega-group:not([open]) > .pp-mega-group-body { display: block; }
  .pp-mega-group > summary { cursor: default; pointer-events: none; }
  .pp-mega-group > summary::after { display: none; }
}

@media (max-width: 1279px) {
  .pp-mega-group { padding: 11px 12px; }
  .pp-mega-group > summary { min-height: 44px; }
  .pp-mega-group-body { padding-top: 2px; border-top: 1px solid color-mix(in srgb,var(--item-accent) 15%,var(--pp-line)); }
}

/* V9.7 — ficha técnica mais leve: rótulos legíveis sem caixa alta ou negrito excessivo. */
.pp-product-page .pp-quick-specs dt {
  font-size: .76rem; font-weight: 600; letter-spacing: 0; text-transform: none;
}
.pp-product-page .pp-quick-specs dd { font-weight: 650; }
.pp-product-page .pp-spec-section th[scope="row"] {
  color: var(--pp-navy); font-weight: 600; letter-spacing: 0; text-transform: none;
}
.pp-product-page .pp-spec-section .pp-spec-group-row th {
  font-weight: 650; letter-spacing: 0; text-transform: none;
}
.pp-product-page .pp-commercial-identity dt { font-weight: 600; }

/* V9.7.1 — menu compacto intermediário sem rolagem obrigatória. */
@media (min-width: 921px) and (max-width: 1279px) {
  .pp-nav { padding: 4px 20px; }
  .pp-nav .pp-button { margin-top: 2px; }
  .pp-mega-products-head { display: flex; align-items: center; margin-bottom: 6px; padding: 0; }
  .pp-mega-products-head strong { display: none; }
  .pp-mega-products-head > a { margin-top: 0; }
  .pp-mega-groups { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; }
  .pp-mega-group { padding: 0 9px; }
  .pp-mega-group[open] { grid-column: 1 / -1; }
  .pp-mega-group[open] > .pp-mega-group-body { padding-bottom: 4px; }
  .pp-mega-group ul { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

/* V9.8.0 — camada final: contraste da ficha e cotação com rolagem da página. */
@media (min-width: 621px) {
  .pp-product-page .pp-spec-section th[scope="row"] {
    color: #fff; background: var(--pp-navy); font-weight: 600;
  }
}
.pp-quote-picker-card .pp-quote-picker,
.pp-quote-selection--page { overflow: visible; }
@media (min-width: 1280px) {
  .pp-nav > a:not(.pp-button),
  .pp-nav > .pp-mega > summary { min-height: 44px; }
}
.pp-quote-search input { min-height: 44px; }

/* V9.8.2 — hero compacto com três fotos e proteção fotográfica em malha diagonal. */
.pp-hero-grid {
  min-height: 430px;
  grid-template-columns: minmax(0,1.25fr) minmax(340px,.75fr);
  gap: 38px;
  padding: 38px 0 50px;
}
.pp-hero h1 {
  max-width: 760px;
  font-size: clamp(2.35rem,3.15vw,3.2rem);
  line-height: 1.04;
}
.pp-hero-products {
  min-height: 318px;
  display: block;
  position: relative;
}
.pp-float-product {
  position: absolute;
  width: 55%;
  padding: 18px;
  border-radius: 26px;
}

.pp-card-media,
.pp-area-media,
.pp-float-product,
.pp-gallery-stage,
.pp-thumb,
.pp-lightbox-stage,
.pp-line-card-media,
.pp-master-visual,
.pp-line-visual {
  overflow: hidden;
  isolation: isolate;
}
.pp-card-media:has(img[src*="/assets/premium-v98"])::before,
.pp-area-media:has(img[src*="/assets/premium-v98"])::before,
.pp-float-product:has(img[src*="/assets/premium-v98"])::before,
.pp-gallery-stage:has(img[src*="/assets/premium-v98"])::before,
.pp-thumb:has(img[src*="/assets/premium-v98"])::before,
.pp-lightbox-stage:has(img[src*="/assets/premium-v98"])::before,
.pp-line-card-media:has(img[src*="/assets/premium-v98"])::before,
.pp-master-visual:has(img[src*="/assets/premium-v98"])::before,
.pp-line-visual:has(img[src*="/assets/premium-v98"])::before {
  content: "";
  position: absolute;
  z-index: 3;
  inset: -80%;
  width: auto;
  aspect-ratio: auto;
  translate: none;
  border-radius: 0;
  pointer-events: none;
  background-image: url("assets/brand/watermark-profiplast-runtime-tile-v2.png");
  background-position: center;
  background-size: 282px 117.5px;
  background-repeat: repeat;
  box-shadow: none;
  opacity: .198;
  transform: rotate(-45deg);
  transform-origin: center;
}
.pp-thumb::before { width: auto; opacity: .144; }
.pp-line-card-media::before {
  background-size: 240px 100px;
  opacity: .15;
}
.pp-gallery-stage::before,
.pp-lightbox-stage::before { width: auto; opacity: .216; }

@media (max-width: 920px) {
  .pp-hero-grid {
    min-height: auto;
    grid-template-columns: minmax(0,1fr);
    gap: 22px;
    padding: 34px 0 40px;
  }
  .pp-hero-products { min-height: 300px; display: block; }
}

@media (max-width: 620px) {
  .pp-hero-grid { gap: 14px; padding: 22px 0 24px; }
  .pp-hero h1 {
    margin: 11px 0 10px;
    font-size: clamp(1.86rem,7.8vw,2.12rem);
    line-height: 1.02;
  }
  .pp-hero p { font-size: .93rem; line-height: 1.38; }
  .pp-hero .pp-actions { margin-top: 13px; }
  .pp-hero .pp-actions .pp-button { padding: 8px 9px; font-size: .78rem; }
  .pp-hero-products {
    min-height: 108px;
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 8px;
  }
  .pp-float-product,
  .pp-float-product:nth-child(1),
  .pp-float-product:nth-child(2),
  .pp-float-product:nth-child(3) {
    position: relative;
    inset: auto;
    width: 100%;
    padding: 6px;
    border-radius: 14px;
    transform: none;
    animation: none;
  }
}

/* V9.8.3 — busca legível e menu principal com respiro tipográfico. */
.pp-search-panel > h2 {
  max-width: 1040px;
  margin: 6px 0 18px;
  color: #fff;
  font-size: clamp(1.65rem,2.7vw,2.35rem);
  font-weight: 650;
  line-height: 1.14;
  letter-spacing: -.025em;
  text-wrap: balance;
}
.pp-search-panel .pp-kicker {
  color: #d8f4ff;
  font-weight: 750;
}

@media (min-width: 1280px) {
  .pp-site-header .pp-header-row {
    width: min(1260px,calc(100vw - 24px));
    gap: 14px;
  }
  .pp-logo { width: 176px; min-width: 176px; }
  .pp-nav { gap: 6px; font-size: .8rem; }
  .pp-nav > a:not(.pp-button) {
    min-height: 46px;
    padding: 10px 12px;
    line-height: 1.25;
  }
  .pp-nav > .pp-mega > summary {
    min-height: 46px;
    padding: 10px 26px 10px 12px;
    line-height: 1.25;
  }
  .pp-nav > .pp-mega > summary::before { right: 10px; }
  .pp-nav .pp-button {
    min-height: 46px;
    padding: 10px 13px;
    font-size: .78rem;
    line-height: 1.25;
  }
}

/* V9.8.15 cascade gate — mantém a revisão acima das camadas legadas. */
.pp-product-page .pp-spec-section th[scope="row"] {
  width: 34%;
  color: #203b51;
  background: #f7fafb;
  font-weight: 600;
}
.pp-product-page .pp-spec-section .pp-spec-group-row th {
  color: #365168;
  background: #edf4f7;
  font-weight: 600;
  letter-spacing: .02em;
  text-transform: none;
}
.pp-product-page .pp-quick-specs dt { font-weight: 550; }
.pp-product-page .pp-quick-specs dd { font-weight: 600; }
.pp-search-panel .pp-kicker { font-weight: 650; }
.pp-gallery-open {
  padding: clamp(14px,2vw,24px);
  padding-bottom: clamp(72px,7vw,78px);
}

@media (max-width: 1279px) {
  .pp-mega-group[open] { grid-column: auto; }
  .pp-mega-group > .pp-mega-group-body { display: block; }
}

@media (max-width: 720px) {
  .pp-product-page .pp-spec-section .pp-spec-table th[scope="row"] {
    width: auto;
    color: #203b51;
    background: transparent;
  }
}

/* V9.8.16 — cards de produto exibem a fotografia inteira, sem corte inferior. */
.pp-product-grid .pp-card-media > img,
.pp-line-card-media > img {
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

@media (min-width: 621px) {
  .pp-product-grid .pp-card-media { height: 216px; }
}

/* V9.8.17 — grupos curtos do menu Produtos em coluna única. */
.pp-mega-group--single-column ul {
  grid-template-columns: minmax(0,1fr);
}

/* V9.8.26 — filtro de segmentos compacto e direto no catálogo mobile. */
.pp-filter-mobile { display: none; }

@media (max-width: 720px) {
  .pp-filter-bar { display: none; }
  .pp-filter-mobile {
    --filter-accent: var(--pp-blue);
    display: grid;
    gap: 7px;
    margin-top: 16px;
  }
  .pp-filter-mobile label {
    color: #dff5ff;
    font-size: .76rem;
    font-weight: 750;
    letter-spacing: .04em;
    text-transform: uppercase;
  }
  .pp-filter-select-wrap {
    position: relative;
    display: flex;
    align-items: center;
  }
  .pp-filter-select-wrap::before {
    content: "";
    position: absolute;
    z-index: 1;
    left: 17px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--filter-accent);
    box-shadow: 0 0 0 4px color-mix(in srgb,var(--filter-accent) 16%,transparent);
    pointer-events: none;
  }
  .pp-filter-select-wrap::after {
    content: "";
    position: absolute;
    right: 19px;
    width: 9px;
    height: 9px;
    border-right: 2px solid var(--pp-navy);
    border-bottom: 2px solid var(--pp-navy);
    transform: translateY(-3px) rotate(45deg);
    pointer-events: none;
  }
  .pp-filter-mobile select {
    width: 100%;
    min-height: 52px;
    padding: 11px 46px 11px 42px;
    border: 1px solid rgba(7,47,79,.16);
    border-radius: 16px;
    color: var(--pp-navy);
    background: #fff;
    box-shadow: 0 7px 20px rgba(4,37,65,.12);
    font: inherit;
    font-size: 1rem;
    font-weight: 750;
    line-height: 1.2;
    appearance: none;
    -webkit-appearance: none;
  }
  .pp-filter-mobile select:focus-visible {
    outline: 3px solid color-mix(in srgb,var(--filter-accent) 48%,transparent);
    outline-offset: 2px;
  }
}

/* V9.8.27 — imagens representativas restauradas nos cards de segmento. */
.pp-area-card {
  isolation: isolate;
  overflow: hidden;
}
.pp-area-card::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg,var(--item-soft) 0%,color-mix(in srgb,var(--item-soft) 94%,transparent) 48%,transparent 76%);
}
.pp-area-copy {
  position: relative;
  z-index: 2;
  width: min(72%,560px);
}
.pp-area-card h3,
.pp-area-card p { max-width: none; }
.pp-area-media {
  position: absolute;
  z-index: 0;
  inset: 14px 8px 14px auto;
  width: 44%;
  min-height: 0;
  display: grid;
  place-items: center;
  overflow: hidden;
  opacity: .48;
  pointer-events: none;
  -webkit-mask-image: linear-gradient(90deg,transparent 0%,#000 30%,#000 100%);
  mask-image: linear-gradient(90deg,transparent 0%,#000 30%,#000 100%);
}
.pp-area-card .pp-area-media > img {
  position: relative;
  inset: auto;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  transform: none;
  filter: saturate(.92) drop-shadow(0 12px 16px rgba(8,43,76,.18));
}
.pp-area-card:hover .pp-area-media > img { transform: scale(1.025); }

@media (max-width: 620px) {
  .pp-area-card {
    min-height: 238px;
    padding: 20px;
  }
  .pp-area-copy { width: 74%; }
  .pp-area-media {
    inset: 12px 4px 12px auto;
    width: 46%;
    opacity: .43;
  }
  .pp-area-card h3 {
    font-size: 1.14rem;
    line-height: 1.16;
  }
  .pp-area-card p {
    font-size: .83rem;
    line-height: 1.43;
  }
  .pp-area-card .pp-card-action {
    font-size: .82rem;
    line-height: 1.25;
  }
}
